An das market maker Team,
ich hatte in diesem Forum schon einmal das Thema rekursive Programmierung aufgegriffen
(Rekursive Programmierung) und diese ist unstrittig bei Problemstellungen wie der Fakultätsberechnung, Fibonacci, usw., durch die „Reduktion auf Normalform“, kürzer und eleganter als andere Lösungsverfahren.
Meiner Meinung nach ist MM-Talk in die Gruppe der Funktionalen Programmiersprachen einzuordnen (Bitte einmal eine Stellungnahme der Entwicklung).
Da in solchen Sprachen Zuweisungen und Schleifenkonstrukte der Art „Do While, usw mit Abbruchbedingungen nicht vorkommen, ist die Rekursion das Programmelement das Schleifenkonstrukte dieser Art aus den imperativen Sprachen ersetzt, und sie gleich mächtig wie imperative Sprachen macht.
Zitat:Die Mächtigkeit einer Programmiersprache ist definiert durch die Menge an Problemen, die in dieser Programmiersprache entscheidbar sind. Die theoretische Informatik hat gezeigt, dass eine reine funktionale Programmiersprache mit Rekursion gleich mächtig ist wie eine imperative Programmiersprache, die Schleifen und Zuweisungen erlaubt (Turing-Vollständigkeit).
Ich bitte sie deshalb rekursive Aufrufe von Funktionen in MM-Talk einzubinden.Zur Erläuterung für andere User, die diesen Beitrag lesen folgender Ausdruck in MM-Talk:
Code:$Gd:=Close.GD[$Zeitraum; $GD_Methode; $GD_XVersatz; $GD_YVersatz];
In imperativen Programmiersprachen ist $GD eine Variable, der man unterschiedliche Werte zuweisen kann. Der Wert von $GD ist abhängig von der Stelle im Programm / Prozedur an der die Variable vorkommt.
In Funktionalen Programmiersprachen ist $GD keine Variable, sondern ein Synonym für die Funktion rechts des Gleichheitszeichens.
Gebt einmal folgendes im Formeleditor ein, wenn „Fehler anzeigen“ aktiv ist (Icon „F“).
Code:$GD=2*5;
$Z:=$GD/4;
{ weitere Programmzeilen }
$GD:=15;
{ Weitere Programmzeilen }
Wenn $GD eine Variable wäre, könnte $GD einmal der Wer t 10 (2*5) und später der Wert 15 zugewiesen werden. Dies führt in MM-Talk jedoch zu einem Fehlerhinweis (erstes $GD ist gelb hinterlegt). Somit ist, denke ich nachgewiesen, dass $GD Platzhalter für eine Funktion ist, und daraus leite ich ab, dass MM-Talk zu der Gruppe der Funktionalen Programmiersprachen gehört.
Mit freundlichen Grüßen