我正在创建一个用于创建网页的脚本语言,但不知道从哪里开始.
我有一个看起来像这样的文件:
mylanguagename(main) {
OnLoad(protected) {
Display(img, text, link);
}
Canvas(public) {
Image img: "Images\my_image.png";
img.Name: "img";
img.Border: "None";
img.BackgroundColor: "Transparent";
img.Position: 10, 10;
Text text: "This is a multiline str#ning. The #n creates a new line.";
text.Name: text;
text.Position: 10, 25;
Link link: "Click here to enlarge img.";
link.Name: "link";
link.Position: 10, 60;
link.Event: link.Clicked;
}
link.Clicked(sender, link, protected) {
Image img: from Canvas.FindElement(img);
img.Size: 300, 300;
}
}
Run Code Online (Sandbox Code Playgroud)
...我需要能够将上面的文本作为Windows Scripting Host的目标.我知道这可以做到,因为过去一段时间网络上曾经有很多Doc,但我现在似乎无法找到它们.
有人可以帮忙,还是让我开始朝着正确的方向前进?
谢谢
您正在制作一个不存在的特定于域的语言.您想要翻译成另一种语言.您需要一个合适的扫描仪和解析器.你可能被告知要看看antlr.yacc/bison,或黄金.这出了什么问题?
作为一个FYI,制作新语言是一种有趣的练习,但在你做这样的事情之前,你可能会问一个很好的"为什么?我的新语言提供什么,我无法得到任何其他(合理的)方式?"