Tag: 编译器构造

运行时动态绑定和类inheritance之间的区别

我试图澄清动态语言(Python,ruby)和静态类型语言(java,C ++)中的运行时动态绑定和类inheritance的概念。 我不确定我是对的。 在Python和Ruby等动态语言中,运行时动态绑定实现为duck typing。 当解释器检查对象的类型时,它会检查对象是否具有特定的方法(或行为),而不是检查对象的类型; 和运行时动态绑定并不意味着类inheritance。 类inheritance只是减少Python和Ruby中的代码副本。 在Java和C ++等静态类型语言中,运行时动态绑定只能获得类inheritance。 类inheritance不仅减少了代码副本,还用于实现运行时动态绑定。 总之,类inheritance和运行时动态绑定是两个不同的概念。 在Python和Ruby中,它们完全不同; 在Java和C ++中,它们混合在一起。 我对吗?

你如何为该语言的语言编写编译器?

可能重复: 如何用该语言编写语言编译器? 在“本身”中实现编译器 我在看Rubinius ,这是一个使用Ruby编写的编译器编译成字节码的Ruby实现。 我无法理解这一点。 你如何编写语言本身的语言编译器? 似乎只是文本没有任何东西可以将它编译成可执行文件,然后可以编译用Ruby编写的未来代码。 我只是输入那句话感到困惑。 有人可以帮忙解释一下吗?

如何将Ruby编译为Javascript?

我正在研究一个我想在服务器和浏览器中表达的逻辑。 类似于validation表单的东西,其中元素之间必须存在基于已经输入的内容的某些逻辑关系。 所以…如果我可以编写一次逻辑并以某种方式结束Ruby和Javascript,我只需编写一次逻辑,而不必担心确保用不同语言编写的两段代码具有相同的function行为。 显然,我不需要在Ruby中重现所有内容,并且可以将一个通用库(如Functional Javascript)移植到Ruby。 有没有人有RubyJS的经验? 任何人都可以指向使用RubyJS的现有项目吗? 提前致谢…

PHP到Ruby编译器

有没有人知道(最好是开源)PHP到ruby编译器? 即一个解析PHP代码并生成语义上等效的ruby代码的程序?