www.wikidata.de-de.nina.az
In diesem Artikel oder Abschnitt fehlen noch folgende wichtige Informationen Merkmale Syntax Kritik Hilf der Wikipedia indem du sie recherchierst und einfugst Raku ist eine Programmiersprache aus der Perl Familie Bis Oktober 2019 war sie unter dem Namen Perl 6 bekannt Raku integriert viele Konzepte bestehender Programmiersprachen und enthalt auch einige Neuerungen Kompatibilitat mit Perl 5 war kein Ziel es gibt aber Moglichkeiten der Interoperabilitat Der Designprozess fur Perl 6 begann im Jahr 2000 RakuCamelia das Raku MaskottchenBasisdatenParadigmen prozedural funktional objektorientiertErscheinungsjahr 2015Designer Larry Wall Damian Conway Audrey TangEntwickler Larry Wall Audrey TangAktuelle Version v6 d Diwali 1 17 Juli 2019 Typisierung Graduelle TypisierungWichtige Implementierungen RakudoBeeinflusst von Perl Ruby Smalltalk Haskell JavaScript C Betriebssystem PlattformunabhangigLizenz Artistic License 2 0 2 https raku org Geschichte BearbeitenAm 19 Juli 2000 wurde auf der TPC 4 3 unter dem damals verwendeten Namen Perl 6 als die Version der Perl Gemeinschaft angekundigt Nachdem Larry Wall 361 4 Vorschlage auswertete und thematisch sortierte schrieb er je Thema einen Uberblick seiner Vorstellungen englisch Apocalypse genannt der nach Diskussionen in den Mailinglisten von Damian Conway zu einer detaillierten Exegese formuliert wurde Darauf folgend wurde die Sprache in kleinerem Kreis weiterentwickelt wobei die Impulse vor allem von den Implementatoren und Benutzern ausgingen und der aktuelle Stand dabei in wesentlich knapperen Synopsen festgehalten wurde Diese wurden ab 2009 von einer regularen Dokumentation abgelost und die Rolle der Spezifikation ubernahm eine Testsuite die auch der Uberwachung des Entwicklungsstandes der einzelnen Implementationen dient Die Sprache wurde entrumpelt und mit neuen Fahigkeiten ausgestattet 5 Unter anderem wurde die Objektorientierung komplett neu gestaltet und lehnt sich jetzt starker an das an was man in anderen Programmiersprachen wie Scala Java Ruby oder C gewohnt ist Es wurden auch funktionale Programmierelemente wie Hyperoperatoren und Junctions eingefuhrt Makros losen die Sourcefilter ab und die neu systematisierten und erweiterten regularen Ausdrucke lassen sich zu ableitbaren Grammatiken zusammenfassen Sie erlauben es den Compiler zu verandern oder um DSL zu erweitern und werden mit dem smart match Operator angewendet der je nach Kontext verschiedene Arten von Daten Datenstrukturen und auch Inhalte von Symboltabellen vergleichen kann Der Bereich der asynchronen und parallelen Programmierung wird derzeit als letzter spezifiziert Als Interpreter fur die damals Perl 6 genannte Sprache wurde ursprunglich seit 2001 eine neue registerbasierte virtuelle Maschine namens Parrot entwickelt Sie sollte viele Sprachen auch gemischt ausfuhren und ist fur dynamische Sprachen wie Perl Python oder Ruby optimiert Parrot wurde von Dan Sugalski und Chip Salzenberg entworfen und spater von Jonathan Leto und Patrick Michaud betreut wobei letzterer fur die Parrot Compiler Tools PCT zustandig war einem Satz Werkzeuge fur die Erstellung von Parsern und Compilern Der auf Parrot und PCT basierende Perl 6 Compiler nennt sich Rakudo Unter der Fuhrung von Jonathan Worthington bekam Rakudo einen in NQP einer sehr einfachen Perlvariante programmierten Unterbau der es erlaubt den Compiler auf die JVM mit kleinen Inkompatibilitaten und in Zukunft auf das Net Framework zu portieren sowie auf Moar eine ausschliesslich auf Rakudo ausgerichtete VM Seit dem 29 Juli 2010 erscheint monatlich fur fruhe Nutzer eine Rakudo Distribution mit Dokumentation und Bibliotheken sowie wahlweise Parrot oder seit August 2014 Moar Benutzenswerte Bibliotheken sind gelistet 6 und werden mit zef installiert Audrey Tang leitete seit Anfang Februar 2005 die Entwicklung des alternativen Perl 6 Compilers namens Pugs in der Sprache Haskell Fur mehrere Jahre war Pugs der vollstandigste aber auch langsamste Perl 6 Compiler und ermoglichte es als erster zahlreiche Details der Sprache vorzufuhren zu testen und nachzubearbeiten Die umfangreiche und in Perl 6 geschriebene Perl 6 Testsuite entstammt dem Pugs Quellcode Neben Ablegerprojekten wie elf und viv entstanden zahlreiche weitere Interpreter Compiler und Parser Projekte mit unterschiedlichen Schwerpunkten SMOP Meta OOP runloop Niecza schneller Compiler fur NET Sprixel Perlito kompiliert u a zu im Browser ausfuhrbarem JavaScript oder Yapsi die zwar wertvolle Erkenntnisse aber wenig praktischen Nutzen brachten Einzig Rakudo Perlito und gimme5 werden heute noch fortgesetzt Letzteres ubersetzt eine maschinell lesbare Definition der Perl 6 Syntax STD genannt nach Perl 5 Jede Software die diese Regeln einhalt darf sich offiziell Perl 6 nennen Perl 6 am 25 Dezember 2015 offiziell als Version Koleda auch englisch Christmas veroffentlicht 7 ist als Schwestersprache ausgerufen ohne die Absicht Perl 5 mittelfristig zu ersetzen Da der Name Perl 6 teils als irrefuhrend betrachtet wurde hat Larry Wall den Vorschlag angenommen die alternativen Namen Raku und Raku Perl 6 einzufuhren 8 Einzelnachweise Bearbeiten github com abgerufen am 11 August 2019 github com 19 Dezember 2016 abgerufen am 10 April 2018 Larry Walls Rede auf der OSCON 2000 perl com englisch Ubersicht der initialen Perl 6 RFC Differences between Perl 5 and Raku raku org englisch Perl 6 Modules auf modules perl6 org 2 Oktober 2018 Herbert Breunung Larry Wall gibt den Rakudo Perl 6 Compiler auf MoarVM fur den produktiven Einsatz frei auf heise de vom 26 Dezember 2015 Raku Perl 6 Diwali 6 d Release Information for the Second Major Version of the Language Abgerufen am 7 November 2018 englisch Abgerufen von https de wikipedia org w index php title Raku Programmiersprache amp oldid 223379127