APL | |
---|---|
Clasa de limba | vector , funcțional , structural , modular |
Aparut in | 1964 |
Autor | Kenneth Iverson |
Dezvoltator | Kenneth Iverson , IBM și Lawrence Breed [d] |
Tip sistem | dinamic |
Implementări majore | IBM APL2, Dyalog APL, APL2000, Sharp APL, APLX |
Dialectele | A+ , Dialog APL, APLNext |
A fost influențat | notatie matematica |
influențat | J , [1] K , [2] Mathematica , [3] MATLAB , [3] Nial , [4] PPL , Q |
Fișiere media la Wikimedia Commons |
APL (numit după cartea A Programming Language ) [5] este un limbaj de programare optimizat pentru lucrul cu matrice , predecesorul mediilor de calcul științifice moderne, cum ar fi MATLAB , folosește o paradigmă de programare funcțională .
În domeniul său de aplicare (fizică, modelare matematică , prelucrare a datelor), APL este un limbaj puternic, cu o sintaxă concisă și expresivă. De exemplu:
N ← 4 5 6 7 | Atribuiți matricei N valorile 4 5 6 7. |
N+4 | Creșteți valorile matricei N cu 4 și imprimați-o. Rezultatul pentru matricea anterioară va fi: 8 9 10 11. |
+/N | Tipăriți suma elementelor matricei N, adică 22. |
Un număr mare de caractere speciale în sintaxa APL, stilul funcțional și notațiile scurte (majoritatea operațiilor sunt notate cu 1-2 caractere dintr-un alfabet special) fac programele APL extrem de neînțelese pentru cei neinițiați. În același timp, unele semne - cuvintele cheie ale limbii au depășit APL-ul propriu-zis și sunt folosite în texte științifice despre matematică și informatică (vezi simboluri Iverson , paranteză Iverson ).
Limbajul APL a fost dezvoltat de Ken Iverson , apoi preda la Universitatea Harvard , ca notație pentru descrierea calculelor. În 1957, a fost publicată cartea sa „A Program Language” [5] , în care a fost descrisă această notație. În 1960, Iverson a continuat să lucreze la APL la IBM . Aici, acest limbaj a fost folosit pentru a descrie arhitectura mașinii. [6] [7]
Prima încercare de a implementa APL a fost interpretul IVSYS scris pentru IBM 7090 în Fortran în 1965 . [8] Cu toate acestea, nu a folosit încă setul de caractere APL, înlocuindu-le cu cuvinte cheie în limba engleză. Un an mai târziu, acest interpret a fost portat pe IBM/360 . Tot în 1966, APL a fost implementat pentru prima dată folosind un terminal specializat bazat pe IBM 1050 .și un dispozitiv de imprimare cu un cap de imprimare înlocuibil corespunzător. În 1967, IBM lansează implementarea APL pentru IBM 1130., cunoscut ca APL\1130. [9] [10] . Datorită conciziei expresiilor din APL, limbajul a avut câțiva adepți, dar dedicați, care se mândreau că fac programe complexe ușor de scris.
APL a fost implementat în firmware pentru computerul portabil IBM 5100 , produs în perioada 1973-1982, denumit uneori „primul computer personal”. Unul dintre primele laptopuri , lansat în 1985, Ampere WS-1 [11] a fost, de asemenea, orientat să lucreze cu APL .
La începutul anilor 1980, Centrul de Calcul al Academiei de Științe a URSS a dezvoltat un software original pentru lucrul cu APL pe minicalculatoare din seria SM-4, SM-1420 și micro-calculatoare Elektronika-60 , DVK , Elektronika-85 . Dezvoltator - A. V. Kondrashev. Complexul a inclus: interpret software al limbajului APL; cipuri generatoare de caractere pentru a accepta caractere APL pe cele mai populare monitoare alfanumerice; versiunea interpretului de pe placa PROM pentru Elektronika-60 și DVK. A fost acceptată lucrul cu monitoare grafice și plotere, precum și utilizarea de discuri și imprimante ale minicalculatorului central. Odată cu utilizarea tradițională a sistemelor APL în sistemele de analiză a datelor, în URSS au fost dezvoltate și sisteme software și hardware pentru utilizare în industrie și energie nucleară.
În prezent, limbajul APL este acceptat pe aproape toate platformele hardware, de la stații de lucru la computere portabile. Limba are conferințe anuale în cadrul Asociației pentru Mașini de Calculatoare ( ACM ). O dezvoltare ulterioară a APL sunt limbajele J și K.
Limbaje de programare | |
---|---|
|