Prathyush Profile picture
24 Jan, 26 tweets, 24 min read
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.

You can get the full listing here: patternatlas.com/v0/pl/ Cover art of Programming la...
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. Logo of Pikelet from the Gi...
@brendanzab Koka is a strongly typed functional-style language with effect types and handlers: koka-lang.github.io/koka/doc/index…

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… Screenshot of Koka Language
@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 Screenshot of Factor on Mac...
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…

Repo: github.com/enso-org/enso
@enso_org Pony (@ponylang) is an actor model high performance language designed for the challenges posed by concurrency by Sylvan Clebsch and team.

There’s a collection of good videos on it here: codesync.global/media/top-10-p…

Repo can be found here: github.com/ponylang/ponyc Screenshot of a program in ...
Datafun is a language made by @arntzenius along with Neel Krishnaswami. It generalizes Datalog with higher order functional programming.

Website: rntz.net/datafun/
Repo: github.com/rntz/datafun Screenshot from the Datafun...
@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! Screenshot of writing in Ca...PDF exported from the langu...
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.

Read about it here: scattered-thoughts.net/writing/imp-in…

Repo: github.com/jamii/imp Screenshot from the core la...Screenshot of the language ...
Kitten is a statically typed concatenative language aimed at systems programming.

Website: kittenlang.org
Repo: github.com/evincarofautum… Kitten code screenshot
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.

Website: darklang.com
Repo: github.com/darklang/dark

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.

Repo: github.com/jeffreyguenthe…
Thesis: summit.sfu.ca/system/files/i… Screenshot from Jeffrey’s P...Screenshot from Jeffrey’s P...
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.

Repo: github.com/batman-nair/IR…
Demo: batman-nair.github.io/IRCIS/samples/…
@batman_nair_ Frege invented the quantifier as a higher order function: 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… Screenshot of Gottlob progr...
Arend is a theorem prover based on homotopy type theory. It natively supports higher inductive types and a version of cubical syntax.

Website: arend-lang.github.io
Repo: github.com/JetBrains/Arend

A tutorial on it by @ice1000kotlin is available here: ice1000.org/2020/05-14-Are… Arend logo
@ice1000kotlin Zap by Graham McNeill looks like a neat indie compile-to-JS language.

Website: gjmcn.github.io/zap/
Repo: github.com/gjmcn/zap Screenshot of Zap website
Found a performance-oriented language called Beef in the wild. It is designed to provide high level ergonomics suitable for game development.

Website: beeflang.org
Repo: github.com/beefytech/Beef Screenshot of Beef IDE
Wasp (@WaspLang) by @MartinSosic and @MatijaSosic looks like an interesting take on building web applications: wasp-lang.dev Screenshot of Wasp DSL
@WaspLang @MartinSosic @MatijaSosic Lain is a lisp dialect that is used as a templating and scripting engine at XXIIVV by @neauoire: wiki.xxiivv.com/site/lain.html It also powers their image processing tool Ronin: 100r.co/site/ronin.html Screenshot of Lain homepageScreenshot of Ronin
Pretty interesting language this one — Hamler is a Haskell style functional programming language that runs on the Erlang VM: hamler-lang.org Screenshot from https://www...
Orion is a high level purely functional programming language with a LISP Syntax: github.com/orion-lang/ori…

A small tutorial on it here: github.com/orion-lang/ori… Image of organization of Or...
Caramel by @leostera is a type-safe functional language that leverages OCaml compiler for the ErlangVM! Check it out here: caramel.run Screenshot from the front p...
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 Screenshot of the Ink blog ...
@thesephist Among the cool projects done with Ink, my favourites are:

1/ Lucerne: Twitter client
2/ Sistine: Static site generator
3/ Nightvale: Interactive notebook
4/ Eliza: Chatbot

Check out these and more on the projects page: dotink.co/docs/projects/ Screenshot of Lucerne, the ...Screenshot of Sistine, the ...Screenshot of Nightvale, th...Screenshot of Eliza, the ch...
Kind by @MaiaVictr and team is a dependently typed programming language for theorem proving: uwu-tech.github.io/Kind/

