Real name Mark Janssen ([Tcl Chatroom] nick: mjanssen). I have been using Tcl since 2004 and I love it. ---- There are several reasons I love Tcl: * It supports Unicode in code and GUI * The community is great * It is truly interactive: Open a console in your application and see what is really going on * Tclkit or Starkit deployment is very, very convenient * It is very easy to install libraries without changing config files all over the place * The community is great * Very simple syntax and everything is a string: This allows for some funky stuff like redefining proc * The C-API is one of the easiest of any of the ones I have seen (Perl, Python, Ruby) this makes it very easy to wrap C libraries. See for an example [readline] * The community is great ---- '''Current projects''' * Embedding [tcc] in a Tcl extension. It can compile an example Tcl extension at the moment [tdom] and supports [VFS] '''Pages I contributed to''' * [Alternative Namespaces] * [Tailing widget] * [Tcl Interface to WinPCAP] * [less] * [readline] * [Angles on a compass] * [exec quotes problem] * [SNMP parser] * [WBXML] * [tedit] - Tcl only text editor with Emacs like functionality (sort of). Bindtags are so cool. * [newexec] * [self] and my C-implementation at [SELF extension] * [scriptaculous] * [SOCKS proxy] * [XOTcl Objects as Tcl Commands with subcommands] * [Tuplespace] * [Event tutorial] * [Engineering Notation] * [Overridden commands] - restoring Tcl internal commands that have been overridden beyond your control * [Wizard] * [Retrieve file icon using the Win32 API] * [Scratchpad] * [NTLM] * [cal] * [chan mode] * [Extending chan] - Extending Tcl core commands implemented with [namespace ensemble]s * [Tcl in a hybrid of RealLife and More Equal Pigs] * [SCGI] * [Splitting an amount in parts] * [Retrieving movie information from IMDB] * [TkTreeCtrl] * [tcc] - and more specifically [tcltcc], a Tcl binding to [tcc] (hosted at [http://code.google.com/p/tcltcc/]) * [tunnel] * [freezeconfig] * [Entering Unicode characters in a widget] * [Finding duplicate files] * [Interfacing Windows Search] * [A Simple Wiki with Outlook backend] '''Random ideas I like to pursue''' * Everything will be compiled (so not only procs) * Image based Tcl ala [Smalltalk] * Fast OO ala [Self Extension] * Extensible parser allow {..}[...] to be extended from script level * Better [exec] * Faster [Tcl IO performance] '''TODO''' * Tcl frontend to fossil db's * Caching in the [Self extension] using epoch counters '''Autoexpansion of leading word''' I have created a Tcl git repo with changes needed to have auto-expansion of a leading word at [http://github.com/mpcjanssen/tcltk-autoexpand]. This allows data structures like [TOOT with {expand}]. To demonstrate that example: ====== % set m {matrix {{1 2 3} {4 5 6} {7 8 9}} } % proc matrix {matrix {method {}} args} { if {$method eq {}} { # return the 'typeless' matrix return $matrix } switch $method { row { return [lindex $matrix [lindex $args 0]] } } } % $m ; #gives the undecorated matrix {1 2 3} {4 5 6} {7 8 9} % $m row 1 4 5 6 ====== Which is a thing of beauty IMO. ---- Everything I post on the wiki is in the public domain unless explicitly marked otherwise. I would love to hear if some of it was useful to you though. <> Category Person