100% unverbindliche Anfrage

Bitte wählen Sie:

Logo Programmiersprache Begriffserklärung und Definition

Logo wurde durch Seymour Papert in den 1960er Jahren entwickelt. Es handelt sich bei Logo um eine erziehungsorientierte Programmiersprache, die als äußerst leicht zu erlernen und auch als sehr funktional gilt. Durch die dynamischen Listen, die aus Lisp entnommen wurde, hatte Logo eine hohe Leistungsfähigkeit als Programmiersprache.

Logo ist eine Programmiersprache, die als Interpretersprache bezeichnet wird. Durch die frei definierbaren Funktionen, die rekursiv aufgebaut werden konnten, und andere Elemente fand Logo insbesondere bei Heimcomputern rege Anwendung. Allerdings kam es nicht dazu, dass Logo sich durchsetzte.

Andere Programmiersprachen für Anfänger wie BASIC liefen Logo den Rang ab. Das lag auch daran, dass Logo einige bereits sehr fortschrittliche Elemente einbrachte. Das war zum Beispiel die dynamische Datentyperkennung. Diese sorgte zugleich auch für eine Verlangsamung im direkten Vergleich mit anderen Programmiersprachen, die auf solche Elemente verzichteten. Die strukturierte Programmierung passte zur damaligen Zeit nicht zur vorherrschenden Philosophie der Programmiersprachen. So können die für Logo typischen Schleifen nur über die Rekursion realisiert werden.

Eine andere Möglichkeit ist die Realisierung über Programmteile, die in Listen eingebettet sind. Damals galt ein Code, der in Daten eingebettet war und somit während der Laufzeit veränderbar war, als Sicherheitsrisiko, insbesondere in Multiuser-Umgebungen und Netzwerken. Moderne Programmiersprachen wie Lingo oder Logowriter verwenden wieder diese Möglichkeiten, jedoch teilweise auch in Form verschiedener Objekte.

Turtle-Grafik

Bei Turtle-Grafik – oder Igelgrafik genannt – handelt es sich um eine Bildbeschreibungssprache. Hierbei stellt man sich vor, dass eine Schildkröte, die turtle, einen Stift trägt. Diese Schildkröte bewegt sich auf der Zeichenebene. Sie wird durch einfache Befehle wie vorwärts laufen, den Stift heben oder Senken gesteuert. Diese Idee kommt nicht nur bei Logo zum Tragen, sondern auch bei Stiftplotter. Aber auch bei den Programmiersprachen wie Amiga, Atori, BASIC oder Pascal kommt sie zum Tragen.

Die Turtle-Grafik kommt ist aber auch die Grundidee von Logo, einer pädagogischen Programmiersprache. Auch heute noch werden in Schulen noch gerne Grafiksysteme eingesetzt, die der Turtle-Grafik ähnlich sind. So kann ein spielerischer und zugleich motivierender Einstieg gefördert werden. Zudem wird die geometrische Vorstellung der Schüler gefördert und geschult. Das funktioniert in der Regel besser als beim Zugang über die absoluten Koordinaten.

Jedoch sind die heute verwendeten Systeme gegenüber den Grafiken von Logo wesentlich erweitert und verbessert worden. So können auf schulischem Niveau echte GUI-Anwendungen dargestellt werden. Das ist bei den Python-Modulen frog oder xturtle der Fall.

Jedoch wurde der Turtle-Ansatz im professionellen Bereich fallen gelassen. Hier setzte sich die koordinatenbasierte Grafikbeschreibung durch. Heute wird der Turtle-Ansatz nur noch zur Veranschaulichung von Fraktalen mit den Lindenmayer-Systemen genutzt.

Die einfachen Kommandos bei Logo

