Wiki summary - 14 june 2020

In these strange times the Wiki is still a good place to visit from time to time. And quite a few things have happened since the previous summary. So let's start without further ado.

Community efforts

Unfortunately, the world-wide conference and the European meeting have been cancelled due to the COVID-19 virus still turning our world upside down.

One other consequence, the OpenSky App has far fewer flights to show and keep track of, but it is still an impressive sight.

Communication - between computers

A title called Package iocp may not jump out in the Wiki's recent changes page, but it leads to a Windows world of communication, sockets, ports ...

And Daerth is another one of those little gemstones: it provides mutithreading via queues. The details are, of course, nicely hidden in a handful of commands.

Communication - from person to computer and back

Plenty of pages present GUI elements - from the style in which widgets appears, just check the awthemes with an interactive demo or a flexible menu system like flexmenu to much more comprehensive packages like the venerable Tablelist, currently at version 6.9. To see how it works, there is again a nice embedded demo.

Sometimes you a need a more specialised GUI element:

What to think of an Entry widget for numeric data? Filling numbers with automatic checks.

Or customising the themed treeview widget with dgw::tvmixins, which shows that extending functionality is easily achieved, if you know your techniques.

You know "Jupyter" notebooks? They are quite a fashion - Python, Julia, R. But now you can do the same with Tcl - visit tcljupyter for details.

One step further and you talking about systems to create and especially maintain websites. Well, there are plenty of those around, all with their own merits and sources of inspiration. Track and Toolatra are two recent developments and Tclssg has been around a bit longer, but is meant for static sites.

Playful pages

The amazing Gear Animation is even more amazing when viewed from your browser.

But perhaps you want to play a card game ... there are many to choose from, Once In A Lifetime being only one. Hunt the Wiki for others!

Programming galore

BAWT makes building C/C++ packages and applications easy, even on Windows. You can safely ignore the multitude of build environments.

Sometimes your Tcl program is an integral part of another program. On Windows, this might mean wrapping it up into a DLL. This might be a challenge, but Embedding TCL program in DLL makes the process a lot easier.

If you are programming in Ada besides, then Tashy allows you to combine the two. Have a Tk GUI from within your Ada program.

There comes a time that you need an iteractive debugger to find out what is going wrong with your program. Tired of the plain command-line interface gdb offers? The Wiki page offers Tk-based alternatives.

Does the name critbit mean anything to you? You may know them as Patricia trees, Radix trees or tries. One of those clever data structures that can make look-ups quite efficient.

It pays off, certainly in the longer run, to keep a particular programming style. The Tcl Style Guide is meant to help you out with one such style.

And that holds for more than just the Tcl code. The Tcl C API Design Principles describes what goes into the implementation itself.

You could also profit from a documentation generation system like Ruff!, when you are serious about your programs and want to have good documentation without too much extra work.

One picture says more than a 1000 words

Whether the old maxime is universally true, your Wiki chronicler does not know. But let's face it: you can do a lot with nice pictures. The pixmix package for instance allows you to manipulate images and especially with the Blend2D support, you can do that on any platform.

Another plotting library, tclcairo, offers support for a good many output formats, PDF and SVG for instance.