288:54a2867eb465
|
2009-11-23 |
Paul Boddie |
changeset
files
shortlog
graph
|
Added attribute usage registration for branches where more specific attribute
usage occurs, but where such usage cannot be merged back into the active usage
definition for a given name. This should ensure that attributes are not
forgotten because their usage was not merged and carried forward.
Added more specific tests. |
|
|
micropython/data.py tests/attribute_access_type_restriction.py tests/attribute_access_type_restriction_conditional.py tests/attribute_access_type_restriction_conditional_choice.py
|
|
287:4435e910a9d3
|
2009-11-22 |
Paul Boddie |
changeset
files
shortlog
graph
|
Introduced a separate "unfinalisation" stage to avoid mixtures of old and new
attribute information. |
|
|
micropython/__init__.py micropython/data.py micropython/inspect.py
|
|
286:20a391cab5ba
|
2009-11-22 |
Paul Boddie |
changeset
files
shortlog
graph
|
Regenerate the object and parameter tables after the program objects have been
rebuilt.
In the test program, acquire the object and parameter tables after a program has
been generated. |
|
|
micropython/__init__.py test.py
|
|
285:499cf7a39015
|
2009-11-22 |
Paul Boddie |
changeset
files
shortlog
graph
|
Introduced a test for classes as well as instances where specific types have
been deduced.
Replaced the active attributes set in namespaces with direct nomination of
specific attributes found during inspection.
Renamed CheckSelf to CheckInstance.
Simplified some finalisation operations, previously specific to certain object
types.
Added an instruction counter to the RSVP machine. |
|
|
docs/optimisations.txt micropython/__init__.py micropython/data.py micropython/inspect.py micropython/rsvp.py micropython/trans.py rsvp.py
|
|
284:4f3eebcf1024
|
2009-11-22 |
Paul Boddie |
changeset
files
shortlog
graph
|
Added missing namespace finalisation for classes. |
|
|
micropython/inspect.py
|
|
283:24342b91c0b0
|
2009-11-22 |
Paul Boddie |
changeset
files
shortlog
graph
|
Reordered attribute/name traversal initialisation in order to avoid missing the
builtins module.
Fixed docstring wording. |
|
|
lib/builtins.py micropython/__init__.py
|
|
282:85e350584da7
|
2009-11-22 |
Paul Boddie |
changeset
files
shortlog
graph
|
Added "unfinalisation" of attributes in order to properly redefine structures.
(Since finalisation of attributes is done to build the object table, this could
be weakened in order to avoid doing such work twice.)
Removed the object.__iadd__ method in the builtins module.
Fixed the Class.all_class_attribute_names method to actually return the names. |
|
|
lib/builtins.py micropython/data.py micropython/inspect.py
|
|
281:f9896e300492
|
2009-11-22 |
Paul Boddie |
changeset
files
shortlog
graph
|
Introduced specific name usage so that attributes of classes and modules can be
registered properly and not omitted. |
|
|
micropython/__init__.py micropython/inspect.py
|
|
280:50008931d304
|
2009-11-22 |
Paul Boddie |
changeset
files
shortlog
graph
|
Added incomplete work to introduce attribute deletion and object table
simplification based on attribute usage, introducing specific object traversal
to detect used attributes instead of considering usage of individual names and
then traversing all objects with such names.
Updated the test program to properly handle translation exceptions, fixing the
representation of exceptions for AST nodes without line numbers. |
|
|
micropython/__init__.py micropython/common.py micropython/data.py micropython/inspect.py test.py
|
|
279:dd6568a7c46e
|
2009-11-16 |
Paul Boddie |
changeset
files
shortlog
graph
|
Changed the _attrnames annotation to map a number of names to attributes, thus
permitting such annotations for many names on Function nodes.
Added type guard generation, preventing inappropriate types from being supplied
to optimised instructions.
Separated some of the testing into more specific success and failure tests. |
|
|
micropython/ast.py micropython/data.py micropython/inspect.py micropython/trans.py tests/attribute_access_type_restriction.py tests/attribute_access_type_restriction_single.py tests/failure/attribute_access_type_restriction_single_inappropriate.py
|
|