Objective-C是一种像Smalltalk这样的语言,但它是一种弱动态类型的语言。我可以选择在原地记录每个消息参数的类型。
作为一种文档(至少对我来说)很重要。如果在Smalltalk上可以使用方法签名上的可选类型标记,那对我来说应该很棒。
我不关心编译器LINT检查。我希望只使用常规语法在源代码上注明参数类型的功能。常规语法或预处理器。请让我知道任何事情。
答案 0 :(得分:2)
不,
标准Smalltalk中没有这样的东西。很多时候人们会选择参数名称,它也会提示它的类型如下:
move:anDisplacementInteger
答案 1 :(得分:2)
除了Davorin通过注释或类型显示参数名称进行记录之外,总是有可能将Compiler
扩展为支持类型注释。
Efficient Multimethods in a Single Dispatch Language展示了Foote等人如何扩展Compiler
以支持Smalltalk中的多方法,并使用注释方法的技术:
ComponentPart>>
add: aVisualComponent <BorderWrapper>
borderedIn: aLayoutObject
特别是,该论文的技术不会在整个图像中强制执行注释,因此您只能注释您的方法。
答案 2 :(得分:0)
您可能对Etoiles project感兴趣,它允许同一个对象在Smalltalk,Objective-C和Objective-C ++中执行方法。
将于8月底在爱丁堡的19th International Smalltalk Conference进行演示。