Schrift
[thread]12901[/thread]

Schon jetzt an Perl 6 denken (Seite 2)

Leser: 13


<< |< 1 2 3 4 5 >| >> 42 Einträge, 5 Seiten
lichtkind
 2008-12-13 13:51
#117159 #117159
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
ja for im void context heisst jetzt in p6 loop
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
murphy
 2008-12-13 17:11
#117170 #117170
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
moritz+2008-12-13 10:52:23--
[...]
Wie kommst du auf die Idee, dass Perl 6 kein vernünftiges Makro-System habe?


Nun, Perl6 hat zwar ein Makrosystem, bei einer Sprache mit Operatoren und komplexer Syntax ist es aber fast unmöglich, das vollständig hygienisch und nicht-intrusiv zu gestalten. Ich denke zwar, dass das neue auf Patterns basierende Makrosystem von Perl 6 gegenüber Quellcodefiltern in Perl 5 eine riesige Verbesserung darstellt, es ist aber meiner Meinung nach von hygienischen Makrosystemen wie man sie vor allem in modernen Schemeimplementationen findet, noch weit entfernt.

Quote
Und hat Lisp Junctions,


In der Regel nicht eingebaut. Mit CLOS und / oder Makros ist sowas aber in wenigen Zeilen Code implementierbar. Genauso einfach, wie man bei Bedarf zwischen eager und lazy evaluation wechseln kann oder ähnliches.

Um hier auch gleich auf eine andere Frage in diesem Thread zu antworten: Diese große Flexibilität und erweiterte Ausdrucksmöglichkeiten sind genau der Grund, warum ein Makrosystem für jede Sprache, ob nun kompiliert oder interpretiert, praktisch ist. Ich finde, es geht beim Design einer Programmiersprache nicht darum, möglichst viele coole Features einzubauen, sondern vielmehr darum, die Sprache so zu gestalten, dass sie eine ausreichende Abstraktionsebene aufweist, um auch nachträglich ohne großen Aufwand von jedem Programmierer individuell durch Features erweitert werden zu können, die sie oder er persönlich für cool hält, unabhängig davon, was der Sprachdesigner sich so vorgestellt hat.

Quote
eingebaute Grammatiken,


Das Makrosystem kann man als eingebauten Grammatikprozessor sehen. Diverse Lispimplementationen kommen darüber hinaus mit Bibliotheken zum generieren spezieller Parser daher. In Kombination ist das ziemlich mächtig.

Ich gebe allerdings gerne zu, dass mir die Syntax und Handhabung der Patterns bei Perl 6 recht gut gefällt.

Quote
Kontextsensitivität und


Ich bin nicht sicher, was Du hier meinst. Wenn es Dir um Konstrukte wie den "intelligenten" Matchoperator geht, so bin ich mir noch nicht so ganz sicher, ob ich den nicht eher gefährlich unberechenbar finde, solange er keine echte KI eingebaut hat ;-)

Quote
Unicode-Support auf Grapheme-Level?


Sowas haben doch heute die meisten Programmiersprachenimplementationen, im Zweifelsfall in irgendeiner Bibliothek.

Quote
(Meistens wenn ich Leute über Perl 6 lästern sehe, habe ich den Eindruck, dass sie ziemlich schlecht informiert sind).


Erstens habe ich nicht behauptet, besonders gut über Perl 6 Bescheid zu wissen, sondern lediglich einen allgemeinen Eindruck geschildert, der sich nichtmal ausschließlich auf Perl 6 bezog, sondern mehr meine allgemeine Verwunderung über teilweise wenig Innovation im Programmiersprachensektor zum Ausdruck brachte. Außerdem hatte ich meine Bemerkung ja mit einem Augenzwinkern versehen um kenntlich zu machen, dass ich die Kritik nicht tierisch ernst meine, sondern absichtlich überspitzt formuliert habe.

Zweitens kann ich wohl guten Gewissens umgekehrt behaupten, dass die meisten Leute die über Lisp oder Scheme lästern wohl auch noch nie eine moderne Implementation dieser Sprachen zu Gesicht bekommen haben [1]. In vielen Fällen regt man sich sogar nur über die Syntax auf, die aber meiner Meinung nach mehr eine Gewöhnungsfrage ist und bisweilen ihre Vorteile hat.

Und drittens wollte ich wirklich nicht im negativen Sinne lästern. Ich wäre wohl kaum auf einem Perlforum aktiv, wenn ich Perl total unmöglich fände. Ich bin immer hin- und hergerissen zwischen praktischen Features und Eleganz in verschiedenen Programmiersprachen. Eigentlich will ich beides haben, aber es erweist sich als schwierig, eine Sprache zu finden, die diese Kriterien optimal vereinigt. Deshalb verwende ich auch nicht immer ausschließlich eine einzige Sprache und ich bin etwas zurückhaltend was meine Begeisterung für neue Alternativen angeht ;-)


