Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Light metaprogramming.
- class Base
- @attr = (name) ->
- @::[name] = (val) ->
- if arguments.length > 0
- @["_#{name}"] = val
- else
- @["_#{name}"]
- class Robot extends Base
- @attr 'power'
- @attr 'speed'
- robby = new Robot
- ok robby.power() is undefined
- robby.power 11
- robby.speed Infinity
- eq robby.power(), 11
- eq robby.speed(), Infinity
Add Comment
Please, Sign In to add comment