docs/todo.txt
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 07 May 2013 13:31:03 +0100
branchdevelopment
changeset 2591 17d9c39d3ab4
parent 2380 9195eccdcbd9
permissions -rw-r--r--
Merged a98037ca2d11 and b09eaedf206a (branch java-exception-optimization)

== TODO ==

Add more as you go by. Remove it once implemented/fixed...

=== VM ===

* Link VM with IEEE 754 FP arithmetic library (SoftFloat, libfdm) [JV]
* Finalization
  * Fix GC to effectively support finalization (Ephemerons?)
* Cleanup file opening code (look at senders of JavaVM>>addOpenFile: and refator - smells like code duplication :-)
* Thin Locking
  * Support for thinlocks on classes
  * Support for thinlocks on Java arrays
  * VM-level autodetect whether thinlocks are supported by the libjava (presence of _lockWord_ instance variable in JavaObject) [low prio, JV]
* Refactor native methods - get rid of context access (it's sloooow)

=== Tests & Benchmarks ===

* Fix libjava tests [MH}
* Add code/documentation to run benchmarks [MH]
* Integrate DeCapo benchmarks [http://dacapobench.org/]

=== Smalltalk part of Java ==

* Thinlocking:
  * add a _lockWord_ instvar to Class
  * cleanup the code (symbolic constants, etc)
* Update java class/path when a new package is loaded (Java>>classPathFromPackages)
* JavaSettingsApplication::PathEditor
  * Add 'Select' button to select path
  * Add a validation that warns about non-exisiting path
  * Allow drag'n'drop from file browser
* Refactor JavaPathElement - have single object to refer both classes and sources (just like Eclipse does):
  * rename to JavaClassPathElement
  * add slot to sourcePath
  * refactor the rest (UI, source access, etc)
* Add classes/field indexes to JavaConstants (all well-known classes/field indices should be as constants here)

=== Documentation ===

* Update documentation (copy/fix http://live.exept.de/doc/online/english/programming/java.html)
* handling finally blocks in libjava [jv]
* finalization in libjava [jv]