Rapid
 Interactive
  Programming
   Environment

Technical Details

 

RIPE is the name of a computer programme; it is an interpreter that can read command input from the keyboard and from text files.

The RIPE concept is to provide a compact, powerful interpretative language system, suitable for both sequential and event programming models, that is capable of extension, supports access to machine code and to dynamic link libraries and supports an embedded database engine, and all in a single executable file.

The program core of RIPE is a Reverse Polish Notation interpreter sitting on a virtual machine. The core is similar to the ANSI Standard for the Forth computer programming language. However, RIPE has gone significantly beyond the functionality of an ANSI Forth system.

RIPE is targeted at two distinct user groups:

  • People who want to create their own programmes but are not ready to proceed to C++, Java, Pascal or C#. This category includes teachers and their pupils, engineers whose main discipline is not IT, and computer hobbyists.
  • IT literate programmers who need to rapidly create prototypes to prove a concept. Or need to create applications that can be readily modified in a field environment where access to an Integrated Development Environment is difficult (e.g. size, licensing conditions). Or to create applications which do not justify the time and expense of using a compiled solution.

Complex GUI based applications can be created using RIPEs component size and positioning management capability. Custom components are available via access to key internal parameters enabling a near assembler like control over the interpreter. Should this level of control be inadequate for the task then RIPE provides a high level interface to machine code routines and to third party functionality in dynamic link libraries.

In one or other phases of its life RIPE been used for:

  • Clients and Servers communicating via the Internetworking Protocol
  • Remote access to relational databases
  • Documentation Management System Client
  • Diagnostic interface to remote stored program control system
  • Flat-database builder and access engine
  • Games
  • Educational utilities
  • PC: file utilities, disk utilities, GREP utility, batch/script control, PC oscillocopes, FFT and Goertzel DFT tone detectors,...

The following details apply to the Windows version of the RIPE interpreter:

  • General
    • Written in plain “C”
    • Uses the Win32 API
    • Does not use Microsoft Foundation Classes or object orientation techniques
    • Does not need .Net
    • The source code was originally developed and compiled on Microsoft® Visual Studio 6.0
    • In 2012 the source code was ported (still as plain "C")  to Microsoft® Visual Studio 2008.
    • Is complied as a statically linked program (makes the executable larger ~ 3Mbyte, but means that it runs on a naked newly installed Win-XP or Win-7 build)
  • Installation
    • No installation needed
    • No access made to the registry
    • No access made to any other URLs, devices or files
  • Some of its features are:
    • A rich set of GUI components: windows, buttons, lists, and bitmaps…
      Powerful and simple mechanisms for managing the size and positioning of GUI components
    • Synchronous and asynchronous programming model
    • Support for inline machine code routines
    • Capability to access third party dynamic link libraries (including COM interfacing)
    • Access to input/output ports even in a protected operating system (only Win-XP)
    • Support for serial port interfaces
    • Support for IP clients and servers
    • Support for creation of custom GUI components
    • Application program size limited only by system memory
    • Double precision floating point mathematics
    • Supports Drag and drop
  • Database support
    • Contains an embedded SQL database capability based on “SQLite”
  • Except that I am a user of their products, I have no other connection with the Microsoft Corporation, or them with me.

[Technical Details] [Installation] [Books] [Download] [File Shrinker] [Infix to RPN] [Sound card]