Learn at least a half dozen programming languages. Include one language that emphasizes class abstractions (like Java or C++), one that emphasizes functional abstraction (like Lisp or ML or Haskell), one that supports syntactic abstraction (like Lisp), one that supports declarative specifications (like Prolog or C++ templates), and one that emphasizes parallelism (like Clojure or Go). ----Peter Norvig, Teach Yourself Programming in Ten Years 查了一下,我有7个语言写过2万行以上的程序。 Matlab,Fortran,Mathematica,C,Java,Python, Mathcad。
这个有点老。 我会这么说:one language that emphasizes explicit type abstraction (like Java or C++), one language that emphasize derived type abstraction (like Haskell), one language that emphasize data abstraction (like Clojure), one that support logical specification (like Prolog), one language that emphasize point-free functional abstraction (like APL), one that emphasizes language abstraction (like racket), one language that emphasize the closeness to metal (like any assembly language).
that
【在 c*******v 的大作中提到】 : Learn at least a half dozen programming languages. Include one language that : emphasizes class abstractions (like Java or C++), one that emphasizes : functional abstraction (like Lisp or ML or Haskell), one that supports : syntactic abstraction (like Lisp), one that supports declarative : specifications (like Prolog or C++ templates), and one that emphasizes : parallelism (like Clojure or Go). : ----Peter Norvig, Teach Yourself Programming in Ten Years : 查了一下,我有7个语言写过2万行以上的程序。 : Matlab,Fortran,Mathematica,C,Java,Python, Mathcad。