What's GLUEscript?

GLUEscript (Glueing Libraries Using EcmaScript) is the successor of wxJavaScript. The new name covers the goal of this project: create a JavaScript engine which can be used as a general purpose language (like Perl for instance).

Read the history behind GLUEscript.

GLUEscript is developed by Franky Braem


GLUEscript uses SpiderMonkey, the JavaScript engine used in FireFox.


Portable Code

GLUEscript is written in portable C++ code. GLUEscript uses PoCo, a library for writing portable C++ code. And wxWidgets is used as GUI toolset. The GUI glue is optional.

Powered by POCO
Built with wxWidgets

GLUEscript uses Premake for generating makefiles for gcc, project files for Visual C++, CodeLite, Code::Blocks, ... Premake can be used on Windows, Linux and MacOS.



Thanks to SmartGit the move to Git went smoothly. I'm a developer for about 20 years now, and I know how to use the command-line, but when a GUI is available to reduce the work you need to do ... My first experiments with Git were no success. I've tried msysgit, but it was after using SmartGit that I was convinced to move to Git. I used SmartSVN in the past to work with Subversion on Linux, and SmartGit works in the same way. SmartGit is available for Windows, Linux and Mac OS X.

Moving to Git

The development of the next version will be done with Git as version control system. I still have to learn a lot about Git, but SmartGit is a great tool and makes it possible to use Git like I did with SubVersion.

GLUEscript 0.1.01 released

GLUEscript 0.1.01 is released. It solves two bugs: one with the error property of curl.Easy and one concerning the Array and Date object (which was also detected with using curl)

GLUEscript 0.1.00 released

Today I have released GLUEscript 0.1.00. Major change is that for now it uses the POCO SpiderMonkey framework. A framework which will be contributed by me to POCO. Download this release from the Sourceforge project page: https://sourceforge.net/projects/gluescript/

Please test this release. There is a binary release for Windows and it should compile/build on Linux. When you find problems, report them on the tracker on the Sourceforge project.

For the next version I will try to finally add the Data glue and start to work on Socket classes.

New tracker

From today, GLUEscript uses the tracker system of Sourceforge. Report your bugs or feature request at the tracker.

MySQL and MinGW

When you use the MinGW compiler you need to run some extra commands before you can actually build the MySQL glue:

First get MinGW-utils and extract the binaries in the bin folder of MinGW

Open a console window and go to the library directory of MySQL:

cd C:\Program Files\MySQL\MySQL Server 5.1\lib\opt

Then use reimp to create a .def file:

reimp -d libmysql.lib

To create the .a file, dlltool is used:

dlltool --input-def libmysql.def --dllname libmysql.dll --output-lib libmysql.a

Now you can successfully link the glue MySQL.

GLUEscript needs a new Logo

Who can create a new logo for GLUEscript? Some requirements:

  • The main part is the name and must be written as follows: GLUEscript
  • The words "Glueing Libraries Using EcmaScript" is used as a slogan
  • I want to see a graphic that makes a link with wxWidgets (Maybe this can be used: http://commons.wikimedia.org/wiki/File:WxWidgets.svg)
  • It would be nice to have some derived logo's which can be used for Twitter, the Google group, ...
  • A logo with "Powered By" to spread GLUEscript would also be nice

I was thinking on an image with a tube, and the colours of wxWidgets as glue comes out of that tube ... But if you have better ideas. Let me know!
Send your images to franky.braem@gmail.com

Why are there so many C++ macro's in GLUEscript?

GLUEscript uses a lot of macro's in the source code. While many developers find macro's evil, I find them useful for GLUEscript for the following reasons:

  • They reduce a lot of repeating code
  • They hide difficult to read code
  • When something changes only the macro needs to be changed

The third reason is the most important reason for me: Between two versions of GLUEscript the prototype of a callback was changed. Instead of searching and replacing all code in the source files, I only needed to change the macro of the callback.

The last reason of using macro's is that I have a dream, that one day I write a parser that automatically translates C/C++ code into GLUEscript code. Parsing the syntax of macro's is easier then parsing C/C++ code.

Poco Blog

GLUEscript is mentioned on the POCO blog. Read what Alex has to say about GLUEscript.

Build Poco with MinGW and Codelite

I've uploaded new Premake4 scripts in subversion to compile POCO 1.3.5 with MinGW. With these scripts you can generate workspaces for Codelite or Code::Blocks. Follow these steps:

  • Get the scripts from here: http://gluescript.svn.sourceforge.net/viewvc/gluescript/trunk/src/poco.zip
  • Unarchive the zip archive and copy all Lua scripts to the corresponding POCO directories
  • Open a command window and go to the POCO directory
  • Run premake4 and use codelite or codeblocks as action:
    premake4 codelite
    You need to run premake4 in the POCO directory!
  • Open codelite and build the projects. Make sure the Foundation project selects the gcc compiler, not the g++ compiler because zlib compilation fails with g++.

Make sure you use the latest version of MinGW! Don't use the version that is shipped with Codelite or Code::Blocks

Syndicate content