Programming Languages
research on programming language design and implementation
Resources
awesome
wiki
blogs
forums
implementation
- awesome-compilers
- create-language
- pldesign-wiki
- pl-resources
- haskell-research
- classic-papers
- The Implementation of Functional Programming Languages
- write-you-a-haskell
- fun-compilers
tutorials
crafting interpreters PL/0 in C, C in ?, jit ? in C++, jit ? in python, interpreter, haskell in ?, implementing a language in LLVM
types
other
-
modular codebase that you can use as a template for your next language
Todo
type theory
modules
- https://steshaw.org/plt/module-systems/
- first-class modules
- modular type classes
-
modular implicits
-
first-class modules. combining ml's core and module layer
parametric overloading/type classes
- dictionary passing
- https://okmij.org/ftp/Computation/typeclass.html
gadt
polymorphic recursion
linear types
capabilities
effect system
- An Introduction to Algebraic Effects and Handlers
- https://github.com/yallop/effects-bibliography
- extensible effects
- effect handler oriented programming
languages with effect systems: - effekt - koka - unison (effect system for capabilities)
dependent types
refinement types
higher-rank polymorphism
actors
capabilities
continuations
row polymorphism
denotational semantics
theorem proving
delimited continuations
agda, coq, lean
languages
- ats
-
low level functional language
-
capabilities, linear types
-
compile-time memory management
compilers
- scanning
- parsing
- semantic analysis
- optimization
- code generation
runtime systems
- garbage collection
- virtual machines
programming language semantics
https://hackmd.io/@alexhkurz/Hkf6BTL6Phttps://hackmd.io/@alexhkurz/Hkf6BTL6P
- domain theory
- operational/denoational semantics