hero

@avi/plangs

Clojure notes

Start 👉

⏱ Functional Programming

Pure Functions, mutations and states, PDS, STM for transactions

🔢 Homoiconic

EDN syntax for both plang and data. Code is data

🔀 Concurrency Support

Run programs on multi CPU architectures. Atoms, agents, refs and vars

🔧 LISP like syntax

declerative styled scheme like syntax with dynamic dispatch

🌏 Fullstack language

web client code in cljs

🔉 REPL driven Dynamic development

Declerative styled REPL driven development

🔉 @runtime Polymorphism

Dynamic dispatch using defmulti and defmethod. With free transaction retry support

  • Rich Hickey in 2007
  • Frontend Built on top of JVM
  • Lambda Claculus yields a small language core, Other language features are implemented as MACROS
  • Accepted in HOPL (opens new window)
  • Implement erlang like message passing distributed systems using Actor Model
  • No Assignment Operator, use let and def

*[HOPL]: History of porgramming languages

14 Articles