[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