Exploiting the features of ECLiPSe

## 23.3 Exploiting the features of ECLiPSe

When rewriting existing applications as well as when writing new programs, it is useful to bear in mind important ECLiPSe features which can make programs easier to write and/or faster:

- Compiler features relevant for performance can be found in section 6.7.
- Use ECLiPSe’s nonlogical storage facilities (section 10), which are usually more suitable to store permanent data than assert/1 is, and are usually faster.
- ECLiPSe has a number of language extensions which make programming easier, see chapter 5.
- The predicates get_flag/2, get_flag/3, get_file_info/3, get_stream_info/3 and
  get_var_info/3 give a lot of useful information about the system and the data.
- The ECLiPSe macros often help to solve syntactic problems (see chapter 13).
- The TkECLiPSe GUI provides many features that should make developing programs easier than with the traditional tty interface.
- It is worth familiarising oneself with the debugger’s features, see chapter 15.
- ECLiPSe is highly customizable, even problems which seemingly require modification of the ECLiPSe sources can very often be solved at the Prolog level.