私は実際の会社で働いた経験はありませんが、LISPを使うのが難しい理由を知っています。
まず、これはこのブログ投稿を思い出させます:http : //steve-yegge.blogspot.com/2006/04/lisp-is-not-acceptable-lisp.html
私がLispで抱えている主な問題は、「which Lisp」の質問です。私は通常、メインプラットフォームとしてLinuxを使用していますが、作成するものはWindowsと互換性がある必要があります。つまり、使用するテクノロジを評価するとき、根本的に異なる2つのオペレーティングシステムで作業するとき、私の人生を楽にする必要があるということです。この要件は好きではありませんが、要件である実際のプロジェクトで使用することです。これで、個人的なサイドプロジェクトにはWindowsであまりサポートされていない言語を使用しますが、大規模なソフトウェアプロジェクトを作成する機会がないため、必要な経験がありません。
今、関数型言語を学ぼうとしていたとき、私は本当にCommon Lispを学びたかったのです。それは正しいことのように思えた。私は実際に組み込み関数を知らず、Lispで作業するプロジェクトが必要だったため、Practical Common Lispを出発点として読み始めました。S式は美しくて簡単でした。これらの括弧はすべて、コードで何が起こっているのかが日ごとに明らかだったので、信じられないほど美しいものでした。
それで、本の外で最初のプログラムをLispで書こうとしています。コードの行をカウントし、コードカウントから些細な行を削除するコマンドラインツールが必要でした。最も便利なツールではありませんが、楽しいことです。これには、ファイルアクセス、少しの解析、およびカウントが含まれます。約1週間前に同じツールをPythonで実装していました。
コマンドライン引数にアクセスする必要があります。次に、コマンドライン引数を取得する標準的な方法がないことを学びます。それらはすべて非標準の機能です。クロスプラットフォームではありません。言語には多くのライブラリが組み込まれていないため、そこからほとんど悪化します。私は結局Haskellに切り替えましたが、Common Lispにあまり深く入り込むことはありませんでした(したがって、私の苦情は有効ではないかもしれません)。
この種の非標準的なことは、過去に私にとって常に苦痛でした。C ++にも同じ問題がありますが、Boostのようなライブラリを使用すると、これらの弱点を回避できます。
また、S式以外のすべてのLisp構文が少しlittleいことも助けにはなりません。