@@ -50,6 +50,44 @@ the officially supported board from the
5050see the [ schematics and pinouts] ( http://github.com/micropython/pyboard ) and
5151[ documentation] ( https://docs.micropython.org/en/latest/pyboard/quickref.html ) .
5252
53+ MicroPython design values
54+ -------------------------
55+
56+ "Perfection is achieved, not when there is nothing more to add, but when there
57+ is nothing left to take away." ―- Antoine de Saint-Exupéry.
58+
59+ For its design and implementation, MicroPython aims to follow a set of values.
60+ Although not a strict set of rules, these values and principles serve as a
61+ useful guide for new and seasoned contributors, as well as maintainers.
62+
63+ MicroPython is at heart a combination of "Micro" and "Python": it's about
64+ resource constrained systems running the Python programming language. Both of
65+ these concepts balance off against each other in all parts of MicroPython's
66+ design and implementation.
67+
68+ The key concepts that focus the development of MicroPython are:
69+ - Minimalism: do lots with little.
70+ - Efficiency: engineering, build, execution, storage, power consumption.
71+ - Consistency: the whole system feels like it was designed at once.
72+
73+ When using MicroPython, the Python language is used as the human interface to a
74+ system, giving fine control over the entities attached to that system.
75+ In a hardware setting, MicroPython aims to give the user a bare-metal feeling:
76+ one should feel like they have complete control over the system, with very
77+ little between the programmer and the physical world.
78+
79+ MicroPython recognises that systems can be very complex. The existing Python
80+ libraries in combination with the MicroPython-specific libraries provide a
81+ user-friendly way to harness the complexity of a system.
82+
83+ Python language compatibility is very important to MicroPython, and at first
84+ glance MicroPython should look just like regular Python. In the first instance,
85+ most Python scripts should run unchanged on MicroPython, even on devices with very
86+ tight resources. Beyond that, there are ways to extend MicroPython if needed to
87+ better match Python. The provided built-in modules are an efficient subset of
88+ the corresponding Python ones, without duplication of functionality, and allow
89+ extension in Python if needed.
90+
5391Contributing
5492------------
5593
0 commit comments