Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There's one historic reason (it wasn't widely available when Imba was started). Another reason is performance: the last time we benchmarked this `defineProperty` was slower than regular function calls. Maybe it's improved now.

Semantically the biggest difference is that you don't need to do anything special for marking a method as a property:

    class List
      def length
        # …
In this case `list.length` just works. The disadvantage of this is that if you want to get the function itself, there's a separate syntax (`list:length`). Other than that, this is mostly about taste/style.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: