versiune de tipărit
Aceste limbaje de programare avansate au o abilitate unica de a schimba viitorul de dezvoltare de software
Chiar avem nevoie de un nou limbaj de programare. Desigur, în momentul în care sunt suficiente. Printre o varietate de imperativ, funcțional, orientat-obiect. dinamic, compilat, interpretat și limbaje de scripting, nici un dezvoltator nu ar fi în măsură să cunoască toate opțiunile disponibile în prezent.
Cu toate acestea, apariția unor noi limbi - fenomenul este destul de frecventă. Unii dintre ei sunt studenți sau amatori ca proiecte individuale, în timp ce altele sunt produse de producători de software majore. Chiar și companiile mici și mijlocii care sunt implicate în acest proces, crearea unui limbaj pentru nevoile industriilor lor. Deci, de ce oamenii continuă să se reinventeze roata de peste si peste din nou?
Faptul este că, în ciuda puterea și versatilitatea populare limbi în acest moment, nici unul dintre sintaxa nu este perfect universală. Mai mult decât atât, de programare în sine este în continuă evoluție. Răspândirea procesoarelor multi-core. software-ul nor, mobilitate și arhitecturi distribuite au creat noi provocări pentru dezvoltatori. Adăugarea de suport pentru cele mai noi caracteristici, paradigme și modele pentru limbile existente, în special cele mai populare pot fi prea complicate. Uneori, cea mai bună soluție este de a începe de la zero.
Astfel, există 10 limbaje de programare avansate. fiecare dintre care examinează arta de dezvoltare software dintr-un unghi nou, rezolvarea unei probleme sau lipsa de anumite limbi, cel mai popular astăzi. Unele dintre ele sunt deja proiecte finalizate, în timp ce altele sunt doar în primele stadii ale dezvoltării sale. Este posibil ca unii dintre ei nu vor câștiga popularitate. dar, oricare dintre ele poate deveni o realizare revoluționară care schimba în cele din urmă de programare - cel puțin atât timp cât vor fi create noi limbi.
Limba de testare №2: Ceylon
Gavin King (Gavin King) neagă că Ceylon, au dezvoltat limbajul în Red Hat. ar trebui să devină „criminal Java.“ Regele este bine cunoscut ca creatorul cadrului relațional-obiect Hibernate de cartografiere pentru Java. Ii place Java, dar el crede că există încă mult nevoie de îmbunătățiri.
Printre acele lucruri care nu sunt mulțumiți cu regele în Java, sunt sintaxa detaliată a limbii, lipsa de funcții de primă clasă și funcții de ordin superior, precum și lipsa de sprijin pentru meta-programare. El a fost deosebit de supărat lipsa de sintaxa declarativa pentru a defini datele structurate, care, potrivit King, „echivaleaza Java pentru XML“. Ceylon își propune să rezolve toate aceste probleme.
King și echipa sa nu intenționează să reinventeze roata. Nu există virtuale Ceylon-masini nu vor, Ceylon-compilatorul va emite un java-bytecode, care poate rula pe JVM. Dar Ceylon este mai mult decat un compilator. Obiectivul strategic al acestui proiect este crearea unui nou kit de dezvoltare pentru Ceylon, care va înlocui Java, care, potrivit King, „umflate“, lipsit de tact și încă mai bine modernizate.
Aceasta este o sarcină dificilă, și în timp ce Red Hat nu a lansat nici instrumente pentru Ceylon. Regele spune că compilatorul ar trebui să fie în acest an. Dar, în viitorul apropiat nu se așteaptă nici un software scris în „100% Ceylon pur“.
Testul №3 limbaj de programare: Du-te
Interpreții, mașini virtuale. și codurile de control sunt foarte populare astăzi. Nu avem nevoie într-adevăr o altă limbă de modă veche, care compilează la binaries „nativ“? Inginerii Google - condus de Robert Grizmera (Robert Griesemer) și Bell Labs legende Ken Thompson (Ken Thompson) și Rob Pike (Rob Pike) - "Da", spune el.
Go - limbaj de programare cu scop general, care este potrivit pentru orice, de la dezvoltarea de aplicații pentru programarea sistemelor. În acest sens, este mai mult ca un C sau C ++, decât în Java sau C #. Cu toate acestea, astfel cum acesta din urmă limbi, Go include caracteristici moderne, cum ar fi ștergerea memoriei de date inutile, o reflectare a performanței curente procesului și sprijin concurență.
De asemenea, este important ca Go a fost creat pentru programare ușoară. Sintaxa lui de bază este similar cu C, dar du-te elimină repetarea și sintaxa inutile în timpul programelor de optimizare, cum ar fi, de exemplu, definiția obiectelor. Scopul a fost de a crea o comandă Du-te de limba în care ar fi convenabil să scrie codurile, precum și pe un limbaj de scripting dinamic. dar care, în același timp, el a avut puterea unui limbaj compilat.
Du-te mai mare de muncă și alte specificații de limbă pot fi modificate. Cu toate acestea, puteți lucra cu el acum. Google a creat instrumente și compilatoare, care oferă o documentație detaliată. De exemplu, în tutorial eficient Go Go bine arată diferențele dintre limbile anterioare.
Programarea funcțională sa bucurat de mult timp popularitate în rândul programatori și cadre universitare. dar limbi pur funcționale. cum ar fi Lisp și Haskell. de multe ori considerate nepotrivite pentru dezvoltarea software-ului reale. Una dintre cele mai comune motive este că codul este forma funcțională este foarte dificil de a combina cu codul și biblioteci scrise în limbi imperative, cum ar fi C ++ sau Java.
Faceți cunoștință, F # (pronunțat "EF-Sharp") - un limbaj dezvoltat de Microsoft pentru a aduce împreună funcționalitatea și caracterul practic. Deoarece F # este limba de primă clasă .Net CLR mașină virtuală. se poate menține aceleași biblioteci și funcții, precum și alte limbi de CLR, cum ar fi C # și Visual Basic.
F # cod ceva similar cu codul Ocaml, dar conține propria sintaxă interesantă. De exemplu, pentru a facilita calcul științific tipurile de date numerice în F # poate fi o unitate de măsură. De asemenea, în F # sunt concepute pentru a facilita procesele I asincrone / O, paralelizarea CPU și ieșire la procesorul grafic.
Limba de încercare №5: OPA
Opa nu înlocuiește nici una dintre aceste limbi separat. Mai mult decât atât, el încearcă să le înlocuiască dintr-o dată, introducerea o paradigmă cu totul nou in programare web. În cererea Opa, datele de intrare-ieșire client interfață utilizator, server de baze de date și logica sunt scrise în aceeași limbă, OPA.
Firește, cu acest tip de sistem integrat în cele din urmă ar trebui să aibă ceva magic. Runtime Opa combină propriile sisteme de servere Web și de gestionare a bazei de date. care nu pot fi înlocuite cu alternative independente. Orice ar fi fost, nu ar putea fi atât de important, având în vedere posibilitatea de a dezvolta aplicatii web moderne. Pe bază de date, cu doar câteva zeci de linii de cod. OPA vine gratuit și este disponibil în prezent pentru platforme Linux și Mac OS X pe 64 de biți, în timp ce alte porturi încă dezvoltate.
Limba de încercare №6: Fantom
Doriți să creați aplicații pentru Java sau .Net. Dacă scrieți pe Fantom, puteți face o alegere, și apoi chiar schimba platforma. Asta pentru că Fantom de la început a fost proiectat pentru portabilitate cross-platform. Proiectul Fantom include nu numai compilator care poate bytecode de ieșire pentru JVM sau .net CLI, dar, de asemenea, de un set de API. că API separat Java și .Net și de a crea un nivel suplimentar de mobilitate.
Fantom este distribuit gratuit sub Academic License 3.0 și este disponibil pentru platformele Windows și Unix (inclusiv Mac OS X).
Limba de încercare №7: Zimbu
Datorită naturii sale mixte, sintaxa Zimbu este unică și specifică, dar în același timp, are o mulțime de caracteristici. Se folosește expresii și declarații, similare cu cele utilizate în C, dar cu cuvintele cheie, tipuri de date și structuri bloc. Acesta susține de management al memoriei, fire și benzi transportoare.
Singura problemă este portabilitatea. Deși Zimbu și este un limbaj compilat, compilator său produce cod ANSI C, iar fișierele binare pot fi create numai pe platforme cu integrate C-compilator.
Din păcate, proiectul Zimbu este în curs de dezvoltare. Compilatorului și câteva exemple de programe pot fi create de unul singur, dar nu toate Zimbu-cod valid va compila și rula corect. Nu toate caracteristicile declarate mai dezvoltate, iar unele au depus deja nu funcționează în mod corespunzător. Specificarea limbii este de asemenea posibil să se schimbe în timp: cel puțin trebuie să adăugați cuvinte cheie, tipuri și sintaxa. Prin urmare, documentația este, de asemenea, încă incompletă. Cu toate acestea, dacă doriți să încercați, instrumente avansate deja disponibile sub licența Apache.
Limba de testare №8: X10
Atunci când o procesare paralelă a fost o nișă specializată de dezvoltare de software, dar cu răspândirea de procesoare multi-core și calcul distribuit, paralelism câștigat popularitate. Din păcate, limbajele de programare actuale nu țin pasul cu această tendință. De aceea, IBM Research creează X10 - un limbaj proiectat special pentru arhitecturi paralele moderne, care are ca scop creșterea productivității dezvoltator, „de zece ori“.
cod X10 este cel mai similar cu Java. De fapt, runtime X10 este disponibil atât ca un built-in fișiere executabile. precum și fișiere de clasă pentru JVM. X10 compilator poate de ieșire codul sursă sau în C ++, sau în Java. În viitor ne propunem să dezvoltăm o compatibilitate înainte cu Java.
Și, în timp ce limba se dezvoltă, deși este deja destul de dezvoltat. Compilatorul și de rulare sunt disponibile pentru diferite platforme, inclusiv Linux, Mac OS X și Windows. Ca utilitati suplimentare sunt mediul interactiv de dezvoltare (IDE), bazat pe Eclipse, si debugger, care sunt distribuite de licență Eclipse Public License.
Limbajul de programare de testare №9: haXe
Multe limbi pot fi utilizate pentru scrierea de cod portabil. C-compilatoare sunt disponibile pentru aproape toate arhitecturile CPU și Java bytecode va rula ori de câte ori există un JVM. Dar haXe (pronunțat „hex“) este mai mult decat portabil. Acesta este un limbaj multi-platformă, care pot fi utilizate într-o varietate de medii de operare, de la sisteme integrate la interpreți binare și mașini virtuale.
În ciuda ceea ce haXe este încă în dezvoltare, ea este deja utilizată în scop comercial de către creatorul său, studioul de jocuri Motion Twin, deci este gravă. Acesta este disponibil pentru Linux, Mac OS X și Windows pentru licențe gratuite combinate.
Limba de testare №10: Capela
În lumea de calcul de înaltă performanță nume rare, sunet mai tare decât Cray. Ar trebui să fie nici o surpriză faptul că, atunci Capela, primul limbaj de programare creat de Cray, a fost proiectat cu superinformatică și gruparea.
Capela face parte din Programul Cascade Cray, un proiect pe scară largă în domeniul de calcul de înaltă performanță, parțial finanțat de Departamentul de Aparare Avansate de Cercetare din SUA în domeniul programelor (DARPA). Printre obiectivele acestui proiect este o ramură a algoritmilor de procesare paralela pe echipamentul folosit, pentru a îmbunătăți performanța lor pe arhitecturi și crește portabilitatea programelor paralele.
Sintaxa Capela este formată din mai multe limbi de sintaxă. În plus față de cele mai frecvent utilizate (C, C ++, Java), sunt împrumutate concepte din limbaje de programare științifice, cum ar fi Fortran și Matlab. Funcția sa de procesare paralelă a influențat ZPL și de înaltă performanță Fortran, precum și desene sau modele anterioare Cray.
Una dintre cele mai atractive caracteristici este suportul său Capela „programare cu rezoluție variabilă“, care permite dezvoltatorilor să creeze aplicații cu un cod foarte abstract și de a face adăugiri ca punerea în aplicare devine mai sigur.
Lucrările la Capela continuă. În momentul de față, se poate rula pe supercomputere Cray și diverse clustere de înaltă performanță. dar poate fi portat la majoritatea sistemelor Unix (inclusiv Mac OS X și Windows folosind Cygwin). Codul sursă este disponibil gratuit de licență BSD-stil.
limbi moduri. nepătruns. (C)
limbi moduri. nepătruns. (C)
subiecte fierbinti
Cel mai bun depus
Cu această citire
Stay tuned
Nu pierdeți știri și articole importante din KV.by! Aboneaza-te la notificarea noastră.