language-thrift
Elm
language-thrift | Elm | |
---|---|---|
- | 207 | |
8 | 7,593 | |
- | 0.5% | |
4.8 | 4.0 | |
7 months ago | 6 months ago | |
Haskell | Haskell | |
BSD 3-clause "New" or "Revised" License | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
language-thrift
We haven't tracked posts mentioning language-thrift yet.
Tracking mentions began in Dec 2020.
Elm
-
Top FP technologies
Elm
- Run elm and lunarvim in a devcontainer
-
TypeScript's Lack of Naming Types and Type Conversion in Angular
Elm, ReScript, F#, Ocaml, Scala… it’s just normal to name your types, then use them places. In fact, you’ll often create the types _before_ the code, even if you’re not really practicing DDD (Domain Driven Design). Yes, you’ll do many after the fact when doing functions, or you start testing things and decide to change your design, and make new types. Either way, it’s just “the norm”. You then do the other norms like “name your function” and “name your variables”. I’m a bit confused why it’s only 2 out of 3 (variables and functions, not types) in this TypeScript Angular project. I’ll have to look at other internal Angular projects and see if it’s common there as well.
-
How I host Elm web applications with GitHub Pages
A web application makes use of these same ingredients, i.e. HTML, CSS, and JavaScript, but it uses significantly more JavaScript. As the JavaScript powering your web application grows in size it can bring with it a variety of problems that a few languages, like TypeScript, ReScript, PureScript, and Elm, have attempted to solve. Each of the aforementioned compile to JavaScript languages have their pros and cons but it is beyond the scope of this article to get into those details. Suffice it to say, my preference is Elm. It is also not the goal of this article to convince you to use Elm but only to show you how Elm fits into the flow of creating a web application and hosting it on GitHub Pages. So let's continue by adding Elm to our project.
-
Run Elm in a devcontainer on apple silicon
FROM mcr.microsoft.com/devcontainers/javascript-node:20 # Configuring Elm version ARG ELM_VERSION=latest-0.19.1 ARG ELM_TEST_VERSION=latest-0.19.1 ARG ELM_FORMAT_VERSION=latest-0.19.1 # This Dockerfile adds a non-root user with sudo access. Update the “remoteUser” property in # devcontainer.json to use it. More info: https://aka.ms/vscode-remote/containers/non-root-user. ARG USERNAME=node ARG USER_UID=1000 ARG USER_GID=$USER_UID # Install elm using the provided method, elm-test and elm-format via npm RUN export DEBIAN_FRONTEND=noninteractive \ # Install Elm binary && curl -L -o elm.gz https://github.com/elm/compiler/releases/download/0.19.1/binary-for-linux-64-bit.gz \ && gunzip elm.gz \ && chmod +x elm \ && mv elm /usr/local/bin/elm \ # # Install elm-test and elm-format via npm && sudo -u ${USERNAME} npm install --global \ elm-test@${ELM_TEST_VERSION} \ elm-format@${ELM_FORMAT_VERSION} \ # # [Optional] Update UID/GID if needed && if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \ groupmod --gid $USER_GID $USERNAME \ && usermod --uid $USER_UID --gid $USER_GID $USERNAME \ && chown -R $USER_UID:$USER_GID /home/$USERNAME; \ fi \ # Create the elm cache directory where we can mount a volume && mkdir /home/$USERNAME/.elm \ && chown $USERNAME:$USERNAME /home/$USERNAME/.elm # Install elm-test, elm-format, elm-watch, and git globally via npm RUN npm install -g elm-test elm-format elm-watch elm-live git
-
How to Build an Elm Land Project for Production
> [build 8/9] RUN npm install: 8.709 npm error code 1 8.709 npm error path /app/node_modules/elm 8.709 npm error command failed 8.709 npm error command sh -c node install.js 8.709 npm error -- ERROR ----------------------------------------------------------------------- 8.709 npm error 8.709 npm error I am detecting that your computer (linux_arm64) may not be compatible with any 8.709 npm error of the official pre-built binaries. 8.709 npm error 8.709 npm error I recommend against using the npm installer for your situation. Check out the 8.709 npm error alternative installers at https://github.com/elm/compiler/releases/tag/0.19.1 8.709 npm error to see if there is something that will work better for you. 8.709 npm error 8.709 npm error From there I recommend asking for guidance on Slack or Discourse to find someone 8.709 npm error who can help with your specific situation. 8.709 npm error 8.709 npm error --------------------------------------------------------------------------------
-
Using ChatGPT o1 to write UI code with Elm
After I finished my Oauth 2 Token Exchange demo project, I suddenly had a desire to write the front end UI with Elm language. Elm is my favorite front end language: elegant, functional, strongly typed.
-
Ask HN: Is webdev getting complicated without results to show for it?
TL;DR: Yes and it's creating "It's X and limited by Y, but it works" projects
In web front-end, the same pattern crops up repeatedly. Two examples:
* Elm[1]: It's brutally functional and limited by purity, but it works
* htmx[2]: It's grug-brained[3] and limited by that, but it works
I'll let others enumerate web frameworks. On desktop, uxn and Varvara software[4] by Hundred Rabbits fit the same pattern:
* 64k of RAM and limited to 4 colors, but it works
* Created when Xcode was painful to install on a boat over pre-Starlink satellite internet
Who knew rage-quitting could be so productive? ¯\_(ツ)_/¯
[1]: https://elm-lang.org/
[2]: https://htmx.org/
[3]: Said to be by the HTMX creator: https://grugbrain.dev/
[4]: https://wiki.xxiivv.com/site/roms.html
-
Building a subscription tracker Desktop and iOS app with compose multiplatform—Providing feedbacks
I have first heard about it when I was working with Elm [1] through a popular blog post (at the time) How elm slays a UI antipattern.
-
Ludic: New framework for Python with seamless Htmx support
Elm [1] is based on a similar idea. Build your app from pure functions that return HTML tags.
[1] https://elm-lang.org/
What are some alternatives?
elm-reactor
idris - A Dependently Typed Functional Programming Language
liquidhaskell - Liquid Types For Haskell
lens-toml-parser - Lenses for toml-parser
stylish-haskell - Haskell code prettifier [Moved to: https://github.com/haskell/stylish-haskell]
haskelm - Haskell to Elm translation using Template Haskell. Contains both a library and executable.
ivory - The Ivory EDSL
haste-compiler - A GHC-based Haskell to JavaScript compiler
elm-get
haskell-names - Haskell suite library for name resolution
language-java - Java parser and printer for haskell
rescript - ReScript is a robustly typed language that compiles to efficient and human-readable JavaScript.