StarLogo ist eine agentenbasierte Simulationssprache, die von Mitchel Resnick , Eric Klopfer und anderen am Media Lab und dem Scheller Teacher Education Program des Massachusetts Institute of Technology (MIT) in Massachusetts entwickelt wurde . Sie ist eine Erweiterung der Programmiersprache Logo , einem Lisp - Dialekt . StarLogo wurde für den Bildungsbereich konzipiert und ermöglicht es Schülern und Studierenden, das Verhalten dezentraler Systeme zu modellieren oder zu simulieren .

Das erste StarLogo lief auf einem Connection Machine 2 Parallelrechner. Eine spätere Version lief auf Macintosh -Computern. Sie wurde später in MacStarLogo umbenannt und heißt heute MacStarLogo Classic. Das aktuelle StarLogo ist in Java geschrieben und läuft auf den meisten Computern.

StarLogo ist auch in einer Version namens OpenStarLogo erhältlich . Der Quellcode ist online verfügbar, die Lizenz, unter der er veröffentlicht wird, ist jedoch gemäß der Open Source Definition keine Open-Source-Lizenz , da die kommerzielle Nutzung des Codes eingeschränkt ist.

TNG-Version

StarLogo TNG (The Next Generation) Version 1.0 wurde im Juli 2008 veröffentlicht. Es bietet eine 3D-Welt mithilfe von OpenGL-Grafik und einer blockbasierten Grafiksprache, um die Benutzerfreundlichkeit und den Lernprozess zu vereinfachen. Es ist in C und Java geschrieben. StarLogo TNG verwendet Blöcke , die wie Puzzleteile zusammengesetzt werden. StarLogo TNG liest die Blöcke in der Reihenfolge, in der sie zusammenpassen, und startet das Programm in der Weltraumansicht. [ 1 ]

StarLogo ist eine wichtige Inspirationsquelle für das Kedama- Partikelsystem, das von Yoshiki Oshima programmiert wurde und in der Programmierumgebung und -sprache Etoys zu finden ist. Dieses System kann als ein ursprünglich in Squeak Smalltalk erstelltes Logo betrachtet werden .

Nova-Version

Die neueste Version von StarLogo, StarLogo Nova [ 2 ] [ 3 ], wurde im Sommer 2014 als Betaversion veröffentlicht. StarLogo Nova überträgt die Blockprogrammiersprache und die 3D-Visualisierungs-Engine von StarLogo TNG auf den Webbrowser . Die Ausführungs-Engine von StarLogo Nova basiert auf der Adobe Flash- Laufzeitumgebung und beinhaltet eine speziell entwickelte Instanzierungs-Rendering-Engine, die die Adobe Molehill 3D-Grafik-API nutzt und Zehntausende unabhängig voneinander bewegliche Agenten auf aktueller Hardware darstellen kann. Der Programmierbereich basiert auf ScriptBlocks, einer JavaScript- basierten Blockbibliothek . Stand 2019 wird StarLogo Nova vom MIT Scheller Teacher Education Program unter der Leitung von Eric Klopfer und mit Daniel Wendel als Lead Designer und Entwickler weiterentwickelt.

StarLogo Nova führt im Vergleich zu TNG einige bemerkenswerte Designänderungen ein, insbesondere die Einführung eines Weltagenten , der an den Beobachter aus StarLogo 2.2 erinnert . In StarLogo Nova kann jeder Befehl von jedem Agenten ausgeführt werden, aber jede Rasse verfügt über ein eigenes Programm und eigene rassespezifische Merkmale . Dadurch nähert sich StarLogo Nova einem objektorientierten Programmierdesign an , um den Lernprozess zu erleichtern und die Übertragung der in StarLogo Nova erworbenen Kenntnisse auf andere, gängigere Programmiersprachen zu vereinfachen. Weitere Änderungen umfassen die Verwendung eingebetteter Argumente für Blöcke (ähnlich der Programmiersprache Scratch ), die WYSIWYG-Bearbeitung ( What You See Is What You Get ) der Simulationsoberfläche und die Aufteilung des Kollisionsprimitivs in seine Komponenten, wobei jede Rasse ihren Kollisionscode auf einer eigenen Programmseite hat.

Siehe auch

Referenzen

  1. ^ „StarLogo TNG“ . MIT Scheller Teacher Education Program Education Arcade . Massachusetts Institute of Technology . Abgerufen am 15.07.2019 .
  2. ^ „Willkommen bei StarLogo Nova“ . StarLogo Nova . MIT Scheller Teacher Education Program . Abgerufen am 10.07.2019 .
  3. ^ „StarLogo Nova“ . MIT Scheller Teacher Education Program Education Arcade . Massachusetts Institute of Technology . Abgerufen am 15.07.2019 .