誰もが任意の静的型付けのスクリプト言語を知っていますか? [閉まっている]

StackOverflow https://stackoverflow.com/questions/552061

質問

私は趣味のプロジェクトのためにLFSベースのLinuxディストリビューションを開始しようと思います。私はいくつかの非常に非標準のタスクを行う上で計画し、そのほとんどがディストリビューションでは、ほぼすべてのスクリプトの変更を伴います。 (主にinitスクリプトが、また、私はパッケージマネージャスクリプトの簡単なセットを書くことになります。)私はこれまで規範から外れ、これをやるに行くことだので、私は動的型付け言語(Perlの、のファンだったことがないので、パイソン、bashの残りは良いですが、誰もが実際に変数を宣言したインタープリタ言語を知っていた場合だけでなく、私の得意は)、私は思っていた。

役に立ちましたか?

解決

あなたの好きなシェルのコマンドを「タイプセット」に見て。 bashのとは、ksh93の両方が、整数や文字列を施行は、ksh93ではなどの参照(変数変数)を、使用することができ、あなたはまた、浮動小数点演算を行うと属性を持つオブジェクトを使用することができます。静的型付けは本当にあなたのinitスクリプトと同様のに有用何かを購入していません。シェルはで本当に良い何である - あなたは、主にファイルを読み込むと、システムコマンドを実行していることになるだろう。 ...これらすべての他のUnixが愚かに設計されていることを決定する前にブック「Kornシェルを学ぶ」オライリーでいくつかの時間を取る;)

他のヒント

一般的に静的型付け言語は、言語をコンパイルしています。私は理由は種類の静的な解析はかなり高価であること、だと思い、あなたが処理しているすべてのコードの深さの外観を持っている必要があります。あなたはそれがあなたが次回にそれを行う必要がないように、ファイルにすべての情報を書き込まないために廃棄物のように感じていることをやった後。だから、すぐにコンパイル言語で終わるます。

一方、1が比較的容易である「 - コンパイルされていない」でコンパイル言語をオンにします。あなただけのどこでも、コンパイルの結果を格納しませんが、それらを直接実行します。私は、このようなラッパーを提供して知っている一つのコンパイラはGHC、標準のハスケルのコンパイラです。あなたのソースファイルに#!/usr/bin/runhaskellを追加し、それらを直接実行することができます。あなたがはるかに規範オフに計画しているので、Haskellはぴったりのように思えます;)。すべての「コンパイル時」解析と最適化は無料ではありませんので、しかし、あなたのスクリプトのためのいくつかのかなり大きな起動時間を期待しています。

Haskellのは、シェルスクリプトのために作られ、あなたが前にそれを見たことがないならば、それは慣れるまでに時間がかかる場合がありますので、それは、関数型言語ですされていません。しかし、それは非常に少ない構文のオーバーヘッドを持っており、関数型言語の強度が抽象化であるので、あなたは、シェルスクリプト楽しくなるライブラリを作成できなかった理由私は表示されません。そこにもいくつかの実験Haskellのシェルのですが、それがあるように見えるんより多くの概念実証の真の解決策よります。

一般的に、私はすべてのタイプの解析のオーバーヘッドが重要であると言うだろうが、私はあなたのお気に入りを選ぶことをお勧め静的にコンパイル言語を入力し、その中に書かれたスクリプトを実行するためのrunhaskellのようなラッパーを探します。

簡単にGoogle。 F3、JavaFXのスクリプト、F#はスクリプト言語<のhref = "として使用することができます最初の答えにコメントとは異なりリンデンスクリプト言語(第二の人生のためのスクリプティング)、http://blogs.msdn.com/chrsmith/archive/2008 /09/12/scripting-in-f.aspx」のrel = "nofollowをnoreferrer"> http://blogs.msdn.com/chrsmith/archive/2008/09/12/scripting-in-f.aspx

フェリックス、Tuga、CFGScript、タルク、Angelscript、そのクイック検索よりがある推測します。

ダグラス

グルーヴィー。デフォルトでは、ダイナミック、アヒル型指定されたのです。しかし、また、静的型付けをサポートしています。

scroll top