<?xml version="1.0" encoding="UTF-8"?>
<!--Xholon Workbook http://www.primordion.com/Xholon/wb/ (C) Ken Webb Sun May 13 2012 09:04:14 GMT-0400 (EDT)-->
<XholonWorkbook>
<Notes><![CDATA[
Xholon
------
Title: Genesis creation story
Description:
Url: http://en.wikipedia.org/wiki/Genesis_creation_narrative
InternalName:
YoutubeId:
Keywords:
My Notes
--------
How to Run a simulation of the Genesis creation story ::
Click the Run button above.
Click the Step button in the overlay seven times, one time for each day.
Watch as the process of genesis unfolds.
I'm curious to see if I can adequately capture the structure of the creation story from the Bible's book of Genesis. The story is well over 2000 years old, and is very much pre-scientific age. I'm using the very popular New International Version, a Christian translation into English. ::
http://www.thenivbible.com/
http://www.biblica.com/bibles/chapter/?verse=Genesis+1&version=niv
The creation story is presented as a process that happens in stages over 6 days. The "in the beginning" paragraph specifies the initial structure of the model. See the GenesisSystem editor further down on this page.
In the story, God creates stuff out of nothing. In this simulation, the software creates nodes out of nothing, and they just appear at the right time in the overlay. There are "eight acts of creation" (commands). The Genesis process is top-down, in which familiar objects are directly created rather than allowed to emerge and evolve from smaller particles.
Other workbooks I would like to do (but probably won't have time for) ::
The big bang and evolution (bottom-up)
Other traditional creation stories
]]></Notes>
<script implName="lang:python:inline:"><![CDATA[
print "In the beginning God created the heavens and the earth."
]]></script>
<script implName="lang:javascript:inline:"><![CDATA[
print("\nNow the earth was formless and empty, darkness was over the surface of the deep, and the Spirit of God was hovering over the waters.");
]]></script>
<_-.XholonClass>
<!-- types of domain objects -->
<GenesisSystem/>
<!-- God is the creator of everything -->
<God/>
<!-- The types of things that God creates -->
<Heavens/>
<Earth/>
<Day/>
<Night/>
<Sky/>
<UnderTheSky/>
<Land/>
<Seas/>
<Vegetation>
<SeedBearingPlants/>
<Trees/>
</Vegetation>
<Sun/>
<Moon/>
<Stars/>
<SeaCreatures/>
<Birds/>
<LivingCreatures>
<Livestock/>
<WildAnimals/>
<CreaturesThatMoveAlongTheGround/>
</LivingCreatures>
<Mankind/>
</_-.XholonClass>
<xholonClassDetails>
</xholonClassDetails>
<GenesisSystem>
<God/>
</GenesisSystem>
<Blockbehavior implName="lang:python:inline:"><![CDATA[
]]></Blockbehavior>
<Blockbehavior implName="lang:javascript:inline:"><![CDATA[
]]></Blockbehavior>
<Godbehavior implName="lang:webEditionjs:inline:"><![CDATA[
function postConfigure() {
$("textarea#btstrp_console").css("font-size", "11px");
$("textarea#btstrp_console").attr("rows", "10");
$("textarea#btstrp_console").attr("cols", "67");
var god = this.parent();
god.closest(".GenesisSystem").css("background-color", "black").css("font-size", "14px");
print('In the beginning God created the heavens and the earth. Now the earth was formless and empty, darkness was over the surface of the deep, and the Spirit of God was hovering over the waters. ');
god.attr("style", "color:gold;font-size:24px");
god.closest(".GenesisSystem")
.append('<div class="Heavens" style="color:white">Heavens</div>')
.append('<div class="Earth" style="color:white">Earth</div>');
firstDay = function() {
print('\n\nAnd God said, “Let there be light,” and there was light. God saw that the light was good, and he separated the light from the darkness. God called the light “day,” and the darkness he called “night.” And there was evening, and there was morning—the first day.');
// the first command
god.closest(".GenesisSystem")
.append('<div class="Day" style="color:red">Day</div>')
.append('<div class="Night" style="color:red">Night</div>');
}
secondDay = function() {
print('\n\nAnd God said, “Let there be a vault between the waters to separate water from water.” So God made the vault and separated the water under the vault from the water above it. And it was so. God called the vault “sky.” And there was evening, and there was morning—the second day.');
// the second command
god.closest(".GenesisSystem")
.append('<div class="Sky" style="color:orange">Sky</div>')
.append('<div class="UnderTheSky" style="color:orange">Under the sky</div>');
}
thirdDay = function() {
print('\n\nAnd God said, “Let the water under the sky be gathered to one place, and let dry ground appear.” And it was so. God called the dry ground “land,” and the gathered waters he called “seas.” And God saw that it was good.\nThen God said, “Let the land produce vegetation: seed-bearing plants and trees on the land that bear fruit with seed in it, according to their various kinds.” And it was so. The land produced vegetation: plants bearing seed according to their kinds and trees bearing fruit with seed in it according to their kinds. And God saw that it was good. And there was evening, and there was morning—the third day.');
// the third command
god.closest(".GenesisSystem").children(".UnderTheSky")
.append('<div class="Land" style="color:yellow">Land</div>')
.append('<div class="Seas" style="color:yellow">Seas</div>');
// the fourth command
god.closest(".GenesisSystem").children(".UnderTheSky").children(".Land").append('<div class="Vegetation" style="color:yellow">Vegetation</div>');
}
fourthDay = function() {
print('\n\nAnd God said, “Let there be lights in the vault of the sky to separate the day from the night, and let them serve as signs to mark sacred times, and days and years, and let them be lights in the vault of the sky to give light on the earth.” And it was so. God made two great lights—the greater light to govern the day and the lesser light to govern the night. He also made the stars. God set them in the vault of the sky to give light on the earth, to govern the day and the night, and to separate light from darkness. And God saw that it was good. And there was evening, and there was morning—the fourth day.');
// the fifth command
god.closest(".GenesisSystem").children(".Day").append('<div class="Sun" style="color:green">Sun</div>');
god.closest(".GenesisSystem").children(".Night").append('<div class="Moon" style="color:green">Moon</div>');
god.closest(".GenesisSystem").children(".Sky").append('<div class="Stars" style="color:green">Stars</div>');
}
fifthDay = function() {
print('\n\nAnd God said, “Let the water teem with living creatures, and let birds fly above the earth across the vault of the sky.” So God created the great creatures of the sea and every living thing with which the water teems and that moves about in it, according to their kinds, and every winged bird according to its kind. And God saw that it was good. God blessed them and said, “Be fruitful and increase in number and fill the water in the seas, and let the birds increase on the earth.” And there was evening, and there was morning—the fifth day.');
// the sixth command
god.closest(".GenesisSystem").children(".UnderTheSky").children(".Seas").append('<div class="SeaCreatures" style="color:blue">SeaCreatures</div>');
god.closest(".GenesisSystem").children(".Sky").append('<div class="Birds" style="color:blue">Birds</div>');
}
sixthDay = function() {
print('\n\nAnd God said, “Let the land produce living creatures according to their kinds: the livestock, the creatures that move along the ground, and the wild animals, each according to its kind.” And it was so. God made the wild animals according to their kinds, the livestock according to their kinds, and all the creatures that move along the ground according to their kinds. And God saw that it was good.\nThen God said, “Let us make mankind in our image, in our likeness, so that they may rule over the fish in the sea and the birds in the sky, over the livestock and all the wild animals, and over all the creatures that move along the ground.”\n So God created mankind in his own image,\n in the image of God he created them;\n male and female he created them.\nGod blessed them and said to them, “Be fruitful and increase in number; fill the earth and subdue it. Rule over the fish in the sea and the birds in the sky and over every living creature that moves on the ground.”\nThen God said, “I give you every seed-bearing plant on the face of the whole earth and every tree that has fruit with seed in it. They will be yours for food. And to all the beasts of the earth and all the birds in the sky and all the creatures that move along the ground—everything that has the breath of life in it—I give every green plant for food.” And it was so.\nGod saw all that he had made, and it was very good. And there was evening, and there was morning—the sixth day.');
// the seventh command
god.closest(".GenesisSystem").children(".UnderTheSky").children(".Land").append('<div class="LivingCreatures" style="color:purple">LivingCreatures</div>');
// the eighth command
god.closest(".GenesisSystem").children(".UnderTheSky").children(".Land").append('<div class="Mankind" style="color:purple">Mankind</div>');
}
seventhDay = function() {
print('\n\nThus the heavens and the earth were completed in all their vast array.\nBy the seventh day God had finished the work he had been doing; so on the seventh day he rested from all his work. Then God blessed the seventh day and made it holy, because on it he rested from all the work of creating that he had done.');
}
}
function act() {
switch (this.application('getTimeStep')) {
case 0: firstDay(); break;
case 1: secondDay(); break;
case 2: thirdDay(); break;
case 3: fourthDay(); break;
case 4: fifthDay(); break;
case 5: sixthDay(); break;
case 6: seventhDay(); break;
default: break;
}
}
]]></Godbehavior>
<Blockbehavior implName="lang:bsh:inline:"><![CDATA[
]]></Blockbehavior>
<Blockbehavior implName="lang:jruby:inline:"><![CDATA[
]]></Blockbehavior>
<Blockbehavior implName="lang:groovy:inline:"><![CDATA[
]]></Blockbehavior>
<SvgClient><Attribute_String roleName="svgUri"><![CDATA[data:image/svg+xml,
<svg width="500" height="50" xmlns="http://www.w3.org/2000/svg">
<g>
<title>Genesis</title>
<rect id="GenesisSystem" fill="gold" height="50" width="500" x="0" y="0"/>
</g>
</svg>
]]></Attribute_String><Attribute_String roleName="setup">${MODELNAME_DEFAULT},${SVGURI_DEFAULT}</Attribute_String></SvgClient>
</XholonWorkbook>