Alright, this is pretty noobish, but here goes...
I'm using LispWorks Personal Edition (4.4) on Windows, and ActiveTcl
8.4 installed at the normal path ("C:/Tcl"). Compiling and loading
ltk works fine (following these steps):
----------------------------------------------------------------
CL-USER 1 > (change-directory "C:/ltk")
#P"C:/ltk/"
CL-USER 2 > (compile-file "ltk")
; (lots of compiler output)
CL-USER 3 > (load "ltk")
; Loading fasl file C:\ltk\ltk.fsl
#P"C:/ltk/ltk.fsl"
CL-USER 4 > (in-package :ltk)
#<PACKAGE LTK>
----------------------------------------------------------------
But when I then try to run (ltktest), LispWorks hangs seemingly
forever, and I have to do an end-process on it. I also get errors
running more simple tests - as an example, here is what happens when I
define the (hello-1) function from "First Steps" in the documentation
and call it:
----------------------------------------------------------------
LTK 5 > (hello-1)
proc escape {s} {regsub -all {\\} $s {\\\\} s1;regsub -all {"} $s1
{\"} s2;return $s2}
proc senddata {s} {puts "(:data [escape $s])";flush stdout}
proc senddatastring {s} {puts "(:data \"[escape $s]\")";flush stdout}
proc senddatastrings {strings} {
puts "(:data ("
foreach s $strings {
puts "\"[escape $s]\""
}
puts "))";flush stdout}
proc sendevent {s x y keycode char width height root_x root_y
mouse_button} {puts "(:event \"$s\" $x $y $keycode $char $width
$height $root_x $root_y $mouse_button)"}
proc callback {s} {puts "(:callback \"$s\")";flush stdout}
proc callbackval {s val} {puts "(:callback \"$s\" $val)"}
proc callbackstring {s val} {puts "(:callback \"$s\" \"[escape $val]\")"}
add-callback (w2 #'(LAMBDA NIL (FORMAT T Hello World!~&)))
set text_w2 "Press Me"
button .w2 -command {callback w2} -textvariable text_w2
pack .w2 -side top -fill none
l:(QUOTE WISH)<=
l:(QUOTE IS)<=
l:NOT<=
NOTl:RECOGNIZED<=
RECOGNIZEDl:AS<=
ASl:AN<=
ANl:INTERNAL<=
INTERNALl:OR<=
ORl:EXTERNAL<=
EXTERNALl:COMMAND<=
COMMANDsenddatastring [tk_messageBox -message {A comma appears outside
the scope of a backquote (or there are too many commas).
Do you wish to invoke the debugger?} -title {Error} -type yesno -icon question]
read-data:OPERABLEprogram or batch file.
Error: NIL fell through ECASE expression.
Wanted one of (:YES :NO).
1 (continue) Ignore the comma.
2 (abort) Abort handling Tk event
3 Exit Ltk main loop
4 Return to level 0.
5 Return to top loop level 0.
Type :b for backtrace, :c <option number> to proceed, or :? for other options
----------------------------------------------------------------
Has anyone else had this experience, or know what might be wrong? I
haven't tried CLISP yet, that will be my next avenue, but I'd like to
see if I can get it going with LW.
--Daniel