Scripting Languages:

Lua - http://www.lua.org/
Used by SciTE programming editor and grafx2 graphics editor.
Sample SciTE lua scripts are available at http://lua-users.org/wiki/SciteScripts

th1 - https://www.fossil-scm.org/xfer/doc/trunk/www/th1.md
Test Harness 1 is a minimal reimplementation of TCL used for testing the FOSSIL software configuration management and version control system.

microperl - https://www.foo.be/docs/tpj/issues/vol5_3/tpj0503-0003.html
A way to build a minimal implementation of Perl using the Perl source code.

tinypy - http://www.tinypy.org/
A minimalist implementation of Python in 64K of code.

micropython - https://github.com/micropython/micropython
Python implementation for microcontrollers and constrained systems.

mruby - https://github.com/mruby/mruby
Lighweight implementation of Ruby.

TinyScheme - https://github.com/zpl-c/tinyscheme
TinyScheme is a lightweight Scheme interpreter that implements a large subset of R5RS.

minischeme - https://github.com/catseye/minischeme
Cat's Eye Technologies' fork of the original public-domain Mini-Scheme implementation, miniscm.

minilisp - https://github.com/rui314/minilisp
Readable lisp in less than 1000 lines of C.

tiny-lisp - https://github.com/matp/tiny-lisp
Tiny-lisp is a small implementation of LISP written in standard C11 and released under unlicense.

KML - https://github.com/kototama/kml
Pure C99 implementation of a minimal Lisp language.

My Basic - https://github.com/paladin-t/my_basic
Lightweight BASIC interpreter.

zBasic - https://github.com/zevv/zBasic
Minimal BASIC interpreter for embedded environments.

Jim interpreter - http://jim.tcl.tk/index.html/doc/www/www/index.html
Small footprint implementatin of TCL.

Partcl - https://github.com/zserge/partcl
Minimal TCL interpreter.

Tiny-JS - https://github.com/gfwilliams/tiny-js
JavaScript interpreter.

42tiny-JS - https://github.com/ardi69/42tiny-js
Fork on Tiny-JS with more functionality.

Quad-wheel - https://code.google.com/archive/p/quad-wheel/
Small but full ECMA-262 supported javascript engine, written in ANSI C.

MuPDF JavaScript - https://mujs.com/
Some versions of MuPDF PDF viewer include a small JavaScript interpreter. I've read that this is slower than some other popular JavaScript interpreter alternatives.

Duktape - https://duktape.org/
Popular embedded JavaScript engine.

JerryScript - https://github.com/jerryscript-project/jerryscript
JavaScript engine.

V7 - https://github.com/cesanta/v7
Embedded JavaScript engine.

Dojs - https://github.com/SuperIlu/DOjS
JavaScript environment for DOS using MuJS and Allegro.

mJS - https://github.com/cesanta/mjs
JavaScript engine for microcontrollers.

QuickJS - https://bellard.org/quickjs/
Small and embeddable JavaScript engine. Supports ECMAScript 2020 specification.

Quasar M4 - http://haddonthethird.net/m4/
Quasar M4 is an attempt to provide a drop-in replacement for the GNU implementation of the M4 macro language.

libmawk - http://repo.hu/projects/libmawk/
Library to embed awk scripting language in C and other programs.

Squirrel programming language - http://squirrel-lang.org/
Scripting language with syntax similar to C/C++/Java and a dynamic nature like Python/Lua.

Squirrel modules - https://github.com/pfalcon/squirrel-modules
Module import system for Squirrel.

AndroWish - http://www.androwish.org/index.html/home
TCL/TK port for Android using SDL and AGG (Anti-Grain Geometry)
Links to dialog and dialog-like utilities for use mainly with scripting or possibly creating simple GUIs with C programs are covered below. Dialog utilities are typically used on POSIX systems. There are some notes on portability to Windows platforms.

URLs are accurate as of when this was posted. However, they can change over time. You can use a search engine or archive.org wayback tool to find pages that have been moved or backups of older versions of pages.

Dialog
https://web.archive.org/web/20130602021132/http://www.openwatcom.org/index.php/Dialog_howto
How To for building Dialog on OpenWatcom. It builds on MinGW with msys just as well. However, a few of the lines in the OpenWatcom patches for handling directory structures differently aren't needed. Dialog provides console GUI interaction for batch and shell scripts.

I have a newer set of patches for dialog that adds more feature support on Windows. If there's interest, I can upload the source code as part of my LM BLD project at some point: http://www.distasis.com/cpp/lmbld.htm

LM BLD ui patches
http://www.distasis.com/cpp/lmbld.htm#lmbldui
Patches to cross-platform portable browsers so that they can be used as user interfaces. Offers the ability to create user interfaces with basic HTML and CSS. Can work with UTF-8 files to support internationalization. I personally prefer this method to scripting with dialog. HTML and CSS are standardized and there's more control over the look and feel of dialogs.

Gui It !
http://www.lprp.fr/soft/misc/guiit/guiit_en.php3?lid=320
WxWidgets based front ends using simple XML configuration files.

yad
https://sourceforge.net/projects/yad-dialog/
Yet another dialog, this is a fork of zenity with many added features. Uses GTK+ 2 to offer Windows look and feel for user interface objects and offers cross-platform use. Support for MinGW has been added to the source code. GTK+ 3 port available.

zenity
http://www.placella.com/software/zenity/
This provides a simple GUI interface for batch and shell scripts. It's been ported from POSIX systems to work with MinGW, msys and GTK+ 2. Similar to Dialog, but possibly less functions. Latest version of zenity supports GTK+ 3.

gxmessage
http://crash.ihug.co.nz/~trmusson/programs.html
Builds with MinGW and msys if GTK libraries (2 or 3) are installed. Similar to Dialog but slightly different functionality.

Xdialog
http://xdialog.free.fr/
Builds with MinGW and msys if GTK libraries are installed. Dialog port using GTK instead of pdcurses. Used following configure options: ./configure --with-gtk2 --with-scanf-calls.

gtkdialog
https://web.archive.org/web/20120303170146/http://linux.pte.hu/~pipas/gtkdialog
http://puppylinux.org/wikka/gtkdialog
Has much more functionality than Dialog or Zenity. Compiles and builds fine with MinGW and msys. However, when run to produce a dialog through a script, it hangs, presumably due to threading issues on Windows. Tried adding -mwindows -mthreads to CFLAGS and -lpthread to the libraries, but worked the same.

lxdialog
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/scripts/kconfig/lxdialog?id=HEAD
Haven't tried porting this to Windows. It provides a dialog like interface for Linux kernel configuration.

libdialog
http://ftp.tw.freebsd.org/pub/FreeBSD-stable/src/gnu/lib/libdialog/
FreeBSD dialog library for use with C programs.

April 2025

S M T W T F S
  12345
6789101112
13141516171819
20212223242526
27282930   

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 29th, 2025 02:55 am
Powered by Dreamwidth Studios