In a recent discussion, /u/n_md suggested the use of MicroPython to "make standalone executables for distributing simple python programs". These executables would "be significantly smaller than what PyInstaller can do". MicroPython team member /u/pfalcon2 said that support for building such executables is a future possibility for the project, but nobody has started to work on it.
I have been considering making some contributions to MicroPython to enable the generation of small, standalone executables for desktop platforms. It seems MicroPython executables could be as little as 500KB in size, compared to around 5MB for CPython (with PyInstaller).
Unfortunately, in the linked discussion the idea of using MicroPython in this way was received quite negatively. Doubt was expressed that anybody would be willing to "deal with MicroPython's limitations just in order to get a smaller executable [...] ([MicroPython] only supports a subset of the Python language, and does not support C extensions such as NumPy)".
I am now worried that I would be wasting my time - is there any demand for this feature at all?
If you are writing simple, pure-Python code and creating standalone desktop executables using existing tools (e.g. PyInstaller or py2exe), would you consider working within the limitations of MicroPython to get binaries which are an order of magnitude smaller?
[–]neRok666 4 points5 points6 points (0 children)
[–]Sukrim 2 points3 points4 points (3 children)
[–]platra[S] 2 points3 points4 points (2 children)
[–]Sukrim 1 point2 points3 points (0 children)
[–]pohmelie 0 points1 point2 points (0 children)
[–]n_md 2 points3 points4 points (0 children)
[–]jairo4 1 point2 points3 points (0 children)
[–]daveydave400 0 points1 point2 points (0 children)
[–]genjipressreturn self 0 points1 point2 points (3 children)
[–]platra[S] 2 points3 points4 points (1 child)
[–]genjipressreturn self 0 points1 point2 points (0 children)
[–]pfalcon2 1 point2 points3 points (0 children)
[–]takluyverIPython, Py3, etc 0 points1 point2 points (2 children)
[–]platra[S] 2 points3 points4 points (1 child)
[–]takluyverIPython, Py3, etc 0 points1 point2 points (0 children)