Wat is Beatnik en hoe werkt deze functie?

Wat is Beatnik?

Beatnik is een esoterische programmeertaal die is gemaakt in 2001 door Cliff L. Biffle.

Een Beatnik programma bestaat uit woorden uit het Duits of Engels. In Beatnik zijn er geen vaste woorden of regels voor sleutelwoorden en functies. Het maakt niet uit of een woord echt bestaat in de taal. Het is ook niet nodig dat de tekst logisch of zinvol is.

Elk woord krijgt punten volgens de regels van Scrabble en krijgt dan een functie op basis van die punten. De computer verwerkt de woorden één voor één.

Leestekens, spaties en nieuwe regels worden genegeerd.

Sommige functies bestaan uit één woord, andere hebben twee woorden nodig – eerst het woord voor de functie, dan het woord voor het argument.

Met GC Wizard kun je Beatnik programma’s lezen en uitvoeren, en ook een basisstructuur maken voor een nieuw programma. Er zijn 21 verschillende Scrabble sets beschikbaar, ook in andere talen.

Lees meer over Beatnik op cliffle.com (en)

Hoe werkt Beatnik?

Alle rekenkundige bewerkingen in Beatnik worden uitgevoerd op een stapel (stack). Het enige gegevenstype van Beatnik is een ondertekende 8-bits waarde, wat betekent dat alleen waarden van 0 tot 255 kunnen worden voorgesteld.

Scrabble waarden

WaardeDE scrabbleEN scrabbleNL scrabble
1D, A, I, R, T, U, S, N, EE, A, I, O, N, R, T, L, S, UA, E, I, N, O
2G, L, O, HD, GD, R, S, T
3W, Z, B, MB, C, M, PB, G, K, L, M, P
4P, C, F, KF, H, V, W, YF, H, J, U, V, Z
5KC, W
6J, V, Ä, Ü
8X, ÖJ, XX, Y
10Q, YQ, ZQ
Overzicht van Scrabble alfabetwaarden in GC Wizard

Beatnik commando’s

WoordwaardePseudo-codeOmschrijving
< 5noopOptioneel: de interpreter kan misschien spotten.
5, npush nZet het volgende woord op de stack.
6popHaalt de bovenste waarde van de stack.
7addNeemt twee waarden, telt ze op en zet het resultaat op de stack.
8inputLeest een invoer en zet de tekenwaarde op de stack.
9outputHaalt de bovenste waarde van de stack en geeft het bijbehorende teken weer.
10subNeemt twee waarden, trekt de eerste waarde af van de tweede en zet het resultaat op de stack.
11swapVerwisselt de twee bovenste waarden van de stack.
12doubleHaalt de bovenste waarde van de stack en zet deze twee keer op de stack.
13, njump z  +nHaalt de bovenste waarde van de stack en springt n plaatsen vooruit als de waarde 0 is.
14, njump nz  +nHaalt de bovenste waarde van de stack en springt n plaatsen vooruit als de waarde niet 0 is.
15, njump z  -nHaalt de bovenste waarde van de stack en springt n plaatsen achteruit als de waarde gelijk is aan 0.
16, njump nz  -nHaalt de bovenste waarde van de stack en springt n plaatsen achteruit als de waarde niet 0 is.
17haltBeëindigt het programma.
18 – 23noopOptioneel: de interpreter kan misschien spotten als hij in een slechte bui is.
> 23noopDe interpreter applaudisseert de programmeur voor de hoge score.
Overzicht van Beatnik Commando’s in GC Wizard

De functie Beatnik

Bovenin het scherm staat een schuifknop met de opties Vertaler en Generator.

Vertaler

Als je ‘vertaler’ kiest verschijnen er in het Scrabble Set gedeelte een keuzemenu en twee tekstvelden.

In het keuzemenu kies je welk scrabble alfabet er gebruikt wordt.

Daaronder staat een tekstveld waar je het programma of de broncode invoert. Dit zijn woorden, waarvan de scrabble waarde overeenkomt met de getallen waarmee het programma wordt uitgevoerd of de cijferreeks zelf waarmee het programma wordt uitgevoerd.

In het voorbeeld staat in Invoer de gebruikte cijferreeks voor het maken van de tekst GC Wizard. Het is niet altijd nodig om een tekst in Invoer te plaatsen, alleen als daar in de programma code om wordt gevraagd.

Zowel de cijferreeks als de tekst zullen in Uitvoer hetzelfde resultaat geven.

Onder Uitvoer komt het resultaat te staan wat GC Wizard na uitvoer van het programma of de broncode als resultaat krijgt.

Onder de Uitvoer staat een knop Debuggen. Als je deze activeert verschijnen de kolommen Assembler en Mnemonic. In de Assembler zie je de code en in Mnemonic zieje de pseudo code.

Als je de knop Toon Scrabble activeert zal er ook een kolom verschijnen met de scrabble waarden van ieder woord.

Schermafdruk eatnik vertaler in GC Wizard

Generator

Als je  ‘generator’ kiest verschijnt er een tekstveld. Hier plaats je de tekst, die je wilt versleutelen naar een Beatnik programma.

Onder Uitvoer komt de cijferreeks te staan, waarmee je het Beatnikprogramma kunt draaien.

In de Uitvoer staat ook een uitleg wat je moet doen om de cijferreeks om te zetten naar een tekst.

Onder Uitvoer zie je de kolommen Assembler en Mnemonic. In de Assembler zie je de code en in Mnemonic zieje de pseudo code.

Schermafdruk eatnik generator in GC Wizard