Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #72511

Micro Python -- a lean and efficient implementation of Python 3

Path csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!xlned.com!feeder1.xlned.com!newsfeed.xs4all.nl!newsfeed3a.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail
Return-Path <damien.p.george@gmail.com>
X-Original-To python-list@python.org
Delivered-To python-list@mail.python.org
X-Spam-Status OK 0.002
X-Spam-Evidence '*H*': 1.00; '*S*': 0.00; 'python,': 0.02; 'scripts': 0.03; 'cpython': 0.05; 'subject:Python': 0.06; 'memory.': 0.07; 'subject: -- ': 0.07; 'compact': 0.09; 'feasible.': 0.09; 'modes': 0.09; 'pointers': 0.09; 'read-only': 0.09; 'subset': 0.09; 'contribute': 0.11; 'python': 0.11; 'language,': 0.12; 'windows': 0.15; '(read': 0.16; '80k': 0.16; 'assembler': 0.16; 'cleanly': 0.16; 'fits': 0.16; 'heap': 0.16; 'library).': 0.16; 'optimised': 0.16; 'ported': 0.16; 'runtime.': 0.16; 'syntax,': 0.16; 'library': 0.18; 'bit': 0.19; 'properly': 0.19; 'stack': 0.19; 'written': 0.21; 'machine': 0.22; 'code,': 0.22; 'memory': 0.22; 'compilation': 0.24; 'features,': 0.24; 'integer': 0.24; 'certain': 0.27; 'unix': 0.29; 'compared': 0.30; 'message- id:@mail.gmail.com': 0.30; 'team.': 0.31; 'aims': 0.31; 'arm': 0.31; 'enabled': 0.31; 'faster,': 0.31; 'linux.': 0.31; 'operations.': 0.31; 'subject:skip:i 10': 0.31; 'compatible': 0.32; 'run': 0.32; 'announce': 0.33; 'mac': 0.33; 'minimal': 0.33; 'at:': 0.34; 'basic': 0.35; 'info': 0.35; 'received:google.com': 0.35; 'there': 0.35; 'ram': 0.36; 'yield': 0.36; 'possible': 0.36; 'hi,': 0.36; 'url:org': 0.36; 'growing': 0.38; 'to:addr:python- list': 0.38; 'embedded': 0.39; 'to:addr:python.org': 0.39; 'even': 0.60; 'most': 0.60; 'full': 0.61; 'new': 0.61; 'simple': 0.61; 'such': 0.63; 'more': 0.64; 'employing': 0.68; 'skip:w 40': 0.68; 'skip:w 30': 0.69; 'inline': 0.74; 'attractive': 0.81; 'goals': 0.81; 'low': 0.83; '200k': 0.84; 'benchmark': 0.84; 'compiles': 0.84; 'devices,': 0.84; 'features:': 0.84; 'sporting': 0.84; 'doubling': 0.91; 'time)': 0.91; 'suited': 0.93
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=EmB95Zqd/78tZuf3RYvZ+T3lz/Q2Rmd1wXsCFV+bEOc=; b=l0lpAKeYR/kq6qvZw18oHySAUzoEir4ynamLqW6hHxFKGPgPOw31xf1rfuQy1BoObN 12uZAtZYfQ0kbJm8YhN7KxAtqU0/c0vjOGmSCd+bQzTMvioJqRVurgCcW1n+9AjRgcKA 58muk4+iqeCAkDdiricjHYManqF9Sv9gPa2/Uoz4A2ZCWOQLxIupt6yviIlZZEuX4VfF X4HGk4sIOIU955EJMzEELMmmd7RrTwGag6mOVb5FNdRNRIezQA4AAQLy3hG+k+FkCMR1 zce2i35UZrMnCOihSjp9ftILIasUJmJRWJRRpsJq9o8CjLloybGZd3bh9lhStSSwrXF9 IXsQ==
MIME-Version 1.0
X-Received by 10.224.46.66 with SMTP id i2mr12906304qaf.22.1401798431593; Tue, 03 Jun 2014 05:27:11 -0700 (PDT)
Date Tue, 3 Jun 2014 13:27:11 +0100
Subject Micro Python -- a lean and efficient implementation of Python 3
From Damien George <damien.p.george@gmail.com>
To python-list@python.org
Content-Type text/plain; charset=UTF-8
X-BeenThere python-list@python.org
X-Mailman-Version 2.1.15
Precedence list
List-Id General discussion list for the Python programming language <python-list.python.org>
List-Unsubscribe <https://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-list/>
List-Post <mailto:python-list@python.org>
List-Help <mailto:python-list-request@python.org?subject=help>
List-Subscribe <https://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe>
Newsgroups comp.lang.python
Message-ID <mailman.10619.1401798433.18130.python-list@python.org> (permalink)
Lines 48
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1401798433 news.xs4all.nl 2858 [2001:888:2000:d::a6]:39820
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python:72511

Show key headers only | View raw


Hi,

We would like to announce Micro Python, an implementation of Python 3
optimised to have a low memory footprint.

While Python has many attractive features, current implementations
(read CPython) are not suited for embedded devices, such as
microcontrollers and small systems-on-a-chip.  This is because CPython
uses an awful lot of RAM -- both stack and heap -- even for simple
things such as integer addition.

Micro Python is a new implementation of the Python 3 language, which
aims to be properly compatible with CPython, while sporting a very
minimal RAM footprint, a compact compiler, and a fast and efficient
runtime.  These goals have been met by employing many tricks with
pointers and bit stuffing, and placing as much as possible in
read-only memory.

Micro Python has the following features:

- Supports almost full Python 3 syntax, including yield (compiles
99.99% of the Python 3 standard library).
- Most scripts use significantly less RAM in Micro Python, and various
benchmark programs run faster, compared with CPython.
- A minimal ARM build fits in 80k of program space, and with all
features enabled it fits in around 200k on Linux.
- Micro Python needs only 2k RAM for a basic REPL.
- It has 2 modes of AOT (ahead of time) compilation to native machine
code, doubling execution speed.
- There is an inline assembler for use in time-critical
microcontroller applications.
- It is written in C99 ANSI C and compiles cleanly under Unix (POSIX),
Mac OS X, Windows and certain ARM based microcontrollers.
- It supports a growing subset of Python 3 types and operations.
- Part of the Python 3 standard library has already been ported to
Micro Python, and work is ongoing to port as much as feasible.

More info at:

http://micropython.org/

You can follow the progress and contribute at github:

www.github.com/micropython/micropython
www.github.com/micropython/micropython-lib

--
Damien / Micro Python team.

Back to comp.lang.python | Previous | NextNext in thread | Find similar | Unroll thread


Thread

Micro Python -- a lean and efficient implementation of Python 3 Damien George <damien.p.george@gmail.com> - 2014-06-03 13:27 +0100
  Re: Micro Python -- a lean and efficient implementation of Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2014-06-03 14:04 +0000

csiph-web