Die Schildkröte bei Logo hat keinen Arbeitsspeicher und setzt daher die gegebenen Kommandos immer sofort um. Das Kommando F(x) sorgt für eine Bewegung um x nach vorne. Dabei wird gleichzeitig gezeichnet. Der Befehl f(x) führt dieselbe Bewegung aus, zeichnet dabei aber nicht. Durch die Eingabe von +(a) macht die Schildkröte eine Drehung nach links um den eingegebenen Winkel a. Bei -(a) dreht sich die Maus um den Winkel a nach rechts.

Die erweiterten Kommandos

Bei den erweiterten Kommandos wird zum Speichern des jeweils aktuellen Stands ein Stack eingeführt. Der aktuelle Stand ist bei Logo die aktuelle Position der Schildkröte und deren Richtung. Hierzu gibt es [. Hiermit wird der aktuelle Zustand abgelegt. Mit ] wird der Zustand auf dem obersten Stack entfernt und zum aktuellen Zustand gemacht.

Lisp und Logo

Die Syntax der Programmiersprache Logo ist an die von Lisp angelehnt. Lisp ist 1958 am Massachusetts Institute of Technology, kurz MIT, entstanden. Es handelt sich um eine listenbasierte Programmiersprachenfamilie, die die zweitälteste Programmiersprache ist und noch immer Anwendung findet. Bei Lisp werden typischerweise alle Ausdrücke geklammert. Hierauf verzichtete Logo.

Auf der Grundlage von Lisp sind vielfältige Dialekte entstanden. Common Lisp oder Scheme sind zwei der bekanntesten Dialekte von Lisp. Der Begriff Lisp steht für Listen-Verarbeitung, also List Processing. Ursprünglich sind damit Fortran-Unterprogramme bezeichnet worden. Diese Unterprogramme sollten symbolische Berechnungen durchführen. Solche Berechnungen werden beispielsweise im Lambda-Kalkül benötigt.

Steve Russell wollte einen Interpreter für diese verschiedenen Ausdrücke programmieren. Damit sorgte der Student von John McCarthy dafür, dass Lisp entwickelt wurde. Bei den Grundstrukturen von Lisp handelt es sich um Skalarwerte, also um Einzelwerte, die jedoch Atome genannt werden.

Daneben bestehen die Listen, die miteinander verschachtelt werden können. Diese Listen werden immer mit runden Umklammerungen dargestellt. Hier sind auch die Programmanweisungen Listen. Durch das erste Listenelement wird die Funktion, die auszuführen ist, identifiziert. Somit kann bei Lisp kein fundamentaler Unterschied zwischen den Daten und den Programmanweisungen identifiziert werden. So können Programmteile auch während des Betriebs manipuliert werden. Das wird als Hoikonizität bezeichnet.

Durch Lisp und auch in Logo erhalten die Programmierer ein Höchstmaß an Flexibilität. Die Einflussmöglichkeiten sind weitreichend. Daher wird Lisp auch programmierbare Programmiersprache genannt. Der Programmierer muss keinen Speicherplatz freigeben oder reservieren, um die Datenstrukturen dynamisch aufzubauen. Der Speicherplatz wird aufgrund der automatischen Speicherbereinigung freigegeben. Die Daten müssen nicht deklariert werden. Ein einziges Lisp-Symbol hat die Fähigkeit, als Variable eingesetzt zu werden. So können verschiedene Arten an Objekten bezeichnet werden. Viele der Eigenschaften wurden auch für die Programmiersprache Logo verwendet.

Durch Compiler können die verschiedenen Programme in Lisp übersetzt werden. Der inkrementelle Compiler oder der Batch-Compiler sind bekannte Compiler-Typen für Lisp. Der inkrementelle Compiler kann die einzelnen Ausdrücke übersetzen. Beim Batch-Compeiler werden Lisp-Dateien oder auch Lisp-Programme übersetzt. Alle Compiler übersetzen Lisp entweder in einen Maschinencode für Prozessoren oder in Bytecodes, welche für virtuelle Maschinen benötigt werden.

Die Bedeutung von Lisp

