2

データ記述 (YAML または JSON) と基本的なスクリプト機能 (変数、条件式、コールバック関数など) を組み合わせた言語を探しています。YAML のようなリストとマップの階層構造を記述するものですが、リーフ値はリテラル データではなく関数です。

これまでは、YAML の上に式ロジックを追加することでこれに取り組んできました。これにより、既存のパーサーを基に構築できますが、構文が非常に扱いにくくなり、コンパイラー/インタープリターの側面を自分で実装する必要があります。私はそれを行う能力がないと思います。

別の方法は、既存の言語のサブセットを採用して、実際のコンパイラを構築できるようにすることです。悲しいことに、私は関数型プログラミング言語に精通していません。正直なところ、これをどこから始めればよいかわかりません。

これらのプロパティの一部またはすべてを持つ関数型言語を提案できる人はいますか?

compact syntax for expressing hierarchical lists and maps
pure functional
lexical scoping
no OOP (using maps rather than static compound types)
first class functions (primary data structures will be lists/maps of functions)
type inference
compilable from an AST (if I have to write my own parser)
compilable to JVM bytecode (it would make my life a lot easier)

Scala は JVM を対象としているため、当然の選択ですが、私が必要としているものに近いものがあるかもしれないことはわかっています。助言がありますか?

4

4 に答える 4

0

PyYAMLをチェックしてください。かなり完成度が高いようです。

問題は、Python がすべての要件を満たしているわけではありませんが、いくつかは満たしています。だからあなたのために:

長所:

短所:

  • レキシカルスコープではなく静的スコープ
  • それはOOPですが、機能的に使用できることを考えると、なぜこれがあなたを傷つけるのかわかりません
  • 型推論はありませんが、優れた IDE はコーディング時に警告を発します...
于 2014-11-14T17:46:42.730 に答える