Hello everyone,
I am pleased to announce the release of TBCX v1.0.
TBCX is a C extension for Tcl 9.1+ that serializes compiled Tcl bytecode (plus enough metadata to reconstruct `proc`s, TclOO methods, and lambda constructs) into a compact binary file — and later allows to load that file into another interpreter for fast startup without re-parsing or re-compiling the original source. There’s also a disassembler for human- readable inspection.
The binary files that store the bytecode are not encoded/obfuscated in
any way. If you seek to hide the content of your Tcl source code, you
will need to add additional mechanisms. Both tbcx::save and tbcx::load
play nicely with Tcl input/output channels.
Compatibility:
This package supports only Tcl 9.1+. For previous versions you may want
to use
- https://github.com/tcltk-depot/tclcompiler
- https://github.com/tcltk-depot/tbcload
Project Homepage:
https://github.com/bagnongithub/tbcx
Documentation:
https://bagnongithub.github.io/tbcx
License:
MIT License
Feedback/Bug Reports:
Feedback is welcome on the issue tracker https://github.com/ bagnongithub/tbcx/issues
Is the compiled code also faster than the original Tcl code?
For example, if I compile a Tcl procedure with TBCX, will that procedure
run faster every time I call it?
Hello everyone,
I am pleased to announce the release of TBCX v1.0.
TBCX is a C extension for Tcl 9.1+ that serializes compiled Tcl bytecode (plus enough metadata to reconstruct `proc`s, TclOO methods, and lambda constructs) into a compact binary file — and later allows to load that file into another interpreter for fast startup without re-parsing or re-compiling the original source. There’s also a disassembler for human- readable inspection.
The binary files that store the bytecode are not encoded/obfuscated in
any way. If you seek to hide the content of your Tcl source code, you
will need to add additional mechanisms. Both tbcx::save and tbcx::load
play nicely with Tcl input/output channels.
Compatibility:
This package supports only Tcl 9.1+. For previous versions you may want
to use
- https://github.com/tcltk-depot/tclcompiler
- https://github.com/tcltk-depot/tbcload
Project Homepage:
https://github.com/bagnongithub/tbcx
Documentation:
https://bagnongithub.github.io/tbcx
License:
MIT License
Feedback/Bug Reports:
Feedback is welcome on the issue tracker https://github.com/ bagnongithub/tbcx/issues
Hi Miquel,
that sounds great !
The "metadata assembly" of TCL-OO objects sounds like a totally new functionality.
As you know, my aim is to get this as close to the core as possible.
I hope, the MIT licence is compatible to the core licence.
Thanks for all, I appreciate,
Harald
Am 26.10.2025 um 21:01 schrieb bagnon:
Hello everyone,
I am pleased to announce the release of TBCX v1.0.
TBCX is a C extension for Tcl 9.1+ that serializes compiled Tcl
bytecode (plus enough metadata to reconstruct `proc`s, TclOO methods,
and lambda constructs) into a compact binary file — and later allows
to load that file into another interpreter for fast startup without
re-parsing or
re-compiling the original source. There’s also a disassembler for
human- readable inspection.
The binary files that store the bytecode are not encoded/obfuscated in
any way. If you seek to hide the content of your Tcl source code, you
will need to add additional mechanisms. Both tbcx::save and tbcx::load
play nicely with Tcl input/output channels.
Compatibility:
This package supports only Tcl 9.1+. For previous versions you may
want to use
- https://github.com/tcltk-depot/tclcompiler
- https://github.com/tcltk-depot/tbcload
Project Homepage:
https://github.com/bagnongithub/tbcx
Documentation:
https://bagnongithub.github.io/tbcx
License:
MIT License
Feedback/Bug Reports:
Feedback is welcome on the issue tracker https://github.com/
bagnongithub/tbcx/issues
Hello everyone,Question:
I am pleased to announce the release of TBCX v1.0.
TBCX is a C extension for Tcl 9.1+ that serializes compiled Tcl bytecode
On 10/26/2025 4:01 PM, bagnon wrote:
Hello everyone,Question:
I am pleased to announce the release of TBCX v1.0.
TBCX is a C extension for Tcl 9.1+ that serializes compiled Tcl bytecode
Do you need to compile source code first to use this package? Or does
it first compile the source code and then serialize it?
| Sysop: | DaiTengu |
|---|---|
| Location: | Appleton, WI |
| Users: | 1,075 |
| Nodes: | 10 (0 / 10) |
| Uptime: | 100:22:51 |
| Calls: | 13,798 |
| Calls today: | 1 |
| Files: | 186,990 |
| D/L today: |
8,318 files (2,339M bytes) |
| Messages: | 2,438,700 |