Domanda

Ho sperimentato Lisp (in realtà Scheme) e l'ho trovato una lingua molto bella di cui sono interessato a saperne di più. Tuttavia, sembra che Lisp non sia mai stato utilizzato in progetti seri e non l'ho visto elencato come l'abilità desiderata in nessun annuncio di lavoro. Sono interessato a ricevere notizie da chiunque abbia usato Lisp o che l'abbia visto usato nel "mondo reale" o che sappia se è considerato un linguaggio puramente accademico.

È stato utile?

Soluzione

Franz, Inc. fornisce un esaustivo elenco di storie di successo sul loro sito web. Tuttavia:

  

Per favore, non dare per scontato che Lisp sia solo   utile per animazione e grafica, AI,   Bioinformatica, B2B ed E-Commerce,   Data mining, EDA / Semiconductor   applicazioni, sistemi esperti, finanza,   Agenti intelligenti, conoscenza   Gestione, CAD meccanico, Modellazione   e simulazione, linguaggio naturale,   Ottimizzazione, ricerca, analisi dei rischi,   Pianificazione, telecomunicazioni e Web authoring   solo perché queste sono le uniche cose   sono capitati per elencare. & # 8212; Kent Pitman

Qui possiamo trovare altre storie di successo: & nbsp; http://lisp-lang.org/success/

e un elenco delle società attuali che utilizzano Common Lisp: https://github.com/azzamsa / awesome-Lisp aziende

Altri suggerimenti

L'elisp di Emacs conta? Questo è il più "mondo reale" uso con cui ho familiarità (anche se non sono sicuro che Emacs conti anche come "mondo reale").

Software ITA utilizza Lisp comune per il suo motore di ricerca QPX a basso costo che alimenta siti come Orbitz , Kayak e American e United Compagnie aeree tra molte altre. Viene utilizzato anche in parte per il suo prossimo sistema di prenotazione passeggeri per Air Canada. Paul Graham ha scritto un po ' su Lisp presso ITA in passato.

(Dichiarazione di non responsabilità: ci lavoro.)

come piccola startup abbiamo creato qualcosa che alcune persone chiamano un "server applicazioni". ma in realtà è solo un mucchio di librerie lisp comuni integrate per la connettività sql e le applicazioni web. alcuni dettagli sono disponibili alla pagina del progetto cl-dwim

in base a ciò abbiamo sviluppato e gestito un'applicazione per il governo ungherese che raccoglie dati dai governi locali e calcola la parte rilevante del bilancio del paese. questo è il secondo budget che stiamo pianificando ora.

ha circa 4000 utenti e funziona su un cluster di computer.

a partire da "linguaggio accademico": stiamo giocando con cose come continuazioni persistenti per la modellizzazione dei processi aziendali. è un codice lisp casuale con alcune primitive aggiuntive relative al processo e alcuni vincoli. può fermarsi in punti casuali nel codice e addormentarsi (entrare nel database) mentre attende un evento esterno.

è pratico o accademico? decidi tu ... :)

Reddit è stato originariamente scritto in Lisp e successivamente riscritto in Python. C'è una buona analisi dello switch e cosa significa per Lisp su Alla ricerca di Lisp .

Paul Graham ha usato e scritto su ViaWeb che è stato scritto in LISP

Leggi a riguardo qui - Batti la media

Il software ITA utilizza una buona quantità di CL.

http://www.itasoftware.com/careers/l_e_t_lisp.html ? catid = 8

Un progetto open source abbastanza recente che sta ancora svolgendo un'attività di sviluppo coerente e considerevole è LilyPond .

È un programma di notazione musicale che prende come input un file di testo facile da scrivere e lo converte in bellissimi spartiti (file pdf). Offre tutti i tipi di modi per giocherellare con l'output, se lo si desidera. Può persino produrre file midi dal suono decente. Lo uso ogni volta che devo produrre spartiti piacevoli che altri musicisti leggeranno. Penso che sia meglio di Finale ed è gratuito !

Nella categoria commerciale, c'è anche Igor di Notehead  Incisore . Sfortunatamente, il sito non mi consente di pubblicare un link diretto alla pagina che parla di Lisp, quindi vai ai download e guarda in fondo per un " Lisp " collegamento.

