About this site

Tloona is a development environment (IDE) for Tcl/Tk, Itcl and XOTcl, including project management, code browser, deployment and other features. There is also support for web applications (html, AOLServer/.adp, Tclhttpd/.tml, websh/.ws3)

8 January 2009 - 2:10Discontinued development of Tloona

Due to time constraints of myself, version 1.3.2 will be the last release of Tloona. Eventually there will be aggregated bugfix releases in the future, but there will not be new features. The program is well usable and stable in it’s current stage and serves it’s purpose as a Tcl/Tk IDE quite well.

However, others are of course welcome to contribute to the project. Just stand up and drop me a message if you like.

No Comments | Tags: Uncategorized

26 April 2008 - 14:19Tloona 1.3.2 bugfix release out

There is a bugfix release 1.3.2 now, that fixes several errors from 1.3. Including theĀ  one that occured when File->new was called and one tried to edit the new file before saving. Get the update here.

2 Comments | Tags: Release information

20 April 2008 - 5:35Tloona 1.3 released

Version 1.3 of Tloona Tcl/Tk IDE is out. Here are the highlights for this release:

  • various bugfixes
  • client console is able to read stdin now
  • code browser understands XOTcl meta classes and slots (via the -slot argument)
  • code definitions can be sent to the client console: proc, method (Itcl), instproc, class proc, Class, meta Class (XOTcl) with <Control-Return>

The latter makes it a pleasure to test your programs and procedures while you are developing them. Just load the program into the client console, then edit the procedures, classes etc. and repeatedly send them to the console with <Control-Return>. You can immediately try out what you have edited… this makes you even more productive!

There is a new screenshot, showing how Tloona is running Tclhttpd inside it’s client console. Combined with the ability to send code definitions to the console and the debugging options this is a very pleasant way to develop and test web applications rapidly.

2 Comments | Tags: Documentation & Tipps, Release information

20 January 2008 - 8:40How to fix themeing/startup problems in a fresh downloaded Tloona

There has been a bug reported related to startup of Tloona on certain (windows) platforms that do not support particular ttk themes. Especially Windows 2000 or earlier versions make trouble.

It has been fixed in the SVN repository and thus will be in the next release. In the meantime, you can fix it in your copy of Tloona very easily:

  • open the file main.tcl in your favourite editor
  • locate line 247 in proc main: ttk::style theme use $UserOptions(Theme)
  • put a catch around it: catch {ttk::style theme use $UserOptions(Theme)}

That’s it. Nothing else will be affected. Alternatively you can locate line 6 in the file useroptions.tcl: set ::UserOptions(Theme) “xpnative” and edit “xpnative” to a theme that is available on your platform. To find out about themes that are available, open a Wish and type ttk::themes. The result is a list of available theme names, which you can use.

When you want to change the theme later, you can open .tloonarc, which is located in your home directory (the value of ::env(HOME) in your Tclsh) and search for the line set ::UserOptions(Theme) {…}. Edit it to reflect the new desired theme. You can also edit other runtime preferences in this file.

No Comments | Tags: Documentation & Tipps

19 January 2008 - 8:28Tclmatlab 1.0 is out

There is another goodie on this project site now. Tclmatlab is an extension to connect Tcl to MATLAB, the powerful platform for numerical and technical computing. It allows Tcl programmers to use the capability of MATLAB (http://www.mathworks.com/) and its numerous toolboxes.

The release enables Tcl programmers to transfer data to and from MATLAB using cell- and data arrays and to evaluate MATLAB scripts and functions via the Engine interface. It is also possible to use MATLABs strong visualization capabilities.

In addition there is a new page on this website to describe how to work with tclmatlab. It is a copy of the manpage that is part of the release.

2 Comments | Tags: Release information

10 January 2008 - 14:36Tloona 1.2.1 is out!

As announced before, there is a new release 1.2.1 of Tloona.

This is merely a bugfix release, there are no new features. It gives some polish to the application, removing non-working functionality (see the last post on debugging for an explanation) and fixes lots of small, nitty-gritty bugs and annoyances.

The console got the most fixes and also a slightly enhanced functionality - it is now able to handle stdin. This means e.g. that you can run code with the debugger’s [bp] procedure inserted (see last post) inside the console as well as on outside terminals.

Grab the latest release from the download page.

No Comments | Tags: Release information

9 January 2008 - 11:57Debugging options in Tloona

As you might have experienced already, the debugger in Tloona does not work. It was the first attempt to integrate a debugger for Tcl code and in the first release it worked. But it relied on a patched version of Tcl that has Arthur Tzewik’s Atkdebugger integrated plus the extension (which is still part of Tloona in the src/ directory). Unortunately this useful extension will obviously never be integrated in the official Tcl, and thus it is not a good idea to rely on it. And Tloona now runs with the official Tcl language, which makes more sense and provides the maintainer with far less headaches ;-).

However, all is not lost. The current SVN trunk has the debugger widgets disabled in order to fasten startup time and remove the unnecessary second process that was previously started. But the widgets on their own are still there and with them the option to integrate a better way for visual debugging.

