Cosa costituisce un linguaggio di programmazione morto? [chiuso]


18

Immagina di essere stato eletto coroner dell'IEEE o di qualche organo di governo e che hai dovuto pronunciare un linguaggio di programmazione come morto. Quali segni vorresti cercare? Esistono lingue di zombi là fuori che non sanno di essere già morte?


7
Cosa definisci come lingua? FORTRAN I e Fortran 95 sono la stessa lingua? Lisp 1.5 e Common Lisp o Scheme? Sono meno diversi, per esempio, da Algol e Pascal?
David Thornley,

Questa è una buona domanda a cui non posso esattamente rispondere. Le persone che rispondevano alla domanda sembravano intenderlo come un linguaggio atomico (cioè B non è C), quindi cederò alla loro intuizione.
Peter Turner,

@Peter Boughton, hai almeno ottenuto il riferimento Megadeth?
Peter Turner,

1
@Peter (non io) megadeth.com/discography.php?era_id=4 Non puoi avere Holy Wars senza The Punishment Due. Una canzone davvero fantastica, in realtà parla di The Punisher.
Peter Turner,

1
@Peter Turner, quella canzone parlava anche di un tour di Megadeth in Irlanda e Mustaine ha visto un'enorme rivolta protestante / cattolica. Descrive questo dettaglio nella sua autobiografia recentemente pubblicata.
Jesse C. Slicer,

Risposte:


34

I linguaggi informatici non muoiono mai; passano solo da overhyped a sottoutilizzati. Qualcuno riscoprirà sempre una vecchia lingua e la imparerà, solo per divertimento.

Addendum: coloro che amano le lingue più vecchie a volte scrivono una nuova lingua ispirata da essa. Quindi, anche se la lingua originale è morta secondo i termini di alcune persone, il suo spirito continua a sopravvivere nei suoi discendenti. Alcuni esempi includono:

  1. B e BCPL ispirati C
  2. Icona ispirata a SNOBOL
  3. L'Algol ha ispirato troppe lingue da contare

ALGOL! Seconda menzione in altrettanti giorni. Solo ieri (o lo è stato oggi) è stata la prima menzione di Algol che ho visto su qualsiasi sito StackExchange, anche se una ricerca ne scopre molte.
Marco C,

