tmptrash / irma

Digital organisms ecology system experiment
MIT License
15 stars 5 forks source link

Orgs shape, embeddedness and mem optimizations #90

Open tmptrash opened 4 years ago

tmptrash commented 4 years ago

Это очень фундаментальная идея того, как организмы должны хранится в мире и из чего состоять. Она сводит все маленькие идеи воедино... В ветке language-redesign, последние пол года я пытался сделать так чтобы операторы языка являлись атомами и занимали физическое место в двухмерном мире. Это первый шаг в тому чтобы получить более реальный эмулятор реальности. Таким образом организмы состоят из того, из чего состоит остальной мир вокруг. Второй шаг - сделать так чтобы организмы имели форму. То есть занимали пространство определенной конфигурации (как в нашем мире). Чтобы это было возможно, нужно чтобы каждая команда или атом занимал одну клетку в 2х мерном мире. То есть, организм будет физически находится в разных точках мира и при этом представлять из себя линейный байт код. В структурах VM.orgs и BioVM.orgMols будут храниться только 32 битные числа - ссылки на первый байт организма в двумерном мире. Сами эти структуры превратятся из FastArray в Uint32Array. Сам мир будет представлять из себя Uint8Array. Еще это очень оптимизирует расход памяти. Сейчас хранение ссылок на классы Organism и Molecule занимают по 60 байт каждая. Это дикий перерасход.

Подумать над:

Связано с #70