heitml Takes the World Wide Web to a Higher Level!
(Give us your Email Address to receive the latest heitml news)

Introduction
       

heitml Features

   for Designers
   Tag Libraries
   for Programmers
   heitml Technology
   Web Server Approach
   Transaction Processing
   Features Apache
   for ISPs
   Quick Summary
       
Language Guide
Language Reference
The heitml Libraries
Supported Platforms
User Guide
Download
User Registration
Discussion Group
Mailinglist
       
NEW!
heitml 1.2 new features


Send us mail

Contact Info

   

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


heitml documentation (c) 1997 H.E.I. GmbH Mannheim, Germany