hallo Klaus,
Was ist 'diese CGI-Funktionalität'? Meines Erachtens nur die Fähigkeiten auf STDIN,STDOUT und Environment zugreifen zu können. Und diese Fähigkeiten wird TCL sicherlich auch haben.
Hat es, und STDERR hast du jetzt nicht aufgezählt (weil das auf WINDOWS nicht existiert?)
Also gut, ich habe mir jetzt gerade einmal einen Crashkurs in TCL verordnet....
#!tclsh
puts stdout "Content-type: text/plain"
puts stdout ""
puts stdout "Hallo welt"
hihi ;-) das geht auf einem Windows-Rechner noch um eine Zeile kürzer:
button .hallo -text hallo \
-command {puts stdout "hallo welt!"}
pack .hallo -padx 20 -pady 10
... das Ganze "hallo.tcl" nennen, fertig. Kriegst du allerding auf einer UNIX-Kiste nicht realisiert, weil die shebang fehlt. Is aber wursch ;-)
Und weil ich gerade dabei war, fand ich auch ein Package namens ncgi, welches anscheinend Funktionen im CGI-Umfeld bereitstellt. Also ganz so schlecht kann es um die CGI-Fähigkleit nicht bestellt sein.
Das Package hab ich auch - auf WinXP wie auf FreeBSD. Was ich mit CGI-Funktionalität" gemeint habe, habe ich vier Ebenen tiefer im aktuellen Thread als Antwort an Christoph Zurnieden wortreich darzulegen versucht.
Übrigens dachte ich bisher, wir reden über TCL und nicht TK. Soweit ich das verstanden habe, ist TK nur eine Widget-Bibliothek zu TCL (und auch Perl, aber das ist eine andere Geschichte). TCL an sich ist doch auch nur eine Scriptsprache, ohne zwingend GUI-Elemente vorzuschreiben (siehe Beispiel oben).
Da hast du prinzipiell recht. "Tk" heißt nix anderes als "T"ool"k"it, und ist vom Ansatz her lediglich eine "grafische Erweiterung" für TCL. Mit GUI-Elementen wird jede Scriptsprache etwas "gefälliger", und Tk tut im Prinzip nix andres, als eine solche "Gefälligkeit" anzubieten.
Weil TCL/TK bzw Perl/TK für lokal laufende GUI-Anwendungen gedacht ist, und nicht um dynamische Webseiten über einen HTTP-Server bereitzustellen.
Bummmmmm ;-)
Da haben wir "eigentlich" das ganze Problem. Für das PERL-Tk-Modul hast du vollkommen recht. TCL/Tk, als durchaus eigenständige Scriptsprache, ist aber ausdrücklich mal als "Netzwerkanwendung" konzipiert worden und soll eben nicht nur "lokal", sondern "netzweit" einsetzbar sein.
bei apache.org gibts unter http://tcl.apache.org/ seit geraumer Zeit ein hochinteressantes TCL-Projekt
Kann es nicht sein, daß dieses Projekt ähnliche Ziele verfolgt, wie es auch mod_perl tut?
Stimmt. Jedenfalls hab ich das bisher auch immer so gelesen.
Und wo ist der Unterschied zu Perl, die Syntax ausgenommen?
wie ich weiter unten gesagt habe: der Unterschied besteht darin, daß du PERL nur auf dem Server-Rechner installieren mußt. Sobald Server und Client physikalisch zwei unterschiedliche Rechner sind (muß zwar nicht zwingend so sein, ist es aber in der Regel) muß für die Ausführung von TCL-Scripts auf beiden ein TCL-Interpreter vorhanden sein.
Grüße aus Berlin
Christoph S.
PS: Irrtümer oder Kenntnislücken sind nicht ausgeschlossen. Vielleicht kannst du mir helfen, sie zu verringern, falls tatsächlich vorhanden
Grüße
Klaus