Telegram Web Link
My book Functional Design and Architecture is finally published!
/r/functionalprogramming/comments/1fjs3ty/my_book_functional_design_and_architecture_is/

https://redd.it/1fjs876

@reddit_elm
Teaching Elm as a gateway to FP

A should preface this post by saying that I have some experience in Haskell but have had only limited exposure to Elm (so far).

In an earlier thread on r/functionalprogramming (see: https://www.reddit.com/r/functionalprogramming/comments/1fez7w9/why\_haskell/) there was a link to an interesting discussion on Hacker News about the main impediments to the professional adoption of Haskell. In the comments, it was suggested that the learning curve for Haskell is simply too steep, but that Elm would be a great gateway language, i.e. people should learn Elm first.

In that same thread I made the observation that the with the advent of more capable AI in coding, CS graduates should really be acquiring strong FP skills to make them more useful/productive out-of-the gate on graduation (see my elaborated rationale here: https://www.reddit.com/r/functionalprogramming/comments/1fhl2mf/the\indirect\benefit\of\ai\to\professional/).

AFAIK there are some, but not many, university CS courses with a strong FP component and even where that is the case it seems to be Haskell is the predominant language. I wonder if it would make more sense to teach FP with Elm as the learning curve is less steep and the compiler is more user friendly. I know a lot of other languages allow for programming in a functional style, but not that many that enforce the more restrictive type system. By using Elm, you are still retaining the focus on type driven functional program design. Let me know if you think I am wrong about that.

For the more practical oriented student, I would argue that with Elm/Elm-UI you actually have a pretty solid base to teach web-development skills at a slightly more sophisticated level than coding JavaScript with frameworks.

Anyway, I would love to hear your thoughts. Also, any suggestions of a good selection of resources for an introductory course in Elm based FP as part of a CS degree?

https://redd.it/1fj66tr

@reddit_elm
Elm Town 80 – Inspired: Roc with Richard Feldman

Elm pioneer Richard Feldman returns to explain why he made Roc, a direct descendant of Elm. He notes a distinct trade-off of choosing not to have persistent data structures. Later, he shares how his experience teaching Elm informed Roc's design. We even learn about the power of platforms.

Elm Town 80 – Inspired: Roc with Richard Feldman:

* https://elm.town/episodes/elm-town-80-inspired-roc-with-richard-feldman
* https://youtu.be/5mp5PSdQ9Ss

https://redd.it/1fj45ru

@reddit_elm
Submit an Elm proposal for Functional Conf 2025 online [ CFP closing 17 Nov ]

The Functional Conf 2025 Call for Proposals is closing in less than a week, and it’s a golden opportunity to share your insights and innovative applications of functional programming with a vibrant community of like-minded individuals. Functional Conf is Asia’s premier functional programming conference, running 24-25 January 2025 (online).

Whether you have tackled a tricky problem using functional programming, developed a unique application, or have experiences that could enlighten your peers, we want to hear from you! We’re open to all topics related to functional programming.

We are seeking deep technical topics that push the boundaries of what’s possible with functional programming. Our commitment to diversity and transparency means all proposals will be public for community review.

Is your proposal unique? Is it well-developed and ready-to-go? Then you’ve got what it takes! Submit your ideas and help us make Functional Conf 2025 an unforgettable experience.

Submit your proposal today and help shape the future of functional programming!

Proposal submission deadline: 17 November at 23:59 IST

https://redd.it/1gpvc10

@reddit_elm
Combine elm-land, elm-tailwind-modules and an interactive page

I want to to create just what the title says, an interactive page with elm-land and elm-tailwind-modules (which creates helper functions/constants for elm-css). So in effect, I need to get an interactive page with elm-css running in elm-land. I adapted elm-land's View to accept components from elm-css, but after changing my page to get interactive, I'm stuck with

> This argument ist a list of type List (Html Msg) but View needs [..] List (Html.Html msg)

and I just can't wrap my head around it... can you spot the error in the repo I pushed?

Edit: Ah, nvm, I figured it out.
I had to use Html.Styled instead of Html and List.map toUnstyled over the View's body items.

https://redd.it/1hb3c9f

@reddit_elm
Elm Town 82 – Inspired: Tools with Dillon and Jeroen

In the final episode of the Inspired series, Dillon Kearns and Jeroen Engels wax philosophically with Jared about what it means to be inspired by Elm within the context of tools. We chat about feedback, guarantees, and contracts as lenses for building tools.

Elm Town 82 – Inspired: Tools with Dillon and Jeroen:

* https://elm.town/episodes/elm-town-82-inspired-tools-with-dillon-and-jeroen
* https://youtu.be/ogrY9eCmKc4

https://redd.it/1hgo2z5

@reddit_elm
Fullstack Elm project: a surf forecasting website

Last January I decided I wanted to get back into functional programming and since I was also looking for a pain killer after years of web development with (mostly) Javascript, I naturally ended up with Elm.

I then looked for a project I could develop for myself, in order to do not lose interest after developing a useless hello world app I would have never touched again: so I decided to develop a widget for surf forecasting, focused on Mediterranean Sea.

Fast forwarding to today, I ended up migrating everything to elm-pages which opened up a lot of possibilities for both current state and future development.

Needless to say the whole experience was refreshing, I had a lot of fun and happily discovered I didn't lost the joy and curiosity which lead me to programming almost 20 years ago: I'm just tired of using crappy tools, written with a crappy language we should just aim to compile into and never touch again directly (if not for really low level stuff).

Elm brought me joy, hope and a finished project after years of abandoned ideas because of me not wanting to break free from JavaScript.

For those who are not in the Slack channel, you can have a look here: Eolo Experience. And who knows, if you happen to be an italian surfer as well it will may end up being useful for you.

Best!

P.S. almost forgot to thank again Mario Rogic, Dillon Kearns and everyone else on Slack for all of the support, the patience and the brainstorming you helped me with. I truly felt less alone during this journey and if this little project of mine is live to today is also thanks to you, lovely people.

https://redd.it/1hh9mai

@reddit_elm
I'm still excited by ELM

Just wanted to share this. I'm currently working on a ELM project I did in 2020 and I haven't been this excited about development since a long time! The project is not really interesting and does not pay the bills but just the fact that I get to use ELM makes it worthwhile.

elm-json makes dependencies management a blast

elm-format is doing a great work

elm-review is such an AMAZING refactoring tool. It found me 1300+ errors ! I removed a single rule to make it digestable (NoMissingTypeAnnotationInLetIn). Then it automatically refactored hundreds of code bits, and I got 30 errors left. Mostly unused variables and unused constructor args (which is great at showing me that I did ignore so many errors!)

I don't use elm-test at all, I never test frontend work... is that bad?

I feel so confident working with this stack!

https://redd.it/1ieca9l

@reddit_elm
Tailwind CSS 4.0 With Elm

Currently doing some frontend redesign with Elm, and I want to know if anyone has resources or experience regarding using the latest version of Tailwind with Elm.

All of the Elm resources regarding Tailwind are pretty dated and I want to know what my QOL options are.

https://redd.it/1isl8ck

@reddit_elm
Any popular Elm forks?

I love Elm! One of my favorite languages, probably the one I am most productive in :)

I have been thinking for a while about forking the compiler and trying to add some quality of life features

I was wondering if there are already projetcs like this around? I've heard about Gleam (I think that's the name) but I am looking for something pure, without mutation or side effects

