Fork of daniellemaywood.uk/gleam — Wasm codegen work
2

Configure Feed

Select the types of activity you want to include in your feed.

Update annoyances

+12
+12
docs/annoyances.md
··· 3 3 This document contains a list of issues and annoyances that we have writing 4 4 Gleam code today, so that we can devise solutions to them in future. 5 5 6 + There are other annoyances that have known solutions that are yet to be 7 + implemented. These are tracked in the Gleam issue tracker instead. 8 + 6 9 ## Cannot infer what targets a package supports 7 10 8 11 ## Dynamic decoding boilerplate ··· 17 20 18 21 ## No good story for creating CLI programs 19 22 23 + The Erlang virtual machine is not typically installed on a user's computer, and 24 + bytecode compiled for it is not easy to distribute. 25 + 26 + JavaScript runtimes do better, but it is still not as good an experience as 27 + languages that compile to a single binary, and forcing Gleam programmers to use 28 + promises and a single thread is not ideal. 29 + 20 30 ## Runtime debugging is basic 21 31 22 32 Rust's `dbg!` and Elixir's `dbg` were mentioned as good additions. ··· 24 34 ## Last of if/else makes boolean logic less pretty and more alien 25 35 26 36 With case: 37 + 27 38 ```gleam 28 39 case str == "+" { 29 40 True -> Keep(Plus) ··· 42 53 ``` 43 54 44 55 With use: 56 + 45 57 ```gleam 46 58 use <- bool.guard( 47 59 when: str == "+",