2017-04-08 38 views
6

在“Programming Ruby”一书中,它表示ruby具有基于文件的源代码。什么是基于文件的源代码?

采取一种真正的面向对象语言,如Smalltalk。删除 不熟悉的语法,并转移到更传统的基于文件的源代码 。 [...]你最终会遇到Ruby。

http://docs.ruby-doc.com/docs/ProgrammingRuby/

是什么意思的语言有基于文件的源代码?

+8

著名肯特·贝克[报价](http://www.azquotes.com/quote/847274):“我的意思是,在文件的源代码;如何古朴,如何七十年代” –

回答

13

这意味着源代码是基于文件。例如,在“故意域名工作台”中,没有源文本;源是一个语义树,存储在数据库中,而不是文件。在Smalltalk中,也没有源文本;类和方法是任何其他对象一样的对象,并像其他任何对象一样存储在垃圾收集对象内存中 - 然后将对象内存序列化到磁盘(并回读),类似于计算机进入时RAM如何序列化到磁盘休眠,程序实际上永远不会停止运行,而是在系统运行时编辑系统中的活动对象。 (LISP是相似的。)

在Ruby中,每当程序停止,一切都扔掉,并在程序启动时,一切都重新建立起来。该文件是“死”,它不包含活的对象。编辑程序时,编辑“死”文件,而不是实时系统。这就是“基于文件的源代码”的含义。