Lably
Skip to content

Nuitka

Free and open source compiler for the Python programming language

  • 2 min read
  • 2 chapters

Related on Lably

Through Python (programming language) and Exception handling

Nuitka was discussed at the 2012 EuroPython conference, and serious development began at the end of the same year. It now supports virtually all of the features of the Python language. Additional compile-time optimizations are planned for future releases, including avoiding the use of Python objects for additional variables whose type can be inferred at compile time, particularly when using iterators, which is expected to result in a large performance increase.

Limitations

Currently it is not possible to cross-compile binaries (e.g. building the executable on Windows and shipping it to macOS).

Standalone binaries built using the --standalone command line option include an embedded CPython interpreter to handle aspects of the language that are not determined when the program is compiled and must be interpreted at runtime, such as duck typing, exception handling, and dynamic code execution (the eval function and exec function or statement), along with those Python and native libraries that are needed for execution, leading to rather large file sizes.

Nuitka's design heavily relies on the internals of the CPython interpreter, and as a result other implementations of the Python language such as PyPy, Jython, and IronPython cannot be used instead of CPython for the runtime interpreter and library.

Sign in to keep reading

One more chapter is free with a Lably account.

More in Computing and communication