Fifth Annual Tcl/Tk Workshop, 1997 ## Using Tk as remote GUI frontend for 4GL-database applications Volker Schubert Brueckner&Jarosch Ing.GmbH Erfurt, Germany ### Abstract This is a short report about our experience using Tk as GUI frontend. We wrote a compiler called F4GL, source compatible to the INFORMIX 4GL database language. (4GL means 4th generation language) This language was originally designed to create UNIX database applications with text-terminal output. 4GL programs compiled with F4GL generate Tcl-commands as graphic output (the text output is also still available). These Tcl-commands are sent over TCP/IP to a presentation server which will provide for conversation into graphic objects. We have presentation servers for X11 and Windows. 4GL Server is the presentation server for all Windows platforms and is implemented using Tcl/Tk. It is an Internet-Server like lpd or rshd whose services are available at a specific TCP port. We found different solutions for the network connection to the remote GUI / presentation server and had to solve various problems, which are discussed in detail in this poster. Writing a internet server in Tcl which evaluates Tcl-commands is very easy, but it introduces a security hole. The machine running 4GL Server is accessible from the internet with tcl-commands. That's why we implemented a special protocol to authenticate the users of the 4GL Server . We made some extensions, some of it appears to be useful for the whole Tcl-community. Until now we maintained our own Windows-port of Tk3.6, because the actual Windows-Tk4.x releases from Sun still have limitations, we will explain the reasons and show some performance bottlenecks (speed.html). In the near future we want to switch to official releases because the Tk4.xx and Tk8.xx versions offer many advantages, especially safe interpreters and the Tcl-Plugin. A good overview about the F4GL can be found at f4gldoc.html, this is the webpage of 4JS, our trade-partner. View the full text of this paper in HTML form, PDF (42542 Bytes) form, and POSTSCRIPT (232406 Bytes) form. To Become a USENIX Member, please see our Membership Information.

Need help? Use our Contacts page. |
Technical Program Conference Index USENIX home