Es gibt einige Möglichkeiten, und letztlich hat diese Art von Frage viel mit "Geschmack" zu tun. Ich denke jedoch, dass dieses Schema aus mehreren Gründen eine wirklich gute Wahl ist. Eine ist, dass es eine sehr minimalistische Sprache ist, mit sehr wenig Syntax, um Dinge zu komplizieren. Ein anderes ist, dass ich das Gefühl habe, dass Schema etwas wirklich Grundlegendes über die Berechnung ausdrückt und dies sehr deutlich macht. Ein anderer Grund ist, dass Schema sehr "multiparadigmatisch" verwendet werden kann. Sie können funktionale Programmierung in Scheme oder imperative Programmierung tun. Es ist auch wirklich einfach, ein Objektsystem von Grund auf für Schema zu erstellen - Sie können ein einfaches Objekt in weniger als 100 Codezeilen auf die Sprache anwenden. Es gibt auch einige Scheme-Implementierungen, die viele Bibliotheken haben, so dass Sie Dinge wie Grafikprogrammierung oder Webprogrammierung darin tun können.
Und schließlich wurde der Entwicklung guter pädagogischer Materialien in Scheme viel Aufmerksamkeit gewidmet. "Die Struktur und Interpretation von Computerprogrammen" wird zu Recht als ein Klassiker betrachtet, aber eine Menge Material darin wäre ziemlich schwierig für kleine Kinder, denke ich (es war ankommende Studienanfänger am MIT gerichtet). Aber es gibt auch viel sanfteres Materialien, wie "How to Design Programs": http://www.htdp.org/ Eine Sache, die Sie in htdp wirklich deutlich sehen können, ist, wie die minimale Syntax von Scheme es Ihnen erlaubt, direkt zu den wichtigen Ideen zu gelangen.
Der Hauptnachteil von Scheme als Erstsprache ist, dass die meisten der Sprachen, die heute wirklich weit verbreitet sind, nicht viel wie Scheme aussehen, so dass die Schüler beim Umstieg etwas Anpassung vorfinden. Aber ich neige dazu, zu denken, dass, besonders für Kinder, die Kernideen am Anfang das Wichtigste sind.
Einverstanden auf Python! Schon deshalb, weil es absolut minimale Syntaxanforderungen und minimale Interpunktionszeichen erfordert. Solche Ästhetik kann für einen neuen Entwickler einen großen Unterschied machen. Es gibt auch wirklich gute Frameworks wie PyGame um interaktive Sachen wirklich einfach zu machen. Ich denke, die Aufgabe ist wichtiger als die Sprache. Überspringe die "drucke eine Nachricht an die Konsole" und konzentriere dich stattdessen auf "diese Grafik reagiert, wenn ich darauf klicke" – alecf
Livewires ist ein Open-Source-Kurs, um Kindern das Programmieren beizubringen, das Python und eine vereinfachte Version von PyGame verwendet geht noch schneller. Ich habe es durchgeblättert - es sieht sehr vielversprechend aus. http://www.livewires.org.uk/python/home – TarkaDaal