The Story of the High Level Logic Project — Briefly


The High Level Logic (HLL) Project exists to develop components to support and simplify creation of modern software systems. HLL components are generally useful in a wide range of applications. Ideas for components built by the project however are tied together in a structured framework for developing “intelligent” distributed systems. The overall goal is to complete the entire HLL system. Application developers will build application specific software and leave the rest to HLL. Individual components and useful combinations of components will be released as soon as they appear to be ready for market.

HLL grew from an odd thought experiment during the early days of commercial artificial intelligence. Rule-based expert systems, the forerunners to today's popular “business rules” processing systems (and others), had just become commercially available. Their most thought provoking feature was the rule-processing “engine”. Rules can have a specific well-defined structure and still support a wide range of applications. This means that a single processing system can be reused in a wide range of applications; leaving developers to focus on application rules while engine developers focus on improving the process of building and running them. Tools were then built to allow even people with no programming background to create, run, and maintain the rules. This is comparable to database systems in a way, except that it's for logic processing rather than data storage and retrieval.

The bottleneck was primarily the difficulty in integrating rule systems with other application components. In the beginning, rules were rules. That was it. Certain technical problems in integration have since been addressed. Database companies rather quickly offered rule systems that interacted with data stored in databases. And today's JBoss Enterprise Business Rule Management System for example, allows Java components within rule definitions and uses an approach for integrating the rule processor within applications that was developed by the Java community (JSR 94).

But what about logical integration? What if we could define a higher level structure within which rules would operate and build an efficient engine to drive that process too? The odd thought experiment began by generalizing this question. How high up the logic tree can we go? Is it possible to develop what might now be called a Grand Unified Design Pattern (GUDP) and design an engine to drive a very wide variety of GUDP applications? Yes, something like a lot of other systems, such as CMS, only not so limited to a specific type of application. (related article)

New ideas began to emerge and the concept incubated for about a quarter of a century. During that time there have been many advances in software technology that make the HLL concept much easier to implement and much more within the realm of modern (rather than pie-in-the-sky futuristic) software systems. Finally, the first prototype was built in 2007-2009. The project now focuses on commercialization.

You are invited to support the project financially, either by buying products or making a donation, or both.