可以把这种语言的代码编译成C++,使用MIT License,代码如下:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,x;
string s,fn;
cout<<"请输入输出文件路径:";
cin>>fn;
freopen(fn.c_str(),"w",stdout);
cout<<"#include<bits/stdc++.h>\n";
cout<<"using namespace std;\n";
cout<<"int p[1001],n;\n";
cout<<"int main()\n";
cout<<"{\n";
cout<<" cin>>n;\n";
cout<<" p[1]=n;\n";
cin>>n;
for(int i{1};i<=n;i++)
{
cout<<" _"<<i<<":\n";
cin>>s>>x;
if(s=="new")
{
cout<<" n=n+1;\n";
cout<<" p["<<x<<"]=n;\n";
}
else if(s=="dec")
{
cout<<" p["<<x<<"]=p["<<x<<"]-1;\n";
}
else if(s=="assign")
{
int y;
cin>>y;
cout<<" p["<<x<<"]=p["<<y<<"];\n";
}
else if(s=="iftry")
{
int y;
string t;
cin>>t>>y;
cout<<" if(p["<<x<<"]>=0)\n";
cout<<" goto _"<<y<<";\n";
}
else if(s=="ifeq")
{
int y,z;
string t;
cin>>y>>t>>z;
cout<<" if(p["<<x<<"]==p["<<y<<"])\n";
cout<<" goto _"<<z<<";\n";
}
else if(s=="ifneq")
{
int y,z;
string t;
cin>>y>>t>>z;
cout<<" if(p["<<x<<"]!=p["<<y<<"])\n";
cout<<" goto _"<<z<<";\n";
}
}
cout<<" cout<<n;\n";
cout<<" return 0;\n";
cout<<'}';
return 0;
}