Open
Description
These are suggestions that people make. This is just a way to track what folks have asked for. There is no concrete plan to change the language according to any of these suggestions, and many of these ideas have serious unintended consequences that introduce more problems than they alleviate.
To summarize: Nothing here is blocked on implementation. It is just a list of suggestions.
Basic Suggestions
- Remove
(,,)
syntax in types - Proposal: remove broken syntax for tuple types #1236 - Disallow whitespace in unit - syntax proposal: disallow whitespace in unit #1210
- Disallow whitespace in
( + )
- syntax proposal: disallow whitespace in operator-turned-function #1213 - Allow
|
to starttype
like in OCaml and F# - Proposal: Steal F#'s nice union type syntax #1385
Record Suggestions
- allow qualified records in update syntax - Can't use Module name prefix in record syntax. #635, Cannot use qualified modules as source for record update #1944
- allow arbitrary expressions in update syntax - Can't use expression as record to update #537
- allow arbitrary types in type extension syntax - Inconsistency in extensible record syntax #1254
- allow keywords as record field names - request: allow use of keywords as record field names #1160
- add new syntax for updating fields - Proposal: Field update/map syntax #984
Formatting Suggestions
- allow more JS-ish style for closing } - Proposal: let } appear in column 0 #842
- allow more JS-ish style for closing ] - whitespace syntax error #1512
Harder Suggestions
- Handle indentation sensitivity different - Indentation-sensitivity does not close an expression #1135
- Sort out infix precedence later - Sort out infix precedence later in pipeline #1096