Programming Languages - H

Sample Program

HAL/S - Real-time language used by NASA for onboard shuttle software. "Two-Dimensional Characteristics of HAL, A Language for Spaceflight Applications", J.S. Miller, SIGPLAN Notices 7(10) (Oct 1972).

HALGOL - Hewlett-Packard. A simple language for communicating with devices such as modems and X.25 PADs.

HALMAT - Intermediate language used by HAL/S.

Haskell - (named for the logician Haskell B. Curry). April 1990. Designed by a committee from the functional programming community. A lazy purely functional language largely derived from Miranda. Static polymorphic typing, higher-order functions, user-defined algebraic data types, and pattern-matching list comprehensions. Innovations include a class system, operator overloading, functional I/O system, functional arrays, and separate compilation. "Report on the Programming Language Haskell Version 1.1", Paul Hudak & P. Wadler eds, CS Depts, U Glasgow and Yale U. (Aug 1991). Version 1.2: SIGPLAN Notices 27(5) (Apr 1992). list:, HASKLD-L@YALEVM.BITNET. Yale Haskell - Version 2.0.6, Haskell 1.2 built on Common Lisp* info: Glasgow Haskell - Version 0.20, generates C output* info: Haskell-B - Haskell 1.2 implemented in LML, generates native code* info:

HASL - SASL plus conditional unification. "A Prological Definition of HASL, A Purely Functional Language with Unification Based Conditional Binding Expressions", H. Abramson in Logic Programming: Functions, Relations and Equations, D. DeGroot et al eds, P-H 1986.

HCLP - Hierarchical CLP. "Constraint Hierarchies and Logic Programming", A. Borning et al, in Proc Sixth Intl Logic Prog Conf, June 1989, pp. 149- 164.

HCPRVR - "HCPRVR: An Interpreter for Logic Programs", D. Chester in Proc First Natl Conf on AI, Stanford, 1980.

HDFL - Single assignment language. "Methods for Handling Structures in Data-Flow Systems", J.L. Gaudiot, Proc 12th Intl Symp Comp Arch, June 1985.



1. DEA. Language for industrial robots.

2. A lazy Scheme.

3. An implementation of FLIP in Wisp. Implementing Software for Non- numeric Applications, W. M. Waite, P-H 1973.

HEQS - E. Derman. Constraint language for financial modeling. Uses an extension of the equation solver in IDEAL. "A Simple Equation Solver and Its Application to Financial Modeling", E. Derman et al, Soft Prac & Exp 14(12):1169-1181 (Dec 1984).

HERAKLIT - A distributed object-oriented language. "Definition einer objektorientierten Programmiersprache mit hierarchischem Typkonzept", B. Hindel, diss U Erlangen-Nuernberg, Dec 1987.

Hermes - IBM, June 1990. An imperative, strongly typed process-oriented language for complex distributed systems. A follow-on effort to NIL[2]. Threads, relational tables, typestate checking, capability-based access, dynamic configuration. "Hermes: A Language for Distributed Computing", R. Strom et al, P-H 1991, ISBN 0-13-389537-8. 0.7alpha for Unix info:

HIBOL - A variant of DIBOL, used in Infotec computers.

High Performance Fortran - Proposed extension to Fortran 90 with additional support for data parallel programming. "High Performance Fortran: Status Report", G.L. Steele Jr <>, SIGPLAN Notices 28(1):1-4 (Jan 1993).

HiLog - W. Chen et al, Stony Brook, 1989. Logic programming in higher order logic. "HiLog as a Platform for Database Languages (Or Why Predicate Calculus is Not Enough)", W. Chen et al, 2nd Intl Workshop on Database Prog Langs, Morgan Kaufmann, 1989.

HINT - Hierarchical Information NeTs. For CDC 3600. "HINT: A Graph Processing Language", R.D. Hart, Michigan State U, Apr 1970.

HLISP - "Monocopy and Associative Algorithms in an Extended Lisp", E. Goto, U Tokyo May 1974.

HLL - A machine-independent high level microprogramming language. "Automatic Microcode Generation for Horizontally Microprogrammed Processors", R.J. Sheraga et al, Proc 14th Ann Workshop Microprogramming (MICRO-14), 1981, pp.154-168.

HOL - Higher Order Logic. A proof-generating system for higher order logic based on LCF. "HOL: A Machine Oriented Formulation of Higher Order Logic", M.J.C. Gordon, Report 68, Comp Lab U Cambridge (1985). "Introduction to HOL", M.J.C. Gordon et al, Cambridge U Press 1993 ISBN 0-521-441897 HOL-88 built on ML, from Mike Gordon <> list: HOL-90 built on SML/NJ, from Brian Graham <> for Sun 4 list:

