Rich_Morin
Musings on some recent videos by Dave and José
Background
I just watched a thought-provoking video by Dave Thomas:
The Best OO Language is a Functional One
https://github.com/pragdave/diet
https://github.com/pragdave/jeeves
The talk brings together ideas that Dave Thomas has been working on for a while. It touches on functional and object-oriented programming, hardware speed and power consumption, state, time, transformations, etc. Quite interesting and tasty…
I’m particularly pleased by the continuing evolution of Dave’s tooling, eg:
- Diet supports architecting programs as sets of transformation recipes.
- Diet.Debug allows time-traveling debugging over trees of execution paths.
- Jeeves wraps (sets of) GenServers in a tasty OO-like DSL.
I also watched a (predictably) interesting talk by José Valim:
Introducing HDD: Hughes Driven Development
This talk brings together the topics of code formatting and property-based testing (aka generative testing). I like the fact that José (like Dave) encourages folks to forage through odd corners of computer science lore, pulling out cool and useful ideas (and giving credit freely and generously to the lore’s originators).
The implementation of these ideas in Elixir is already raising the level of discourse and practice; it will continue to do so in the future. As it becomes easier to create and manage distributed sets of processes, we’ll find more need for features such as back pressure (ie, GenStage), truth maintenance (ie, Phoenix Presence), etc.
Notion
FWIW, Diet and Jeeves look like a nice way to solve a problem I’ve been considering. I’m putting together a system (AxAp) that tries to make various kinds of documents more accessible. For example, it currently handles EPUB3 and some text file formats. Obviously, this involves a lot of transformations. More to the point, many of the transformations can be used in multiple processing chains.
Assuming that the necessary transformations have been encoded, it should be possible to perform dependency analysis and generate a recipe for any producible output. Of course, DIET and Jeeves would be on hand to handle the ugly details…
-r
Most Liked
Rich_Morin
Thanks for the pointer. At $30, it’s a no-brainer.
I was very pleased by the fact that José responded quite positively to the notion of bringing Clojure.spec over to Elixir. The Clojure folks have done (and continue to do) some fine work; well worth stealing! For example, I’d love to have an Elixir version of Transit (GitHub - cognitect/transit-format: A data interchange format. · GitHub).
AstonJ
AstonJ
Nice thread ![]()
I love this too
and I think it’s a big reason why so many of us are so attracted to Elixir - for a better way of doing things (sometimes with a modern take on old ideas).
Not sure if you’ve seen it, but I highly recommend Elixir for Programmers (PragDave) - it made the hairs on the back of my neck stand up ![]()
I haven’t seen the videos or looked at Diet or Jeeves yet, but I am sure I will at some point - I always pay attention when Dave, José and Chris get excited about something ![]()
Popular in Discussions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance









