# Which object-oriented programming language is the closest to the untyped sigma-calculus?

I'm wondering which of the dynamic object-oriented (or prototype-oriented) languages (like JavaScript, Ruby, Python, etc.) can be considered as the closest to Abadi and Cardelli's untyped sigma calculus?

• Javascript. It's the only one not based on classes. – Dave Clarke May 6 '16 at 7:09
• And what if we add classes as factories that generate class instances? In the way how classes are introduced into Abadi and Cardelli's untyped calculus (in Section 6.6, "Traits, Classes, and Inheritance"). As I understand, classes in Ruby are the same: they generate instances, but since there is no static typing we can later update of add new methods for these instances. – ps_ttf May 6 '16 at 8:47
• Re first sentence, this idea is applicable to Javascript and the sigma calculus. In Ruby, you can only create objects from classes. You cannot just write down an object, as you can in Javascript and the sigma calculus. – Dave Clarke May 6 '16 at 15:09
• And is it possible to update methods in JS as in sigma? – ps_ttf May 6 '16 at 17:59
• That is surely something you can google. – Dave Clarke May 6 '16 at 19:17

Other languages fail with method backups or dynamic method override. But this is not the case for other prototype based languages (at least the most populqr ones), which fully support $\varsigma\text{-calculus}$ (take for example "Self").