有什么资源可以使CLR/.NET语言可调试?我正在开发一个ActionScript 3到IL编译器,它使用DLR CallSites和CallSiteBinders来处理静态编程语言的动态方面.我正在寻找有关将发出的IL映射返回源代码的任何信息,我也想知道如何使动态调用站点也能映射回来.
所以这最终有两个问题:
任何帮助将不胜感激!
在附加的Visual Studio实例中:
compiler-construction debugging cil dynamic-language-runtime dynamic
可能重复:
为.NET语言构建调试器有什么好方法?
我有一个Lisp风格的语言,我想为它构建一个调试器.我的语言在这里 - https://github.com/bryanedds/aml.
我可能会把它编译成IL.如果它对编写调试器很有帮助,我会先编写编译器.但是,我想知道构建调试器的方法是什么.我看着为Visual Studio构建它,但这很困难,因为它似乎要求我通过COM与VS连接,这意味着我需要用C或C++编写调试器(UGH!).我希望Visual Studio Debugger开发有一个我不知道的更好的故事.
在SO上查看关于.NET调试的其他线程,我看到IL包含源文件坐标,所以我想知道这是否意味着我不需要编写尽可能多的COM代码(EG - 步骤调试工作了)没有任何COM代码的框,只要编译的IL具有源文件坐标).
或者,我可以看一下使用另一个IDE,它可能有更快乐的.NET语言调试路径.有Eclipse,但它似乎没有任何特定的.NET语言调试支持.
也许具有最佳调试器构建故事的IDE可能是MonoDevelop.当然,我需要它来使用MS .NET而不仅仅是Mono.但是,它的文档相当简单.有人有建立调试器的经验吗?
所以,正如你所看到的,我宁愿迷失在这一切之中.我只需要一些方法来构建一个简单的调试器,其中包含断点和步进调试,并对我的.NET语言进行可变检查.我更喜欢在F#中编写大部分代码,因为这就是我的语言.