Catalog of Programming Languages for the Enthusiast: Starting a curation on some of the cool indie / lesser known programming language projects I have been stumbling on.
Starting off with Pikelet by @brendanzab. It is a continuous source of inspiration to see Brendan starting from game dev and getting into deep type theory stuff! Check out his language Pikelet: github.com/pikelet-lang/p… and his twitter stream for updates on his work.
I encountered Koka when researching about algebraic effects. Papers from Daan Leijen on its semantics and technical details are available here: microsoft.com/en-us/research…
@brendanzab Factor is a concatenative stack based programming language that supports interactive programming on multiples platforms. It comes with a feature rich library and extensive documentation. Check it out here: factorcode.org
Enso (@enso_org) takes a hybrid visual/textual approach towards programming. It is interesting to see them iterate from Luna to the current minimal aesthetic. Check out their dev diary here: medium.com/@enso_org/enso…
@arntzenius Catala by @DMerigoux and team is a DSL for deriving faithful-by-construction algorithms from legislative texts. It is a pretty intriguing one in that it allows for describing the logical structure of laws and compiles down to a lawyer-readable PDF format in literate style!
Imp by Jamie Brandon is envisioned to be a programming environment for working with structured data across multiple platforms. It is still in an experimental phase, but already home to a few cool ideas.
Jon Purdy, author of Kitten language has given a talk on “Concatenative Programming: From Ivory to Metal” that describes the history, theory, and implementation of concatenative paradigm:
Dark by @paulbiggar and team is an environment for building backends instantly with structured feedback.
It has some interesting design decisions which are detailed in the dev blog here: blog.darklang.com
@paulbiggar Jeffrey Guenther (@jeffreyguenther) has done a Ph.D. thesis on subjunctive interfaces instrumenting Shiro — a programming language that allows you to explore parallel instantiations of designs simultaneously.
This is more towards esoteric programming realm, but IRCIS by @batman_nair_ inspired by Befunge is an awesome take on programming using a 2D grid and multiple cursors which map to control flow.
Curiously enough there’s a programming language that allows you to write programs in Frege’s Begriffsschrift (Concept script) notation. Meet Gottlob by @gfish: attoparsec.com/artifacts/gott…
Arend is a theorem prover based on homotopy type theory. It natively supports higher inductive types and a version of cubical syntax.
Caramel by @leostera is a type-safe functional language that leverages OCaml compiler for the ErlangVM! Check it out here: caramel.run
It’s just a great feeling when you find out someone has built their own programming language and is using it to bootstrap their own cool stuff like a raytracer, twitter client, chatbot, and more! Check out the awesome Ink language written by @thesephist: dotink.co
@thesephist Among the cool projects done with Ink, my favourites are:
TIL that light is an eigenvector of a Lorentz Transformation! I think this means that light plays the role of an invariant when you try to shift between two bases. For example: something like say truth value of an expression when you shift between two logical systems studying it.
I am right now in the middle of researching something else and will have to return to this later, but this page has some real nice pedagogic material on Special Relativity: jila.colorado.edu/~ajsh/sr/sr.ht…
Here is another animation from Wikipedia. Line crossing the vertical axis are sequential events and the line crossing horizontal axis simultaneous ones. The diagonals that remains invariant indicates light. Funny how this shows connections with linear algebra and order theory.
Can’t claim to have even remotely understood this article with the intended precision, but I just loved the exposition of ”Are deep networks just kernel machines?” here: m0nads.wordpress.com/2021/05/09/are…
Stumbled on this discrete visualization of fundamental theorem of calculus by @PeterSaveliev and thought it was amazing!
This is a neat video to watch on how Leibniz conceived his version of fundamental theorem of calculus using the harmonic triangle and telescoping sums:
Matrices can be visualized as functions! This enables us to see matrix multiplication as function composition. In this thread let us take a visual tour of these mathematical ideas. To get this thread as a PDF: patternatlas.com/v0/matrices-as…
I stumbled on this idea as a part of my logical explorations. I saw how the matrix way of representing things has an intertwining between simultaneity and sequentiality which is awesome! Let us start uncovering the ideas here by representing matrices as pixel grids.
Let us label the matrix and understand how to represent arbitrary connections. A dark square in the pixel grid means a connection exists between a row element and a column element. A row element can be thought as an input and the corresponding column elements its outputs.
Design ∩ Code Systems: Curating a thread on a topic I’m really interested in. Tools that blur the line between designing and engineering. Hope you find something inspiring here: patternatlas.com/v0/models-of-i…
@bahrami_ Nodebox (@nodebox) is a node based environment for generative data / interactive visualizations:
This people generator is an interesting application of it:
Matt (@mattdesl) is one of my favourite generative artists and he has produced a slew of great art and software products over the years. Here is him testing out a new environment for his canvas-sketch toolkit:
After my explorations in the last few years, I arrived at an almost same global partitioning except that I had geometry and topology united and number theory featuring as a prominent circle.
I found out previously that Category Theory derives from Kant’s work:
This is in the philosophical realm but use of “relay signs” by artists and mathematicians as sharing the same protogeometry is an interesting take in this article. It draws links between the work of Peirce, Grothendieck, Riemann among others: glass-bead.org/article/multil…