PurelyFunctional.tv Newsletter 275: Data, Spec, Types
Well, I think I can call the redesign done. People have been finding little areas that still need some work. But in general, people have been commenting to me that things are much easier to find on the new site. Please keep letting me know if some corner of the site doesn't do what you expect.
With the redesign finished, I jumped back into recording lessons for Domain Specific Languages in Clojure. Producing these videos is such a pleasure! I have one of the best jobs in the world. I still want to go through a few more topics, including parsing.
Thanks, everyone, for being there as I build and evolve this business.
Please enjoy the issue.
PS Want to get this in your email? Subscribe!
Will Byrd's talk at Clojure SYNC was quite a surprise. Who knew he was trying to preserve his work for 5,000 years? I was glad to see after the talk that his table was swarmed by attendees wanting to see his pens and paper.
I've really been enjoying this literate programming document by Abhirag. It explains the math behind raytracing, which is a technique for generating 3D images.
A nice introduction to the benefits of Re-frame by Kenneth Kalmer.
Apropos Clojure #8 YouTube
I wasn't available for this recording. And I'm so sad! The panel talked a lot about Spec and how they use it in production.
This pamphlet is an attempt to introduce Scheme (and Functional Programming) to people outside of the Lisp world, written by Panicz Maciej Godek. It's well-written and attempts to show how easily the R libraries can be written in Scheme. He develops a satisfiability checker, a fuzzy logic system, and a Naive Bayes classifier.
Although a valiant attempt, I'm not sure if even I am convinced. Surely one of the advantages of R is not having to think about how the mathematical routines are implemented---saving precious brain cycles for other matters. Still, it's a good read, especially for those who do like to get into the implementation.
Some practical tips from Sahil Bajaj.
Alex Miller explains why he likes spec.
One of the coolest feature of Lisps is how easy it is to write a new language in them. Domain Specific Languages are very common in Clojure, and I wanted to share the techniques and patterns that I've learned through the years. There are already about 5 hours of lessons. Here are the new ones from last week:
- Crisp compiler --- we convert our small Lisp interpreter into a compiler
- [Adding static scope information](https://ericnormand.podia.com/advanced %20-clojure-bundle) --- by adding some information, we allow "variable not found" to be a compile-time error