[1] falls jemand eine sehen will, empfehle ich persönlich PLT Scheme.
When C++ is your hammer, every problem looks like your thumb.
lichtkind
 2008-12-13 17:24
#117174 #117174
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
ich denke in perl 6 gehts aber genau darum. und sag mir bitte was an den p6 macros unelegant ist. sie sind einfach wie eine sub zu schreiben und die operatoren sind ja selber alles makros, da perl 6 wirklich sehr kleinen kern hat und sehr vieles was als syntax verkauft wird nur bei init in diesem sich selbst verändernden parser gepumpt wird. schau dir mal den neusten vortrag von larry bei google tech talks an und du wirst sehen das es grad um diese mächtigkeit geht. der p6 parser operiert mit einer p6 grammar die ganz normal zur laufzeit (während des parsens) erweitert und überladen werden kann.
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
murphy
 2008-12-13 17:41
#117177 #117177
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
@lichtkind: Ich befürchte, dass bei Perl 6 die Interaktion zwischen Kerngrammatik und Makrosystem ziemlich schnell ziemlich kompliziert werden kann, da ich schon allgemein den Eindruck hatte, dass die Basissyntax von Perl 6 schrecklich kompliziert ist und es für nicht trivial halte, Makros zu erstellen, die damit kompatibel sind. Dieser Eindruck mag sich aber ändern, sobald ich mal ernsthaft mit der Sprache arbeite und mich daran gewöhne – es geht mir da wahrscheinlich so wie den Lispneuligen mit den Klammern ;-)

Zum anderen habe ich bei meiner letzten Lektüre der Synopsen, was zugegeben schon ein paar Monate her ist, nicht gesehen, dass irgendeine Form von syntaktischer Hygiene für das Makrosystem geplant wäre [1]. Wenn das stimmt, so ist es ein ziemlicher Nachteil.

Den Vortrag werde ich mir jedenfalls demnächst mal ansehen.


[1] Für eine Erklärung des Begriffs der syntaktischen Hygiene, siehe zum Beispiel http://en.wikipedia.org/wiki/Hygienic_macro
When C++ is your hammer, every problem looks like your thumb.
LanX-
 2008-12-13 17:54
#117179 #117179
User since
2008-07-15
1000 Artikel
BenutzerIn

user image
Du Herbert, Murphy hat nirgendwo unelegant gesagt, sondern "mächtig" und perl6 zudem gelobt!

Außerdem liefert er die Antwort gleich mit, perl investiert zuviel in Syntax und Operatoren um mit den minimalistischen Lisp Implementationen mitskalieren zu können.

Naja, wenn hier jemand ne Sprache braucht die die ganze Community für erhaben über Kritik hält, der möge zu Python wechseln und selig wegdämmern! *fg*

AFAIK ist der schwartze Randal momentan masivst in Lisp unterwegs...
lichtkind
 2008-12-13 19:17
#117195 #117195
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
vor allem wegen seaside.

ja ich hab gesehen das er lobte, aber auch wenn er mächtig sagte. perl 6 hat genau die gleichen features auf der basis. das da schon eine menge syntax mitkommt quasi konventionen halt ich eher für ne stärke. mein hauptpunkt war das perl 6 genau die vereinigung aus mächtigkeit und praktischem syntax die er sich wünscht.
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
LanX-
 2008-12-13 19:21
#117196 #117196
User since
2008-07-15
1000 Artikel
BenutzerIn

user image
lichtkind+2008-12-13 18:17:32--
ja ich hab fesehen das er lobte aber halt auch wenn er mächtig sagte. perl 6 hat genau die gleichen features auf der basis. das da schon eine menge syntax kitkommt quasi konventionen halt ich eher für ne stärke. mein hauptpunkt war das pwel 6 genau die vereinigung aus mätigkeit und praktischem syntax die er sich wünscht.

QED: die Tastatur vom Akoya ist doch zu klein ; )
lichtkind
 2008-12-13 19:36
#117199 #117199
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
so jetzt besser? ich kann halb im halbschlaf tippen :)

der akoya ist oben und schläft, zuhause benutze ich nur rechner mit echten hackertastaturen
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
LanX-
 2008-12-13 19:51
#117200 #117200
User since
2008-07-15
1000 Artikel
BenutzerIn

user image
lichtkind+2008-12-13 18:36:51--
[url="]hackertastaturen[/url]


Die URL fehlt, du halbes Sandmännchen! 8 )
lichtkind
 2008-12-13 20:06
#117202 #117202
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
die war drin keine ahung wo sie blieb,
hier nochmal

http://en.wikipedia.org/wiki/Image:ModelM.jpg
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
<< |< 1 2 3 4 5 >| >> 42 Einträge, 5 Seiten



View all threads created 2008-12-12 20:52.