C'è anche Naughty Dog (una società di giochi per computer) che usa Lisp nei loro giochi. Questo articolo ne parla e mostra persino del codice.

E ce ne sono molti altri che sono stati menzionati e collegati, ma questi sono i principali che risuonano con me (essendo un compositore / programmatore / giocatore / ... tipo).

Alcuni più recenti:

I primi tre di questi sono stati scritti usando Weblocks, un framework web CL. Wigflip e Clutu usano Hunchentoot puro.

Ora ottieni la codifica! :)

Il telescopio spaziale Hubble è programmato utilizzando gli strumenti di pianificazione Lisp. Lo Space Shuttle era. Sarà il telescopio Webb. La società con cui scrivo Lisp analizza miliardi di dollari di richieste di risarcimento per malattia e ha continuato a crescere del 30% all'anno anche durante la recessione. Siamo stati acquistati da una grande azienda e uno dei nostri programmatori ha eguagliato (effettivamente migliorato) l'output del software (della grande azienda) per analizzare i reclami di Medicare, partendo da zero, da solo, in un anno. Il codice di (enorme azienda), non in Lisp, ha richiesto 6 anni e diversi programmatori. Il problema, dal punto di vista della carriera, è che troppi ascoltano la chiacchierata su "molte parentesi sciocche e irritanti" e così via. La maggior parte dei gestori non " capito e preferirebbe avere un progetto in una lingua abbastanza familiare da poterli gestire. Pensano " Lisp = AI " e non voglio nemmeno intrattenere la possibilità che sia un buon linguaggio di uso generale. Si tappano solo le orecchie. Non esistono strumenti raffinati per realizzare siti Web compatibili con M $ o per raggruppare o creare pipeline di app Java esistenti, e questo è il 90% di ciò che interessa all'IT in questi giorni di crescita con l'acquisizione. Potrei continuare, ma mi renderebbe amaro. :)

  

Se avessi avviato il mio grande progetto software ora, prenderei la mia decisione linguistica in base ai criteri sopra. Certo, adoro Lisp, CLOS è formidabile, le vere rocce scoping lessicali, le macro Lisp sono fantastiche (se usate come diretto), e personalmente mi piace molto la sintassi di Lisp. [& # 8230;] Ma ci vorrebbe molto, o richiedere circostanze speciali, per convincermi a scegliere Lisp per un grande progetto software, se fossi incaricato di fare la scelta. - Dan Weinreb

Credo che Autocad abbia estensioni che usano Lisp per estendere il prodotto. Vedi AutoLISP .

Peter Christensen ha compilato un grande elenco di società lisp (finanziariamente) di successo.

http://www.pchristensen.com/blog/lisp-companies/

Ci sono molte aziende, progetti e prodotti che usano Lisp in una varietà di ruoli - ho lavorato per molti di loro.

Esistono due punti rilevanti:

  1. potresti non sapere mai che l'ultima parte dell'elettronica di consumo è stata costruita con, o addirittura programmata in, Common Lisp, o che alcuni servizi che usi sono alimentati da un server Lisp. Sarebbe errato concludere che Lisp non è mai "usato".

  2. ... e, come tanti domini, quei lavori non sono mai apparsi su Monster.com. Solo perché non hai mai visto un annuncio di lavoro per questo non significa che non ci siano opportunità richieste da Lisp o lo strumento giusto per il lavoro là fuori.

Il sistema plug-in di GIMP è basato su Scheme, credo. Non so se questo è completamente "mondo reale", ma sembra essere un'applicazione pratica di Lisp, almeno.

Cerca ACL2 . È un motore logico formale basato su lisp che è stato utilizzato per un certo numero di "mondo reale" progetto come metodi formali di sicurezza del software e prove di correttezza per l'hardware in virgola mobile.

Se i miei piani funzionano, useremo Scheme tra 5 anni! ; P

Sono rimasto piuttosto colpito quando ho scoperto che il PRISM («The Prism Il progetto è un progetto a lungo termine per costruire strumenti software per la pianificazione della radioterapia, inclusi strumenti di intelligenza artificiale e sistemi di simulazione manuale. ») è scritto in Common Lisp.

Nel mio lavoro sto scrivendo software che utilizza DICOM e devo dire che scrivere bene DICOM l'implementazione è un compito difficile. Nel loro descrivono descrivono come Common Lisp ha permesso loro di costruire un buon Implementazione DICOM migliore (almeno in qualche modo) di altre implementazioni con minore sforzo.

Lisp è utilizzato nella composizione musicale algoritmica del mondo reale con la libreria Common Music . Le Note dal Metalevel di Rick Taube sono un ottimo testo introduttivo all'argomento che ha un sacco di esempi in Lisp per la composizione. Vedi la directory degli esempi qui e una copia del testo qui .

Beh, non è quasi mainstream, ma io uso lisp per tutto il mio codice di ricerca che è gestibile. È di gran lunga il miglior linguaggio che ho trovato per l'equilibrio tra dinamismo e amp; espressività pur generando prestazioni decenti per i numeri, ecc.

Google App Inventor è scritto nello Schema

Ho appena capito che Maxima , un programma per l'algebra simbolica, è scritto in Common Lisp. Lo sto usando da un po 'di tempo e penso che sia anche un ottimo esempio di vita reale.

Matthew Eric Bassett sull'uso di Racket nell'industria cinematografica: http://www.youtube.com/watch?v=37owCjWnkK0

Daniel Liebgold su Racket e PS3: http://www.youtube.com/watch?v=oSmqbnhHp1c

GNU Make è estensibile con schema. Un caso per la programmazione nel mondo reale :)

