我正在创建一个用于创建网页的脚本语言,但不知道从哪里开始.
我有一个看起来像这样的文件:
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; } }
…我需要能够将上面的文本作为Windows Scripting Host的目标.我知道这可以做到,因为过去一段时间网络上曾经有很多Doc,但我现在似乎无法找到它们.
有人可以帮忙,还是让我开始朝着正确的方向前进?
谢谢
解决方法
您正在制作一个不存在的特定于域的语言.您想要翻译成另一种语言.您需要一个合适的扫描仪和解析器.你可能被告知要看看antlr. yacc / bison,或黄金.这出了什么问题?
作为一个FYI,制作新语言是一种有趣的练习,但在你做这样的事情之前,你可能会问一个很好的“为什么?我的新语言提供什么,我无法得到任何其他(合理的)方式?”