Reword locals() difference to match the real state of affairs.

Paul Sokolovsky 2016-05-20 16:38:40 +03:00
parent fa2d8a1dde
commit 362180ffd6
1 changed files with 1 additions and 1 deletions

@ -13,7 +13,7 @@ MicroPython is intended for constrained environments, in particular, microcontro
1. By virtue of being "micro", MicroPython implements only subset of functionality and parameters of particular functions and classes. Each specific issue may be treated as "implementation difference" and resolved, but there unlikely will ever be 100% coverage of CPython features.
1. By virtue of being "micro", MicroPython supports only minimal subset of introspection and reflection features (such as object names, docstrings, etc.). Each specific feature may be treated as "implementation difference" and resolved, but there unlikely will ever be 100% coverage of CPython features.
1. print() function does not check for recursive data structures in the same way CPython does. There's however checks for stack usage, so printing recursive data structure won't lead to crash due to stack overflow. Note that it's possible to implement more CPython-like handling of recursive data structures on the Python application level. Do this by writing a function which keeps the history of each object visited, and override the builtin print() with your custom function. Such an implementation may of course use a lot of memory, which is why it's not implemented at the MicroPython level.
1. MicroPython does not provide introspection into local variables of functions, locals() returns empty dictionary.
1. MicroPython optimizes local variable handling and does not record or provide any introspection info for them, e.g. locals() doesn't have entries for locals.
## Implementation Differences
Some features don't cater for constrained systems, and at the same time are not easy to implement efficiently, or at all. Such features are known as "implementation differences" and some of them are potentially the subject for future development (after corresponding discussion and consideration). Note that many of them would affect the size and performance of any given MicroPython implementation, so sometimes not implementing a specific feature is identified by MicroPython's target usage.