Perché solo i designer possono creare nuovi linguaggi di programmazione

Rispetto alle versioni che vengono hackerate insieme a tarda notte sotto la folle pressione delle scadenze, i linguaggi di programmazione che escono dal mondo accademico sono dei fallimenti. Beh, non tutti. La storia può parlare da sola. attraverso Cristina Videira Lopes, scienziata informatica dell'UC Irvine , che merita credito per qualsiasi intuizione che potresti ottenere da questo post, che è una chiosa sul suo eccellente, anche se lungo, Ricerca nei linguaggi di programmazione :





Lingue che le persone usano e amano:

  • PHP - Hackerato insieme da Rasmus Lerdorf nel 1994. Originariamente utilizzato per tenere traccia delle visite al suo curriculum online, ha chiamato la suite di script 'Strumenti personali per la home page', più frequentemente indicati come 'Strumenti PHP'. Secondo il sondaggio informale su langpop.com (il sito potrebbe essere inattivo) è la quarta lingua più popolare del pianeta.
  • JavaScript - Brendan Eich lo ha iniziato nel 1995. JS doveva assomigliare a Java solo meno, essere lo stupido fratellino di Java o il compagno di un ragazzo in ostaggio. Inoltre, dovevo finire in dieci giorni o sarebbe successo qualcosa di peggio di JS . A causa del web, forse la lingua più popolare al momento.
  • Ruby, di Yukihiro Matz Matsumoto intorno al 1994. Volevo un linguaggio di scripting più potente di Perl e più orientato agli oggetti di Python. Questo è perché io deciso di progettare la mia lingua .

Nel frattempo, le lingue progettate da accademici ossessionati dalla coerenza e dalla correttezza interna includono un mucchio di lingue per lo più morte: Fortran, Cobol, Lisp, C e Smalltalk. Le uniche eccezioni sono .NET e Java, che sono stati i prodotti di notevoli investimenti di Microsoft e Sun.

Alla luce di questa storia, così come della sua esperienza nel mondo accademico, Lopes sostiene che il motivo per cui la torre d'avorio non crea più linguaggi di programmazione che le persone effettivamente usano è che tratta la programmazione come una scienza, quando in realtà è più un design disciplina.



Mi piacerebbe riportare il design nelle mie attività diurne. Mi piacerebbe che i miei studenti si impegnassero nella progettazione di cose nuove come nuovi linguaggi e ambienti di programmazione: ho molte idee su cosa mi piacerebbe fare in quell'area! Credo che ci sia un percorso per stabilire un insieme di criteri rigorosi riguardo alla valutazione del design diverso dalla validazione scientifica/quantitativa.

Anzi, sostiene Lopes, è stato uno di quei casi eccezionali in cui a un programmatore in ambito accademico è stata data carta bianca che ha dato origine al web.

Un buon esempio di sperimentazione progettuale in contrasto con l'evidenza scientifica è la proposta che Tim Berners-Lee ha fatto al CERN per quanto riguarda l'implementazione del sistema ipertestuale che è diventato il Web. Da nessuna parte in quella proposta troviamo un piano per la verifica delle affermazioni. Questa è solo una buona proposta solida per un intrigante sistema di informazioni collegate. Posso immaginare il manager di TB-L pensare: hmm, ok, questo è intrigante, è un ragazzo intelligente, non sta chiedendo così tante risorse, facciamolo fare e vediamo cosa ne viene fuori. Se non ne viene fuori niente, niente di grave. Se TB-L dovesse ideare un piano di valutazione scientifica o ingegneristica per quel sistema oltre nella seconda fase, lo installeremo su molte macchine forse il mondo sarebbe molto diverso oggi, perché potrebbe essere rimasto intrappolato nel buco nero di cercando di trovare prove quantificabili per qualcosa che non aveva bisogno di quel tipo di convalida.



Molto di questo dipende dai fattori umani nei linguaggi di programmazione. Se non sono facili da usare, non si diffonderanno. In questo modo, linguaggi e interi sistemi (come UNIX) sono stati paragonati a virus informatici . Questo genere di cose è difficile se non impossibile da misurare. È soggettivo: il tipo di problema che il design, non la scienza, può risolvere. Il fatto che gli scienziati informatici saranno quei progettisti è semplicemente semantico. Il codice è poesia , Dopotutto.

nascondere