Lisp ist historisch gesehen eine Programmiersprache der künstlichen Intelligenz. In den USA ist Lisp die erste Programmiersprache, die an Universitäten oder Schulen gelehrt wurden. In Europa wurden Fortan, Pascal oder Assembler noch vor der Einführung von Lisp gelehrt. Jedoch handelt es sich bei Programmiersprachen wie Pascal oder Assembler um Programmiersprachen der prozeduralen Sprachfamilie, die Daten statisch verarbeiten. Lisp hingegen hat ein dynamisches Konzept, welches strikt durchgesetzt wird.

Die Syntax in Lisp

Bei Lisp wurden S-Expressions als ein externes Format genutzt. Hiermit wurden Source-Codes oder Daten dargestellt. Makro- oder Funktionsaufrufe werden bei Lisp als Listen dargestellt. Diese Listen haben als erstes Element die Bezeichnung des Makros oder der Funktion. Bei Lisp werden Kommentare mit „;“ aufgezeigt.

Der minimale Funktionsumfang bei Lisp

Minimale Lisp-Systeme können durch wenige Operatoren und allgemeine Mechanismen zur Funktionsdefinition implementiert werden. Der Befehl first gibt das erste Listenelement zurück. Der Befehl rest gibt abgesehen vom ersten Element die Restliste zurück. Cons sorgt dafür, dass ein Element zu Beginn der Liste angefügt wird. Durch den Befehl quote wird die Auswertung von dem nachfolgenden Objekt verhindert. Mit eq wird der Befehl zu einem Test auf Identität gegeben. Cond sorgt für eine bedingt Ausführen. Der Mechanismus zur Funktionsdefinition wurde durch den Begriff lamda ausgelöst. Durch diese geringen sprachlichen Mittel können viele der Funktionen definiert werden.

Die heute häufig verwendeten Dialekte von Lisp

Eines der umfangreichsten und am häufigsten genutzten Dialekte von Lisp ist das Common Lisp. Dieses Lisp-Dialekt ist ANSI-standardisiert. Es bietet Unterstützung beim Einsatz von prozeduralen Makros oder lexikanischen und dynamischen Variablenbindungen. Zudem wurde das Common-Lisp durch Scheme und InterLisp beeinflusst. Bei Scheme handelt es sich um eine elegante und minimalistische Variante. Diese unterstützt unter anderem Continuations.

Scheme kennt nur die lexikalischen Variablenbindungen und die hygienischen Makros. Durch ihre einfache Struktur wird die Programmiersprache Scheme häufig in der Lehre eingesetzt. Aber auch die produktive Programmierung ist mit Scheme möglich und wird auch praktiziert.



Zurück zur Hauptseite: l

Sie haben Fragen?

Kostenlose, unverbindliche Erstberatung:

Anrufer aus Deutschland:
Tel. 0771 - 1589439
Internationale Beratung:
Tel. +49771 - 1589439
Anfrage per Email:
buero@seo-analyse.com

» zum Anfrage-Formular

Onpage Optimierung

Suchmaschinenoptimierung im Quelltext

Wir schaffen für Ihre Webseite oder Ihren Shop eine optimale Onpage-Basis für weiterführende Optimierungsmaßnahmen.

Offpage Optimierung

Offpage Suchmaschinenoptimierung

Natürlicher Linkaufbau gemäß den Regeln der Suchmaschinen - wir bieten ihn!

SEO Beratung

SEO Beratung

Unsere Spezialisten beraten Sie gerne hinsichtlich Ihrer akuten oder strategischen Fragen.

Ranking Monitoring

Ranking Optimierung

Bei uns Standard: qualifiziertes Monitoring Ihrer Google Platzierungen.

Suchmaschinenoptimierung für Google

Google Suchmaschinenoptimierung

Wir kombinieren Google Optimierung mit ganzheitlicher Suchmaschinenoptimierung.

SEO Strategie

SEO Strategie

Praxisbewährte Strategien, die auf Zahlen und Fakten basieren.

SEO Tools

SEO Tools

Immer im Bild: professionelle SEO Tools informieren Sie über den Status Quo.