Mental 0.A

Fragen zu Programmiersprachen und Software für den Hive und die Propellerchips
Drohne393
Beiträge: 12
Registriert: Sa 19. Apr 2014, 18:37

Re: Mental 0.A

Beitrag von Drohne393 »

Jetzt funktioniert alles prima :) Wenn ich ein paar interessante Progammschnipsel habe werde ich die hier posten.

Bin gerade am Lernen und Spielen ...
Drohne393
Beiträge: 12
Registriert: Sa 19. Apr 2014, 18:37

Re: Mental 0.A

Beitrag von Drohne393 »

Bin gerade am Durchprobieren und Umschreiben von Beispielen aus :
FORTH-on-the-Atari-learning-by-using.pdf

Code: Alles auswählen

1. do .. loop

nr 10 1 do i . loop ;
nr   1 2 3 4 5 6 7 8 9 10 ok

2. Example Inner and Outer do loop
Input:
il ( n ) 0 do i . loop ;
ol ( n ) 0 do cr 1 - dup il loop ;
11 10 ol
Output:
0 1 2 3 4 5 6 7 8 9
0 1 2 3 4 5 6 7 8
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6
0 1 2 3 4 5
0 1 2 3 4
0 1 2 3
0 1 2
0 1
0 OK

3. do .. +loop

tst do i . 2 +loop ;
10 0 tst
0 2 4 6 8 10

tst- do i .  -2 +loop ;
0 10 tst- 
10
10 0 tst- 
0
Dabei ist mir aufgefallen, dass die do .. +loop scheinbar nicht mit negativen Werten funktioniert, Countdown ist damit wohl nicht möglich ;)

Deswegen läuft vermutlich auch das Beispiel scr103 von S27 bzw. pdf Seite 33 nicht ( Rombus aus Sternen)

Weiterhin scheint die normale do-loop beim Atari von 1 bis 9 zu zählen während Mental noch 10 ausgiebt, das kann man so oder so machen.

Mit dem Editor hab ich mich schon richtig angefreundet. Bei mir geht die delete-taste nicht, hängt vielleicht an der Tastatur und die Insert-Funktion mit F11 ist mir nicht ganz geheuer dh. geht irgendwie nich.. sonst gehts inzwischen schon zügig mit dem editor :)
Drohne393
Beiträge: 12
Registriert: Sa 19. Apr 2014, 18:37

Mental 0.A

Beitrag von Drohne393 »

Bild

Code: Alles auswählen

cnt abc cnt dtms
cnt == aktueller systemcounter auf den stack, 1s = 80'000'000 cnts
abc == Alphabet auf Bildschirm als einzelne Zeichen ausgeben
cnt == aktueller systemcounter nach der "abc" Ausgabe ( cnt1 cnt2 ) auf stack
dtms == gebe delta in ms aus == Zeitdauer für "abc" Befehl
Bild

Und hier den tachyon-Vergleich aus der Mental-Beschreibung nachgemessen:
Bild

Chuck Moore, der Entwickler von FORTH schreibt, dass Forth Programme zu schreiben wie SUDOKU sei.
Das Ziel ist es die Software jeweils kleiner, einfacher, schneller und überschaubarer zu bekommen, er meint heutige Applikationen könnten mit Forth auf 1% ihrer Größe gebracht werden !

Das Ziel ist klar, die ersten Schritte sind schwer, aber es geht immer besser. Mit der oben gezeigten Art von Zeitmessung mit MENTAL auf dem HIVE kann man schon mal verschiedene Lösungen vergleichen.
Antworten