曾阅一博,曰,当今必学编程语言有六:Python、C、Java、Scala、Clojure、ML。
编程语言大类,莫非Object-Oriented,Procedural,Functional, Logical。而 《7 languages in 7 weeks》 则推荐如下编程语言:
- OO: Ruby Scala
- Prototype: IO
- Logical: Prolog
- FL: Scala Clojure Erlang Haskell
语言特性又如:
- Concurrency: Actors in Io, Erlang, and Scala; STM in Clojure
- Partern Match: Scala, Erlang, Clojure, and Haskell
本书未提而其他还蛮有意思的如:
- Declaritive:Prolog SQL
- Data Oriented: SQL
- Aspect Orented: AspectJ AspectC++
学习编程,个人愚见,几种类型都涉猎无疑功力大增。Erlang偏居一隅,不必学。Io倒不如JS。Prolog、Scala还是必须学。 作者过赞Ruby,小型网站Web开发尚可;还不如学习用途更广之Python。还想深入,纯FL则Haskell、LISP方言则Clojure。 还未提到的Aspect-Orented的AspectJ和Data-Oriented的SQL,也是必不可少要学的。
于是自己列了一自拟的编程语言学习先后等级:
- C Scala Prolog
- Python、SQL
Clojure、Haskell、Ocaml、AspectJ
想必自己学完如上所有语言,对各种语言模式了解更深,以及解决不同问题时对各种顺手语言的选择空间更大。
Original post: http://blog.josephjctang.com/2013-12/pl/