Remix.run Logo
lupire 2 days ago

This is fine but it's just a rehash of old well-knowned stuff.

I don't see the value of learning this stuff one random blog post at a time.

There are many books and established blogs with long series of material to give you an education.

pyrale 2 days ago | parent | next [-]

> This is fine but it's just a rehash of old well-knowned stuff.

A significant share of the current dev community wasn't there when these principles were first described. Sometimes, bringing up old topics once again helps seeing that many people had never heard of them yet.

MeetingsBrowser 2 days ago | parent | prev | next [-]

Known by you, maybe.

None of these "affirmations" are common in any code base I work with, unfortunately.

sensen 2 days ago | parent | prev | next [-]

Do you have an example of the many books and established blogs that you can share? A newcomer might not be familiar with where to start when attempting to learn more about functional programming.

cosmic_quanta 2 days ago | parent [-]

I'm a big fan of Haskell Programming from First Principles. That's where more advanced ideas like Monads started clicking.

https://haskellbook.com/

mrkeen 2 days ago | parent | prev | next [-]

Let's keep repeating it until it gets more adoption.

andrewflnr 2 days ago | parent | prev | next [-]

It's a pretty good collection and summary of ideas I've only seen scattered around, before.

travisjungroth 2 days ago | parent | prev [-]

Could you list the top 5 ideas, with a short summary and a link to a well-regarded blog post that goes into more detail for each?

tubthumper8 2 days ago | parent [-]

~~I can't tell if you're being sarcastic, but that's exactly what TFA does. But just to pull it out explicitly:~~

Edit: I think I misunderstood your point. You were asking for a similar kind of list as TFA from the other commenter which may not necessarily be the *same* 5 ideas

Leaving the rest here in case it helps someone:

1. Parse, don’t validate

https://lexi-lambda.github.io/blog/2019/11/05/parse-don-t-va...

2. Make illegal states unrepresentable

https://fsharpforfunandprofit.com/posts/designing-with-types...

3. Errors as values

https://jessewarden.com/2021/04/errors-as-values.html

4. Functional core, imperative shell

https://www.javiercasas.com/articles/functional-programming-...

5. Smart constructor

https://wiki.haskell.org/index.php?title=Smart_constructors

travisjungroth 2 days ago | parent [-]

Yep, was kinda being sarcastic. IMO these sorts of posts are really valuable. They don't seem valuable when you're already familiar with the ideas and have read all the posts. But for people who are knew, they can really accelerate things.

The comment kinda reminded me of the forum comments that will answer questions with "just use Google" and another person replies "I found this thread with Google ;(".