我正在为我的产品搜索脚本语言,这将允许轻松定制。
我已经构建了自己的基于 XML 的小型语言,但我对这个解决方案并不满意:
<ScrArp>
<StaticClass Name="Root">
<Method Return="Void" Name="Main">
<Call Method="Print" Text="Hello World" />
<Declare Type="SampleClass" Name="myInstance">
<Set>
<NewInstance Type="SimpleClass" />
</Set>
</Declare>
<Call Text="Hello 123">
<Instance Name="myInstance">
<!-- <Instance Name="mySample2..."> -->
<Method Name="TestMethod" />
<!-- </Instance> -->
</Instance>
</Call>
</Method>
</StaticClass>
<Class Name="SampleClass">
<Method Return="Void" Name="TestMethod">
<Parameter>
<Declare Type="String" Name="Text" />
<Parameter>
<Call Method="Print">
<Text>
<Get Name="Text" />
</Text>
</Call>
</Method>
<Method Return="String" Name="Method2">
<Declare Type="String" Name="cReturnValue" />
<Set>
<Instance Name="cReturnValue" />
<Value>
<Call>
<Instance Name="cReturnValue" />
</Call>
<Value>
</Set>
<Return>
<Instance Name="cReturnValue" />
<Return>
</Method>
</Class>
</ScrArp>
我以前使用过 Lua 和 IronPython,但我不太喜欢 Lua,而且据我所知 IronPython 仅受社区支持。
现在我的问题。哪个是在 C# 中编写脚本的最佳解决方案?- IronPython - Lua - 我自己的小语言?
谢谢!