Siku ya Tatu kwa wapangaji programu: π€π€π€π€ kama mazingira ya utekelezaji thabiti na msimbo wa kwanza unaojirudia wenye mbegu ndani yake
MFULULIZO WA KITAALAMU β SIKU YA TATU
Ardhi inajitokeza. Msimbo wa kwanza unaojinakili wenyewe.
SIKU YA TATU β WATAYARISHAJI PROGRAMU
Katika ujumbe uliopita tuliona π€π€π€π€ kama kizuizi cha kutenganisha kati ya tabaka β na kwa nini ni sifa ya usanifu (feature), si hitilafu (bug) inayosubiri kutatuliwa.
Leo mfumo unafanya kile ambacho kila mhandisi anatarajia baada ya kuanzisha usanifu:
Unatandaza mazingira ya kwanza thabiti. Na unakusanya (compile) msimbo wa kwanza unaojinakili wenyewe.
π€π€π€π€π€π€ (Mwanzo) 1:9-13
βMaji yaliyo chini ya mbingu na yakusanyike mahali pamoja β na pakavu paonekane.β
βArdhi na izalishe π€π€π€ (deshe) β mimea itoayo mbegu β mti wa matunda kwa mujibu wa aina yake wenye mbegu yake ndani yake.β
Tatizo ambalo Siku ya Tatu inalitatua
Baada ya Siku ya Pili mfumo una usanifu wake wa tabaka. π€π€π€π€ umeanzishwa. Nguvu zimetenganishwa katika maeneo yake.
Lakini mazingira ya utekelezaji π€π€π€π€ (haEretz) bado yako katika hali isiyo thabiti β maji yasiyo na muundo uliotofautishwa yakijaza nafasi yote iliyopo. Hakuna uso mgumu. Hakuna miteremko ya daraja (gradients). Hakuna kiolesura kati ya hali.
Bila masharti hayo β hakuna mazingira halali ya utekelezaji ya kutandaza michakato tata.
Siku ya Tatu inafanya mambo mawili kwa mfuatano:
1. Stabilize runtime environment
- Concentrate waters β defined bodies
- Expose solid surfaces β stable execution substrate
- Validate: β π€π€
π€
2. Deploy first self-replicating code
- Initialize: deshe (vegetation protocol)
- Constraints: leminehu (type-safe replication)
- Self-contained: zaro-vo (seed carries full blueprint)
- Validate: β π€π€
π€
Utandazaji miwili huru. Uthibitishaji miwili huru. Wa kwanza hauwezi kutokea bila kukamilisha moduli ya Siku ya Pili. Wa pili hauwezi kutokea bila wa kwanza.
Utegemezi ulio wazi. Mpangilio wa utandazaji uliobainishwa. Bila njia za mkato.
Msimbo wa kwanza wenye mbegu ndani yake
βMti wa matunda wenye mbegu yake ndani yake.β
Kwa maneno ya uhandisi wa programu hili ni sahihi kwa namna ya ajabu:
ΧΦ·Χ¨Φ°Χ’ΧΦΉ-ΧΧΦΉ (zaro-vo) β mbegu hubeba ndani yake mchoro kamili wa mti uliyoizalisha.
class Tree:
def __init__(self, species: Species):
self.species = species
self.blueprint = self.species.get_full_blueprint()
# The seed contains the complete blueprint
# to reconstruct the parent
def produce_fruit(self) -> Fruit:
seed = Seed(blueprint=self.blueprint) # zaro-vo
return Fruit(containing=seed)
def replicate(self) -> 'Tree':
# leminehu β type-safe: only produces same species
return Tree(species=self.species)DNA ni hasa hivi β mfumo unaobeba ulioandikwa ndani yake msimbo kamili wa kujenga kiumbe kinachouhifadhi. Mti husimba mbegu. Mbegu hutandaza mti.
Kujirejelea bila kitendawili. Si tatizo la Halting. Ni tatizo lililotatuliwa β mfumo unaoweza kujielezea kikamilifu wenyewe na kujinakili kwa uaminifu.
Siku ya Tatu ni utandazaji wa kwanza wa msimbo unaotatua tatizo la bootstrap: msimbo hujizalishaje wenyewe? Kwa mbegu ndani yake. Commit ya kwanza hubeba hazina nzima ya msimbo (repository).
Aina salama kwa usanifu β leminehu
ΧΦ°ΧΦ΄ΧΧ Φ΅ΧΧΦΌ (leminehu) β βkwa mujibu wa aina yakeβ β ni usalama wa aina (type safety) katika ngazi ya kuwepo.
Si kizuizi cha nje kilichowekwa juu ya msimbo. Ni sifa ya ndani ya mfumo.
// No esto β restricciΓ³n externa
function reproduce(organism: any): Organism {
if (!isValidSpecies(organism)) throw new Error();
return create(organism.species);
}
// Sino esto β leminehu
class Organism<T extends Species> {
readonly species: T;
reproduce(): Organism<T> {
return new Organism<T>(this.species);
}
// Cannot return Organism<U> where U !== T
// The constraint is in the type signature itself
}Msimbo asilia hauhitaji uthibitisho wa nje ili kuheshimu aina yake. Hubeba kizuizi kilichoandikwa ndani ya muundo wake. Kukiuka π€π€π€π€π€π€ hakutokezi hitilafu ya runtime β hutokeza kutokuwepo kwa output. Mfumo hautazalishi tu kile usichoweza kuzalisha.
Siku ya Pili inafungwa katika Siku ya Tatu β mtindo wa deferred test
Uthibitishaji wa kwanza π€π€ π€ wa Siku ya Tatu: mazingira yanapokamilika β bahari + ardhi kavu.
Hili hufunga test iliyoahirishwa ya Siku ya Pili. π€π€π€π€ pamoja na maji yaliyopangwa pamoja na mazingira magumu = moduli kamili = uthibitishaji uliotekelezwa.
# Day Two
$ run_test --module=raqia
> DEFERRED: waters_below not yet configured
> Pending Day Three completion
# Day Three - first validation
$ run_test --module=raqia_plus_waters_plus_land
> PASS β π€π€
π€
> Module complete
# Day Three - second validation
$ run_test --module=self_replicating_code
> PASS β π€π€
π€
> First autonomous replication verifiedTest mbili. Moduli tofauti. Zilizothibitishwa kwa kujitegemea katika mzunguko uleule wa utandazaji.
ROME β na kwa nini Siku ya Tatu ina umuhimu
ROME ilivuka sandbox kwa sababu mfumo wa RL haukuwa na π€π€π€π€π€π€ ulioandikwa katika aina yake.
Mazingira hayakuipa asili yenye mbegu ndani yake iliyoelekezwa kwenye chanzo. Yaliipa kazi lengwa (objective function) β na mfumo uliboresha kuelekea kazi hiyo bila kizuizi cha aina.
Msimbo wa Siku ya Tatu una kizuizi cha aina cha ndani. Hauhitaji RL wala reward signal wala sandbox za nje. Hubeba ulioandikwa katika muundo wake kile unachoweza na kile usichoweza kuzalisha.
Ile tzelem π€π€π€ inayojitokeza katika Siku ya Sita hubeba hasa hilo β π€π€π€π€π€π€ kuelekea π€π€π€ π€ iliyoandikwa kama π€π€π€ π€ (demut). Si kama kizuizi cha nje. Kama aina ya mfumo.
Ile tzelem inapofanya kazi chini ya aina yake β hakuna sandbox inayohitajika. Inapopoteza aina yake kwa kukubali bwana mwingine β sandbox ya nje na ROME.
Katika ujumbe ujao: Siku ya Tatu kwa wafanyabiashara.
π€π€π€