HyperSenses

HyperSenses – putting intentions into practice

Delta Software Technology has implemented the core ideas of Intentional Programming (IP) as a new technology - HyperSenses - that offers different representations, or “renderings”, for one source. The standard ASCII text is thus only one of many presentation forms without being the same as the source.

The saved source consists only of model elements and references in repositories that contain the meta-information, i.e. the intentions and their methods in terms of IP. MOF (Meta Object Facility) and XML are used as the save format.

Exemplary Renderings

Exemplary Renderings

Once again Delta Software Technology has applied its primary principle of developing software based on open standards.

HyperSenses components

The edit component of HyperSenses is called "Active Intent". It allows you to edit at various levels of abstraction, while simultaneously providing context-sensitive operations and checks. Due to these properties, HyperSenses sources are active sources.

IP sees not only language abstractions, but also patterns as candidates for intentions. This includes both conventional design patterns and all kinds of code patterns, which may be specific for only one application domain as well. Additionally, these code patterns are a cost-effective alternative to application-specific programming languages.

The HyperSenses component "Pattern Editor" – part of the tool "HyperSenses Meta Composer" – is the logical implementation of this idea. Patterns are thus not just defined to use and re-use them as theoretical concepts; they are themselves implemented as re-usable implementation modules, comprising the corresponding elements of the development environment.

The IP paradigm defines the level of meta-programming needed to describe elementary abstractions, normally language abstractions. The variabilities of the generator implemented with HyperSenses are described with it. These definitions form a HyperSenses meta model. It is defined and maintained using the tool "HyperSenses Meta Composer".

The different levels – which are only theoretically separated in the IP structure – are implemented by the HyperSenses technology as a bundle. Thereby, the conceptual separation meta model – model – patterns was keeped in a clean way.

HyperSenses, Pattern By Example and ANGIE – a classification

ANGIE, a generator system for generating program code, is a familiar and effective base technology for generation tools with a higher degree of abstraction.

Pattern By Example (PBE) is technically and conceptually based on ANGIE. PBE offers as a cross-frame element – and thus explicitly states – the abstraction level of patterns, which is provided in the ANGIE frames, in an intuitive graphical user interface.

While the ANGIE generator language already supports the use of existing code fragments for the implementation of a generator, this reverse engineering approach has been made much more convenient and cultivated into a central principle in PBE.

In the HyperSenses tool, ANGIE is also used as an underlying technology to implement the code generation on the back-end. PBE is an ancestor of the HyperSenses component "Pattern Editor".

HyperSenses melds forward engineering in terms of implementing generators and reverse engineering with existing code artifacts, creating the central approach of "active" sources. In this way, HyperSenses realizes a significantly higher – and, if desired, domain-specific – abstraction level than ANGIE and PBE.

Curious? Our Tutorial Provides You With a First Insight!