Version 15 of Jacl Modernization Release Notes

Updated 2009-07-17 11:31:36 by rszulgo

This is one of the GSoC 2009 Projects.


Jacl Modernization

Project Release Notes

Jacl Modernization Project
Google Summer of Code 2009


Comments

NEM: Note that there is an initial implementation of dict for Jacl at [L1 ] that could be used as a starting point for this command. IIRC, around 90% functionality was implemented. Some polish and performance tuning required, and possibly bringing up to date with current source.

RS 2009-06-09: Re the load command, the main page says: Note: This command is designed to load C coded extensions into Tcl. Jacl instead uses specialized commands to load Java extensions, "jaclloadjava", "jaclloaditcl", etc. - I think it would be more Tclish to implement a single load command, which maybe can only do Java and ITcl, but looks and feels like its counterpart.


Reports

2009-07-16 by rszulgo
I've changed the result of file atime cmd. It returned the same thing as file mtime what can be misleading. Apps that depend on the accestime can simply not be ported to Java now (without JNI) it will work in Java 1.7. Currently, an error is thrown:

"sorry, "file atime" is not available due to JVM restrictions."

The error is thrown in attributes, link, lstat, readlink, system file options, too.
In addition, atime attribute was removed from file stat result.

file channel ?pattern? implemented.
file separator ?name? added.

2009-07-09 by rszulgo
Tests and fixing bugs of heretofore work.
The work on glob -types, -tails, -path switches and expr cmd will be continued now.

2009-07-07 by rszulgo
lset varName ?index...? newValue was implemented. Tested with simple tests:

 % set x [list [list a b c] [list d e f] [list g h i]]
 %  => {a b c} {d e f} {g h i}
 % lset x {j k l} => j k l
 % lset x {} {j k l} => j k l
 % lset x 0 j => j {d e f} {g h i}
 % lset x 2 j => {a b c} {d e f} j
 % lset x end j => {a b c} {d e f} j
 % lset x end-1 j => {a b c} j {g h i}
 % lset x 2 1 j => {a b c} {d e f} {g j i}
 % lset x {2 1} j => {a b c} {d e f} {g j i}
 % lset x {2 3} j => list index out of range


namespace exists name added. Tested with corresponding Tcl 8.4.19 test suite.
lsort -unique , lsort -end-$i was implemented. In class TclObjectBase 'equals' method was overrided to compare TclObjects. Parameter 'unique' was added in TclList.sort method.
unset -nocomplain , unset -- added.

The minimum of the midterm evaluation goals have been completed!

2009-06-22 by rszulgo
lsearch -all, lsearch -not, lsearch -inline, lsearch -start now available!

2009-06-18 by rszulgo
info tclversion and info patchlevel now report "8.4" and "8.4.0", respectively. However, there's no Tcl 8.4 compilance level YET ;)

RLH Is there a reasoning behind targeting 8.4?
rszulgo At the end of this summer Jacl is going to be 8.4 compliant. It's one of the many steps to achive that.
TP We are targeting 8.4 for the 2009 GSOC project largely due to the fact that there is a considerable amount of work just to bring Jacl up to 8.4 compliance. In other words, there is plenty of work to be done by one student working one summer. If time permits, select 8.5 features will also be addressed. I am all for more hands working to bring Jacl up to date after the 2009 GSOC project is finished.



info functions implemented! It returns the list of math functions currently defined (Tcl 8.4) matching an optional pattern.

interp recursionlimit path ?limit? added (master)
slave recursionlimit added.
In conseqence, the maxDepthLevel is inherited from the parent process.

Still working on glob -types, -tails, -path switches.

2009-06-16 by rszulgo
Major changes in glob cmd implementation
glob -directory added.
glob -join added.
fixed non-reported bug: glob /bin/ returns /bin whereas in Tcl /bin/

Working on -types, -tails, -path switches now.

2009-06-08 by rszulgo
array statistics are made depracated and will not be implemented in Jacl.
clock format %g and %G added (ISO 8601 2 and 4 digits year format)