Concordato, ma solo contrario a programmers.stackexchange.com/questions/9521/… (Mild Fuzz's) risponde usando il confronto con la linguistica. Stai dicendo che a meno che non bruciamo la nostra documentazione e il nostro codice sorgente, non esiste qualcosa come l'estinzione del linguaggio di programmazione - ma un linguaggio deve essere proclamato come brindisi prima che tu possa raschiare via la roba bruciata e mangiarla.
Peter Turner,

2
Perfino C "ha un debito considerevole con Algol 68", afferma Dennis M. Ritchie (gennaio 1993): "Lo schema di composizione del tipo adottato da C deve un debito considerevole nei confronti di Algol 68, sebbene, forse, non sia emerso in una forma che Gli aderenti di Algol approverebbero. " . "Lo sviluppo del linguaggio C". cm.bell-labs.com/cm/cs/who/dmr/chist.html . Estratto il 1 ° gennaio 2008.
NevilleDNZ il

2
Una lingua potrebbe essere morta se non è presente alcun hardware su cui è possibile eseguirla (e non è possibile scrivere emulatori perché non sono rimaste specifiche).
quant_dev,

42

In linguistica, una lingua morta è definita come una lingua che non ha madrelingua o fluente. Penso che questa definizione si traduca abbastanza bene nella sfera della programmazione. Un linguaggio di programmazione morto è un linguaggio che nessun programmatore utilizza come linguaggio principale o che nessun sistema supporta in modo nativo.


Per nessun sistema, vuoi dire nessun computer sviluppato attivamente (come un Commodore) o nessun sistema operativo sviluppato attivamente (come DOS) o entrambi?
Peter Turner,

Forse un sistema che non è più attivamente supportato dal produttore?
Fuzz delicato

9
Una lingua morta è una lingua che probabilmente non cambierà mai. La mancanza di una quantità significativa di parlanti colloquiali è un prerequisito per questo, ma in genere morto significa immutabile, almeno per quanto riguarda la mia comprensione.
Tim Post

@TimPost è un'ottima definizione. Basti pensare a come il latino è stato usato per anni come lingua principale della scienza dopo che era scomparso da tempo o come nel mondo bancario i vecchi mainframe usano ancora programmi scritti in antichi linguaggi di programmazione, che devono ancora essere mantenuti - i programmi, cioè.
Legolas,

@TimPost: non penso che sia il caso per definizione, ma a causa del linguaggio non utilizzato. Non definirei una lingua morta se viene utilizzata ma non modificata, ma ciò accade molto raramente.
reinierpost,

22

Una lingua è morta quando nessuno nella loro mente giusta avrebbe mai fatto un progetto greenfield in essa. Proprio come i linguaggi umani morti non sono completamente irrilevanti (perché studiamo la storia), i linguaggi di programmazione morti non sono completamente irrilevanti (perché manteniamo tutto quel codice storico crudele).


2
Quindi, Tcl è morto? Gli script batch sono morti? Sembra essere abbastanza popolare per me, anche se non avrei mai implementato nulla di nuovo usando nessuno dei due ...
Billy ONeal

3
@Billy: gli script batch sono ottimi per codice molto veloce e sporco che non richiede più di poche righe, perché l'interprete è lì. Per quanto riguarda TCL, ne so così poco che non posso commentare in modo intelligente.
dsimcha,

@dsimcha: forse è così, ma ho visto script batch con decine di migliaia di righe. Non qualcosa con cui avrei iniziato un nuovo progetto, ma sicuramente non morto. L'avvio di nuovi progetti è un limite troppo alto per incontrarsi; la maggior parte dei progetti software non sono progetti greenfield.
Billy ONeal,

1
@Billy: Ma il mio punto è che avresti iniziato un nuovo progetto con script batch, anche se detto progetto è piccolo.
dsimcha,

@dsimcha: Err .. no, non lo farei. Leggi di nuovo il mio commento precedente.
Billy ONeal,

5

Se fossi il coroner IEEE, cercherei gli stessi segni che i linguisti usano per determinare se un linguaggio naturale sta morendo / morto, vale a dire.

  1. Quanti programmatori usano ancora la lingua?
  2. Qual è l'età media dei suoi utenti?
  3. Quale percentuale della più giovane generazione di programmatori acquisisce padronanza della lingua?

Sulla base di questi criteri, immagino che COBOL sia moribondo. Nonostante 220 LOC brasiliani scritti in COBOL, secondo questo articolo del 2006 in CW, l'età media dei programmatori COBOL deve ormai superare i 50 anni. Anche se non sono riuscito a trovare statistiche esatte, immagino che il programmatore Java medio abbia circa 20 anni, in confronto. Gli apologeti COBOL sottolineano che alcuni LOC 5B sono ancora scritti in COBOL ogni anno, ma non penso che questa sia una misura affidabile: probabilmente potrei riscrivere 10 righe di COBOL in 1 riga di Perl o alcune battute in J-- COBOL è un linguaggio abbastanza prolisso.


2
IBM supporta e sviluppa pienamente gli ambienti COBOL.

3

Un linguaggio di programmazione non è morto fintanto che puoi trovarne una sorta di specifica, da cui puoi creare un compilatore o un interprete in grado di eseguire programmi su un computer funzionante.


2
E la qualità della vita?
JeffO,

5
in linguistica, quello che stai descrivendo è un linguaggio estinto, che non può essere resuscitato perché non abbiamo più abbastanza informazioni per riapprenderlo. Una lingua morta non è così severa.
Lieve Fuzz,

2
  • Quanti libri sono stati pubblicati di recente su questa lingua?
  • Quante chiacchiere (IRC, e-mail, blog) sono state generate di recente su questa lingua?
  • Quanti programmatori si auto-identificano in modo ironico come nativi di questa lingua?

Come qualcuno ha sottolineato, c'è sempre una setta di persone, sia storici che folli, che escono e studiano lingue morte per l'inferno. Le lingue morte sono più facili da trovare alzando questo livello.


Caso nel punto Delphi, di cui sono nativo. Ha alcune chiacchiere attive e una pletora di chiacchiere storiche, ma ancora rilevanti. Aveva aderenti, puoi esprimere il tuo giudizio sull'ironia. Ma i libri mancano curiosamente nella spessa navata di Barnes e Noble tra C ed Erlang. Esistono, il Dr. Bob e Marco Cantu continuano a praticare il loro mestiere, ma la distribuzione dei libri sembra prevalentemente orientata al web e alle convention.
Peter Turner,

2
Delphi non ha mai avuto molti libri, anche quando era molto popolare.
GrandmasterB,

1

Le opinioni delle persone determinano la mortalità

  1. L'uomo entra in un bar alla moda e alla moda.
  2. L'uomo inizia a parlare di funzioni interessanti in COBOL.
  3. Le persone iniziano a indietreggiare, offrendoti un ancoraggio sempre più ampio.
  4. Le persone sorridono dappertutto
  5. L'uomo scopre che COBOL sembra piuttosto morto eh?

ps Sono stato tentato di usare 'donna' o persona 'al posto dell'uomo ma non voglio sottintendere che il genere [femminile] fosse correlato ad esso, ero tentato di usare' persona 'ma suonava strano dato la nostra storia di "uomo" entra in un bar "scherzi di stile. Beh, almeno, sto pensando alle cose.


1

Per me, c'è una differenza se una commissione ha deciso che qualcosa è morto o che qualcosa è morto per me.

Ad esempio, Forth di per sé è morto per me: non ci sono molti progetti Forth attuali da cui posso imparare, non ci sono molte mailing list o forum attivi in ​​cui potrei chiedere aiuto e non ci sono troppe librerie disponibili.

D'altra parte, il linguaggio simile al Forth, Factor , sembra essere molto più vivo. Non lo definirei morto anche se non è molto meno oscuro di Forth.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.