Skip to content

Latest commit

 

History

History
94 lines (65 loc) · 4.75 KB

nextgen.md

File metadata and controls

94 lines (65 loc) · 4.75 KB
title
Ruby vs Language Next Generation

Go • Rust • Elixir (on Erlang) • Crystal

First Appeared

Lang First Appeared
Ruby 1995; 23 years ago
- vs -
Go 2009; 8 years ago
Rust 2010; 8 years ago
Elixir (on Erlang) 2011; 7 years ago
Crystal 2014; 3 years ago

Source: Wikipedia Programming Language Infoboxes

Designed by / Developers

Lang Designed by
Ruby Yukihiro Matsumoto
- vs -
Go Robert Griesemer, Rob Pike, Ken Thompson
Rust Originally Graydon Hoare, then Rust project developers
Elixir (on Erlang) José Valim
Crystal Ary Borenszweig

Source: Wikipedia Programming Language Infoboxes

Paradigm

Lang Paradigm
Ruby Multi-paradigm: object-oriented, imperative, functional, reflective
- vs -
Go Compiled, concurrent, imperative, structured
Rust Multi-paradigm: compiled, concurrent, functional, imperative, structured, generic
Elixir (on Erlang) Multi-paradigm: functional, concurrent, distributed, process-oriented
Crystal Multi-paradigm: object-oriented

Source: Wikipedia Programming Language Infoboxes

Typing Discipline

Lang Typing Discipline
Ruby Dynamic, strong, duck
- vs -
Elixir (on Erlang) Dynamic, strong
Go Static, strong, inferred, structural
Rust Static, strong, inferred, nominal, linear
Crystal Static

Source: Wikipedia Programming Language Infoboxes

Influenced by

Lang Influenced by
Ruby Ada, C++, CLU, Dylan, Eiffel, Lisp, Lua, Perl, Python, Smalltalk
- vs -
Go Alef, APL, BCPL, C, CSP, Limbo, Modula, Newsqueak, Oberon, occam, Pascal, Smalltalk
Rust Alef, C#, C++, Cyclone, Erlang, Haskell, Haxe, Hermes, Limbo, Newsqueak, NIL, OCaml, Ruby, Scheme, Standard ML, Swift
Elixir (on Erlang) Erlang, Ruby, Clojure
Crystal Ruby, C, Rust, Go, C#, Python

Source: Wikipedia Programming Language Infoboxes

Influenced

Lang Influenced
Ruby Clojure, CoffeeScript, Crystal, D, Elixir, Falcon, Groovy, Ioke, Julia, Mirah, Nu, Reia, Ring, Rust, Swift
- vs -
Go Crystal
Rust Crystal, Elm, Idris
Elixir (on Erlang) LFE (Lisp Flavored Erlang)
Crystal

Source: Wikipedia Programming Language Infoboxes