Pinewood Postings

a blog in the technical sense

PowerOn, a programming language - Part 2

February 04, 2020 — ~pinewood

Background

PowerOn was created by San Diego company Symitar for use in their credit union-centric banking platform and database "Episys". Originally titled "Report Generator", PowerOn was designed to allow credit unions custom reporting functionality. These custom reports were (and still are) referred to as "RepGens" which refers to PowerOn's predecessor Report Generator.

PowerOn's background as both a report generation language and custom banking solution are the basis for the best and worst features of the language.

With report generation in mind let's look back at our "Hello World" example:

TARGET = ACCOUNT
PRINT TITLE = "HELLO.WORLD"
 PRINT "Hello, world!"
 NEWLINE
END

The first line tells Episys that our report will be run on the ACCOUNT level. We'll get into more details about TARGET later on in the series, but for this example it isn't significant beyond the fact that a TARGET is required for the program to run. The second line, PRINT TITLE = "HELLO.WORLD" starts the PRINT division of the program and sets the title of the report to "HELLO.WORLD". PRINT is the PowerOn equivalent to Java's System.out.print and NEWLINE is just syntax sugar for PRINT CTRLCHR(10).The PRINT command ignores escape characters so we use the built-in function CTRLCHR(10) which returns the ASCII character 0x0A: '\n'.

Symitar was acquired by Jack Henry & Associates in 2000 for $44 million dollars.Jack Henry & Associates to Acquire Symitar Systems

    tags: poweron, programming, fin-tech

    PowerOn, a programming language - Part 1

    February 03, 2020 — ~pinewood

    Introductions

    The purpose of this blog series is two-fold.

    1. To inform the reader about a proprietry programming language they may not have ever heard of before.
    2. To try to articulate why I love PowerOn, why I hate it, and what I think we could learn from this bizarre little language.

    Before we go any further let's go ahead with introductions. Here is the required "Hello World" program in PowerOn.This also represents the smallest possible PowerOn program in terms of divisions.

    TARGET = ACCOUNT
    PRINT TITLE = "HELLO.WORLD"
     HEADER = ""
     PRINT "Hello, world!"
     NEWLINE
    END
    

    I'm going to try and keep these short so now that we got that out of the way join me in Part 2 for some history on PowerOn, a programming language.This should have included a link to Part 2 but I haven't figured out a good way to do that with bashblog yet.

      tags: poweron, programming, fin-tech