Home | About | Partners | Contact Us

SourceForge Logo

Quick Links
Building XL
XL Mailing List

Understanding XL
Conceptual overview
XL examples
Inside XL
Concept Programming

In depth
Browse GIT
SourceForge Info

Other projects
GNU Project
The Mozart Project

XLR: Extensible Language and Runtime

The art of turning ideas into code

Problem Space

Prev: An unlimited set of concepts


Next: Code Space

The problem space is the set of concepts that are relevant for any particular program. It varies from program to program, depending on the application domain.

The problem space may contain:

  • Concepts from the "real world", for instance, the position of a physical object such as a mouse or joystick, the temperature read by a sensor, the amount of money in a bank account, the pictures displayed by a screen or printed on paper or the passage of time.
  • Mathematical or other abstract concepts, for instance a matrix multiplication, simplified models for the movement or interaction of physical objects, or sorting algorithms,
  • Practical concerns that are relevant to the user of the program, such as the appropriate response to an error (bad user input, hardware error, missed timing constraint), the precise layout of the user interface, or the quality of that user interface.
  • Practical concerns that are not relevant to the user of the program, except indirectly by allowing the program to behave as expected, such as the management of memory, the layout of data in persistent storage, or the network protocols being used.

Note that there are parts of the domain space that are not concepts from the Concept Programming point of view, because they cannot be translated into code at all. In the present state of the technology, the quality of the user interface, or specific mathematical concepts (the next prime number after this one) are examples of elements of the problem space that are not considered as "concepts".

The problem space is the main source of domain complexity. Its dual space from the programmers point of view is the code space.

Prev: An unlimited set of concepts


Next: Code Space

Copyright 2008 Christophe de Dinechin (Blog)
E-mail: XL Mailing List (polluted by spam, unfortunately)