版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、11 大類編程語(yǔ)言功能比較表導(dǎo)讀:有程序員的地方就會(huì)有因?yàn)閷?duì)編程語(yǔ)言的探討而引發(fā)的戰(zhàn)爭(zhēng)(例如Linux之父Linus Torvalds炮轟C+ 無(wú)是處,認(rèn)為C+既無(wú)助于簡(jiǎn)化,以實(shí)際用于進(jìn)行原型化或者簡(jiǎn)單 的GUI編程,又不是像C那樣的簡(jiǎn)潔的系統(tǒng)編程語(yǔ)言,能夠積極地鼓勵(lì)開發(fā)者使用簡(jiǎn)單和 直接的語(yǔ)言構(gòu)造;而另一位大牛PaulGraham則強(qiáng)烈鄙視Java,認(rèn)為使用Java的公司都 不足為懼)。同樣的,中文java技術(shù)網(wǎng)時(shí)間編程趁勢(shì)頻道每個(gè)月根據(jù)TIOBE的數(shù)據(jù)編譯的 語(yǔ)言排行榜也在一定程度上代表了開發(fā)語(yǔ)言的流行趨勢(shì),由此引發(fā)程序員們的熱烈討論。有兩個(gè)人的地方就有政治,有兩個(gè)程序員的地方就會(huì)有關(guān)于編
2、程語(yǔ)言的爭(zhēng)論。當(dāng)然,本文的 目的不是為了引發(fā)語(yǔ)言戰(zhàn)爭(zhēng),而是通過(guò)信息列表的方式來(lái)比較不同語(yǔ)言的功能特性,為開發(fā) 者提供參考。其實(shí)對(duì)于一個(gè)產(chǎn)品的開發(fā)來(lái)說(shuō),語(yǔ)言選擇不是最重要的。關(guān)鍵是哪種語(yǔ)言更適 合。工具畢竟只是工具。如同電視里面經(jīng)常有一些工夫高手,利用樹葉殺人。其實(shí)就是鮮活 的例子。本文信息和數(shù)據(jù)出自hyperpolyglot,將當(dāng)前主流編程語(yǔ)言分為11個(gè)大類,分別為:解釋 型(PHP,Perl,Python,Ruby,Tcl,Lua,JavaScript,Io)、操作系統(tǒng)自動(dòng)化型(POSIX Shell,AppleScript,PowerShell)、C+風(fēng)格(C+,ObjectiveC,Ja
3、va,C#)、Pascal 風(fēng)格 (Pascal,Ada,PostgreSQL,MySQL)、Lisp類(CommonLisp,Scheme,Clojure,EmacsLisp)、 類型推理類(StandardML,OCaml,Scala,Haskell)、聲明型(Prolog,Erlang,Oz)、 Concatenative 語(yǔ)言(Forth,PostScript,Factor)、數(shù)據(jù)轉(zhuǎn)換(SQL,Awk,Pig,XSLT)、計(jì)算機(jī) 代數(shù)(Maxima,Mathematica,Sage)、數(shù)字分析類(Fortran,MATLAB,R,NumPy)。每種語(yǔ)言列舉的功能包括算術(shù)和邏輯/字符串/
4、正則表達(dá)式/時(shí)期和時(shí)間/數(shù)組(陣列)/字典/功能/文件控制執(zhí)行/目錄/進(jìn)程與環(huán)境;庫(kù)和模塊/對(duì)象/映射/Web/測(cè)試/調(diào)試與分析/交互 性/,以及語(yǔ)言誕生時(shí)間、版本號(hào)、hello寫法的比較等等。一、解釋型語(yǔ)言:PHP , PERL, Python 和 Ruby: PHP, Feri. FyOum, fcubjrperl (L$Wpyihcnrii)y (139(5)S35 2: 5 U2檄2f t, f 9isolicii prlflEwc-use slnctimport os. rerrhweskewS pftp version宜卿 wersi伽$ py(h&n -V5 fUCy x.ver
5、sBoniatcrprEtcr$ php S 艸 p5 曲11 oo pFS Pflhcn kc.pr客他創(chuàng)(co巾S php$ pert-蟲 03 pylhm&rbas sigro? nnSvi 1;Sv= 1.frssfflifirtTOnffi car* be剎磚$關(guān)W/sp rt5p 旳才i 剛冊(cè)詢?nèi)纾? fva 1pa-rollrlB5S5fn=en-ttsiCSx, Sy Sz)T.v = 1. 2. 3 f raised VUjeEzrriH y = 1, 2. 3=raFses VJueErrw m y z= 1, 21 = 1.2, 3 -Sisdcardd 仃“ 2r3 H
6、 2 誨 l-o nt x.v, z = 1,2SWVFisICSk. $y) = artaSy. $x);(S. Sy) = Sy.銅;% yy m *注:因原圖太大,文中僅截取了部分圖片,詳細(xì)請(qǐng)點(diǎn)擊上圖。 (下同)二、解釋型語(yǔ)言: Tcl,Lua,JavaScript,IoInterpreted. Lartgu.agesr T-cl, Lua, JIo+ cl (1988)Ils (13)Lin (1993)ijo GOOS)ver gicoi nxsedS55.1ECfrWEeflpf 5W&01C5.ahflver sxonS tdsh% inio tellers ionS lua -
7、v5 node versionSio lo Slem VerSwrimt srprelerS tdsb foe tdS lua foo.lus5 node foo.js5 EafDo.iorep 15 tdsh$ luaS node5 ioblockdel mit ers-do end0023Cl Kix= 1-x- 1:x := 1# excaptEin(f x doganlews x= 1Exraplassrqn Sk Sy 丁忙n、Imp = x; ix-y.廠tm.imp:- k x= yten 羽dec lare local liable# s-et vmristiJ tRsids-
8、 prMdure pfrc 忙ici args set k 1local x = 173rx -1:X -12 閉d-Qf- liiL-e cdKsueittfre-ammenr ccrnmenLfl commentfi CM)Fnin?nt w oomnentnullfillnulnil三、操作系統(tǒng)自動(dòng)化: POSIX Shell, AppleScript, PowerShellOperaUng System A.uiofnatn: POSfX Shell, AppteScripi, PowerShell-rosli shnll (1S9S)epplesfriD-t (1993)pcmier
9、GhcIl (2verslort used2.12show version$ 5;rip( -e 8,Appl?$cripfsuer&ian,*Shosl versioniriterjMeterS ash f shEo&flHnDt fQO.SEPtreplnorreW powers el Iexecute- coniBartd and rari tS dash echo hiS osascnpt -e say$ powerstiell - comm andwril&-Etate-iuent separatorptpehnes separated by& newlrne:術(shù) 口”叩伽 hive
10、rcsseL to esca-pe newlfi anti contifiu& 創(chuàng)e 館jnanf o/j towtng 肺皓;or ne/ne 8 n&witrre can 姑 &sca-p*d vrHh 占 trcMrCk 陽(yáng)汕請(qǐng) 碗 pem)jtreci in double (jyofss riXjrf Hf&rIjssisnnicirLta=1whitespace n&xlio = nd p-ermitteciset a to 1 cop7 1 to aSa = 1aralke-1 assigiupentsd a.blttnp=Sa aSb b=Stmpset a.b to b,a)S
11、s. Sb1 Sbr $枚咖no陽(yáng)nofie$F = 1 5x+* 3x-四、C+風(fēng)格:C+,ObjectiveC,Java,C#亡2鳥覚匸毗哪宅殳C* abtftrjgQ餌韭CIV卅 OoaajUMS)宀 twii)hl la- T葉45 e-at lie lb .cpprid-jda-切l(wèi)awtrEatvAusog narasace-sftl:H mainiin t arg u 廿arai il 他址 g Held, bYolitr * encl;$ H*憐削占.邯p$栢W1HUIq. MortflSuN hgfto.ntrind ude -istdki.h mC maFirrt irc
12、cMr IB廠H.W orldni:$ 口 cchimm 也 Aul拠1檢.詁1 口眩S cart Helte.iava pLblizdasslflojJ public 54aQc dm1 man(Slrrin6 args-jSslemgul d nm QrirHHD. Woiijn,商虻甩1価血曲 $冊(cè)彳HelloS od ItGlIC.CSuwg Sydwn:dass Hdlo 出ThdM四陽(yáng)3站tEEole.WiitHli ne曲 llg 典 EdT.SfrttahJ&llii.tEHeilai asUlIL on 31*1,idv4 I 予曲弼口黑坤W甲* E-L OTb$ k T百用
13、y0比一v旳iMLe%-T LF3 ri. 已T*d.第LLP協(xié)隔曲皓UBS ACW匸 4V. hM4IT B-tjiCl ELll iLtffLl”q?口 Iw.oni.h.ajavan ere .dassC&.IOTif .6KB iX.illnral 1MILLNULLndlFTL ht iWHrt “ ? ;Sy stem Gwiacie-.V/fleLin acourt 訕亍rruh Air ICtff*L tl IStlrll懸譙i曲6MemaMameD4r.3 v-anaiDie r*sm?A yACRO FjJkLiE:.耐iisg冏ram.于oanabieafFiPaOiE勺
14、耐 aMethcdbJatfne-na-13血理切己陀鼻亡勺二hmnw 舟日亡丘苫誑IFav gft a teNamgcfrhln xdstring si 三 s2I Wasnifr;iNSmng bi1 =s2 | 島訓(xùn)事hullSbing 31 =s? = = null + was iuir ditwigs-l si asnuir五、Pascal 風(fēng)格:Pascal,Ada,PostgreSQL,MySQLPascal &n le Lanouane PascalPad oreSflL rSOLp.Htl (tOTO. 19914 dgff3h 1如5)P”E|產(chǎn) z#1948JniLJht
15、lia woTdS cat hello 陽(yáng)占 prcgram hello: BWlfl旳ii 口 口; end.SfpG hello pasSJhMba1h TetJO. use reLio:&cat wn. adhbginPii LHiB(rhiellaWwld!;Ed Ms &啊aiycc-c r日加為 乞阿制hinc blla 別刪桃h詼出 ik woiui宜仙口47被aeaie or replace runcon tieloODeflnrelMm Helb Wotd ; 尹刖武SS Isngu-a pl 即Ml CREATE FUNCHQNselect ItllClO: 詢Ci# cr
16、eate Juncfiora n日rehrms:vsirdiaiCSMi rtyrn *3耳網(wǎng)艸列口1:Q uery OK, D row& dlTec他口 (0.00 secj 在 saleci ndk)訃HClOWId!-1 rorwffl (Q.lflKC)屈 1 wow 1 rowFree Fiscal 2maGmTGCC4.1.2Pp5t5SS.ith SOI 5.5.Sset sal rrp?ift=,,it|l,rtrii aeirpc vgnatjcc-verson口S-j -0fSw5H叫 st帖-vwsicriI:1 ecmmeiTi WJ ccmwflr t :x-)-cT
17、Knanr/rifi+ cav個(gè)nf血呂-二lEltl: XlXL 13 vnarow六、Lisp 類:CommonLisp,Scheme,Clojure,EmacsLispLisp: Common Lrsp. Sen an e. Gl 即ure: EmacsLispwon livp C晦1)xchne Q97S)rLfljwE 融(KT)s lip (1S8S)ve-x s i oxi us t JS-C_心&CUSP2-43.CfiiWJlOire f 2Etom 23 fV*T51 -5ft勒戟口 -version S dM -A&rsiari苗 racist -v-rsisn出i 4S
18、 emacs-rsion3 Sbcl 宮eta3 racket5 java.pi.THH-0/dQure.i arl.l-K ietninuuik ng injci.e-m sortieL1-x Ml1,1ifcD-intfiracuon-nwdssbwb吐占i.usr/bn/env sbci- npl利u 詡口tvum clisp理fimJblK電tw rack - -scriptpecy衛(wèi)at厲產(chǎn)Ajsrrhn 也耐 ja?a -jar 也ur電acau brfi.ftmsM 亠30*1ling$ dlep -cH. .-.tsp 看席腳*S rnzc .ncc .rFtM-k DytSc
19、ornpiHBse x 電匚 ulblc(ubM腳A郎- a mo-dieaceriaAie:電追 outzblal UMlevel- : S mzcexe- 眈c陰foe4-11 ty4Siab 說(shuō)ncfion. sinja.aass. .su&vat甘色i/aua, fu/Kho/i. sifutt .1*5r -rnt 5-cE-iE-itriWfi?eK?acrWueSOGBoil IE 0 euli IE0Myesnull Jr. ?om. HQ.nonl. 0.禍tyji-g-of啊電Mlypa匚13細(xì)七、類型推理類:StandardML,OCaml,Scala,HaskellTy
20、pe InfeEn匚已 LancEjages: Standard MLl QGamt 呂匚ala. Haskellstandard ml (1990)ocaml (159&)seals (3003)JujfikJl (1990)version uspiSML AV W 心3.V Q2$6.12.1versi onSML NJ dfslays 偲rs心n on5捕叭爐S ocaml versionS seal a., ver sion$ ghic - version$ oca ml too ml$ scalaJoo.scala$ rtinghc fao.hsshebamnoneVusr/bin/
21、env ocaml刑 sh exec scafa 菲/usr/bin/en v runghcbytecode caimiler and i nterpre t 君a?S ocamlc foo.ml-ofc*o$ ocamlrun tooS scalae Foo.seal3$ seal各 Foon柯世native CQiipi 1 erS Qcamiopt fao.mi -o too$ JfOOnoneS ghic -of-oo foo.hs $ Jfoalibrary which al way s i nipor t edPervasiv&sPreludestatejneni teriDina
22、tor:or sojnjnsha equi or 際 tfuJent&tion.blacks(expr ;)(岬;) begin巳腫: endOf 八、聲明型: Prolog, Erlang, OztuoDjidqqMMMMjopeddijsisodqyodzsgt eAiieueeuooJU6UUUMDE %jueuuiroe%JeiUJUtKi E %pu5:anq; / t0 X鐮罰卻2pua pj L* esfa o uaino=-xit uemtxxjjpud k-rO X 建 a = scH * 0 叫)t*1t = JC-jW#P昭# M 舊辭5UJ Ctf PUJ ; $313
23、)已i創(chuàng)腕岳胸F * 7/41 iflrf 那擔(dān) M? Jfl *皿L4 f-s.-sp.r wsnst 尙snor用門tqi !皿幻“加兔5X”.4?血乂切QQEJ!訝刻3”L0腳砂XT利他Wise a.-r;A -:-:*t(ji !矗圧s-ejont? h 加嚀即M HJSQE膽tp昌U印LUtf (口逅5;?- r . -5 5 !tOF t-FT?TsrvwraTvis(KBiCQ 10M殆 口 u即3 txijciFd EnDmaAitBJeijaaiuo3-np9dqz.30MMMCori catenate9 Languages: FortJi, Posts匚ript. Fach
24、fforth C19Y3)vast sgtipi (1982facior (200?versicm usedGfortti 0.70Preview 5.0.203set version$ gforth -vers ionAbout Preview in P review jnenuflofs VQfSfon w/im donJoading factorcomenanin/env factorexit inTerpreter er replbyequitUSE: system 0 exitdocitmentationtan helpwards case sensit lve?iresiesass
25、ignmentvariable a3 a I了 a 十/a 3 def7 curreitdict /a pet addSVMBOL a3 a set7 a ger +increment and decrement了 U7 1-toendaf-line consent1 1 + addition1 1 add % addition11 + additioneBibeddftd -in-1 i ne ccntment1 1 ( additron ) +MCE血nnonenullnullnull restno fiea get null -Etscksdatafioating pointiacals
26、operand diciionjy execution 彳即晦siate dipping patht/afa十、數(shù)據(jù)轉(zhuǎn)換: SQL, Awk, Pig, XSLTDa la TrnsforrThatioo Languages SQL A.wk.刊g: XSLTart ClT)pifi(2Q哪)礙It (193?)version 口丸dg Q固0刊旳f0.3Saotoji 5.3show vcrsi-onS p-sql- version$ a*vK -versions-pig- version5斛滋-dp 砂on 3f I ndiiet.5f.5aKan TransformInt eiprete
27、r-fItMisqlS ak -f foo.awk bar.txtS- ptg-f feo.pig5 java -cp saxoQjar net.sf saon.Transrorm I -xslJoci.xsl -s:Mr.KrrilreplS pfsqlnonQS pig-x localnonesta.Tecnftn t se&sTater:M/WJWTO;and 哪wdin孚 wh-n (/Sf REPLst爭(zhēng)XMt etemenfe med 曰舊 ro/fflijiafed i&ytagsblock delimiter層 in SQL: PUSQL /ss? J(硼 OflfS to delrmit(btocks 自怡 XML efer?w丹茁 4nd are terirtsfed fry E/ii&rr怙潭to-end-nf-line-CQITlKn.t-Eurnm entfr EDHim EFl:CQHi TSIrtoieconweni; out ccijItiple linestom/ierj9co!*il?nenl another cumme-niT_ conime-ntmnorfw comment 、計(jì)算機(jī)代數(shù): Maxima, M
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 臨時(shí)用工人員工作態(tài)度
- 高端餐飲金箔施工合同
- 旅游景點(diǎn)樁基施工協(xié)議
- 住宅小區(qū)鋼筋工施工協(xié)議
- 水產(chǎn)養(yǎng)殖學(xué)專業(yè)畢業(yè)生就業(yè)協(xié)議
- 建筑電氣安裝架子工協(xié)議
- 購(gòu)房合同范例是正式合同
- 挖蟲草顧工合同書
- 工商銀行2012年住房貸款合同內(nèi)容
- 房子搬遷合同范例
- 24年一年級(jí)上冊(cè)語(yǔ)文期末復(fù)習(xí)21天沖刺計(jì)劃(每日5道題)
- 中資企業(yè)在哈薩克斯坦發(fā)展報(bào)告 2023-2024
- 【人教版一年級(jí)起點(diǎn)】三年級(jí)上冊(cè)英語(yǔ)英語(yǔ)知識(shí)點(diǎn)總結(jié)
- 樓門牌制作合同范例
- 《復(fù)雜網(wǎng)絡(luò)入門必讀》課件
- 傳感器基礎(chǔ)知識(shí)單選題100道及答案解析
- 總裁秘書勞動(dòng)合同模板
- 2023級(jí)《中國(guó)特色社會(huì)主義》學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 瑞士萬(wàn)通831KF卡爾費(fèi)休水分測(cè)定儀干貨-庫(kù)侖法
- 廣東省肇慶市2023-2024學(xué)年高二上學(xué)期期末教學(xué)質(zhì)量檢測(cè)試題 化學(xué) 含解析
- 護(hù)理課件題目教學(xué)課件
評(píng)論
0/150
提交評(píng)論