<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/py/objlist.c, branch v1.4.1</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.4.1</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.4.1'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2015-03-25T07:25:41+00:00</updated>
<entry>
<title>py: Cast mp_obj_t to concrete types explicitly.</title>
<updated>2015-03-25T07:25:41+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2015-03-25T07:25:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=3d598256df0fa3ebe7d0eedd23222ba52571af7e'/>
<id>urn:sha1:3d598256df0fa3ebe7d0eedd23222ba52571af7e</id>
<content type='text'>
mp_obj_t internal representation doesn't have to be a pointer to object,
it can be anything.

There's also a support for back-conversion in the form of MP_OBJ_UNCAST.
This is kind of optimization/status quo preserver to minimize patching the
existing code and avoid doing potentially expensive MP_OBJ_CAST over and
over. But then one may imagine implementations where MP_OBJ_UNCAST is very
expensive. But such implementations are unlikely interesting in practice.
</content>
</entry>
<entry>
<title>objlist: list_reverse(): Fix typesafety error.</title>
<updated>2015-03-20T21:35:21+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2015-03-20T21:24:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=69922c602cea2b54c30b04078f066717b18425d6'/>
<id>urn:sha1:69922c602cea2b54c30b04078f066717b18425d6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>objarray: Implement array slice assignment.</title>
<updated>2015-02-27T20:17:15+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2015-02-27T20:16:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=cefcbb22b2befac1baa9953c477fcee4031635d3'/>
<id>urn:sha1:cefcbb22b2befac1baa9953c477fcee4031635d3</id>
<content type='text'>
This is rarely used feature which takes enough code to implement, so is
controlled by MICROPY_PY_ARRAY_SLICE_ASSIGN config setting, default off.
But otherwise it may be useful, as allows to update arbitrary-sized data
buffers in-place.

Slice is yet to implement, and actually, slice assignment implemented in
such a way that RHS of assignment should be array of the exact same item
typecode as LHS. CPython has it more relaxed, where RHS can be any sequence
of compatible types (e.g. it's possible to assign list of int's to a
bytearray slice).

Overall, when all "slice write" features are implemented, it may cost ~1KB
of code.
</content>
</entry>
<entry>
<title>py: Fix adding of traceback so that it appends to existing info.</title>
<updated>2015-02-27T00:36:39+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-02-27T00:36:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=4852e09c7914a4d4f2938dddbe155a2075bb2eb3'/>
<id>urn:sha1:4852e09c7914a4d4f2938dddbe155a2075bb2eb3</id>
<content type='text'>
This makes exception traceback info self contained (ie doesn't rely on
list object, which was a bit of a hack), reduces code size, and reduces
RAM footprint of exception by eliminating the list object.

Addresses part of issue #1126.
</content>
</entry>
<entry>
<title>py: Expose mp_obj_list_remove as a public function.</title>
<updated>2015-02-21T14:47:02+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-02-21T14:47:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=eff359e114bc41ea1278f01a18ab50ac896f8cf0'/>
<id>urn:sha1:eff359e114bc41ea1278f01a18ab50ac896f8cf0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>objexcept: Optimize traceback allocation for exception.</title>
<updated>2015-02-15T19:41:14+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2015-02-15T19:24:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=fa3b8951452ca13a807c0b6a090e0385507113db'/>
<id>urn:sha1:fa3b8951452ca13a807c0b6a090e0385507113db</id>
<content type='text'>
Traceback allocation for exception will now never lead to recursive
MemoryError exception - if there's no memory for traceback, it simply
won't be created.
</content>
</entry>
<entry>
<title>py: Make list.sort keep stack usage within O(log(N)) bound.</title>
<updated>2015-02-02T15:14:22+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-02-02T15:14:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=744e7674587b1f215a03b68ea83e60f7b93cfb20'/>
<id>urn:sha1:744e7674587b1f215a03b68ea83e60f7b93cfb20</id>
<content type='text'>
Also fix list.sort so it works with user-defined types, and parse the
keyword arguments properly.

Addresses issue #338.
</content>
</entry>
<entry>
<title>py, unix: Allow to compile with -Wunused-parameter.</title>
<updated>2015-01-20T12:47:20+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-01-20T12:47:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=ff8dd3f486afb0d6ff1427d8a6a8a8ed73baa660'/>
<id>urn:sha1:ff8dd3f486afb0d6ff1427d8a6a8a8ed73baa660</id>
<content type='text'>
See issue #699.
</content>
</entry>
<entry>
<title>py, unix: Allow to compile with -Wsign-compare.</title>
<updated>2015-01-16T17:47:07+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-01-16T17:47:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=963a5a3e82ded7ee75adae72ae7cb14796fa150e'/>
<id>urn:sha1:963a5a3e82ded7ee75adae72ae7cb14796fa150e</id>
<content type='text'>
See issue #699.
</content>
</entry>
<entry>
<title>py: Move to guarded includes, everywhere in py/ core.</title>
<updated>2015-01-01T20:32:09+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-01-01T20:27:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=51dfcb4bb7613ed164952712d9a5235a7b833cde'/>
<id>urn:sha1:51dfcb4bb7613ed164952712d9a5235a7b833cde</id>
<content type='text'>
Addresses issue #1022.
</content>
</entry>
</feed>
