解决方法
无论如何,关于Self的好处是它还包含了很多优秀的documentation,包括但不限于着名的自学教程Prototype-Based Application Construction Using SELF 4.0
old Self website at Sun Research还有大量资源:
> Self: The Power of Simplicity是1987年OOPSLA引入Self的原始论文
> Programming as an Experience: The Inspiration for Self是一篇关于1995年ECOOP的Self的回顾性论文
这两个(连同上面提到的教程)几乎可以解释你所询问的内容. (事实上,第二个问题几乎包含了你的问题“我怎样才能在标题中逐字管理没有类的代码”):
> Parents are Shared Parts: Inheritance and Encapsulation in Self
> Organizing Programs Without Classes
然后,有自我;电影,关于Self编程语言,Self GUI,Self系统和Self VM的介绍性视频,由Self的首席设计师和开发人员主演.不幸的是,它于1995年在VHS上发布,当视频最终被数字化时,原始磁带已经降级.你可以在this site with Smalltalk videos找到几个版本的视频.我个人觉得Large QuickTime最容易查看.
这里有一些其他有趣的自我链接:
> Self at Ward’s Wiki
> A Self link list
> A Wiki page about Self由一家曾经制造Self cpu的公司
Dave Ungar,Self gace的主要设计师,9月份在斯坦福大学举行的一场演讲,名为Self and self: whys and wherefores.本演讲的流媒体视频is available.
Self的一个小问题是,它在1995年基本上被Sun抛弃,转而使用一种不起眼的小脚本语言,用于在电视机顶盒上制作电子电视指南中的动画卡通人物. (您可能听说过它,它被称为Java.)因此,最新的稳定版本4.3仅在PowerPC上的OSX上运行(也可能是x86),在Sparc cpu上运行Solaris.几个月前,Self项目再次被一些前成员以及该语言的一些新粉丝所接受,现在它已被移植到x86上的Linux和OSX,可用4.4 Alpha 2发布可用,预计1月份发布最终版本.
其他一些有趣的基于原型的语言是:
> NewtonScript(受Self启发)旨在成为Apple Newton PDA的应用程序开发语言;它也是JavaScript的直接灵感
> Slate是“一个干净的板岩面向对象Smalltalk风格的环境”
> Io是一个基于原型的编程语言,受Smalltalk启发(所有值都是对象,所有消息都是动态的),Self(基于原型),NewtonScript(差异继承),Act1(并发的actor和期货),Lisp(代码是运行时可检查/可修改的树)和Lua(小的,可嵌入的)
> Ioke是一种基于原型的编程语言,受Io,Smalltalk,Lisp和Ruby的启发
至于你关于如何构建程序的问题,我必须承认我发现这些类实际上模糊了面向对象的设计.我的意思是,有一个原因,它被称为面向对象编程,而不是面向类编程.