Forum: PC-Programmierung welche Programmiersprache ist am einfachsten bzw. kann wenig?


von Lego-Programmierer (Gast)


Lesenswert?

in den 80ern gab es "Logo" damit konnte man nur ein Punkt (Schildkröte?) 
über den Bildschirm steuern. Was gibts da noch?

von Stefan K. (stefan64)


Lesenswert?

Scratch

von Sven D. (Gast)


Lesenswert?


von Der Andere (Gast)


Lesenswert?

Der Assemblerbefehl NOP. Genau ein Befehl also das Minimum an 
Komplexität und macht genau: Nichts!
Da soll noch mal einer sagen Assembler wäre kompliziert.

von N. G. (newgeneration) Benutzerseite


Lesenswert?

Es gäbe zum Beispiel auch Robot-Karol, da kann man eine Lego-Figur um 
Raum bewegen und Marken oder Blöcke setzen. Das Paket hat auch einige 
Beispiele zum lernen.
Die Programmierung erfolgt mittels deutschen Befehlen.

Mit freundlichen Grüßen,
N.G.

von Ordner (Gast)


Lesenswert?

Lego-Programmierer schrieb:
> in den 80ern gab es "Logo" damit konnte man nur ein Punkt
> (Schildkröte?)
> über den Bildschirm steuern. Was gibts da noch?


Den Streichholzcomputer:
http://www.waldorf-it.de/wp-content/uploads/2013/11/Schachcomputer-v31.pdf

Brainfuck wäre auch als minimalistsische Progsprache zu nennen:
1
 1 +++++ +++               Set Cell #0 to 8
2
 2 [
3
 3     >++++               Add 4 to Cell #1; this will always set Cell #1 to 4
4
 4     [                   as the cell will be cleared by the loop
5
 5         >++             Add 4*2 to Cell #2
6
 6         >+++            Add 4*3 to Cell #3
7
 7         >+++            Add 4*3 to Cell #4
8
 8         >+              Add 4 to Cell #5
9
 9         <<<<-           Decrement the loop counter in Cell #1
10
10     ]                   Loop till Cell #1 is zero
11
11     >+                  Add 1 to Cell #2
12
12     >+                  Add 1 to Cell #3
13
13     >-                  Subtract 1 from Cell #4
14
14     >>+                 Add 1 to Cell #6
15
15     [<]                 Move back to the first zero cell you find; this will
16
16                         be Cell #1 which was cleared by the previous loop
17
17     <-                  Decrement the loop Counter in Cell #0
18
18 ]                       Loop till Cell #0 is zero
19
19 
20
20 The result of this is:
21
21 Cell No :   0   1   2   3   4   5   6
22
22 Contents:   0   0  72 104  88  32   8
23
23 Pointer :   ^
24
24 
25
25 >>.                     Cell #2 has value 72 which is 'H'
26
26 >---.                   Subtract 3 from Cell #3 to get 101 which is 'e'
27
27 +++++ ++..+++.          Likewise for 'llo' from Cell #3
28
28 >>.                     Cell #5 is 32 for the space
29
29 <-.                     Subtract 1 from Cell #4 for 87 to give a 'W'
30
30 <.                      Cell #3 was set to 'o' from the end of 'Hello'
31
31 +++.----- -.----- ---.  Cell #3 for 'rl' and 'd'
32
32 >>+.                    Add 1 to Cell #5 gives us an exclamation point
33
33 >++.                    And finally a newline from Cell #6

von Ordner (Gast)


Lesenswert?

Da ist noch eine, die wohl extra für das Programmierniveau von. 
Orang-Utans entwickelt wurde:
https://de.wikipedia.org/wiki/Ook!


Code-Beispiel:
1
 . ? . . . . . . . . . . . . . .
2
 . . . . ! ? ? . . . . . . . . .
3
 . . . . . . . . . ? ! ! ? ! ? .
4
 ! . . ? . . . . . . . . . . . .
5
 . . ! ? ? . . . . . . . . . . ?
6
 ! ! ? ! ? . . . ! . . . . . . .
7
 . . . . . . . . ! . ! . . . . .
8
 . . ! . . ? . ? . ? . . . . . .
9
 . . . . . . . . . . ! ? ? . . .
10
 . . . . . . . ? ! ! ? ! ? . ! .
11
 . ? . ? . ? . . . . . . . . . .
12
 . . . . . . . . . . ! ? ? . . .
13
 . . . . . . . . . . . . . . . .
