编程语言和工具比较【翻译】

本文内容

  • 编程语言
  • 编程工具

本文比较了各种语言,包括语法和执行、变量和表达式、数学和逻辑、字符串、正则表达式、日期和时间、可变数组、字典、函数、执行控制、异常、并发,以及文件、对象、继承和多态、反射、网络和web、单元测试等等方面。

但是,我比较想了解一下这些语言的设计哲学,可惜没有~

编程语言


Interpreted Languages(解释型语言):JavaScript, PHP, Python, Ruby。相对编译型语言,源代码不直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行。因此,解释型语言的程序不需要编译,在运行时才翻译成机器语言,每执行一次都要翻译一次,因此效率比较低,而且依赖解释器,但跨平台性好。

More Interpreted Languages(更多的解释型语言):Perl, Tcl, Lua, Groovy

Operating System Automation(操作系统自动化):POSIX Shell, Cmd.exe, PowerShell。这些语言是一种命令行外壳程序和脚本环境。

GUI Scripting(GUI 脚本):Smalltalk, AutoHotkey, AppleScript

Stack-Oriented Languages(面向堆栈的语言):Forth, PostScript

Prolog and Erlang:Prolog, Erlang

Lisp Dialects(Lisp 方言):Common Lisp, Racket, Clojure, Emacs Lisp

C++ Style Languages(C++风格的语言):C++, Objective-C, Java, C#

C, Go, and Dart:C, Go, Dart

Pascal Style Languages(Pascal 风格的语言):Pascal, Ada, PL/pgSQL

Rust, Swift, Scala:Rust, Swift, Scala

ML Dialects and Haskell:SML, OCaml, F#, Haskell

Numerical Analysis & Statistics(数值分析和统计):MATLAB, R, NumPy

Relational Data Languages(关系数据语言):SQL, Awk, Pig

Fortran and APL:Fortran, APL

Gnuplot, GLPK, Coq:Gnuplot, GLPK, Coq

Computer Algebra Software(计算机代数软件):Mathematica, SymPy, GAP, Pari/GP

编程工具


Unix Shells:ash, Fish, Ksh, Tcsh, Zsh

Text Mode Editors(文本编辑器):Vim, Emacs, Nano

Version Control(版本控制):Git, Mercurial

Build Tools(生成/构建工具):Make, Rake, Ant, MSBuild

Terminal Multiplexers():Screen, Tmux

Relational Databases(关系型数据库):PostgreSQL, MySQL, SQLite

Lightweight Markup(轻量级标记):Markdown, reStructuredText, MediaWiki, AsciiDoc, Org-mode

2D Vector Graphics(二维矢量图形):PostScript, Processing, SVG

参考资料


posted @ 2015-04-08 18:04  船长&CAP  阅读(798)  评论(3编辑  收藏  举报
免费流量统计软件