Path
 
  
Siblings
      
      
 
 
Children

PlodWare

This set of pages is about some standalone executables that I have developed.

Under the term RipeTech I generated a "FORTH" like interpreter that runs on Microsoft Windows based PCs.

When I found out about SQLite and that it was open source, and written in plain old "C" then I added it to my "FORTH" like executable.

My fascination with interpretive languages eventually drove me to implement a "BASIC" like interpreter (written in RipeTech "FORTH").

I then started to create standalone scripts written in this "BASIC" like language.

The result, my collection of PlodWare applications. Where each application is a single (portable) executable file (okay, it does create a small database file in the folder where the executable is located, this database is used to hold configuration data that persists over sessions).

Freeware, closed source.
Only available for Microsoft Windows.

This is a tri-language program (4 if you include SQLite).
  1. The application that you see is written in a BASIC like script that has been encoded and embedded in to this executable.
  2. The BASIC script is interpreted at runtime via a FORTH like system into calls to native code.
  3. The native code was compliled from a collection of files written in plain old "C".
No MFC or WPF or any other framework was used, GUI management was done at the Windows API (Win32) message level.

Why be awkward, when, with a little effort you can be impossible.

The BASIC like environment supports:
  • DLL access
  • on-the-fly GUI creation
  • automation (used to be called OLE Automation, or Object Linking & Embedding)
  • macros (functions/subroutines)
  • access to SQLite to create/manage/delete databases and tables
  • access to SQLite to handle queries and their responses
  • exchange of information between SQLite queries and "BASIC" statements
  • a number of built-in demo programs for various capabilites
  • lots and lots more


      Disclaimer    Contact
Author: George Salisbury 2023-08-16 19:00
Help