It was previously developed under the name of “Formality” and Victor has written some neat posts on it here: medium.com/@maiavictor Screenshot from Github page...

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Prathyush

Prathyush Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @prathyvsh

12 Nov 20
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… Cover design for Design ∩ C...
Starting this series with Baku’s GLisp editor — A Lisp-based design tool that bridges graphic design and computational arts. It is a polished product that shows the power of having linguistic abstractions juxtaposed with an interactive design space: glisp.app Screenshot of GLisp editor
It is bloody awesome to see him use this tool to build programming visualization environments. This is the 🔥 energy: https://t.co/OymbXqVM2z
Read 29 tweets
21 Oct 20
Starting a thread on my process for creating a timeline visualizer. I am building this for visualizing and sharing my understanding of the history of Lambda Calculus. Cover for visualizing a tim...
Here’s some prior work I have done that gives an idea of what I am trying to achieve. It shows a subset of ideas, events, and collaborations among pioneers that influenced the course of logic. History is replete with such multi-actor conversations:
I am doing this to complement my Lambda Calculus project and the results of these explorations will be available here shortly: prabros.com/lambda-calculu…
Read 10 tweets
28 Jul 20
Here’s a metathread that catalogues the topics I have been exploring for the past few years.

Volume 1:

1/ What is Life?
2/ Lambda Calculus
3/ Linguistics
4/ Computational Trinitarianism
5/ Chaos and Fractals
6/ Differentiable Computing
7/ Higher Dimensions Cover art design for the metathread catalogue
1/ What is Life?

Inspired by the dichotomy of “gear like” vs. “life like” in engineering proposed by Alan Kay, I started looking into biology to understand it deeply. In this thread I visualize “What is Life?” by Erwin Schrödinger as I read through it:
2/ Lambda Calculus

In my pursuit for developing a graphic design tool, I realized the need for a Turing complete set of primitives for building designs bottom up. This lead me to Lambda Calculus, a formal system to explore the Turing Universe:
Read 5 tweets
24 Jul 20
This is one of the most important talks I have come across recently. It critiques the discrete alphabet oriented encoding which Longo locates as the LaPlacian computational paradigm for its determinism as being the reason behind many artificial bounds imposed on human inquiry.
Yet to arrive at a tractable way of expression for this in my programming work. But computation can be expressed as a traversal on a topological space. Here’s Longo’s paper that talks about topologies for computation: di.ens.fr/users/longo/fi… Screenshot of Longo’s paperPortrait of Giuseppe Longo
Finally a step closer towards this direction. The paper “Topological Interpretation of Interactive Computation” by Emanuela Merelli and Anita Wasilewska shows how a loop we describe with symbols when programming becomes an actual loop in space! arxiv.org/abs/1908.04264 Screenshot from Topological...
Read 34 tweets
29 Jun 20
A few weeks back, I stumbled on this memoir by Alfred Kempe on the theory of mathematical form published in 1886. Here’s a tweetstorm as I read the paper. Cover art for tweetstorm on...
Alfred Kempe was the student of Arthur Cayley. In this philosophical work, he tries to unify geometrical form with logic. It would later influence Royce, Peirce, and a slew of mathematicians in their work on logic. It is available here: royalsocietypublishing.org/doi/10.1098/rs… Image
The scope of this memoir is to distinguish the necessary matter of exact thought from its accidental garbs. Kempe believes that algebraical, geometrical, logical, and other kinds of thinking share a unified connected form. Scope of the memoir with il...
Read 10 tweets
20 Jun 20
Seeing this tweet sparked a thought that iteration could be cast as a sort of dual of recursion. The idea in @CentrlPotential’s tweet is called factoring out the characteristic equation of a recurrence relation.
The characteristic equation extracted out can be used to arrive at Binet’s formula via Umbral Calculus. This formula is used to calculate the nth Fibonacci number.

Conversely, golden ratio is approximated through iteration of ratios of successive Fibonacci numbers. Image
Making this post, transported me 8 years back to 2012, when I posted this question on Quora: quora.com/Can-all-iterat…
Read 5 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(