Today I ran into someone with the opposite experience: “wait, tom7 from CMU has a YouTube channel?”
Today I ran into someone with the opposite experience: “wait, tom7 from CMU has a YouTube channel?”
i regret to inform you that the next 700 programming languages are going to be "types with baggage"
12 days to RacketCon
Join us to learn about miniDusa: An Extensible Finite-Choice Logic Programming Language
Presentation details at con.racket-lang.org
RacketCon is 4-5 October at UMass Boston and online. Register now.
I'm pleased to announce OxCaml!
OxCaml is Jane Street's branch of OCaml. We've given it a new name and a snazzy logo, and done a bunch of work to make it easy for people to try.
Great paper. The blog post by Yuri Iozzelli mentioned in the discussion section is also fantastic—which I miraculously discovered from Yuri directly, after desperately asking about restructuring control flow on Discord… even though I had already wasted a few hours reading LLVM source code.
The day I learned he was a PL person… my mind was blown. His videos on playful applications of CS inspired me in high school (long before I knew PL research was a thing)
`::` can be used to supply annotations which are dynamically checked, while `:~` can be used to get static information from annotations without a runtime cost. There are also (perhaps surprisingly) interfaces, with analogues of popular type classes like Show and Eq.
Types, in _my_ Lisp dialect? Many of the safety guarantees and documentation benefits of type systems are achieved in Rhombus through “annotations” (read: contracts). Classes come with their own annotations (and _static_ checks!), and `||` can be used analogously to sums.