James Dawson Brock's Avatar

James Dawson Brock

@jamesbrock

Pure functional programming, Haskell, PureScript, Nix. Vermont provenance, Yokohama residence. https://github.com/jamesdbrock https://twitter.com/jamesdbrock

265
Followers
142
Following
35
Posts
04.07.2023
Joined
Posts Following

Latest posts by James Dawson Brock @jamesbrock

asyncio is the best thing about Python.

20.09.2025 00:08 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Hey John.

That run_subprocess_with_callback depends only on python standard lib so you can copy the file into your project instead of depending on pyedifice. See comments in the source file.

20.09.2025 00:03 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Nicholas is one of the best engineers I've ever worked with and y'all should be racing to hire him if you can.

19.07.2025 05:52 πŸ‘ 37 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0
Casey Muratori – The Big OOPs: Anatomy of a Thirty-five-year Mistake – BSC 2025
Casey Muratori – The Big OOPs: Anatomy of a Thirty-five-year Mistake – BSC 2025 YouTube video by Better Software Conference

The Big OOPs: Anatomy of a Thirty-five-year Mistake by @cmuratori.bsky.social

youtu.be/wo84LFzx5nI

19.07.2025 05:59 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
It Would Be Good if the AI Bubble Burst Personal Blog

It Would Be Good if the AI Bubble Burst by Stephen Diehl

www.stephendiehl.com/posts/ai_bub...

19.07.2025 05:50 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
GitHub - IHaskell/learn-you-a-haskell-notebook: Jupyter adaptation of Learn You a Haskell for Great Good! Jupyter adaptation of Learn You a Haskell for Great Good! - IHaskell/learn-you-a-haskell-notebook

Learn You a Haskell for Great Good! Jupyter adaptation now has a one-line zero-install shell command which works on any computer that has the #NixOS package manager:

nix run github:IHaskell/learn-you-a-haskell-notebook

For more information see github.com/IHaskell/lea...

08.05.2025 05:35 πŸ‘ 4 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
replace-megaparsec Find, replace, split string patterns with Megaparsec parsers (instead of regex)

For years I've been trying to convince people to use monadic parsers instead of regex for everything.

hackage.haskell.org/package/repl...

Your essay about bicameral syntax is the first time I've read a principled reason (other than speed) about why a regular parsing pass is a good idea.

03.12.2024 01:33 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

If you are curious about Haskell or wanting to start using functional programming to build real applications, this is a great chance to save some money on Effective Haskell and other great functional programming books.

28.11.2024 20:08 πŸ‘ 33 πŸ” 8 πŸ’¬ 2 πŸ“Œ 0

So, thank you Microsoft, I guess.

25.11.2024 08:05 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

In the 2010s there were still a lot of programmers insisting that typechecking wasn't necessary but then TypeScript and Pyright were universally adopted and those people mostly shut up.

25.11.2024 07:41 πŸ‘ 7 πŸ” 2 πŸ’¬ 2 πŸ“Œ 0

Thank your for posting that.

24.11.2024 15:55 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

The SDLC is an awful model for how people program and an even worse model for how people *should* programβ€”at best, it's a model for how people *imagine* programming.

Unfortunately, it seems to be taught and taken as a fact in the industry :(

24.11.2024 07:43 πŸ‘ 1 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

In 1997 Wadler and Jones published the Haskell language, so now in Haskell we can program do-this-thing-then-do-that-thing by using only IO Monad expressions, no statements. Happily, forever.

23.11.2024 16:17 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Wadler solved the problem of saying do-this-thing-then-do-that-thing using only expressions by adopting the Monad described by logician Eugenio Moggi.

homepages.inf.ed.ac.uk/wadler/paper...

23.11.2024 16:17 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Act III Climax and Resolution

In 1987 the great computer scientists Simon Peyton Jones and Philip Wadler decided that the good part of computer programming was the expressions, and the bad part was the statements.

23.11.2024 16:17 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Later, at IBM, Backus tried to create a language named Function Level which could say do-this-thing-then-do-that-thing using only expressions. IBM never published the Function Level language, and the source code was lost.

worrydream.com/refs/Backus_...

23.11.2024 16:17 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

In his Turing Award lecture entitled Can Programming Be Liberated from the Von Neumann Style, he condemned his language, Fortran, and all other languages, as β€œfat and weak.” Backus warned the that languages with statements would β€œmake their expressive weakness and their cancerous growth inevitable.”

23.11.2024 16:17 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Act II Rising Action

In 1977 the great computer scientist John Backus decided that the good part of computer programming was the expressions, and the bad part was the statements.

23.11.2024 16:17 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Landin abandoned his effort to rid programming of statements and joined the Gay Liberation Front.

www.cs.cmu.edu/~crary/819-f...

23.11.2024 16:17 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

In Landin’s paper The Next 700 Programming Languages, he invented the ISWIM language β€œbiased towards expressions rather than statements,” but he failed to excise the statements. He failed because he couldn’t figure out how to say do-this-thing-then-do-that-thing in ISWIM by using only expressions.

23.11.2024 16:17 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

A Character-Driven Monad Tutorial with a Three-Act Structure

Act I Inciting Incident

In 1966, the great computer scientist Peter Landin decided that the good part of computer programming was the expressions, and the bad part was the statements.

23.11.2024 16:17 πŸ‘ 9 πŸ” 5 πŸ’¬ 1 πŸ“Œ 1
Preview
Announcing the Launch of Quantinuum Nexus: Our All-in-One Quantum Computing Platform Designed to provide an exceptional experience for managing, storing, and executing quantum workflows, Nexus offers unparalleled integration with Quantinuum’s software and hardware.

www.quantinuum.com/blog/announc... we did a thing

19.11.2024 15:46 πŸ‘ 8 πŸ” 3 πŸ’¬ 1 πŸ“Œ 0

banger

18.11.2024 08:03 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Why Isn't Functional Programming the Norm? – Richard Feldman
Why Isn't Functional Programming the Norm? – Richard Feldman YouTube video by Metosin

Why isn't Functional Programming the Norm?
By @rtfeldman.bsky.social
youtu.be/QyJZzq0v7Z4

16.11.2024 13:41 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

You wanted a banana but what you got was a banana in the computational context of a Gorilla Jungle monad transformer stack.

16.11.2024 13:35 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Just ordered Strange and Norrell for Christmas, thanks for making me aware.

10.11.2024 11:24 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I was ALF's opponent and I lost. I blame my advisors, who told me to campaign on culture war stuff.

05.11.2024 15:41 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Fear Not Recursion

Once upon a time I wrote about recursion

c8998d8f.purefunctor.pages.dev/fear-not-rec...

29.10.2024 14:09 πŸ‘ 3 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

what is this movie

29.10.2024 07:54 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0