1
2
语言和运行时是两种不同的东西。他们不是真正的亲戚。 因此,如果您现有的运行时已经提供了一个GC,那么一定有充分的理由用另一个GC扩展运行时。在操作系统内存分配缓慢且昂贵的过去,应用程序自带了堆管理器,在处理小数据块时效率更高。这是一个用于向现有运行时(或操作系统)添加另一个内存管理的读数。但是如果你说的是Java.net之类的话,那么对于大多数手头的任务来说,这些都应该是好的和有效率的。 但是,您可能希望为内存和对象管理任务(以及其他任务)创建一个适当的接口/API,以便您的语言(“来宾”)运行时可以稍后在另一个主机运行时的上实现。 |
2
0
对于解释器来说,使用主机gc、imho应该没有问题,尤其是在一开始。和往常一样,他们的目标应该是让一些东西工作,然后让它正常工作,然后让它快速。对于特定于领域的语言(DSL),这一点尤其适用,因为该语言的目标是一种小型语言。对于这些,实现一个完整的GC将是多余的。 |
Koray Tugay · 编码和编程语言之间的协议/关系是什么? 8 年前 |