Day 18 – Hallo, Wêreld!

by habere-et-dispertire

The first elf language is the sharing of emotions. Next comes their mother tongue. When elves start speaking their first programming language, then they are already onto their third language!

Santa imagines raku draws inspiration from many principles of Unix philosophy In particular, localization of raku plays into the robustness principle.

When writing to Santa, it doesn’t matter which language you write your wishlist in — for Santa is learning all the languages he can:

say 'Hello, World!' # English, or
sê 'Hallo, Wêreld!' # Afrikaans

It is kinder thought Santa — especially to those writing their first list — to get their feet wet by writing in a language closer to their heart.

TLDR

use L10N::AF;

# Trim whitespace (leading and trailing)
sit .sny vir '/pad/na/lêer'.IO.lyne

# List lines containing specified text
.sit as .bevat: 'soekteks' vir '/pad/na/lêer'.IO.lyne

Install

To speak with the alf elf, the summoning charm is via zef:

$ zef install L10N::AF

To write your wishlist in Afrikaans, don’t forget to include use L10N::AF near the top of your list. Or use the prepaid postage envelopes labelled afrku or lekker:

$ lekker -e 'sê "Hallo, Wêreld!"'
Hallo, Wêreld!

Other languages

The talkative elves have discovered that between them they already speak eleven languages. To find an elf that speaks your language, replace XX in use L10N::XX with the elf’s nickname:

LanguageISO 639 Set 1
AfrikaansAF
DutchNL
EsperantoEO
FrenchFR
GermanDE
HungarianHU
ItalianIT
JapaneseJA
PortuguesePT
ChineseZH
WelshCY

Preservation Of Huffmanization

Santa doesn’t much like chimneys as they are too long. Why huff and puff when he can send his smaller elves down, like , so, vra and met:

use L10N::AF;

#| Pangram test / Toets vir 'n pangram
sub is-pangram ($sin = vra 'Sin: ') {
    sê so .kl.bevat: alle 'a'..'z' met $sin
}

is-pangram q :tot /GEDIG/;
    Bask with grammars,
    Coax via allomorphs,
    Sequences of huffmanized joy.
GEDIG
# True

Decorations

Festive elves sprinkled decorations on some of the presents, like (say) and reël (rule). This did not slow Santa as the first four things he swallowed from the explosion at his ASCII factory were U, T, F and 8. Diacritics are also fun to input when you configure your keyboard to use a compose key. The keystroke sequences often form a visual composition then, for example:

CharacterKeystrokes
êCompose + e + ^`
ëCompose + e + "

Dual Translations

Some elves couldn’t make up their minds what they wanted for Xmas. Santa has allowed them to wrap their own gifts twice which has made them happy again for now:

AfrikaansEnglish
basisnaambasename
aanpas-lêermoduschmod
aanpas-lêerskapchown
gidsdir
gidsnaamdirname
sifgrep
kophead
koppellink
maak-gidsmkdir
drukfprintf
skrap-gidsrmdir
slaapsleep
sorteersort
sterttail
ontkoppelunlink

( Words in common shell usage have been kept as alternate translations — either can be used. )

Arrays

Some elves need help remembering which end of the sleigh they are servicing and whether they are loading or unloading:

Santa decided to label both ends of the sleigh and split the elves into fore and aft teams:

EnglishAfrikaans
pop, pushtrek-einde, druk-einde
shift, unshifttrek-begin, druk-begin

Composable

Raku and Afrikaans share a composable aspect.
Santa’s elves giggle when making associations between concepts:

AfrikaansEnglish
Waar, OnwaarTrue, False
skrap, skrap-nl, skrap-gidsdelete, chomp, rmdir
maak-oop, maak-toe, maak, maak-gidsopen, close, make, mkdir
gee, teruggee, opgee, gegewe, vergewe*return, returns, fail, given, forgiven*
afrond, afrondaf, afrondopround, floor, ceiling
stop, stopseindie, fatal

Sensitivity

Abuse by coercive control is not yet addressed by the Inclusive Naming Initiative. It is recognized in law in England and Wales (2015) and Ireland (2019). Santa is peaceable and so with his awareness of escalatory metaphors and imprecise terminology of the non-elves, he has tried to find translations that are more descriptive, less disproportionate and better suited to a programming language.

In programming context, the word “coerce” is used to change a value between types.
Here Santa chose herskep (recreate) rather than “dwang” (coerce). This ties in with the root term skep (create) and with omskep (map/convert). Santa wondered if his de-escalations mattered:

EnglishAfrikaansEnglish re-translation
CONTROLBESTUURmanage
diestophalt
fatalstopseinstop signal
snitchaanskouto witness

But was rather happy to express himself…

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.