In population ecology, biologists zoologists and natural scientists study how a large number of individual (a population) over a large territory behave over time. The focus is often to model some of the characteristic of the environment, such as resource availability, temperature or water level, and to predict how the population evolves, both in the short term with individual animals moving and migrating from place to place and over long term, with a possible genetic drift of the overall population.
To this aim, I'm presenting the first draft of a formal language able to specify single individuals (agents) with their genetic makeup as they live in a complex, heterogeneous environment and react to changing conditions. A real environment can be quite complex so the language must allow its definition to include spatial features like a hierarchical structure as well as relations between sibling compartments. Moreover, agents must be able to communicate through the environment with signals that thus should be traveling through barriers and boundaries.