> The vtable interface, at the moment, covers the > operators you'd expect to be able to override--assignment, simple math, > most string operations, conversion duties, and suchlike things. So this code: > > a = b + c > > would call the add vtable method for b, and the assign vtable method for a, But in Python, this is not an operation on a at all! It's an operation on the namespace containing a, and a cannot override it. I'm sure your VM design can accommodate this, but it points out the fundamental difference between the languages in their ideas of what a "variable" is. Python has at least two types of namespaces in this context: some namespaces (like module globals) are dictionaries, others (like function locals) have mapped the variable names to an array of object references. --Guido van Rossum (home page: http://www.python.org/~guido/)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4