But how do you debug now? Here is a workaround. The latest SVN head has an improved client console, which is a slave interpreter under the one that runs Tloona. There is also a package debug available in the src/ directory, which you can load in your files with package require debug. It contains a handy procedure [bp] that you can insert in your code at appropriate places. You can even overload the [error] command to provide a breakpoint at Tcl errors. When you run your code (e.g. in Tloona’s client console!) it will stop at the place where [bp] is inserted and you can inspect the code from there. You can also use the [up] and [down] procedures to step levels up or down in the stack trace.. but you can not step to the next statement. Thanks to Neil Madden for the initial version of bp, which he posted on http://lambda-the-ultimate/

Probably there will be a 1.2.1 release soon, which reflects various bugfixes that have been done in Tloona since 1.2.

1 Comment | Tags: Development

6 January 2008 - 4:46Using teacup with custom tclsh

Teacup is an utility developed and deployed by ActiveState, together with ActiveTcl. It lets you install packages from remote repositories in an easy way and is about to become the default way for package distribution and maintenance (unfortunately one needs the TclDevKit to run his own repositories… TclDevKit is a very valuable extension for Tcl developers, but costs money).

Although ActiveState deploy teacup, it is not tied to ActiveTcl. With a few steps you can use it also with another tclsh, that you have e.g. built by yourself from the sources. Here are the steps:

  1. Install ActiveTcl (unless there is another way to get teacup)
  2. Create a local installation repository: teacup create /path/to/repository. This directory can exist, but does not have to. It is filled with meta information. Bear in mind that it - at best - is a directory that is on the ::auto_path of your tclsh (e.g. ~/Library/Tcl on Mac OS X).
  3. Setup your tclsh for teacup: (sudo) teacup setup /path/to/tclsh. This writes meta information into the standard tcl installation and tells your tclsh that it should also use teacup installation repositories on it’s ::auto_path.
  4. Link your teacup repository to your tclsh: (sudo) teacup link make /path/to/repository /path/to/tclsh. This writes some information for teacup, so that only compatible package versions are installed etc.
  5. That’s it. Run teacup to install your packages…

More information can be found in the teacup documentation.

No Comments | Tags: Documentation & Tipps

29 December 2007 - 8:32Tloona 1.2 out!

My special New Years present to the Tcl community (since I had some time over Christmas): A new release of Tloona… 1.2.

Quite some things have changed:

New parser functionality for XOTcl and Websh. This enables XOTcl developers and Websh developers to use the code browser for exploring their projects. Until now only tcl, html and Itcl/Itk were supported.

Currently no threads usage. The use of threads in previous releases has lead to crashes on multicore machines and was not quite stable. It needs to be designed a little better… currently it is disabled at all, until the redesign is done. I don’t know when/whether this will happen - depends on time. Help is appreciated!

Compatible to use standard Tcl and standard Itcl now. This does make sense - and decreases maintenance work ;-).

Tloona does not longer include external dependencies. Thus, this release is much smaller than previous ones. Extensions like comm, Tclx, Thread, vfs, starkit and others have been part of Tloona in previous releases but are not anymore, which also decreases maintenance work. It just means that users must take care of the extension installation by themselves now. The easiest way is to do this via teacup (part of the -very good- ActiveTcl distribution). But it can be done on other ways too… Eventually most of the dependencies are installed on your system already.

Release as starkit is dropped. This is related to the other dependency issue above. In previous releases, Tloona required a threaded Tclkit and since these are not available by default, I had to build and provide my own threaded Tclkits. This is evtl. continued, but it should not be a requirement for Tloona. Instead of running Tloona via tclkick, you can now use any Tcl installation (best: ActiveTcl) to run the IDE. Of course you are free to build your own starkits from Tloona and run them via Tclkick or other Threads enabled Tclkit. The standard release is now provided as a .zip file. Inside Tloona you can still distribute as starkit, but you need JCW’s SDX now - which you can get here.

How to install and run Tloona 1.2:

  • download the release from here and unzip it.
  • if you don’t have Tcl already, get and install ActiveTcl 8.5.
  • in the unzipped release directory you find a file install_dependencies.tcl. Run it via tclsh - it utilizes teacup to fetch and install all necessary extensions. If you don’t have ActiveTcl/teacup, the file includes a list of dependencies that you must install manually.
  • locate the directory of your Itk installation, if you installed Itk via teacup. It is usually $teapot/repository/package/$arch/lib/Itk-3.4, where $teapot is the base directory for teapot, e.g. “$home/.teapot” on Linux, and $arch is the architecture, e.g. “macosx-universal” on Mac OSX
  • copy the files from tloona.vfs/itk_files/ into the Itk installation directory of teacup. It is a bug of Itk in teapot that these files are missin.
  • Remove the preferences file .tloonarc from your home directory (C:\Documents and settings\user on windows). This has changed in this release.
  • Run “tclsh tloona.vfs/main.tcl”. It will tell you at startup if something is wrong or still missing

Have fun and a Happy New Year :-)!

No Comments | Tags: Release information

29 December 2007 - 5:57New site and new release

Welcome!

Finally I got wordpress on the sourceforge page running, which means that Tloona can now present itself with a new “face” on the web. This page will present Tloona and it’s capabilities. Also it will serve as a resource for news & notes, on development and documentation.

Together with this site comes a new release: Tloona 1.2. You can grab it from the sourceforge download page here and read some news about it in the shortly upcoming page.

No Comments | Tags: Uncategorized