Commit Graph

38 Commits

Author SHA1 Message Date
KtorZ 0d891daac8 Rework the language-tour
To be more progressive in introducing concepts. It also now groups similar concepts together so that they are easier to find and connect with one another.

  I've also added few precisions along the way, as well as corrected a few old syntax (e.g. 'case', generics, tuples..).

  Note that some examples provided in the language tour currently fail to parse / type-check properly.a
2022-12-13 10:29:38 -05:00
KtorZ 308cbb76ff Show resources as links + use permalink + add a few. 2022-12-13 10:29:38 -05:00
KtorZ 6361a1da08 Rename 'comparisons' to 'Ecosystem Overview'
'comparisons' felt a bit out-of-context on the summary/sidebar.
2022-12-13 10:29:38 -05:00
KtorZ 9add261006 Review 'comparisons', add some precisions here and there. 2022-12-13 10:29:38 -05:00
KtorZ 8a4c5a5516 Add some minor precisions in 'getting-started'
And tweaks the link to the editor plugins already -- a bit ahead of time.
2022-12-13 10:29:38 -05:00
KtorZ 375499930a Add UPLC support for 'ProtoList' & 'ProtoPair' constants
Supersedes #35.

  The syntax for these elements isn't "set in stone"; in the sense that it is unspecified in [input-output-hk/plutus](https://github.com/input-output-hk/plutus). There's no visible plan from IOG to extend the Haskell parser to support this syntax, though there are samples of imagined syntax in the code. Thus, we can lead the way and simply choose a suitable syntax and let the Haskell implementation align to it later.

  This syntax is thus inspired from input-output-hk/plutus' samples, with only a small change: we use `<` and `>` for encapsulating type declaration instead of `(`, `)`. There are already enough parentheses in the UPLC syntax, adding more reduces visibility.

  Doing this, I've also added a lot more test cases for the UPLC parser. There could be more, but this is a good start.

  Here are some example programs (taken from test cases) utilizing this syntax:

  ```
  (program 0.0.0 (con list<bytestring> [#00, #01]))
  ```

  ```
  (program 0.0.0
      (con pair
        <integer, integer>
        [14, 42]
      )
  )
  ```

  ```
  (program 0.0.0
      (con pair<string, list<integer>> ["foo", [14, 42]])
  )
  ```

  _(Note that this was mainly done as an exercise to get more familiar with Rust and parts of Aiken.)_
2022-12-03 10:16:16 -05:00
rvcas 34c8a58391 feat: complete language tour 2022-11-30 15:35:55 -05:00
rvcas 2d5ed86a68
chore: some requested changes to comparsisons 2022-11-27 15:25:55 -05:00
Micah Kendall 919eebbd97 check clarification from rvcus 2022-11-26 10:33:06 -05:00
Micah Kendall 9b027f0051 Assert 2022-11-26 10:33:06 -05:00
Micah Kendall 58ee2c39a6 Check 2022-11-26 10:33:06 -05:00
Micah Kendall 45edc3e622 Tuples 2022-11-26 10:33:06 -05:00
Micah Kendall be4e489380 Type-aliases explanation 2022-11-26 10:33:06 -05:00
Micah Kendall 568192cc52 String explanations 2022-11-26 10:33:06 -05:00
Micah Kendall 8279c592df fix typo 2022-11-26 10:33:06 -05:00
Micah Kendall f8b967b5f1 Todo explanation with example 2022-11-26 10:33:06 -05:00
Micah Kendall 3fab7cde69 case->whereif 2 2022-11-26 10:33:06 -05:00
Micah Kendall a1a0465a3d +lines, -lines, +best practice avoid access by index 2022-11-26 10:33:06 -05:00
Micah Kendall 2ed0b1ed14 +overflow in ints 2022-11-26 10:33:06 -05:00
Micah Kendall 2479b94b67 More boolean examples, similar to gleam book. Also, explain correspondence to plutus primitives. 2022-11-26 10:33:06 -05:00
Micah Kendall 9b3c8e432e case->where-if in blocks.md 2022-11-26 10:33:06 -05:00
Micah Kendall 6eca7fc6ab added matching example, made block example about blocks returning values, not all blocks 2022-11-26 10:33:06 -05:00
Micah Kendall 7dc5392a81 More docs 2022-11-25 01:44:03 -05:00
Micah Kendall 77e3b57ff0 basic docs 2022-11-25 01:44:03 -05:00
KtorZ 550f20c5e6 Fix deadlink in the book. 2022-11-24 10:10:32 -05:00
rvcas c37eaca763
docs: add language tour outline 2022-11-22 21:11:25 -05:00
rvcas f0597f4472
fix: vim plugin link 2022-11-22 21:11:24 -05:00
rvcas c4c3773e57
fix: better wording, thanks @L-as 2022-11-22 21:09:50 -05:00
rvcas 882f07ccef
fix: some typos in the docs 2022-11-22 18:47:40 -05:00
rvcas 0deed535db
fix: some wording 2022-11-22 14:32:31 -05:00
rvcas 32104f8c47 feat: add a comparison section to the book 2022-11-22 14:22:07 -05:00
KtorZ deab41b9e1
Add 'getting-started' first draft.
Mostly to have a place to list editors integrations.
2022-11-10 15:47:02 +01:00
KtorZ c5b1316d8e
Cleanup book and extended documentation about UPLC 2022-10-29 20:44:54 +02:00
rvcas 2e5fdb12d9 chore: update roadmap 2022-10-24 00:12:39 -04:00
rvcas e67aa7b943 chore: update readme and book 2022-10-20 14:10:03 -04:00
rvcas 85d7faf0f8
feat: start some mdbook layout 2022-10-06 15:23:07 -04:00
Ch1n3du 71dbb3ad44 chore: Fixed some ci issues 2022-09-26 10:06:14 -04:00
Ch1n3du c42b75def8 feat: Added skeleton and gh action for mdbook 2022-09-26 10:06:14 -04:00