Honeywell-800 Business Compiler - Another name for FACT. Sammet 1969, p.327.

HOOK - ? Object Oriented Kernel. Delphia. An object-oriented extension of Delphia Prolog.

Hope - ("springs eternal" and so forth.) R.M. Burstall, U Edinburgh 1978. Functional language with polymorphic types and lazy lists. First language to use call-by-pattern. "HOPE, an Experimental Applicative Language", R.M. Burstall et al, Conf Record 1980 LISP Conf, p.136-143 (Aug 1980), "A HOPE Tutorial", R. Bailey, BYTE Aug 1985, pp.235-258. "Functional Programming with Hope", R. Bailey, Ellis Horwood 1990. PC Hope, plus a lazy variant for Unix, Mac

Hope+ - Alvey Flagship project, Imperial College. An extension of Hope with real numbers, vectors, call-by-WHNF. "Hope+", N. Perry, Imperial College, IC/FPR/LANG/2.5.1/7, 1988.

Hope+C - Alvey Flagship project, Imperial College. Further evolution of Hope+ with continuation-based I/O, coroutines, and RFC's. For Sun-3's with Motorola FPU's. (See Massey Hope). info: John Darlington <>

HOS-STPL - Hospital Operating System - STructured Programming Language. A FORTRAN-like language with structured extensions. "HOS-STPL User Manual", Health Services Research, US Public Health Service (Jan 1975).

HPcode - Stack-based intermediate language used by HP in many of its compilers for RISC and stack-based architectures. Supports Fortran, Ada, Pascal, COBOL and C++. Descended from Stanford's U-code.

HPCode-Plus - Descendant of HPcode with data types, developed to be an ANDF language. "ANDF: Finally an UNCOL After 30 Years", M.E. Benitez, Jack Davidson <> et al, CS TR-91-05 U Virginia (Mar 1991). (See ANDF).

HPF - (see High Performance Fortran).

HP-GL - Hewlett-Packard Graphics Language. Vector graphics language used by HP plotters.

HP-GL/2 - "HP-GL/2 Programmer's Guide", No. 5959-9733, HP. (See PCL.)

HPL - Language used in HP9825A/S/T "Desktop Calculators", 1978(?) and ported to the early Series 200 family (9826 and 9836, MC68000). Fairly simple and standard, but with extensive I/O support for data acquisition and control (BCD, Serial, 16 bit custom and IEEE-488 interfaces), including interrupt handling. Currently owned by Structured Software Systems. "HPL Operating Manual for Series 200, Models 216, 226 and 235\6", HP 98614- 90010, Jan 1984.

HSL-FX - Hierarchical Specification Language - Function Extension.

HTML - HyperText Markup Language. Markup language used by the World Wide Web. Plain text with tags enclosed in angle brackets. Defined in SGML.

HTML+ - Successor to HTML, will encode more structure. Under development.

HUGO - Geac. A bytecode-interpreted transaction handler.

Hybrid - Concurrent object-oriented language. "Active Objects in Hybrid", O.M. Nierstrasz, SIGPLAN Notices 22(12):243-253 (OOPSLA '87) (Dec 1987).

Hyper-C - HyperParallel Tech, France. Data parallel extension of C, for PVM, CM, Maspar. Available from Fortunel Systems <> (919) 319-1624.

Hyperscript - Informix. The object-based programming language for Wingz, used for creating charts, graphs, graphics, and customized data entry.

HyperTalk - Bill Atkinson and Dan Winkler. A verbose semicompiled language with loose syntax and high readability. Relies on HyperCard as an object management system, development environment, and interface builder. Programs are organized into "stacks" of "cards", each of which may have "buttons" and "fields". All data storage is in zero-terminated strings in fields, local, or global variables; all data references are through "chunk expressions" of the form last item of background field "Name List" of card ID 34217'. Flow of control is event-driven and message-passgin among scripts that are attached to stack, background, card, field and button objects. "Apple Macintosh HyperCard User Guide", Apple Computer 1987. "HyperTalk Language Reference Manual", A-W 1988. Available from Claris Corp.

HyTime - A hypermedia extension of SGML. "The HyTime Hypermedia/Time-based Document Structuring Language", S. Newcomb et al, CACM 34(11):67-83 (Nov 1991).