什么是基于文件的源代码?

Kan*_*ezt 6 ruby smalltalk

在"Programming Ruby"一书中,它说ruby有基于文件的源代码.

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

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

对于一种语言来说,拥有基于文件的源代码意味着什么?

Jör*_*tag 13

这意味着源代码基于文件.例如,在Intentional Domain Workbench中,没有源文本; 源是语义树,存储在数据库中,而不是文件中.在Smalltalk中,也没有源文本; 类和方法是像任何其他对象一样的对象,并像任何其他对象一样存储在Garbage-Collected Object Memory中 - 然后将对象内存序列化为磁盘(并回读),类似于当计算机进入磁盘时将RAM序列化到磁盘的方式休眠时,程序实际上永远不会停止运行,而是在系统运行时编辑系统中的活动对象.(LISP很相似.)

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