Commit Graph

4 Commits

Author SHA1 Message Date
Greg Pfeil
1dc181b99a
Update the transcripts with cmark
`cmark`’s pretty-printer matches our output pretty well, with a few differences:
- it puts a space between the fence and the info string for in code blocks;
- it prefers `-` over `*` for bulleted lists (as do I) and it indents them;
- it `\`-escapes certain chars very conservatively;
- it prefers indented/unfenced code blocks if there is no info string; and
- it prefers `*` over `_` (unlike any sane person).

This also shows how the change fixes a number of issues:
- fix2158-1.output.md also illustrates how this change fixes #1809;
- alias-many.output.md and input-parse-errors.output.md show how fenced
  code blocks without an info string would use the beginning of the
  content as the info string;
- transcripts-round-trip/main.output.md shows how output blocks for
  generated `unison` stanzas (which could contain nested fenced blocks)
  might not have long-enough fences; and
- error-messages.output.md and generic-parse-errors.output.md show how
  Unison errors were reported on the wrong line number (and thus the
  printed error lines were also incorrect).
2024-07-10 13:37:51 -06:00
Travis Staton
591d210bdd
make keyword-identifiers pass with kind inference
Lower-cased abilities generate broken constructors. For example:

```
unique ability foo where bar : ()
```

generates the following type for bar:

```
forall foo. {foo} ()
```

where

```
{foo} ()
```

is expected.

This breaks kind inference which expects ability constructors to
return the declared effect.

Once this lower-cased abilities are fixed then this commit can be
reverted.
2023-09-20 15:37:10 -04:00
Nicole Prindle
d1e143c918
Hide typechecking output in keyword-identifer transcript 2022-01-31 18:04:58 -05:00
Nicole Prindle
7941216d8d
Add transcript to check that keywords can start identifiers 2022-01-31 15:45:22 -05:00