| I left this comment a while back https://news.ycombinator.com/item?id=45752905 when someone asked what was up with Elm at the current moment. I left a bunch off. - Evan entered hermit mode to create Acadia, a language for an Elm-like experience querying the database. He's given conference talks about it but none have been recorded. https://acadia.engineering/ This seems to have the same goals as Lamdera. - Evan hinted that 0.19.2 is coming and has asked for help profiling it https://discourse.elm-lang.org/t/help-me-profile-elm-0-19-2-.... In the meantime the ecosystem is getting crazy evolved. Turns out not changing the language under your feet for a few years leads to lots of development with what's currently there. Frameworks like elm-pages allowed for command line utils in Elm like elm-codegen. Elm-review lets you write linting rules with autofixes unlike anything I've used in other languages. A few people are writing forks and non-forks that target more than the browser or self-host the compiler. Every backend language I've used with decent types has a package to generate Elm types (and their decoders, and a nice way to interact with the JSON API, and deal with glue code generally). Literal forks of Elm compiler - Gren (general purpose lang targeting browser, CLI, servers) https://gren-lang.org/ - Zokka (fixes a few compiler bugs and allows for custom package repos) https://discourse.elm-lang.org/t/a-new-zokka-version-bringin... - Guida (self-hosted compiler) https://guida-lang.org/ Forks that do not ever seek to change the syntax of the language and thus compile .elm files - Lamdera ("non-fork" fullstack with evergreen migrations) https://dashboard.lamdera.app/docs/starting - Eco (written in Elm targeting x86 binaries via MLIR and LLVM) https://github.com/eco-lang/eco-runtime - Elm-run (targeting CLI and servers, self hosted) https://elm-run.dev/roadmap Languages inspired by it whose creators are big Elm users: - Roc (general purpose): https://www.roc-lang.org/faq - Gleam (targets Erlang VM and browser) https://gleam.run/cheatsheets/gleam-for-elm-users/ - Cara https://cara-lang.com/ Things that use the Elm architecture in other languages (linking to pages that mention the connection where possible): - Foldkit (Typescript) https://discourse.elm-lang.org/t/foldkit-the-elm-architectur... - Iced (Rust): https://book.iced.rs/ - Bubble Tea (Go): https://github.com/charmbracelet/bubbletea - Lustre (Gleam): https://github.com/lustre-labs/lustre - A list of TEA-in-Swift and React in Swift: https://gist.github.com/inamiy/bd257c60e670de8a144b1f97a07ba... - Redux (Javascript/Typescript): https://redux-toolkit.js.org/rtk-query/comparison If you read this far and are wondering which to check out, I cannot endorse Lamdera enough. Use the same types from your DB to your frontend and write zero glue code. Migrations required to update the running frontend/backend whenever you change anything. Really changes the way you write code. |
Also authored the first Elm-in-Elm compiler for a limited subset for json-to-elm, then leading to a pure Elm virtual-dom implementation used for elm-html-test!