3c8bfe85c9
Elm reminds me of Haskell. In fact, I'm using `haskell-mode` (for now) in Emacs to write my Elm code, and it works reliably. I'm not writing a Haskell app, but if I were, I would define my application Model with the following Haskell code: ```haskell data Model = Model { whitelistedChords :: [Theory.Chord] , selectedChord :: Theory.Chord , isPaused :: Bool , tempo :: Int } ``` When I first modelled my application state, I did something similar. After reading more Elm examples of SPAs, I see that people prefer using type aliases to define records. As far as I know, you cannot do this in Haskell; I believe all types are "tagged" (something about "nominal typing" comes to mind). Anyhow, Elm isn't Haskell; Haskell has cool features like type classes; Elm has cool features like human-readable error messages and exhaustiveness checking for cases. I love Haskell, and I love Elm, and you didn't ask. Anyhow, this commit refactors my records as type aliases instead of types. I think the resulting code is more readable and ergonomic. |
||
---|---|---|
.. | ||
blog | ||
days-of-week-habits | ||
goals | ||
habitgarden | ||
habits | ||
learn | ||
sandbox | ||
default.nix | ||
index.html | ||
README.md |
wpcarro.dev
https://wpcarro.dev is my personal website. I expose a few subdomains, one of which you are probably visiting right now, git.wpcarro.dev. Here are some of the others:
blog.wpcarro.dev
: My personal bloglearn.wpcarro.dev
: Teaching others to codesandbox.wpcarro.dev
: Where I deploy some pet projects and code sketches
Visit https://wpcarro.dev for a sitemap.