PowerHouse (programming language): Difference between revisions

Content deleted Content added
Corrected. There was no IBM series 400
External links: {{Hewlett-Packard software}}
 
(47 intermediate revisions by 33 users not shown)
Line 1:
{{Short description|Fourth-generation programming language}}
{{Orphan|date=February 2009}}
{{RefimproveMore citations needed|date=February 2007}}
{{Infobox software
| name = UNICOM PowerHouse
|logo =
| logo alt = Unicom Systems corporate logo
| screenshot =
| caption =
| author =
| developer = UNICOM Systems, a division of [[UNICOM Global]]
| latest_release_version =
| latest_release_date =
| operating_system =
| genre =
| license = [[Proprietary software]]
| website = {{URL|https://teamblue.unicomsi.com/products/powerhouse-4gl/}}
}}
 
'''PowerHouse''' is a trademarked name for a family of [[Bytecode|byte-compiled]] [[fourth-generation programming language]]s (or 4GL) originally produced by [[Quasar Corporation|Quasar (later renamed [[Cognos]] Incorporated) for the [[Hewlett-Packard]] ''[[HP3000]]'' mini-computer, as well as Data General and DEC [[VAX/VMS]] systems. It was initially composed of threefive components:
* ''QDD, or Quasar Data Dictionary'': for building a central data dictionary used by all other components
* ''QuickQDesign'': an interactive,a character-based [[screen generator]]
* ''Quick'': an interactive, character-based screen processor (running screens generated by QDesign)
* ''Quiz'': a report writer
* ''QTP'',: a batch transaction processor.
* ''Quick'': an interactive, character-based screen generator
* ''QTP'', a batch transaction processor.
All three components were dependent upon a central Data Dictionary, ''QDD'' and later ''PDL''.
 
== History ==
PowerHouse was introduced in 1982 by Quasar Corporation and bundled together in a single product Quiz and Quick/QDesign, both of which had been previously available separately, with a new batch processor QTP, now sold as a single product. In 1983, Quasar changed its name to ''[[Cognos]] Corporation'' and began porting their application development tools to other platforms, notably [[IBMDigital Equipment Corporation]]'s series[[OpenVMS|VMS]], 38[[Data (later rebranded as theGeneral]]'s [[ASAOS/400VS II]], and [[Digital Equipment CorporationIBM]]'s [[VAXOS/400]], along with the [[UNIX]] platforms from these rangevendors. Cognos also began extending their product line with add-ons to PowerHouse (for example, ''Architect'') and end-user applications written in PowerHouse (for example, ''MultiView''). {{FactCitation needed|date=February 2007}} Subsequent development of the product added support for platform-specific relational databases, such as HP's ''Allbase/SQL'', DEC's [[Oracle Rdb|Rdb]], and [[Microsoft]]'s [[Microsoft SQL Server|SQL Server]], as well as cross-platform relational databases such as [[Oracle Database|Oracle]], [[Sybase SQL Server|Sybase]], and [[IBM]]'s [[IBM DB2|DB2]].
 
The PowerHouse language represented a considerable achievement.{{According to whom|date=March 2011}} Compared with languages like ''[[CobolCOBOL]]'', [[Pascal programming language|''Pascal'']] and ''[[PL/1]]'', ''PowerHouse'' substantially cut the amount of labour required to produce useful applications on its chosen platforms. It achieved this through the use of a central data-dictionary, a compiled file that extended the attributes of data fields natively available in the DBMS with frequently used programming idioms such as:
PowerHouse was introduced in 1982 by Quasar Corporation and bundled together Quiz and Quick, both of which had been previously available separately, with a new batch processor QTP, now sold as a single product. In 1983, Quasar changed its name to ''[[Cognos]] Corporation'' and began porting their application development tools to other platforms, notably [[IBM]]'s series 38 (later rebranded as the [[AS/400]], and [[Digital Equipment Corporation]]'s [[VAX]] range. Cognos also began extending their product line with add-ons to PowerHouse (for example, ''Architect'') and end-user applications written in PowerHouse (for example, ''MultiView''). {{Fact|date=February 2007}}
 
The PowerHouse language represented a considerable achievement. Compared with languages like ''[[Cobol]]'', [[Pascal programming language|''Pascal'']] and ''[[PL/1]]'', ''PowerHouse'' substantially cut the amount of labour required to produce useful applications on its chosen platforms. It achieved this through the use of a central data-dictionary, a compiled file that extended the attributes of data fields natively available in the DBMS with frequently used programming idioms such as:
* display masks
* help and message strings
* range and pattern checks
* help and information texts.
 
In order to support the data dictionary, PowerHouse was tightly coupled to the underlying database management system and/or file system on each of the target platforms. In the case of the HP3000 this was the ''Image[[TurboIMAGE|IMAGE]]'' shallow-network DBMS and ''KSAM'' indexed file system, and the entire PowerHouse language reflected its origins.
 
Once described in the data dictionary, there was no further need to describe the attributes through any of the applications unless there was a need to change them on the fly, for example, to change the size of an item to make it fit within the constraints of a defined item.
Like all [[virtual machine]] languages PowerHouse is CPU intensive.{{Fact|date=February 2007}} On machines running at speeds considerably less than 40MHz this produced a visibly negative impact on overall transaction performance, frequently necessitating hardware upgrades. ''Cognos'' practice of tying license fees to hardware performance metrics resulted in high licensing costs for PowerHouse users.{{Fact|date=February 2007}}
 
Simple QUICK screens could be generated in as few as four lines of source code:
 
SCREEN <screenname>
FILE <filename>
GENERATE
GO
 
{{code|<screenname>}} was the name of the screen that the programmer assigned to the program. {{code|<filename>}} was the file name to be accessed in the data dictionary. Whether the items in the file would all fit in the screen would be determined by how many items and the size of them. If they didn't all fit, the program would have to be modified to eliminate unneeded items, change the size of items to some other size, etc. But, for a file with only a couple of items in it, it is quick and easy to generate a screen for data entry, deletion, or to simply look up data by an index.
 
Simple QUIZ reports were almost as easy. A one-file report was as simple as:
 
ACCESS <filename>
REPORT ALL
GO
 
All items in the file would be sent to the screen, maybe not in the most desired fashion, but that simple.
 
Since QTP programs usually involved adding, deleting, or modifying data, there was not much need for simple code programs. More care was exercised because of this potential danger, as a whole file (or files) of data could be wiped out rather easily.
 
Any QUICK, QUIZ, or QTP programs could be run compiled (converted to machine language) or uncompiled (source code). Compiled programs generally ran faster, but there had to be a good method to modifications to the source code so as to not corrupt the object code. QUICK screens were used primarily for data entry, and could call other QUICK screens, QUIZ reports, or QTP applications to update data. Also, there were a few things that had to be done to the source code in order to generate compiled code. For example, the GO command to run the source code was equivalent to the BUILD command to generate the compiled code.
 
Commands could be abbreviated to the first three characters when writing source code. ACCESS could be abbreviated to ACC, as well as DEFine, REPort, SCReen, etc.
 
QUIZ reports could be routed to a printer, screen, or ASCII text files with the <code>SET REPORT DEVICE <printer> <screen> <disk></code>command.
 
Given the right access and commands, a novice could write simple report programs. Just as dangerous, though, the same novice could easily destroy the data as there was no security to whether one can call up any of the interpreters. If you had access to QUIZ, you also had access to QTP and QUICK.
 
Like all [[virtual machine]] languages, PowerHouse is CPU intensive.{{FactCitation needed|date=February 2007}} OnThis machines running at speeds considerably less than 40MHz thissometimes produced a visibly negative impact on overall transaction performance, frequently necessitating hardware upgrades. ''Cognos'' practice of tying license fees to hardware performance metrics resulted in high licensing costs for PowerHouse users.{{FactCitation needed|date=February 2007}}
 
== Migration to the PC ==
Cognos initially attempted to move to the [[Intel]] platform in 1988 (with the [[DOS]]-based ''PowerHouse PC''). butWhile the product was used by numerous partners to build bespoke applications for small to medium-sized customers it was not entirely unsuccessful at that time. However, Cognos eventually produced Axiant (c.1995), which ported PowerHouse-like syntax to an Intel-based [[Microsoft Windows]] visual development environment and linked it to [[SQL]] aware [[DBMS]] running on these machines. The radical changes wrought by the PC revolution, which began just at the time ''PowerHouse'' was introduced, eventually brought down the cost of host computers to such an extent that high-priced software development tools such as PowerHouse became unattractive to customers.{{FactCitation needed|date=February 2007}}
 
==PowerHouse in the 21st Century==
Cognos attempted to move to the [[Intel]] platform in 1988 (''PowerHouse PC'') but was unsuccessful at that time. However, Cognos eventually produced Axiant (c.1995), which ported PowerHouse-like syntax to an Intel-based [[Microsoft Windows]] visual development environment and linked it to [[SQL]] aware [[DBMS]] running on these machines. The radical changes wrought by the PC revolution, which began just at the time ''PowerHouse'' was introduced, eventually brought down the cost of host computers to such an extent that high-priced software development tools such as PowerHouse became unattractive to customers.{{Fact|date=February 2007}}
Although ''PowerHouse'' is still available and continues to receive occasional minor updates, byAround 1999 ''Cognos'' had all but ceased further development of ''PowerHouse'' on mid-range computers in favour of newer product lines. Around 1999 ''Powerhouse Web'' was released in order to support the development of [[World Wide Web|web-aware]] applications.{{FactCitation needed|date=February 2007}} Products like ''Business Intelligence'' and ''AxiantFinancial Performance Management'' that run on commodity architectures as well asand high-end ''UnixUNIX'' servers now form the core of ''the Cognos Corporation'''sproduct businessline.
 
Cognos was acquired by IBM on January 30, 2008.
Although ''PowerHouse'' is still available and continues to receive occasional minor updates, by 1999 ''Cognos'' had all but ceased further development of ''PowerHouse'' on mid-range computers in favour of newer product lines. Around 1999 ''Powerhouse Web'' was released in order to support the development [[World Wide Web|web-aware]] applications.{{Fact|date=February 2007}} Products like ''Business Intelligence'' and ''Axiant'' that run on commodity architectures as well as high-end ''Unix'' servers now form the core of ''Cognos Corporation'''s business.
 
The PowerHouse Application Development Tools including PowerHouse server, Axiant 4GL and PowerHouse Web were acquired from IBM by UNICOM Systems, a division of [[UNICOM Global]] on December 31, 2013, and UNICOM continues to support the worldwide customer base for the products.<ref>{{cite news |last=Woodie |first=Alex |url=http://www.itjungle.com/fhs/fhs012114-story07.html |title=Unicom Adds HP3000 Biz with Cognos ADT Buy |work=Four Hundred Stuff |date=2014-01-21 |accessdate=2016-03-24 }}</ref>
 
==References==
{{Reflist}}
 
==External links==
* [http://wwwteamblue.cognosunicomsi.com/products/powerhouse-4gl/index.html PowerHouseUNICOM Systems' Application Development Tools home page]
 
{{Hewlett-Packard software}}
{{Authority control}}
 
[[Category:Procedural programming languages]]
[[Category:Minicomputers]]
[[Category:Hewlett-PackardHP productssoftware|3000PowerHouse]]
[[Category:ProceduralFourth-generation programming languages]]
[[Category:Divested IBM products]]