Jim is an opensource small-footprint implementation of the Tcl programming language. It implements a large subset of Tcl and adds new features like references with garbage collection, closures, built-in Object Oriented Programming system, Functional Programming commands, first-class arrays and UTF- 8 support. All this with a binary size of about 100-200kB (depending upon selected options). The Jim core is very stable. Jim passes over 3000 unit tests and many Tcl programs run unmodified. Jim is highly modular with the possiblity to configure many components as loadable modules, or omitted entirely. A number of extensions are included with Jim which may be built as loadable modules.