Qualche lingua è diventata molto popolare per qualcosa di diverso dal suo scopo?

70

Segui questo scenario:

  • Un programmatore crea una lingua per risolvere alcuni problemi.

  • Rilascia quindi questo linguaggio per aiutare gli altri a risolvere problemi come questo.

  • Un altro programmatore scopre che in realtà è molto meglio per alcune diverse categorie di problemi.

  • Grazie a questa nuova applicazione, il linguaggio diventa principalmente popolare per quell'applicazione.

Ci sono casi in cui ciò si verifica effettivamente?

In altre parole, lo scopo di una lingua ha una qualche influenza su come viene effettivamente utilizzato o se diventa popolare? È anche importante che una lingua abbia uno scopo pubblicizzato?

    
posta Jon Purdy 04.11.2012 - 18:37
fonte

19 risposte

118

Lisp . McCarthy ha originariamente specificato Lisp in un documento per dimostrare che poche semplici notazioni sono sufficienti per costruire un linguaggio completo di turing. È stato sorpreso di scoprire che il Lisp poteva essere implementato in codice macchina (Steve Russel ha realizzato la prima implementazione dell'interprete Lisp). Il Lisp è ampiamente utilizzato per la programmazione AI.

    
risposta data 30.05.2011 - 09:50
fonte
111

Java era originariamente destinato alla programmazione di sistemi embedded. Da Wikipedia "Java è stato originariamente progettato per la televisione interattiva" . Ma è diventato estremamente popolare per la programmazione di applicazioni e Web.

    
risposta data 30.05.2011 - 08:16
fonte
32

Lua è stato progettato principalmente come linguaggio di configurazione e ha finito per trovare una nicchia come il linguaggio di scripting più popolare per i giochi (perché è piccolo, veloce, potente, portatile, facilmente estendibile e incorporato, con sintassi user friendly). Il gioco più popolare per usarlo, World of Warcraft, non lo usa nemmeno per la configurazione, usando invece XML.

    
risposta data 30.05.2011 - 13:16
fonte
32

L'intenzione originale di Larry Wall per perl era per un " linguaggio di scripting Unix generico per l'elaborazione dei report più semplice "e la pagina man descrive la lingua come:

Perl is a interpreted language optimized for scanning arbitrary text files, extracting information from those textfiles, and printing reports based on that information.

E naturalmente la pagina man ci dice anche che Perl sta per Practical Extraction and Report Language (il vero nome è un errore ortografico del nome originale Pearl , modificato quando Wall ha scoperto una lingua PEARL già esistente

.

Perl ha fatto tanta strada da allora, dato che è la lingua da cui gli dei hanno creato l'universo .

    
risposta data 22.11.2011 - 04:17
fonte
28

Direi che JavaScript si adatta anche a questa domanda perché non penso che Brendan Eich, nei giorni di Netscape, abbia mai immaginato che le versioni future del suo LiveScript verrebbe utilizzato per creare le cosiddette "applicazioni" web.

JavaScript è passato da semplici convalide di moduli e rollover di immagini a uno potente strumento in grado di competere con le applicazioni offline, sia in termini di funzionalità che di bellezza.

Purtroppo, penso che molti lo considerino ancora un giocattolo.

    
risposta data 30.05.2011 - 16:24
fonte
19

Erlang. È stato inventato molto tempo fa nei laboratori Ericsson per sviluppare applicazioni di telefonia, probabilmente per le loro linee di dispositivi di commutazione e accesso. Ora si è evoluto in un linguaggio dinamico promettente per scopi generali con un interessante concetto di concorrenza.

Sarebbe interessante se in futuro ci fossero più lingue dal mondo telco che attraversano le loro linee verso il mondo IT e si evolvono da lì, esp lingue che inizialmente erano progettate per la modellazione e la verifica dei protocolli.

    
risposta data 30.05.2011 - 13:06
fonte
15

Pascal. Creato per insegnare programmazione.

    
risposta data 30.05.2011 - 11:57
fonte
14

PHP in origine significava Home page personale , ma oggi viene utilizzato anche per alcune applicazioni Web leggermente più grandi.

    
risposta data 30.05.2011 - 16:58
fonte
14

Sono abbastanza sicuro che VBScript non era pensato per scrivere malware, anche se questo è un uso estremamente comune per questo.

    
risposta data 30.05.2011 - 22:29
fonte
13

Inizialmente concepito come un metodo per rendere il codice più generico, è stato scoperto che Template Meta Programming in C ++ è stato completato, e fino ad oggi è usato per migliorare notevolmente il linguaggio C ++ attraverso librerie come boost .

    
risposta data 30.05.2011 - 18:58
fonte
11

BASIC è un altro caso famoso. Il suo nome ( Principiante Codice di istruzione simbolica per tutti gli usi) suggerisce all'origine come lingua per gli studenti, ma da allora è cresciuto un po '.

    
risposta data 30.05.2011 - 12:28
fonte
11

VHDL e Verilog (a.k.a. VerilogHDL) erano originariamente destinati a descrivere circuiti e componenti digitali. Sono stati usati come una forma di documentazione e per simulare il comportamento dei componenti. In seguito, Synopsys e altri svilupparono una tecnologia in grado di tradurre (un sottoinsieme di) queste descrizioni in una lista di porte, che a sua volta può essere usata per produrre hardware reale.

VHDL e Verilog sono chiamati Hardware Description Languages (HDL) per ragioni storiche. Oggi sono effettivamente usati come linguaggi design (stesso acronimo) dell'hardware.

    
risposta data 30.05.2011 - 16:00
fonte
10

ML è nato come linguaggio per lo sviluppo e lo scripting di un dimostratore di teoremi. Era il "meta linguaggio" del proverbio del teorema.

    
risposta data 30.05.2011 - 09:05
fonte
7

C
 Originariamente è stato originariamente sviluppato per l'uso con il sistema operativo Unix. Ma il linguaggio è diventato così popolare anche Dennis Ritchie è rimasto sorpreso.
Nel suo famoso libro Il linguaggio di programmazione C . Ritchie afferma "si è diffuso ben oltre le sue origini come il linguaggio dell'UNIX operativo sistema. "e quanto era sorpreso quando divenne un linguaggio popolare per lo sviluppo di applicazioni.

    
risposta data 30.05.2011 - 08:39
fonte
3

C ++ è stato originariamente progettato come "C con classi" per facilitare la programmazione orientata agli oggetti in C ++.

I modelli sono stati quindi forniti in una versione successiva per abilitare l'implementazione di classi contenitore strongmente tipizzate. Solo in seguito si è notato che questi template costituiscono in realtà un linguaggio di programmazione in fase di compilazione completo di Turing.

Di conseguenza, molte applicazioni ora usano il C ++ non come un linguaggio di programmazione orientato agli oggetti, ma piuttosto come un linguaggio di programmazione basato su algoritmi che fa molto affidamento sul polimorfismo e metaprogrammazione in fase di compilazione.

    
risposta data 30.05.2011 - 14:43
fonte
2

ADA - originariamente progettato in base al contratto DoD per l'avionica. Sebbene sia ancora utilizzato in quell'applicazione, è anche popolare, ad esempio, per i middleware di business in tempo reale.

    
risposta data 30.05.2011 - 12:47
fonte
2

"lo scopo di una lingua ha una qualche influenza su come è effettivamente utilizzato o se diventa popolare?"

Non credo che lo scopo di una lingua abbia molto a che fare con l'uso e la popolarità effettivi: ci sono alcuni grandi linguaggi che sono stati progettati fin dall'inizio per essere innovativi, flessibili e versatili, ma non sono mai diventati così largamente usati o popolare tranne in mercati verticali molto specializzati - per esempio Eiffel. OTOH, Basic, Pascal, C ecc ecc dominavano il paesaggio per anni sebbene fossero stati progettati originariamente per scopi specifici limitati.

Le considerazioni sul marketing IMO / finanziario e supporto hanno sempre svolto un ruolo importante nella diffusione e nell'estensione di alcune lingue. Ad esempio: Borland presenta TurboPascal e pacchetti, mercati e supporta. MS produce C # e pacchetti, commercializza e supporta. Di conseguenza, queste lingue sono diventate popolari, le industrie di strumenti di terze parti sono sorte e sempre più sviluppatori e imprese saltano sul carro dei vincitori.

Ma negli ultimi anni, i linguaggi e gli strumenti di OpenSource stanno cambiando la dinamica e le lingue ora diventano popolari basate più sul "merito" che sul marketing, ad esempio Ruby, Python e Perl. Ma non è tanto per "l'intento" degli inventori quanto per il potenziale di estensione e di utilizzo del linguaggio.

    
risposta data 30.05.2011 - 23:31
fonte
2

Non penso che ci sia un linguaggio popolare che non è stato riproposto dal suo intento originale. Anche C è stato originariamente scritto per creare un sistema operativo portatile (unix).

Qualsiasi tentativo di scrivere un linguaggio di programmazione veramente generico senza un obiettivo specifico in mente probabilmente fallirebbe miseramente a causa della mancanza di controllo e messa a fuoco.

    
risposta data 31.05.2011 - 08:01
fonte
1

Ho sentito Ruby è stato progettato come linguaggio per scrivere poesie in, risulta che puoi scrivere anche un bel codice in esso!

I’ll be straight with you. I want you to cry. To weep. To whimper sweetly. This book is a poignant guide to Ruby. That means code so beautiful that tears are shed. That means gallant tales and somber truths that have you waking up the next morning in the arms of this book.

    
risposta data 31.05.2011 - 00:10
fonte

Leggi altre domande sui tag