diff --git a/Nim-for-Python-Programmers.md b/Nim-for-Python-Programmers.md index 8ce9316..6a51112 100644 --- a/Nim-for-Python-Programmers.md +++ b/Nim-for-Python-Programmers.md @@ -45,25 +45,26 @@ Similarities and differences. Feature | Python | Nim ---------------------|-----------------------------------|----------------------------------------- Execution model | Virtual Machine | Machine code via C* -Meta-programming | Dynamic language | Nim (const/when/template/macro) +Meta-programming | Python (decorators/metaclasses/eval/etc) | Nim (const/when/template/macro) Memory Management | Garbage-collected | Garbage-collected and manual Types | Dynamic | Static Dependent types | - | Partial support -Generics | - | Yes +Generics | Duck typing | Yes int8/16/32/64 types | No | Yes Bigints | Yes (transparently) | Yes (via nimble package) Arrays | Yes | Yes Bounds-checking | Yes | Yes -Type inference | - | Yes (extensive support) +Type inference | Duck typing | Yes (extensive support) Closures | Yes | Yes -Operator Overloading | Yes | Yes (on any types) +Operator Overloading | Yes | Yes (on any type) Custom Operators | No | Yes Object-Oriented | Yes | Minimalistic** Methods | Yes | Yes Multi-Methods | No | Yes Exceptions | Yes | Yes - + \*Other backends supported and/or planned + \**See section below. ### Philosophy