14
 . ? ! ! ? ! ? . ! ! ! ! ! ! ! .
15
 ? . ? . ? . ? . ! . . . . . . .
16
 ! . ! ! ! ! ! ! ! ! ! ! ! ! ! .
17
 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
18
 ! . . ? . ? . . ! .


Schöööön, nicht wahr?! Solche Programmierspachen nähern sich schon 
poetischen Werken wie Fisches Nachtgesang von Christian Morgenstern 
enorm: http://textarchiv.guntherkrauss.de/morgenstern/nachtgesang.html

von Hmm (Gast)


Lesenswert?

Arnold Schwarzenegger C.
Wes der kann, dürfte leicht zu lernen sein :
https://github.com/lhartikk/ArnoldC/wiki/ArnoldC

Ein "hello world" sieht da so aus:
1
IT'S SHOWTIME
2
TALK TO THE HAND "hello world"
3
YOU HAVE BEEN TERMINATED

von Uwe B. (boerge) Benutzerseite


Lesenswert?

wenn wir schon auf dem Niveau esoterischer Programmiersprachen sind, 
werfe ich mal HQ9+ (https://de.wikipedia.org/wiki/HQ9%2B) in den Raum... 
:-)

Nebenbei: habe mal in einem Lua-Workshop einen Interpreter für HQ9+ von 
den Teilnehmern bauen lassen:
(https://github.com/boerge42/Lua-Magie/blob/master/hq9plus/hq9plus.lua)

: Bearbeitet durch User
von Curby23523 N. (Gast)


Lesenswert?

Herrlich:
1
IT'S SHOWTIME
2
HEY CHRISTMAS TREE isLessThan10
3
YOU SET US UP @NO PROBLEMO
4
HEY CHRISTMAS TREE n
5
YOU SET US UP 0
6
STICK AROUND isLessThan10
7
GET TO THE CHOPPER n
8
HERE IS MY INVITATION n
9
GET UP 1
10
ENOUGH TALK
11
TALK TO THE HAND n
12
GET TO THE CHOPPER isLessThan10
13
HERE IS MY INVITATION 10
14
LET OFF SOME STEAM BENNET n
15
ENOUGH TALK
16
CHILL
17
YOU HAVE BEEN TERMINATED

von Rolf M. (rmagnus)


Lesenswert?

Der Andere schrieb:
> Der Assemblerbefehl NOP. Genau ein Befehl also das Minimum an
> Komplexität und macht genau: Nichts!
> Da soll noch mal einer sagen Assembler wäre kompliziert.

Damit kann man dann aber eben auch gar nichts machen. Dann lieber eine 
OISC-Architektur. Die hat nur eine Instruktion, aber man kann damit 
alles machen.
https://en.wikipedia.org/wiki/One_instruction_set_computer

Lego-Programmierer schrieb:
> in den 80ern gab es "Logo" damit konnte man nur ein Punkt (Schildkröte?)
> über den Bildschirm steuern. Was gibts da noch?

Logo gibt's auch heute noch, sogar online im Browser:
http://www.calormen.com/jslogo/

von Johnny B. (johnnyb)


Lesenswert?

Die Programmiersprache "Befunge" ist auch rel. einfach gehalten.
https://de.wikipedia.org/wiki/Befunge

von Nop (Gast)


Lesenswert?

Der Andere schrieb:
> Der Assemblerbefehl NOP. Genau ein Befehl also das Minimum an
> Komplexität und macht genau: Nichts!

Er macht sehr wohl was, weswegen er ja auch benutzt wird.

1) kostet Zeit, kann man also für delikate Delays nehmen.
2) Die Nop-Rutsche ist immer wieder gern gesehen für return-oriented 
Exploits.

von klausb (Gast)


Lesenswert?

In alten Zeiten, vor Dijkstra

wurde der NOP Befehl vom Programm in einen  B Befehl geändert und evtl. 
zurück.

Es wurde eine Weiche eingebaut.

Heute steht Strafe auf so etwas!

von Thomas R. (r3tr0)


Lesenswert?

Brainfuck ist auch nicht all zu schwer.

von Nop (Gast)


Lesenswert?

klausb schrieb:

> Heute steht Strafe auf so etwas!

Oh ja, ich entsinne diese selbstmodifizierenden Programme noch. Und 
auch, was passierte, als CPUs auf einmal Caches bekamen.

von Oliver R. (superberti)


Lesenswert?

Hi,

ich finde Small Basic zum Lernen ziemlich gelungen:

http://smallbasic.com/

