J (linguaggio di programmazione)

J
linguaggio di programmazione
AutoreKenneth E. Iverson, Roger Hui
Data di origine1990
Ultima versioneJ9.6
Utilizzogenerico
ParadigmiMulti-paradigma: array programming, funzionale, orientato agli oggetti
Tipizzazionedinamica
Estensioni comuniijs
Influenzato daAPL
Ha influenzatoNumPy,[1] SuperCollider[2]
Implementazione di riferimento
LicenzaGPLv3
Sito webwww.jsoftware.com

Il J è un linguaggio di programmazione sviluppato all'inizio degli anni '90 da Kenneth E. Iverson e Roger Hui,[3][4] specializzato nella gestione degli array e basato principalmente su APL (anch'esso sviluppato da Iverson).

Per evitare di ripetere il problema dei caratteri speciali di APL, J utilizza solo il set di caratteri di base ASCII, ricorrendo all’uso del punto e dei due punti come flessioni[5] per formare parole brevi simili ai digrammi. La maggior parte di queste parole primarie (o primitive) in J funge da simbolo matematico, con il punto o i due punti che estendono il significato dei caratteri base disponibili. Inoltre, molti caratteri che in altri linguaggi devono spesso essere usati in coppia (come [], {}, "", `` o <>) vengono trattati in J come parole indipendenti o, se flessi, come radici a singolo carattere di parole composte da più caratteri.

J è un linguaggio di programmazione vettoriale molto conciso, particolarmente adatto alla programmazione matematica e statistica, specialmente per le operazioni su matrici. È stato anche utilizzato nell'extreme programming[6] e nell'analisi delle prestazioni di rete.[7]

Come i linguaggi di John Backus FP e FL, J supporta la programmazione a livello di funzione tramite le sue funzionalità di programmazione tacita.

A differenza della maggior parte dei linguaggi che supportano la programmazione orientata agli oggetti, lo schema gerarchico e flessibile degli namespace in J (dove ogni nome esiste in un locale specifico) può essere utilizzato efficacemente come struttura per la programmazione orientata agli oggetti sia basata su classi che basata su prototipi.

Dal marzo 2011, J è un software libero e open-source rilasciato sotto la GNU General Public License versione 3 (GPLv3).[8][9][10] È anche possibile acquistare il codice sorgente con una licenza negoziata.[11]

Note

  1. ^ Wes McKinney at 2012 meeting Python for Data Analysis
  2. ^ SuperCollider documentation, Adverbs for Binary Operators
  3. ^ A Personal View of APL, saggio del 1991 di K.E. Iverson (link archiviato)
  4. ^ Panoramica della storia di J di Roger Hui (19 marzo 2002)
  5. ^ J NuVoc Words
  6. ^ Brian Bussell e Stephen Taylor, Software Development as a Collaborative Writing Project, Extreme programming and agile processes in software engineering, Oulu, Finland, Springer, 2006, pp. 21–31, ISBN 978-3-540-35094-1.
  7. ^ Alan Holt, Network Performance Analysis: Using the J Programming Language, Springer, 2007, ISBN 978-1-84628-822-7.
  8. ^ Pagina di download del codice sorgente di Jsoftware
  9. ^ Eric Iverson, J Source GPL, in J programming mailing list, 1º marzo 2011. URL consultato il 24 giugno 2015 (archiviato dall'url originale il 23 settembre 2016).
  10. ^ Implementazione aperta di J
  11. ^ Politica di distribuzione del codice sorgente di Jsoftware

Collegamenti esterni

Controllo di autoritàLCCN (ENsh2001001715 · J9U (ENHE987007530455105171
Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia

Kembali kehalaman sebelumnya