組み込み機器やロボットに最も求められるソフトウェア言語スキルはC、C++、LISPのようです。最近の言語がこれらのアプリケーションに浸透していないのはなぜですか?
スペース要件、パフォーマンス、および信頼性に関するものだと思います。
たとえば、Erlang は、並行プログラミングを容易にし、コードのホット スワップを可能にするため、ロボット アプリケーションに特に適しているように思われます。Python は、複数のプログラミング パラダイムのサポート以外の理由がなければ、有用であるように思われます。Java が一般的なロボット プログラミングに進出していないことに、私はさらに驚いています。
実装者が実行時の制約を処理する努力を引き受けた場合、これらのプラットフォームでおそらくはるかに多くの言語を使用できるでしょう。これはあまり当てはまりません。意図的にリソースを減らす努力をしないと、手元にあるリソースを吸収してしまう傾向が常にあります。
「一部の新しい言語は解釈され、コンパイルされていない」という議論があると確信しています。これは、コンパイルされた言語の方が高速で、計算リソースの使用量が少ないことを意味します。
For は解釈されますが、小さくて高速であることで定評があり、そのため組み込みデバイスでよく使用されていました。Factor のようなフォローアップもおそらく良い候補になるでしょうが、私はこの方向への取り組みについて聞いたことがありません - 上記を参照してください。
Java 仮想マシンを携帯電話や SunSpot に搭載できる時代に、これはまだ当てはまるのでしょうか?
私は組み込みの人間ではありませんが、携帯電話は、車のコントローラーや speklets asf と比較して、かなり豪華なプラットフォームです。しかし、Java は常に組み込みデバイスを念頭に置いていたため、それらの組み込み実装は、パワー スペクトルのさらに下に到達する可能性さえあります。
(とにかく LISP は解釈されませんか?)
いいえ、プロの実装はコンパイルされます、AFAIKT。