https://www.gnu.org/software/ rendere / manuale / html_node / Guile-Integration.html

Lisp ha tentato il salto alla velocità della luce nei primi anni '80. Prima c'erano i PC, vi furono prodotte commercialmente "Macchine Lisp" quale superficailly sembra molto come le moderne stazioni di lavoro, ma che erano lisce "fino in fondo". Hardware Lisp alla fine ha perso Intel (come tutto il resto). Finalmente il software Lisp perso in C / C ++. Esistono diverse teorie sul perché tutto ciò sia così. http://www.andromeda.com/people/ddyer/lisp/

Il linguaggio di programmazione dello schema viene utilizzato come linguaggio di scripting da FLUENT Flow Modeling Software (fluidodinamica computazionale, CFD).

Per l'applicazione AutoCAD AutoLISP / Visual LISP sono usati molto per progetti reali e c'è una grande comunità di utenti.

Vedo che alcune persone lo hanno già menzionato, ma lisp è ampiamente utilizzato nello sviluppo personalizzato di AutoCAD. Autocad include un interprete lisp incorporato. È uno dei modi più semplici per estendere il prodotto e offre la possibilità di migliorare rapidamente la produttività.

Non è richiesta la compilazione, sul lato utente, e 1 o più espressioni lineari possono essere immesse sulla riga di comando ed eseguite immediatamente sul disegno. Per i progettisti e i disegnatori disposti a fare anche un piccolo passo per apprendere le basi del lisp, può fornire un enorme vantaggio in termini di produttività.

Autocad offre numerosi altri modi per personalizzare i propri prodotti; ObjectARX (C ++), VB, C #, ecc. L'interfaccia lisp è di gran lunga la più facile da imparare e implementare. E la maggior parte degli altri ambienti di sviluppo usa lisp in qualche modo.

L'interprete lisp è stato reso disponibile in una versione molto antica di Autocad ed è stato chiamato Variabili ed espressioni. Era abbastanza limitato ma ebbe un tale successo con gli utenti che furono aggiunte rapidamente funzionalità aggiuntive. Un IDE visivo completo è stato in seguito (nella versione 2000 credo).

Odierei indovinare quanti milioni (miliardi?) di righe di codice lisp sono disponibili per Autocad. Una ricerca su Google su " autocad .lsp " restituisce 2,3 milioni di hit.

Ok, basta digitare, è tornato a funzionare per me, scrivendo più lisp per il mio progetto attuale :)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top