[Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5?
Roland Giersig
rgiersig at cpan.org
Wed Apr 30 03:02:52 PDT 2008
Oder das alles nur per SQL abhandeln, mit DBI und einer in-memory SQLite
DB im Hintergrund.
Der Punkt ist: für wen sind diese Syntax-Überlegungen? Für einen
Maintainer, der mehr SQL als Perl versteht? Dem tust du keinen Gefallen,
wenn du ihm SQL-ishe Perl-Syntax bietest, die dann doch nicht genau SQL
ist. Da bist du besser dran, wenn du ihm einen Vereinfachungs-Wrapper um
DBI schreibst, sodass die Operationen echtes SQL sind.
Nur meine 0.02 €
Roland
Robert Barta wrote:
> On Wed, Apr 30, 2008 at 08:20:23AM +0200, Thomas Klausner wrote:
>>> auf in-memory Objekte, relational DBs, XML structures, und - das
>>> interessiert mich hier hauptsaechlich - auf Topic Map und RDF KBs
>>> zugreifen kann. LINQ ist nun Teil von C# (das langsam Perl6 immer
>>> aehnlicher wird, naja langsam).
>> Naja, in Perl ist dieser Zugriffsmechanismus halt map, grep, each, etc,
>> mit dem man auf in-memory Objekte, DBs, XML, ... zugreift.
>
> D.h., ich koennte das 1) einmal sehr Perl-ish angehen und etwas an
>
> Tie::Array
>
> binden. Oder ...
>
>> In deinem konkreten Fall:
>>
>>> my @students = ....;
>>> my @cleverlies = from $s in @students
>>> where $s->{marks} > 85
>>> select $s->{matrikelnr};
>> koenntest du schon eine sub from { } machen, die die Parameterliste
>> durchgeht, andere "keywords" wie 'where' und 'select' identifziert,
>
> .... 2) 'from' in the namespace laden, oder ....
>
>> From: Stefan Weiss <spaceman at foo.at>
>
>> Um deinen Sourcecode so umzuschreiben, dass nachher Perl rauskommt,
>> schau dir mal die Source Filter in "perldoc perlfilter" an, oder das
>> Modul Filter::Simple.
>
> .... 3) ein Praeprozessor einschieben.
>
> Klingt alles gangbar. Ich haette auch nicht notfalls vor
>
> @collection = new LINQ::TM ('from ...');
>
> zurueckgeschreckt.
>
> <loud-thinking>
> 3) Bei preprocessors habe ich immer das Problem, dass sie nicht
> leicht immer miteinander kombinierbar sind.
>
> 2) mit dem 'from' als Routine muss man analysieren, ob die Parameterliste
> mit der Syntax, die ich erreichen will, halbwegs kompatibel ist. Bei
>
> $s->{marks} > 85
>
> hab ich schon das Problem, dass Perl das fuer mich auswerten will, bevor
> 'from' zum Zug kommt.
>
> 1) Tie::Array ist halt SEHR perl-ish. Not bad per se, aber nicht Sinn der
> Uebung hier.
>
> </loud-thinking>
>
> \rho
>
> _______________________________________________
> Vienna-pm mailing list
> Vienna-pm at pm.org
> http://mail.pm.org/mailman/listinfo/vienna-pm
>
More information about the Vienna-pm
mailing list