|
heitml for Programmers
|
| |
heitml offers you the convenience of a full-featured programming language with
built-in database support. It is totally integrated with HTML and the Web Server,
thus providing a seemless environment for the creation of all your Web Pages,
regardless of their requirements. Here's what
you can expect when working with this language:
|
heitml contains all the features you
have come to expect from a Scripting Language. But it is also
an integrated Document Description and Programming
Language. The Document Description features (as shown on the
design page) can be naturally combined and used in
cooperation with the programming features. In fact, many features, like
Procedure Calls and the expansion of User-defined Tags are merely different
manifestations of the same concept. You only have to learn and use just one
language in order to create powerful Tag Libraries of your own. 
heitml features the persistent dynamic tuple architecture:
Tuples are just like objects in other languages
addressed by reference semantics.
heitml tuples can be processed and extended dynamically. Tuples
can be read from the database, processed and displayed without having to work
explicitly on each field name.
|
| Programming Features |
Control Structures
if expr; ... else ... /if
while expr; ... /while
break and return |
Expression Evaluation Operators
+,-,*,/,%,=,==,!=,<,<=,&&,|| |
Data Types
Integer, Float, Boolean, String, and Tuple
Fully Dynamic Type System |
Statements
?, assign, def, defenv, include, let, mail, shell |
Built in functions to process strings, tuples, null values,
convert numbers, etc. |
User defined Procedures and Functions
local variables, input and output parameters, keyword and positional
parameters, full recursion
|
|
Tuples can also be used as resizable arrays and
can be arbitrarily combined together (e.g. arrays of tuples, tuples containing
arrays, and arrays of arrays (i.e. multidimensional arrays) are all possible).
In this manner, complex data structures neccessary for shopping cart applications,
tree-structured Web Sites, and scrollable relations, etc. can easily be modelled.
| heitml Tuple Features |
t.fieldname Access a tuple field |
t[string expression] Access a tuple field with computed name |
t[integer expression] Access the n-th tuple field, just as an array |
| Tuples can be directly read from the database |
| Tuplefields can be added, deleted, reordered |
| Tuples can be merged, projected, and resized |
| Tuples can be passed as parameters |
| Tuples can be components of other tuples |
| Tuples follow reference Semantics |
|
heitml handles all Transaction Processing
and CGI problems.
A Web Server with a database works like a Transaction Processing System, so Web-based
Application programs are continually confronted with the problem of how to
preserve data between page accesses. Most Web Server tools require you to save
and restore data explicitly, a most un-natural procedure in comparison to other
programming environments. This adds to the complexity of your program structure
and often results in lengthy, time-consuming test procedures to eliminate bugs.
With heitml, internal data structures stay alive at all times, just like any
conventional programming language. heitml keeps data of any size, any
datatype, and any complex structure (i.e. tuple/object) available for use
whenever you need them. The data can be stored on disk for as long as you want
(even years) surviving Server re-configurations or even Server crashes.
|
|
Finally heitml has integrated database access and formatting
functions. heitml tuples and database tuples are compatible with each other,
and high level functions can be used to process and manipulate their underlying
contents. heitml directly
supports Web Pages that display data from databases, and Component Libraries
can be used to greatly simplify the production of vary large, complex database
applications.
|
| Database Access |
< dbquery > SQL Query
< dbtop > Table Head
< dbrow > Table Row
< dbfoot > Table Footer
< / dbquery > |
|

heitml automatically determines (through it's own internal garbage
collection procedures) what data needs to be saved. This process is
completely hidden and works without intervention or requiring the attention of
the programmer. In other words, heitml Web Applications programming is
just like programming a stand-alone application, allowing you to exploit the
full power and capabilities made possible by HTML and the Internet/Intranet.
For more information on the ideas that form the basis to this unique approach
to Web Applications programming, read the General
Design page of the heitml Language Reference Manual. If you've
ever used a professional programming language like C, Pascal, or Java, you'll
love using heitml!
This page was dynamically generated by
heitml
© 1996-1997 H.E.I. All Rights Reserved
|