プログラミング言語を取り巻くアレコレを雑に¶
https://anchor.fm/textafm/episodes/Sideshow-8--Writing-Your-Internal-DSL-e1c917j を聞いて
- 1980年代: オブジェクト指向以前、インターネット以前
- 1990年代: Classベースのオブジェクト指向の時代
- C++
- CにClassベースのオブジェクト指向を取り入れる
- Java
- CのようなSyntaxだが、メモリ管理やポインタなどを隠蔽してより書きやすく
- GoFのデザインパターン(1994)
- C++
- 2000年代: LL
- Ruby
- 実行速度よりも書きやすさ
- メタプログラミングによる拡張
- DSL
- DDD(2003)
- Ruby
- 2010年代: オブジェクト指向以外の方向へ
- Go
- Classおよび継承を使用しない
- 流行したパラダイムに対して「本当に必要か」を問い直す
- LLのように開発する(go run)
- Classおよび継承を使用しない
- マルチコア時代の高速化には並行処理・並列処理を求められる
- 1つのオブジェクトに状態を集約して複数の書き込みを同時に行うのは都合が悪い
- 関数型プログラミング的な、Immutableな変数と純粋関数と副作用の局所化の組み合わせによるプログラミング
- Go
- 2020年代 - ?
https://www.tiobe.com/tiobe-index/ https://gyazo.com/af497d92bd69ef590e76815ec4367a79
https://github.blog/2015-08-19-language-trends-on-github/ https://gyazo.com/d0fc30b79a219d04c01f0ee0f4636b0f