Stejně jako se čaroděj může naučit nová slova kouzelného jazyka, může se nová slova naučit i kouzelná hůlka. Tedy... spíše je to čaroděj, kdo kouzelnou hůlku nová slova naučí. Má na to totiž kouzelná slovesa.
Nová slova v jedné kouzelné větě
Jedno z takových sloves je let a může se hodit, třeba když čaroděje stále trápí balení krabice, která je 20 centimetrů dlouhá, 10 centimetrů široká a 2 centimetry vysoká.
Místo toho, aby čaroděj vyblekotal kouzelnou větu plnou záhadných čísel, může se na chvilku zastavit a říct si:
délka je 20
šířka je 10
výška je 2
všechny rozměry jsou v centimetrech
a já potřebuji vypočítat:
dva obsahy obdélníku: horního a dolního
obsah obdélníků z dlouhé a krátké strany
a ty poslední dva obsahy vlastně ještě jednou
Nakonec ze sebe dostane kouzelnou větu
Čaroděje taková věta potěší, hlavně když bude balit další krabici, která je 13 centimetrů dlouhá, 17 centimetrů široká a 6.5 centimetry vysoká.
Kolik papíru potřebuje na další krabici?
832 centimetrů čtverečních.
Kolik stuhy potřebuje čaroděj na první krabici?
68 centimetrů.
A kolik stuhy potřebuje na tu druhou?
86 centimetrů.
Čaroděj může naučit kouzelnou hůlku jména i jiných podstatných jmen než jen čísel.
Jak lze použít let v následující kouzelné větě?
A jak v této?
Je potřeba nezapomínat, že když kouzelná hůlka vykoná kouzelnou větu, výsledek je zase slovo kouzelného jazyka. Čaroděj má tak volnou ruku při tvoření mocných vět.
[[Soubor:neprogramator-delka-slov-ne-programator.jpg|náhled|střed|Jak dlouhé je kouzelné podstatné jméno "Neprogramátor"? A co když přeskočím první dvě písmenka?]]
Jak by čaroděj použil let v takové větě?
Čaroděj má více možností, jak to tak u vyjadřování myšlenek pomocí jazyků bývá. Jako v minulých případech může pojmenovat podstatné jméno "Neprogramátor":
Také si ale může všimnout, že se opakuje nejen podstatné jméno "Neprogramátor", ale i věta začínající slovesem substring:
Navíc let je sloveso uvozující kouzelnou větu, takže čaroději nic nebrání použít výsledek vykonání takové kouzelné věty jako část jiné kouzelné věty:
Na poslední úpravu už ale sloveso let nestačí. Pomocí let lze pojmenovat podstatná jména, která na sobě nezávisí. Jenže podstatné jméno část závisí na podstatném jméně slovo! Pro to, aby kouzelná hůlka věděla, co podstatné jméno část znamená, musí vyhodnotit kouzelnou větu (substring slovo 2 (string-length slovo)), pro jejíž vyhodnocení potřebuje znát podstatné jméno slovo.
Místo let je proto potřeba použít let*. let* je sloveso kouzelného jazyka, které je hodně podobné let, jen o trochu lépe umí pojmenovat více věcí najednou – následující slova, například část, mohou záviset na těch předchozích, v tomto případě na slovo:
Nová slova, která si kouzelná hůlka zapamatuje
Když čaroděj kouzelné hůlce předá kouzelnou větu
kouzelná hůlka ji vykoná a výsledek vrátí čaroději. Kdyby se pak čaroděj kouzelné hůlky zeptal, kolik že je délka, kouzelná hůlka by nevěděla. Čaroděj kouzelnou hůlku nové slovo naučil jen na chvilku.
Aby si kouzelná hůlka nové slovo zapamatovala, vysvětlí jej čaroděj kouzelné hůlce v kouzelné větě, která začíná slovesem define. O trápení s balením krabice tak může čaroděj s hůlkou sdílet nejednu větu:
Vzápětí se pak může zeptat na délku stuhy a kouzelná hůlka už bude vědět:
Jak by vypadaly věty o druhé krabici?
Čaroděj může kouzelnou hůlku naučit jména i pro ostatní typy podstatných jmen, třeba pro text.
Kolik a jaké věty jsou potřeba při použití define v následující kouzelné větě?
Dvě.
A v této?
Také dvě.
Nakonec zase zbývá kouzelná kombinace dvou předchozích vět. Víme, že při použití let* mocná kouzelná věta zní:
Kolik a jaké věty s define mohou tuto mocnou kouzelnou větu nahradit?
Tři.
Slovníček kouzelného jazyka
Slovesa let a let* slouží čaroději pro dočasné pojmenování informací v jedné větě.
Slovesem define čaroděj naučí kouzelnou hůlku novou informaci, kterou si kouzelná hůlka zapamatuje.