APWTCL is an acronym
Arnulf's
Preferred
Web
TCLThis version of
APWTCL is written in
Objective Capw 2012-05-23:
I wanted to have a light weight version of Tcl which has the same features as
APWTCL written in
Objective C to run native on
iOS iPhones. I wanted to have an easy comparable version to be able to figure out the difference between
APWTCL in a browser and running
APWTCL native on the same smart phone. And the positive side effect: I am now familiar with
Objective C, which I did not use before :).
The implementation started mid of April 2012 and is now (2012-05-23) running all my small about 100 tests successful (and additionally the test suite for
wtk, which I have also running for
APWTCL). The size is a bit bigger than
APWTCL because of the need for all the setter and getter methods and the header files. It is about 44.000 LOC which is about 30% more code.
One feature I have built in is to instantiate even all (Tcl) core commands and command ensembles on demand when needed (similar to autoloading/unknown handling). Dynamic loading of classes/modules is not (yet?) available for iOS. It is only available for MacOS using bundle mechanism.
This version is running under XCode in the iOS 5.1 simulator, test on a real iPhone still to be done.
apw 2012-07-01 it is now also tested with a small example on the iPhone running native.
The base for that implementation is Tcl 8.6 and Itcl 4.0 including a lot of the snit functionality implemented in Itcl 4.0. When running the
wtk test suite one can see, that the implemented subset of snit is running unmodified using the following lines at the beginning of the script:
package require itcl
interp alias {} ::snit::macro {} ::itcl macro
interp alias {} snit::macro {} ::itcl macro
interp alias {} ::snit::type {} ::itcl type
interp alias {} snit::type {} ::itcl type
stevel - 2012-05-23 08:10:21Arnulf, this is excellent progress!