algorithmica-org/algorithmica

Section 1.2 # Types of Languages, better examples

q3cpma opened this issue · 0 comments

Hello,

while it might be worth making the distinction between a programming languages and its implementation(s) or adding the garbage collection (protip: reference counting is also GC) distinction, this issue was prompted by reading the native/managed duality point immediately followed by the grouping of Python (cpython, I suppose) and JavaScript/Ruby (both being JiT compiled in their most popular and/or reference implementations) in the examples.
Even more confusingly, PyPy is mentioned a bit further.

Personally, when I have to use such categories, I use Interpreters, Bytecode compilers (aka VM) and Native compilers with JiT/AoT and GC/manual as possible additional differentiators.

PS: your work is amazing and very beginner friendly, I hope it'll help CS students smothered by theory and doing everything in Java/Python understand real world programming a bit more.