Is there anything like this?

https://redd.it/1iutxel

@reddit_elm
Teaching Elm

I really like to teach, and I fel in love with Elm. So now I have this urge to teach people Elm.

Do any of you have any idea where i could find willing victims students? (From absolute beginners to more advanced idc.)

https://redd.it/1jqfekm

@reddit_elm
Test-only exports in Elm using Debug.todo

I've been noodling on this technique ever since I saw it used in mdgriffith/elm-ui in Element.explain. You write a function that takes Debug.todo as an argument so that you can only use it while developing locally or in your tests.

As an example of the utility of this function: we have a custom HTTP error type (it wraps up the request info with the response). We intentionally don't expose constructors for it, but I needed it to be able to use SimulatedEffect.Http.get from avh4/elm-program-test. So I need to be able to turn an Http.Error into one of our errors so that I can use our version of Expect. I wrote a helper function
httpErrorForTests :
(String -> Never)
-> Api.RequestData
-> Http.Error
-> Api.Error


Where Api.Error is our error type and that first argument can only be Debug.todo.

Anyways, here's a somewhat contrived example I cooked up for a discussion this morning that I thought might illustrate it. https://ellie-app.com/vbpDdBCfdgTa1

This is an example of how you can provide the same functionality as a caseof expression without even having to export the constructors of your opaque type. The example I can think of is if you're working with an Effect system. You might want your Effect type to be opaque. But then for your tests you need an effect handler. I think you can take this type of thing and run with it and end up with an Effect handler in your tests without needing to expose the constructors.

https://redd.it/1k02lh7

@reddit_elm
2025/10/20 02:13:24
Back to Top
HTML Embed Code: