Non ho esperienza nel lavorare per una vera compagnia, ma so perché LISP è stato difficile da usare per me.
Prima di tutto, questo mi ricorda questo post del blog: link
Il problema principale che ho con Lisp è la domanda "che Lisp". Di solito lavoro su Linux come piattaforma principale, ma le cose che faccio devono essere compatibili con Windows. Ciò significa che quando sto valutando una tecnologia da utilizzare, deve semplificarmi la vita quando lavoro su due sistemi operativi radicalmente diversi. Non mi piace questo requisito, ma usarlo su un progetto reale è un requisito. Ora utilizzerò linguaggi che non hanno un ottimo supporto su Windows per i miei progetti personali, ma poiché non ho mai avuto la possibilità di scrivere un grande progetto software, non ho l'esperienza necessaria.
Ora, quando stavo cercando di imparare un linguaggio funzionale, volevo davvero imparare Common Lisp. Sembrava la cosa giusta da fare. Ho iniziato a leggere Practical Common Lisp come un punto di partenza in quanto non conoscevo le funzioni integrate e avevo bisogno di un progetto su cui lavorare in Lisp. Le espressioni S erano belle e facili. Tutte quelle parentesi erano incredibilmente belle per me perché era chiaro come giorno esattamente quello che stava accadendo nel codice.
Quindi provo a scrivere il mio primo programma in Lisp al di fuori del libro. Volevo uno strumento da riga di comando che contasse le righe di codice e rimuova le linee banali dal conteggio del codice. Non è lo strumento più utile, ma divertente da fare. Implica l'accesso ai file, un po 'di analisi e il conteggio. Avevo implementato lo stesso strumento in Python circa una settimana prima.
Devo accedere agli argomenti della riga di comando. Poi imparo che non esiste un modo standard per ottenere argomenti dalla riga di comando. Sono tutte funzioni non standard. Non è affatto multipiattaforma. Di solito peggiora solo di lì dato che la lingua non ha molte librerie incorporate. Ho finito per passare a Haskell e non sono andato molto lontano in Common Lisp (quindi i miei reclami potrebbero non essere nemmeno validi).
Questo tipo di cosa non standard è sempre stato un dolore per me in passato. C ++ ha lo stesso problema, ma con le librerie come Boost puoi aggirare queste debolezze.
Inoltre, non aiuta la sintassi Lisp per tutto tranne le espressioni S è un po 'brutta.