Skip to content

Latest commit

 

History

History
103 lines (98 loc) · 10.8 KB

README.md

File metadata and controls

103 lines (98 loc) · 10.8 KB

Programming Language Explorations

A collection of illustrative examples in close to 100 programming languages, including every code snippet used in the book Programming Language Explorations.

Nearly every program in this repo can be run at Replit. Many (especially the smaller single-file scripts) can also be run at TIO or OneCompiler. Many languages feature their own ”official” online playgrounds, notably Rust, Go, TypeScript, and Haskell.

You are welcome to clone this repository and run the examples locally on your own machine. See the specific README files within the language sub folders for instructions running the examples this way. You'll generally have to first download and install a language implementation for your particular operating system and architecture; such information is generally available online, but the individual language READMEs will often have pointers.

Each of the examples here have been tested on a machine running macOS using the language versions in the table below. The tests are executed via the test.sh script in each language folder. Modify the test script or install a suitable Unix-like virtual machine if you desire to run the test scripts yourself.

Language Version Platform
Ada 2015
APL
AWK 20070501
Bash 3.2.57
Befunge
Brainfuck
C C17 Apple clang 14.0.3
C# Mono C# compiler version 4.4.1.0
C++ C++20 Apple clang 14.0.3
Ceylon
Chapel 1.19.0
Clojure 1.11.1.1347
CoffeeScript 1.12.2
Crystal
D DMD64 D Compiler v2.076.0
Dart 1.24.2
Delphi
Elixir
Elm 0.18.0
Erlang 21 Erlang/OTP 21
Factor
F#
Fortran GNU Fortran (GCC) 6.1.0
Futhark
Go 1.16.4
Grain 0.5
Hack
Haskell 2010 Glasgow Haskell Compilation System, 8.10.5
Idris 1.3.1
Io 20140919
J
Java 20
JavaScript ES2023 Node 20.3.1
Julia 1.1.1
K Kona Win.3.39-69
Koka
Kotlin 1.9.0
Lisp
LOLCODE 0.11.2
Lua 5.4.3
Mercury
Miranda
Mojo
Nasm 2.13.01
Nemerle
Nim
OCaml 4.07.1
Octave
Odin
ParaSail
Perl 5.26.0
PHP
Prolog
PureScript 0.11.5
Pyth
Python 3.10.0
Q#
Quipper
Quorum
R
Racket
Raku
Ruby 3.2.2
Rust 1.69.0
Scala 2.12.8
Smalltalk
Standard ML mlton-20180207
SudoLang
Swift 5.8.1
Tcl
TypeScript 5.0.4
V
Vala
Verse
Whiley
Zig