This is a set of how-to notes for using the new Tcl Quad Code. Your mileage may (WILL!) vary depending on which platform you are setting up, but this shows some of the pitfalls and workarounds you may run into. '''Setup for Ubuntu 16.04''' These are the steps to install and test the new quadcode on fresh install of Ubuntu 16.04 * Install X11 dev libraries to compile Tk * The X includes may not be installed by default on your system. apt-get install libx11-dev * Update system - sudo apt-get updatee sudo apt-get upgrade * Install llvm requirements: clang for sure, lldb maybe apt-add-repository "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-5.0 m$ apt-get update apt-get install -y clang-5.0 apt-get install -y lldb-5.0 * browse to * https://github.com/dkfellows/llvmtcl * Download zip * cd to base development folder - you'll end up with * tcl, tk, quadcode, and llvmtcl-master in this folder. unzip ~/Downloads/llvmtcl-master.zip * Download 1.18 Tcllib from: https://core.tcl.tk/tcllib/login?g=/tcllib/tarball/tcllib-1.18.tar.gz&anon&uuid$ * Put in safe place tar -xvzof tcllib-1.18.tar.gz cd tcllib-1.18 ./configure make sudo make install * Download Fossil scm binary from * https://www.fossil-scm.org/download.html * copy to somewhere in path * Download the tcl, tk and quadcode fossil repositories fossil clone http://core.tcl.tk/tcl tcl.fos fossil clone http://core.tcl.tk/tk tk.fos fossil clone http://core.tcl.tk/tclquadcode quadcode.fos * Make tcl, tk and llvmtcl mkdir tcl tk cd tcl * Do not take the tip - It may have issues fossil open ../tcl.fos core-8-6-8 cd unix ./configure; make sudo make install cd ../../tk fossil open ../tk.fos core-8-6-8 cd unix ./configure; make sudo make install cd ../../llvmtcl-master ./configure * This failed, there is No llvm_config command * That's because the llvm 5.0 distro calls it llvm-config-5.0 cd /usr/bin sudo ln llvm-config-5.0 llvm-config cd - ./configure make sudo make install * Note - if you get errors like these, you are using a * 9.x version of Tcl that as of Jan 2018 is not supported. * version conflict for package "Tcl": have 9.0a0, need 8.5 while executing "package require Tcl 8.5" Or: version conflict for package "Tcl": have 9.0a0, need 8.2 while executing "package require Tcl 8.2" (file "./installer.tcl" line 10) * Make a folder for quadcode. I'm using a datestamped folder * to keep evolutionary steps separate mkdir quad-201801 cd quad-201801/ fossil open ../quadcode.fos tclsh8.6 demos/smalltest.tcl * This should "just work", and you'll see about a factor of 10 * improvement in run time. <>TclQuadCode tclquadcode