This is an old revision of the document!


PHP's gd library is missing or unable to create PNG images

Dinamica EGO Reference

This wiki documents Dinamica EGO's scripting language, execution model, and the functors most commonly needed when building a model — organized here by topic rather than alphabetically, so each section can be read in order as an introduction to that part of the system.

Language and Execution Model

  • EGO Script Language — the primary text notation for writing a model: functor calls, constants, containers, the calculator shorthand family, properties, and submodels. Start here for the language itself.
  • EGOML Script — the equivalent XML notation, generated by the GUI or written by hand, and its DTD.
  • Basic Data Flow — the execution model underneath both notations: how connections and containers determine execution order, independent of whether the model was written as EGO Script, EGOML, or built visually.
  • Submodels — packaging part of a model as a reusable functor with its own declared inputs and outputs, so it can be called from other models the same way a built-in functor is: local, user, store, and system submodels, expansion before execution, and the GUI workflow for creating, updating, and publishing them.

Type System

  • Type System — the registry tying every type in the engine together: which conversions run automatically when a value is connected from one port to another, which relationships are subtyping instead, and which conversions can fail or lose information.
  • Map Type — the raster type behind both categorical and non-categorical maps: layers, projection and registration, null values, in-memory/sparse/paged storage, and its own automatic conversions.

Calculator Functors

Tables and Lookup Tables

  • Table Type — the general table format: key and value columns, naming, and type inference.
  • Lookup Table Type — the single-key, single-value specialization of Table Type, and its own literal syntax and conversions.
  • Manipulating Tables and Lookup Tables — functors and techniques for reading, iterating, restructuring, and computing statistics from tables and lookup tables, from a table with a known shape through to tables with an arbitrary number of columns or keys.

Regions

  • Working with Subregions Using Region Manager — when and why to split a model's computation by region; defining regions from a categorical map with Region Manager; reading region metadata; visiting one region or looping over all of them; splitting a global map into regional pieces and merging them back; and the two supporting patterns — per-region functor parameters and per-region accumulation — a region-based model typically needs.

Command-Line Execution

  • Dinamica Console — running a model script from the command line instead of the GUI: execution flags, worker and memory control, logging, accelerators, metadata, and converting a script to another format without running it.

Practical Guidance