Snipper  - Code Generator
Who
  • Snipper was designed and developed by Dean H. Nelson.
What
  • The name, "Snipper", is derived from "snippet" (a small piece snipped off ) to convey Snipper's management of snippets  -  labeled blocks of text in code-generation.
  • Snipper is a program that writes programs - functioning as a kind of "programmer".
  • Snipper is a two-pass code-generator designed to produce any text, software, or script artifacts that are ascii-based.
  • Snipper has it's own proprietary language consisting of the following architectural components:
  1.  Snippets (labeled blocks of modifiable text)
  2.  Parameters (values for configuring the generation process)
  3.  Directives (string-manipulation, arithmetic, and snippet  management functions)         
  • Snipper provides the means of converting a working program, script, markup language, or other text instance into a generalized template for use in generating new artifacts of like functionality and purpose.
  • Snipper is designed to generate fully transparent artifacts in the native code/format of any  Ascii-based code, text, or script including:
  1. Computer program code (e.g. Java, AWK, R, Python, VBA,  shell-scripts, etc.)
  2. SQL Scripts (e.g.  MySQL, SQL-Server, PL/SQL, SQLite3,  Postgres, Jet, or any SQL language)
  3. Mark-Up languages and NoSQL  (e.g. HTML,XML,etc.)
  4. Other Text scripts and documents (e.g. documentation)
  • Snipper provides an early-bind (data-driven) instantiation of a text, code, or script artifact that is generated on-demand and one-off. This means that generated programs and scripts are tailored specific to the programming task and data structure. 
Where
  • Where Deployed: Snipper deployed as an embedded function in the InfoMator Workflow Task Manager.
When
  • Snipper functionality was originally implemented in the late 1990's to address a Y2K compliance solution fror a legacy COBOL application.
  • Between 2001 and 2009, Snipper provided code-generation functionality that generated scripts for an ORACLE PL/SQL to COBOL data conversion and that generated - on-demand - scripts that performed association analyses for text extractions in a sparsely-populated,high-dimension hyperspace.
  • Since 2010, Snipper has been embedded in InfoMator(tm) to generate software artifacts used in performing Natural Language Processing and other Text Analytics functions.
How 
  • Snipper is implemented by developing a single tested, working instance of software, scripts, and text artifacts.
  • The instance of the actual code is then "generalized" by some high-level modification to provide a code-generation template.
  • The modification process entails marking snippet boundaries, adding code-generating directives and parameters.
  • Snipper Templates can then be modified by setting values for code-generation and data configuration parameters.
Why
  • Why Snipper?  Snipper was developed to address several program design constraints:
  1. To provide a code-generator to write program code in any chosen programming or scripting language.
  2. To provide a means to instantiate programs via early-binding to improve performance/throughput.
  3. To provide an on-demand code-generator to accommodate an "All or Nothing" testing strategy.
  4. To provide a NOSQL data architecture based on "Snippets" that "unfold" into program structures.
  5. To provide a framework for rapid prototyping of changing functionality.