ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAO
1
UPDATE JUNE 2019: EDITING LOCKED DUE TO VANDALISM. You can till comment though.
2
Instructions: Preferrably link the text itself (Ctr + K), or insert a note with a link to the source if you add or change any answer (and, if you want, your name and email)
3
Feel free to add additional "wishlist" features and compiled languages that you think fits here
4
Content license: CC0 (by contributing, you agree to the license terms)
5
Language (A-Z)Has reached 1.0Compiled
Statically typed
Non-GPL OS licenseMulti-core
Multi-threading
Light-weight threads
M:N multiplexing
Provides Garbage Collector
Can run w/o Garbage Collector
1st class functions
Nested functions
Anonymous FunctionsREPLGenericsDelegationStatic DSLsClass Inheritance
Package/Module support
Pattern MatchingLinux supportMac OS supportWindows supportAndroid supportiOS supportWeb support
Serverside support
WASM supportDe-facto std dependency mgrGotoDynamic data typeSimple type deduction
HM Style Type Inference
Algebraic data types
Hygienic MacrosContinuationsnative 128b, 256b… data typesMixins"Hello World" executable size [KB]RAII
6
AdaYesYesYesFor GNU versionYesYesYes (tasks)YesYesYesNot yetYesAda2005+NoYesYesYesUnder GNATYesYesYesDoableLacking port in GCC - doableYesYesYesYesYesMaybe?between 32 and 1500
7
AstroNoYesYesYesNoNoNoNo(Yes)YesYesYesYesYesYesYesYesYesNoYesYesYesYesYesYesYesNoYesNoNoYesYesYesNoYesNoNo
8
CYesYesYesYesYesYeslibmill.orgNohttp://www.hboehm.info/gc/YesFunction Pointersvia gcc extensionNo(Can be done with macros)Third Party (PCRE)YesYesYesYes
Via Emscripten
NoYesNoNoNoNoNoYes8.4
9
C++YesYesYesYesYesYesboost.fibersNoYesYesc++11C++11 (Lambdas)Yes3rd partyYesYesNoYes (C++11)Yesxcode...NoYesYesNoNoNoNo (128b extensions, 3rd party GMP)8.4Yes
10
CrystalYesYesYesYes??????Yes???YesNoYesNoYesNo yetYesYesYesYesYesIn progressExperimentalYes (shard)No173
11
DYesYesYesYesYesYesYesNoYesYesYes?YesYes3rd party...YesYesYesYesYesYesYesExperimentalYes(dub)YesYesYesYes876Yes
12
FreePascalYesYesYesYesYesYesNoNoNoYesYesYesNoYesYesYesYesYesYesYesYes30
13
GoYesYesYesYesYes(Yes)YesYesYesNoYesYesYes3rd party...NoNoYesYesYesYesYesexperimentalNoYesYesNoNoNoNo934
14
HaskellYesYesYesYesYesYesYesYesYesNoYesYesYesYesYesTypeclass InheritanceYesYesYesYesYesYesYes (cabal)YesYesYes
15
IdrisYesYesYesYesYesYesNoNoYesYesYes
16
KotlinYesYesYesYesYesYes (JVM only)Yes?Yes (JVM & JS only)Yes (Native only)YesYesYesYes (JVM only)YesYesYesYesYesNoYes (JVM, JS and Native)Yes (JVM, JS and Native)Yes (JVM, JS and Native)YesExperimentalYesYesExperimentalNo (most Kotlin projects use Gradle)NoYes (JS only)YesYesNoNoYesNoNoLinux - 284
17
LunaYesYesYesYesYes
18
NimYesYesYesYesYesYesNoNoYesYesYesYesYesNoYesYesYesYesNoYesYesYesYesYesYesYesVia emscriptenYes (nimble)NoYesNoYesYesYesNoYes85
19
OCamlYesYesYesYesNo(Yes)?NoYesYesYesYesYesYesYesYes (OPAM) ?YesYesYes
20
ParaSailYesYesYes YesYesYes?NoYes
21
PonyNoYesYesYesYesYesactorsYesYes (per actor)NoYesYesYesNoYesNoYesYesYesYesYesNoNoYes (stable)NoYesNoYesIn ProgressNo128326
22
RustYesYesYesllvmYesYesfibersNoNoYesYesYesYesExperimental 3rd partyYesNoYesYesYesYesYesYesYesYes (cargo)NoYesYesYesYesExperimental (128b)between 9.2 and 3'600
23
SwiftYesYesYesllvmYesYesNoNoNoYesYesYesVia LLDBYesYesYesYesYesIn progressIn ProgressYesYes (swift)Yes
24
VNoYesYesYesYesYesComingComing?NoYesYesYesYesYesYes< 65
25
ValaNoYesYesYesYesYesNo?NoNoYesYesYesYesYes
26
ZigNoYesYesYesYesYesYesYesNoYesNoYesYesYesYesNoYesNoYesNoNoYes13
27
28
Contributed languages that don't satisfy the basic requirement, like being statically compiled
29
Stackless PythonYesNoNoNoYesYesYesNoYesYesYesYesYesYesYesYes (pip)YesYesNointerpreted
30
SchemeYesYesNoSometimesYesYesYesYesYesNoYesYesYesYesYesNoNoYesYesNobetween 8 and 15000
31
ScalaYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYes
32
33
Contributors (add your name here if you want!):
34
Go: no thread-locals, cannot set thread affinity, no thread control whatsoever
35
Thanks! I added it as a note on the Go cell // Samuel
36
--------
Kotlin
--------

- Has three developer platforms:
* JVM: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/
* JS: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/index.html
* Native: https://kotlinlang.org/docs/reference/native-overview.html
- Multi-platform support will arrive in Kotlin 1.2: https://kotlinlang.org/docs/reference/multiplatform.html
j
37
Python: Does stackless also have a GIL? Then threading would only be interesting for I/O bound stuff.
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100