Gruß,
Oliver

von Ordner (Gast)


Lesenswert?

Oliver R. schrieb:

> ich finde Small Basic zum Lernen ziemlich gelungen


Basic gut zum Lernen, soso:

"It is practically impossible to teach good programming to students that 
have had a prior exposure to BASIC: As potential programmers they are 
mentally mutilated beyond hope of regeneration." Edsger W. Dijkstra

von (prx) A. K. (prx)


Lesenswert?

Ordner schrieb:
> Basic gut zum Lernen, soso:

Dijkstra ist tot, BASIC lebt. ;-)

Komm runter vom Ross. Dijkstra äusserte das 1975. Hast schon einmal ein 
modernes BASIC, oder das erwähnte Small Basic, mit einem BASIC von 1975 
verglichen? Da liegen Welten dazwischen. Heutiges BASIC ist eine ganz 
gewöhnliche strukturierte Sprache mit gut lesbarer Syntax, kein antiker 
Spaghetti-Code mit Zeilennummern.

: Bearbeitet durch User
von Ordner (Gast)


Lesenswert?

A. K. schrieb:
> Ordner schrieb:
>> Basic gut zum Lernen, soso:
>
> Dijkstra äusserte das 1975. Hast schon einmal ein halbwegs modernes
> BASIC oder das erwähnte Small Basic mit einem BASIC von 1975 verglichen?

Die Frage ist halt, was Dijkstra so verachtenswert an Basic fand und ob 
er nicht Altersweise geworden ist.
Da D. ja als Paladin der OOP gilt, konnte man annehmen, das ihm der 
imerative Programmier-Ansatz ein Dorn im Auge ist. Und diesen Ansatz 
teilt sich Small Basic auch mit dem Ur-Basic.

PS:
Ich bereue es zutiefst, meinen vorgehenden Beitrag nicht mit 
Zwinger-Smileys gerahmt zu haben. ;-)

von (prx) A. K. (prx)


Lesenswert?

Ordner schrieb:
> Und diesen Ansatz teilt sich Small Basic auch mit dem Ur-Basic.

Lies nochmal den Titel des Threads. Und dann schlag was vor, das dem 
Anspruch der Frage entspricht und Dijkstra gefallen hätte. Ich kannte 
den Herrn nicht persönlich.

> Ich bereue es zutiefst,

Gut so ;-). Wobei dieser Text auch ohne Smiley funktioniert hätte.

: Bearbeitet durch User
von Ordner (Gast)


Lesenswert?

A. K. schrieb:
> Ordner schrieb:
>> Und diesen Ansatz teilt sich Small Basic auch mit dem Ur-Basic.
>
> Lies nochmal den Titel des Threads.

Sorry, aber mein Beitrag bezieht sich nicht auf den Titel des Threads 
sondern auf einen darin und von mir zitierten Beitrag das BASIC gut zum 
Programmier lernen sei. Und dann ist mir der Schalk aus dem Nacken auf 
die Tastatur gerutscht und deklamierte tanzend wie Rumpelstilzchen "Go 
to Statement considered harmful, considered harmful, harmful". ;-)

Und abseits von ';-)', kein Basic Dialekt ist dafür bekannt sich auf 
einfache aka "schwachbrüstige" Befehle zu beschränken, PEEK und POKE aus 
C64 Zeiten erst garnicht erwähnt. Man kann IMHO nicht aus den 
unverschämt kleinen Speicherbedarf von Basic-Interpretern der 
Vergangenheit (bspw TINY-Basic lief auf Maschinen mit 4 kByte RAM) 
schließen, das BASIC eine einfache Programmiersprache sei, die wenig 
kann.


PS: D. war wohl doch nicht der OOP angetan, ´"Object-oriented 
programming is an exceptionally bad idea which could only have 
originated in California." -> wahrscheinlich gab es so gut wie keine 
Progsprache die D. nicht zu einer grantigen Bemerkung verleitete. 
Bissige Bemerkungen über Compiler, Sprachen und Co scheinen aber wohl 
das Kennzeichen nicht weniger Persönlichkeiten der Informatik zu sein, 
bspw: "For chrissake, that
compiler shouldn't have been allowed to graduate from kindergarten.
We're talking "sloth that was dropped on the head as a baby" level
retardation levels here:" (nicht von Dijkstra).

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

Ordner schrieb:
> (nicht von Dijkstra).

Torwalds?

von (prx) A. K. (prx)


Lesenswert?

Klar. Genau sein Stil.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.