From alfie at ist.org Tue Apr 1 07:49:25 2008 From: alfie at ist.org (Gerfried Fuchs) Date: Tue, 01 Apr 2008 16:49:25 +0200 Subject: [Vienna-pm] TechSocialMeet am 7.4. 2008 In-Reply-To: <47F08967.8040902@uibk.ac.at> References: <20080328083630.GB24852@d610.chello.at> <47F08967.8040902@uibk.ac.at> Message-ID: <1207061365.30454.0.camel@edna.deb.at> Am Montag, den 31.03.2008, 08:49 +0200 schrieb Michael Kr?ll: > Bitte ein kurzes Mail an die Liste wer kommt, damit wir ungef?hr wissen, > wieviel Platz in der Ambulanz reserviert werden sollte. Habe vor zu kommen. Rhonda From dada at perl.it Tue Apr 1 07:58:57 2008 From: dada at perl.it (Aldo Calpini) Date: Tue, 01 Apr 2008 16:58:57 +0200 Subject: [Vienna-pm] TechSocialMeet am 7.4. 2008 In-Reply-To: <47F08967.8040902@uibk.ac.at> References: <20080328083630.GB24852@d610.chello.at> <47F08967.8040902@uibk.ac.at> Message-ID: <47F24DB1.9090408@perl.it> Michael Kr?ll wrote: > Bitte ein kurzes Mail an die Liste wer kommt, damit wir ungef?hr wissen, > wieviel Platz in der Ambulanz reserviert werden sollte. > I'll be there, and I will also be giving a talk: "Thank you for smoking!". if there's enough time, I could also prepare a short demonstration of using Parallel::ForkManager for painless multitasking. cheers, Aldo From domm at cpan.org Tue Apr 1 10:00:22 2008 From: domm at cpan.org (Thomas Klausner) Date: Tue, 1 Apr 2008 19:00:22 +0200 Subject: [Vienna-pm] TechSocialMeet am 7.4. 2008 In-Reply-To: <47F24DB1.9090408@perl.it> References: <20080328083630.GB24852@d610.chello.at> <47F08967.8040902@uibk.ac.at> <47F24DB1.9090408@perl.it> Message-ID: <20080401170022.GA10015@d610.chello.at> Hi! On Tue, Apr 01, 2008 at 04:58:57PM +0200, Aldo Calpini wrote: > Michael Kr?ll wrote: > > Bitte ein kurzes Mail an die Liste wer kommt, damit wir ungef?hr wissen, > > wieviel Platz in der Ambulanz reserviert werden sollte. > > > > I'll be there, and I will also be giving a talk: "Thank you for > smoking!". if there's enough time, I could also prepare a short Interesting! (I assume it's about smoke testing?) Hm, too bad I cannot come... Anyway, I've added your talk to http://vienna.pm.org/treffen.html -- #!/usr/bin/perl http://domm.plix.at for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/} From jozef at kutej.net Wed Apr 2 01:23:53 2008 From: jozef at kutej.net (Jozef Kutej) Date: Wed, 02 Apr 2008 10:23:53 +0200 Subject: [Vienna-pm] TechSocialMeet am 7.4. 2008 In-Reply-To: <47F08967.8040902@uibk.ac.at> References: <20080328083630.GB24852@d610.chello.at> <47F08967.8040902@uibk.ac.at> Message-ID: <47F34299.2090903@kutej.net> Michael Kr?ll wrote: > Thomas Klausner wrote: >> Nachher geht's wieder in die Stigl Bier Ambulanz (wobei ich keinen Tisch >> reservieren kann, weil ich nicht in Wien bin - entweder jemand anderer >> macht das, oder wir riskieren wieder unser Glueck) > > Bitte ein kurzes Mail an die Liste wer kommt, damit wir ungef?hr wissen, > wieviel Platz in der Ambulanz reserviert werden sollte. > *anmeld* + 3 Jozef. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20080402/cda0dd88/attachment.bin From domm at cpan.org Wed Apr 2 01:25:41 2008 From: domm at cpan.org (Thomas Klausner) Date: Wed, 2 Apr 2008 10:25:41 +0200 Subject: [Vienna-pm] TechSocialMeet am 7.4. 2008 In-Reply-To: <47F34299.2090903@kutej.net> References: <20080328083630.GB24852@d610.chello.at> <47F08967.8040902@uibk.ac.at> <47F34299.2090903@kutej.net> Message-ID: <20080402082541.GG10015@d610.chello.at> Hi! On Wed, Apr 02, 2008 at 10:23:53AM +0200, Jozef Kutej wrote: > *anmeld* + 3 So shall we rename the meeting to Vienna.pm + Bratislava.pm TechSocialMeet :-) -- #!/usr/bin/perl http://domm.plix.at for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/} From jozef at kutej.net Wed Apr 2 01:36:54 2008 From: jozef at kutej.net (Jozef Kutej) Date: Wed, 02 Apr 2008 10:36:54 +0200 Subject: [Vienna-pm] TechSocialMeet am 7.4. 2008 In-Reply-To: <20080402082541.GG10015@d610.chello.at> References: <20080328083630.GB24852@d610.chello.at> <47F08967.8040902@uibk.ac.at> <47F34299.2090903@kutej.net> <20080402082541.GG10015@d610.chello.at> Message-ID: <47F345A6.9090709@kutej.net> Thomas Klausner wrote: > Hi! > > On Wed, Apr 02, 2008 at 10:23:53AM +0200, Jozef Kutej wrote: > >> *anmeld* + 3 > > So shall we rename the meeting to > Vienna.pm + Bratislava.pm TechSocialMeet > :) great! Until now I'm failing to find a room for meetings in Bratislava. When asked for it, the reply was that - you are so few that you can sit in a pub by the computer. ;) Quite funny "no" answer. Jozef. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20080402/de0dd996/attachment.bin From kh at dartbase.com Wed Apr 2 03:53:13 2008 From: kh at dartbase.com (Karlheinz) Date: Wed, 02 Apr 2008 12:53:13 +0200 Subject: [Vienna-pm] TechSocialMeet am 7.4. 2008 In-Reply-To: <20080402082541.GG10015@d610.chello.at> References: <20080328083630.GB24852@d610.chello.at> <47F08967.8040902@uibk.ac.at> <47F34299.2090903@kutej.net> <20080402082541.GG10015@d610.chello.at> Message-ID: <47F36599.20401@dartbase.com> Thomas Klausner wrote: > So shall we rename the meeting to > Vienna.pm + Bratislava.pm TechSocialMeet TwinCity.pm? lg kh > > :-) > From michael.kroell at uibk.ac.at Wed Apr 2 04:02:24 2008 From: michael.kroell at uibk.ac.at (=?ISO-8859-1?Q?Michael_Kr=F6ll?=) Date: Wed, 02 Apr 2008 13:02:24 +0200 Subject: [Vienna-pm] TechSocialMeet am 7.4. 2008 In-Reply-To: <47F36599.20401@dartbase.com> References: <20080328083630.GB24852@d610.chello.at> <47F08967.8040902@uibk.ac.at> <47F34299.2090903@kutej.net> <20080402082541.GG10015@d610.chello.at> <47F36599.20401@dartbase.com> Message-ID: <47F367C0.5030109@uibk.ac.at> Karlheinz wrote: > Thomas Klausner wrote: >> So shall we rename the meeting to >> Vienna.pm + Bratislava.pm TechSocialMeet > > TwinCity.pm? Danube.pm ;-) -- 063A F25E B064 A98F A479 1690 78CD D023 5E2A 6688 http://zis.uibk.ac.at/.m/uibk.ac.at_pgp_pubkey.asc From dada at perl.it Wed Apr 2 08:51:25 2008 From: dada at perl.it (Aldo Calpini) Date: Wed, 02 Apr 2008 17:51:25 +0200 Subject: [Vienna-pm] TechSocialMeet am 7.4. 2008 In-Reply-To: <20080401170022.GA10015@d610.chello.at> References: <20080328083630.GB24852@d610.chello.at> <47F08967.8040902@uibk.ac.at> <47F24DB1.9090408@perl.it> <20080401170022.GA10015@d610.chello.at> Message-ID: <47F3AB7D.2070207@perl.it> Thomas Klausner wrote: > Interesting! (I assume it's about smoke testing?) > ach Teufel! du hast die ?berraschung zerst?rt! :-) yes, it is about smoke testing of course, but it's just a short talk, no earth-shaking revelation. you probably already knows more than me about it :-) I will post the slides after monday, anyway. cheers, Aldo From domm at cpan.org Wed Apr 2 13:37:03 2008 From: domm at cpan.org (Thomas Klausner) Date: Wed, 2 Apr 2008 22:37:03 +0200 Subject: [Vienna-pm] TodoTracker - get money for fixing TODO tests Message-ID: <20080402203703.GE10015@d610.chello.at> Hi! It took a bit (ok, a lot) longer than planned, but Vienna.pm [0] is proud to annouce the first working prototype of the Management System for TODO Test Bounties (aka Todo Tracker) as part of the Vienna.pm Winter^WSpring of Code [1]: http://todo.useperl.at> If you're a maintainer of a Perl project and have something that needs doing head to the the Todo Tracker and enter a TODO test for your project. Vienna.pm will review all submitted Todo tests. Accepted Todos will be published so that people willing to implement the features / fix the bugs can apply to do them. Providing the project maintainers agree, the implementor gets some time to do his/her work and will hopefully come back with a result that fulfils the test stated with the project. When this is done and the project maintainers verify that their Todo is fixed, Vienna.pm pays the specified amount into the implementor's bank account. The TODO Tracker was implemented by Matt S Trout, who donated the ?1,000 earmarked for the development back into the TODO Budget for Catalyst and DBIC related projects. It is still a bit work in progress, but we want to go ahead before this turns into a Summer of Code... Vienna.pm plans to spend up to ?4,000, plus ?1,000 more for Catalyst / DBIx::Class projects. We would again like to thank all Sponsors and Attendees of YAPC::Europe 2007 [2] who made this project possible by making the YAPC such a big success. You can find more information on how this project works in our wiki [3]. If you have any questions, suggestions or bug-reports, please send them to todo-tracker at rt.useperl.at, where a friendly RT will record them. 0: http://vienna.pm.org/ 1: http://woc.useperl.at/ 2: http://vienna.yapceurope.org/ye2007/sponsors.html 3: http://socialtext.useperl.at/vienna-pm/index.cgi?todo_tracker -- #!/usr/bin/perl http://domm.plix.at for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/} From hjp-vienna-pm-list at hjp.at Fri Apr 4 08:14:28 2008 From: hjp-vienna-pm-list at hjp.at (Peter J. Holzer) Date: Fri, 4 Apr 2008 17:14:28 +0200 Subject: [Vienna-pm] TechSocialMeet am 7.4. 2008 In-Reply-To: <47F08967.8040902@uibk.ac.at> References: <20080328083630.GB24852@d610.chello.at> <47F08967.8040902@uibk.ac.at> Message-ID: <20080404151428.GA22079@hjp.at> On 2008-03-31 08:49:11 +0200, Michael Kr?ll wrote: > Bitte ein kurzes Mail an die Liste wer kommt, damit wir ungef?hr wissen, > wieviel Platz in der Ambulanz reserviert werden sollte. $self->add() hp -- _ | Peter J. Holzer | It took a genius to create [TeX], |_|_) | Sysadmin WSR | and it takes a genius to maintain it. | | | hjp at hjp.at | That's not engineering, that's art. __/ | http://www.hjp.at/ | -- David Kastrup in comp.text.tex -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20080404/ae975439/attachment.bin From michael.kroell at uibk.ac.at Sun Apr 6 07:32:43 2008 From: michael.kroell at uibk.ac.at (=?ISO-8859-1?Q?Michael_Kr=F6ll?=) Date: Sun, 06 Apr 2008 16:32:43 +0200 Subject: [Vienna-pm] Erinnerung: Vienna.pm Tech+Social Meet morgen Montag Message-ID: <47F8DF0B.9050107@uibk.ac.at> Hi, Zur Erinnerung: Morgen gibt's wieder ein Vienna.pm TechSocialMeeting. Tech-Teil im NIG ab 19:00 * Jozef: Packaging Perl modules for Debian * Aldo: Thank you for smoking! (vielleicht auch: "Parallel::ForkManager for painless multitasking" Laut Stiegl-Ambulanz is Montags eine Reservierung f?r ~12 Personen nicht notwendig - da wir daf?r auch bis 20:00 dort sein m?ssten, hab' ichs auch gleich gelassen... lg, michael -- 063A F25E B064 A98F A479 1690 78CD D023 5E2A 6688 http://zis.uibk.ac.at/.m/uibk.ac.at_pgp_pubkey.asc From jozef at kutej.net Mon Apr 7 00:50:47 2008 From: jozef at kutej.net (Jozef Kutej) Date: Mon, 07 Apr 2008 09:50:47 +0200 Subject: [Vienna-pm] Erinnerung: Vienna.pm Tech+Social Meet morgen Montag In-Reply-To: <47F8DF0B.9050107@uibk.ac.at> References: <47F8DF0B.9050107@uibk.ac.at> Message-ID: <47F9D257.2090102@kutej.net> Michael Kr?ll wrote: > Hi, > > Zur Erinnerung: Morgen gibt's wieder ein Vienna.pm TechSocialMeeting. > > Tech-Teil im NIG ab 19:00 > > * Jozef: Packaging Perl modules for Debian > * Aldo: Thank you for smoking! (vielleicht auch: "Parallel::ForkManager > for painless multitasking" > Emmanuel: GTK2 Emmanuel prepared a slides about using GTK2 in Perl. Have a nice day, Jozef. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20080407/d005e998/attachment.bin From dada at perl.it Tue Apr 8 05:44:07 2008 From: dada at perl.it (Aldo Calpini) Date: Tue, 08 Apr 2008 14:44:07 +0200 Subject: [Vienna-pm] TechSocialMeet am 7.4. 2008 In-Reply-To: <47F3AB7D.2070207@perl.it> References: <20080328083630.GB24852@d610.chello.at> <47F08967.8040902@uibk.ac.at> <47F24DB1.9090408@perl.it> <20080401170022.GA10015@d610.chello.at> <47F3AB7D.2070207@perl.it> Message-ID: <47FB6897.5030406@perl.it> Aldo Calpini wrote: > yes, it is about smoke testing of course, but it's just a short talk, no > earth-shaking revelation. you probably already knows more than me about > it :-) I will post the slides after monday, anyway. > and here we go: http://dada.perl.it/talks/TYFS.pdf cheers, Aldo From emmanuel.rodriguez at gmail.com Wed Apr 9 00:36:19 2008 From: emmanuel.rodriguez at gmail.com (Emmanuel Rodriguez) Date: Wed, 9 Apr 2008 09:36:19 +0200 Subject: [Vienna-pm] Presentation slides and sample code Message-ID: I have uploaded my presentation slides about GTK2 and the sample code into the Bratislava PM web site (http://bratislava.pm.org/events.html). I took the liberty to add some extra comments, so please feel free to play with the sample code. Emozilla needs a lot of 'love'. During the presentation I was asked about a good GTK book, I've seen very good reviews for "Foundations of GTK+ Development" (http://www.gtkbook.com/). It's about using GTK in C but the same principles can be applied to Perl code. -- Emmanuel Rodriguez From jozef at kutej.net Thu Apr 10 00:40:39 2008 From: jozef at kutej.net (Jozef Kutej) Date: Thu, 10 Apr 2008 09:40:39 +0200 Subject: [Vienna-pm] Presentation slides - pm2deb Message-ID: <47FDC477.9080303@kutej.net> Hi, you can find my mondays presentation here: http://bratislava.pm.org/presentation/pm2deb.html I have removed the "wallpapers" from the beginning. It was unprofessional and stupid from me. My apologies. Initially I have created the slides for Salzbur operation guys and the reason for the wallpapers was to wake them up after a long internal project and catalyst talk. Thanks go to Rhonda for the support during the talk and the critique afterwards. Have a nice day, Jozef. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20080410/d74399c4/attachment.bin From andrea at pavlovic.at Thu Apr 10 12:20:43 2008 From: andrea at pavlovic.at (Andrea Pavlovic) Date: Thu, 10 Apr 2008 21:20:43 +0200 Subject: [Vienna-pm] Emergency! Message-ID: <47FE688B.7010903@pavlovic.at> Hallo, as it seems that we'll have not one, not two, but three non-Donauraum.pm people to entertain next week I propose that we meet for an Emergency Social on Wednesday, 16.4. 19:00 at the Tin-Tan (Florianigasse 1). Tara Andrews, Yuval Kogman and Nicholas Clark: hope to see you there too! ;-) Liebe Gr??e, Andrea From domm at cpan.org Thu Apr 10 12:23:23 2008 From: domm at cpan.org (Thomas Klausner) Date: Thu, 10 Apr 2008 21:23:23 +0200 Subject: [Vienna-pm] Emergency! In-Reply-To: <47FE688B.7010903@pavlovic.at> References: <47FE688B.7010903@pavlovic.at> Message-ID: <20080410192322.GA18070@d610.chello.at> Hi! On Thu, Apr 10, 2008 at 09:20:43PM +0200, Andrea Pavlovic wrote: > as it seems that we'll have not one, not two, but three non-Donauraum.pm > people to entertain next week I propose that we meet for an Emergency > Social on > > Wednesday, 16.4. 19:00 at the Tin-Tan (Florianigasse 1). vielleicht waere eine kleine Anmledung zwecks reservierung kein fehler... Insoferne: ich komm! > Tara Andrews, Yuval Kogman and Nicholas Clark woot! -- #!/usr/bin/perl http://domm.plix.at for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/} From dada at perl.it Thu Apr 10 13:06:19 2008 From: dada at perl.it (Aldo Calpini) Date: Thu, 10 Apr 2008 22:06:19 +0200 Subject: [Vienna-pm] Emergency! In-Reply-To: <47FE688B.7010903@pavlovic.at> References: <47FE688B.7010903@pavlovic.at> Message-ID: <47FE733B.2080008@perl.it> Andrea Pavlovic wrote: > Wednesday, 16.4. 19:00 at the Tin-Tan (Florianigasse 1). > Ich werde da sein! cheers, Aldo From michael.kroell at uibk.ac.at Thu Apr 10 14:49:51 2008 From: michael.kroell at uibk.ac.at (=?ISO-8859-1?Q?Michael_Kr=F6ll?=) Date: Thu, 10 Apr 2008 23:49:51 +0200 Subject: [Vienna-pm] Emergency! In-Reply-To: <47FE688B.7010903@pavlovic.at> References: <47FE688B.7010903@pavlovic.at> Message-ID: <47FE8B7F.9000101@uibk.ac.at> Andrea Pavlovic wrote: > Wednesday, 16.4. 19:00 at the Tin-Tan (Florianigasse 1). Werde auch da sein :-) lg, michael -- 063A F25E B064 A98F A479 1690 78CD D023 5E2A 6688 http://zis.uibk.ac.at/.m/uibk.ac.at_pgp_pubkey.asc From domm at cpan.org Thu Apr 10 23:55:14 2008 From: domm at cpan.org (Thomas Klausner) Date: Fri, 11 Apr 2008 08:55:14 +0200 Subject: [Vienna-pm] Vienna.pm @ Linuxwochen Message-ID: <20080411065514.GB31054@false> Hi! Von 15. bis 17. Mai sind wiedermal Linuxwochen in Wien. http://www.linuxwochen.at/2008 Wollen wir dort einen Stand machen (wenn's fuer die Anmledung nicht schon zu spaet ist)? Waere nett, aber wer haette Zeit und Lust, so einen Stand zu betreuen? Sprich: Rumsitzten, Plaudern, ev Fragen beantworten, ev halt hacken? Wir koennten ev auch irgendwas Workshop-Artiges machen. Und darueberhinaus suchen sie auch Vortraege (die allerdings eher Linux- als Entwicklungs-zentriert sein sollten). -- #!/usr/bin/perl http://domm.plix.at for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/} From bernd at firmix.at Fri Apr 11 01:10:59 2008 From: bernd at firmix.at (Bernd Petrovitsch) Date: Fri, 11 Apr 2008 10:10:59 +0200 Subject: [Vienna-pm] Vienna.pm @ Linuxwochen In-Reply-To: <20080411065514.GB31054@false> References: <20080411065514.GB31054@false> Message-ID: <1207901459.1857.7.camel@tara.firmix.at> On Fre, 2008-04-11 at 08:55 +0200, Thomas Klausner wrote: [...] > Und darueberhinaus suchen sie auch Vortraege (die allerdings eher Linux- > als Entwicklungs-zentriert sein sollten). Nicht da? ich in der diesj?hrigen Organisation tiefer involviert w?re, aber es sind dort alle freie Software/Open-Source/... und sich dazuz?hlende Bereiche gefragt. Das "Linux" in den "Linuxwochen"[0] kommt daher, da? es in der Nicht-Techie-und-Open-Source-Welt (mi?)verstanden wird. Insofern ist das "Linux" in "Linuxwochen" als das Buzzword "Linux" zu verstehen (und nicht etwa als Abk. f?r "Linux-Kernel"), da? wir alle so ha^Wlieben;-) Kurz: Ich seh' mit perl-Themen (mbMn auch nicht wirklich mit z.B. "Perl auf Win*") dort kein inhaltliches Problem. Bernd [0]: "Damals" ist nichts besseres/passenderes (mit Breitenwirksamkeit) aufgekommen. Zumindest "Gnuwochen" h?tten u.U. auch ganz was falsches suggeriert;-) -- Firmix Software GmbH http://www.firmix.at/ mobil: +43 664 4416156 fax: +43 1 7890849-55 Embedded Linux Development and Services From mailinglisten at renee-baecker.de Fri Apr 11 01:23:48 2008 From: mailinglisten at renee-baecker.de (mailinglisten at renee-baecker.de) Date: Fri, 11 Apr 2008 10:23:48 +0200 (CEST) Subject: [Vienna-pm] Vienna.pm @ Linuxwochen Message-ID: <20080411082348.69051AC08E@zh02.zagler.net> Ich w?rde auch wieder 20-30 Hefte von $foo zur Verf?gung stellen - falls gew?nscht (und mir rechtzeitig Bescheid gegeben wird) ;-) Gru?, Ren?e --- $foo - Perl-Magazin -> http://www.foo-magazin.de YAPC::Europe 2008 vom 13.-15. August in Kopenhagen -> http://www.yapceurope2008.org From domm at cpan.org Sat Apr 19 00:14:15 2008 From: domm at cpan.org (Thomas Klausner) Date: Sat, 19 Apr 2008 09:14:15 +0200 Subject: [Vienna-pm] TechSocialMeet am 5.5.2008 Message-ID: <20080419071415.GA9200@d610.chello.at> Hi! Das naechste monatliche Meeting findet am 5.5., 19:00 statt. (Gerhard, kannst du den Raum bitte wieder reservieren?) Ich werde ?ber den Perl QA Hackathon in Oslo berichten (je nach Programmdichte 5-20 Minuten). Ausserdem hab ich noch den Talk 'die Perl, die!', den ich am Dutch Perlworkshop bereits gehalten habe, in petto. Dauer 30-40 Min. Aber wenn jemand anderer auch was zum Vortragen hat, kann ich den Talk auch fuers uebernaechste Mal aufheben... Also, hat sonst noch jemand Vortrags-Ideen? Und was haltet ihr davon, nachher mal woanders als in die Stigl Ambulanz zu gehen. Dort bin ich naemlich schon die Speisekarte durch :-) Sehr nett ist der Wiener Deewan (http://www.deewan.at/), aber vielleicht ein bissl klein, und "nur" bis 23:00 offen. Sonst irgendwelche Ideen? Oder sind eh all mit der Ambulanz zufrieden? -- #!/usr/bin/perl http://domm.plix.at for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/} From hjp-vienna-pm-list at hjp.at Sun Apr 20 00:59:11 2008 From: hjp-vienna-pm-list at hjp.at (Peter J. Holzer) Date: Sun, 20 Apr 2008 09:59:11 +0200 Subject: [Vienna-pm] Defensive Programmierung Message-ID: <20080420075911.GC12918@hjp.at> use Net::DNS; [...] main::check_a(check.pl:67): if ($ans->type eq 'A') { DB<1> main::check_a(check.pl:68): push @addrs, $ans->ptrdaddr; DB<1> *** *** WARNING!!! The program has attempted to call the method *** "ptrdaddr" for the following RR object: *** *** hrunkner.hjp.at. 86400 IN A 81.223.91.232 *** *** This object does not have a method "ptrdaddr". THIS IS A BUG *** IN THE CALLING SOFTWARE, which has incorrectly assumed that *** the object would be of a particular type. The calling *** software should check the type of each RR object before *** calling any of its methods. *** *** Net::DNS has returned undef to the caller. *** Hypsch. hp -- _ | Peter J. Holzer | It took a genius to create [TeX], |_|_) | Sysadmin WSR | and it takes a genius to maintain it. | | | hjp at hjp.at | That's not engineering, that's art. __/ | http://www.hjp.at/ | -- David Kastrup in comp.text.tex -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20080420/193d2299/attachment.bin From gr at univie.ac.at Sun Apr 20 01:01:03 2008 From: gr at univie.ac.at (=?ISO-8859-1?Q?Marcel_Gr=FCnauer?=) Date: Sun, 20 Apr 2008 10:01:03 +0200 Subject: [Vienna-pm] Defensive Programmierung In-Reply-To: <20080420075911.GC12918@hjp.at> References: <20080420075911.GC12918@hjp.at> Message-ID: On Apr 20, 2008, at 9:59 AM, Peter J. Holzer wrote: > Hypsch. Klingt nach krocha-speak. :) Marcel From hjp-vienna-pm-list at hjp.at Sun Apr 20 01:19:33 2008 From: hjp-vienna-pm-list at hjp.at (Peter J. Holzer) Date: Sun, 20 Apr 2008 10:19:33 +0200 Subject: [Vienna-pm] Defensive Programmierung In-Reply-To: References: <20080420075911.GC12918@hjp.at> Message-ID: <20080420081933.GD12918@hjp.at> On 2008-04-20 10:01:03 +0200, Marcel Gr?nauer wrote: > On Apr 20, 2008, at 9:59 AM, Peter J. Holzer wrote: > > Hypsch. > > Klingt nach krocha-speak. :) Google ... Wikipedia ... Aha. Danke f?r die Erweiterung meines Bildungshorizonts. Ich glaube aber, wir (Assistenten und anderes Institutsinventar am Kopetzinstitut) haben Schreibweisen wie "hypsch" und "wijl" schon verwendet, als die Krocha noch bestenfalls in den Windeln lagen. Insofern poche ich da auf ?ltere Rechte und lehne die Bezeichnung Krocha-Speak f?r unsere h?chst originellen Kreationen ab. Wir sind allerdings noch nicht ganz so alt wie diese Gegen?berstellung vermuten l?sst: http://www.youtube.com/watch?v=eqfN2NzUCNg&feature=related ;-) hp -- _ | Peter J. Holzer | It took a genius to create [TeX], |_|_) | Sysadmin WSR | and it takes a genius to maintain it. | | | hjp at hjp.at | That's not engineering, that's art. __/ | http://www.hjp.at/ | -- David Kastrup in comp.text.tex -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20080420/387df60e/attachment.bin From jozef at kutej.net Thu Apr 24 23:14:52 2008 From: jozef at kutej.net (Jozef Kutej) Date: Fri, 25 Apr 2008 08:14:52 +0200 Subject: [Vienna-pm] [Fwd: [SECURITY] [DSA 1556-1] New perl packages fix denial of service] Message-ID: <481176DC.9020107@kutej.net> Hi, consider upgrading Perl 5.8.8: http://nvd.nist.gov/nvd.cfm?cvename=CVE-2008-1927 http://rt.perl.org/rt3/Public/Bug/Display.html?id=48156 Regards, Jozef. -------- Original Message -------- Subject: [SECURITY] [DSA 1556-1] New perl packages fix denial of service Resent-Date: Thu, 24 Apr 2008 19:44:19 +0000 (UTC) Resent-From: debian-security-announce at lists.debian.org Date: Thu, 24 Apr 2008 21:44:12 +0200 From: Florian Weimer Reply-To: debian-security at lists.debian.org To: debian-security-announce at lists.debian.org ------------------------------------------------------------------------ Debian Security Advisory DSA-1556-1 security at debian.org http://www.debian.org/security/ Florian Weimer April 24, 2008 http://www.debian.org/security/faq ------------------------------------------------------------------------ Package : perl Vulnerability : heap buffer overflow Problem type : local (remote) Debian-specific: no CVE Id : CVE-2008-1927 Debian Bug : 454792 It has been discovered that the Perl interpreter may encounter a buffer overflow condition when compiling certain regular expressions containing Unicode characters. This also happens if the offending characters are contained in a variable reference protected by the \Q...\E quoting construct. When encountering this condition, the Perl interpreter typically crashes, but arbitrary code execution cannot be ruled out. For the stable distribution (etch), this problem has been fixed in version 5.8.8-7etch2. The unstable distribution (sid) will be fixed soon. We recommend that you upgrade your perl packages. Upgrade instructions -------------------- wget url will fetch the file for you dpkg -i file.deb will install the referenced file. If you are using the apt-get package manager, use the line for sources.list as given below: apt-get update will update the internal database apt-get upgrade will install corrected packages You may use an automated update by adding the resources from the footer to the proper configuration. Debian GNU/Linux 4.0 alias etch ------------------------------- Source archives: http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2.dsc Size/MD5 checksum: 1033 a76db5d6c1c52e969641f262971d671b http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2.diff.gz Size/MD5 checksum: 96868 456e57f3e1d3c9ec432175496a646030 http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8.orig.tar.gz Size/MD5 checksum: 12829188 b8c118d4360846829beb30b02a6b91a7 Architecture independent packages: http://security.debian.org/pool/updates/main/p/perl/perl-modules_5.8.8-7etch2_all.deb Size/MD5 checksum: 2313432 dbbb5c3c64e2384db97b4b487610bc5e http://security.debian.org/pool/updates/main/p/perl/perl-doc_5.8.8-7etch2_all.deb Size/MD5 checksum: 7348546 ed4582d9dede3e6c429d7501c3111e72 http://security.debian.org/pool/updates/main/p/perl/libcgi-fast-perl_5.8.8-7etch2_all.deb Size/MD5 checksum: 40980 b0ff6226ffb342f1e2c8c53c32caf5b3 alpha architecture (DEC Alpha) http://security.debian.org/pool/updates/main/p/perl/perl-debug_5.8.8-7etch2_alpha.deb Size/MD5 checksum: 2928386 41db11aedf1d642eb51480cc470a8224 http://security.debian.org/pool/updates/main/p/perl/libperl5.8_5.8.8-7etch2_alpha.deb Size/MD5 checksum: 1010 b69362a76dd48c17fbaff2359ec70265 http://security.debian.org/pool/updates/main/p/perl/libperl-dev_5.8.8-7etch2_alpha.deb Size/MD5 checksum: 821430 ea7cb927f31fa3af3126b59f6d4eaa6f http://security.debian.org/pool/updates/main/p/perl/perl-suid_5.8.8-7etch2_alpha.deb Size/MD5 checksum: 36236 221645a1bfb73e770341721b33ba8b85 http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2_alpha.deb Size/MD5 checksum: 4149744 1259a2a2bd2a85bfcf64479cc85e199b http://security.debian.org/pool/updates/main/p/perl/perl-base_5.8.8-7etch2_alpha.deb Size/MD5 checksum: 879670 defb0e74374d71b16b438b874ba13a8b amd64 architecture (AMD x86_64 (AMD64)) http://security.debian.org/pool/updates/main/p/perl/perl-suid_5.8.8-7etch2_amd64.deb Size/MD5 checksum: 32800 22480b2f4bded243ae1f621f0fe59fef http://security.debian.org/pool/updates/main/p/perl/perl-base_5.8.8-7etch2_amd64.deb Size/MD5 checksum: 808850 61e1d09c98fb1fb5f12483ae9f63ab79 http://security.debian.org/pool/updates/main/p/perl/libperl-dev_5.8.8-7etch2_amd64.deb Size/MD5 checksum: 630448 81613abb6e184e1ff68f673b3b08f3bd http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2_amd64.deb Size/MD5 checksum: 4238138 f1ecc46e8ea9796aae6c7874c283c57d http://security.debian.org/pool/updates/main/p/perl/perl-debug_5.8.8-7etch2_amd64.deb Size/MD5 checksum: 2734908 3ca5eb6e7cc032d82753d33ad83b4a01 http://security.debian.org/pool/updates/main/p/perl/libperl5.8_5.8.8-7etch2_amd64.deb Size/MD5 checksum: 1010 25a444e727fd3a6d204bc6a536dfa30d arm architecture (ARM) http://security.debian.org/pool/updates/main/p/perl/perl-debug_5.8.8-7etch2_arm.deb Size/MD5 checksum: 2547782 215f4806d209971c26a9e2512ed167de http://security.debian.org/pool/updates/main/p/perl/perl-base_5.8.8-7etch2_arm.deb Size/MD5 checksum: 759522 2ccda175882dbc65cde4daa434732548 http://security.debian.org/pool/updates/main/p/perl/libperl-dev_5.8.8-7etch2_arm.deb Size/MD5 checksum: 561950 a2acd57d7f18526aed26b050231154ba http://security.debian.org/pool/updates/main/p/perl/perl-suid_5.8.8-7etch2_arm.deb Size/MD5 checksum: 30340 beae7b26e01fd5b0a4d8b5db515649f0 http://security.debian.org/pool/updates/main/p/perl/libperl5.8_5.8.8-7etch2_arm.deb Size/MD5 checksum: 1010 d1e558624e4e24aee24890df02555be5 http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2_arm.deb Size/MD5 checksum: 3409080 a4b034d2ffc6a29beda68107b2080e01 hppa architecture (HP PA RISC) http://security.debian.org/pool/updates/main/p/perl/perl-debug_5.8.8-7etch2_hppa.deb Size/MD5 checksum: 2735266 e1af1045ebc3795f553d32add1d76d64 http://security.debian.org/pool/updates/main/p/perl/perl-suid_5.8.8-7etch2_hppa.deb Size/MD5 checksum: 33196 a7514f8ff72218d50b6c79762fdd52c0 http://security.debian.org/pool/updates/main/p/perl/perl-base_5.8.8-7etch2_hppa.deb Size/MD5 checksum: 869350 f3436a83fc1201da8f603cb27f996b35 http://security.debian.org/pool/updates/main/p/perl/libperl5.8_5.8.8-7etch2_hppa.deb Size/MD5 checksum: 1014 deef1f78fc7d8c7171ec154090c62ed5 http://security.debian.org/pool/updates/main/p/perl/libperl-dev_5.8.8-7etch2_hppa.deb Size/MD5 checksum: 693972 1bbba786896bff50ceac5d58dcfc6c37 http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2_hppa.deb Size/MD5 checksum: 4195310 04541825adc3460e914bd3079174959f i386 architecture (Intel ia32) http://security.debian.org/pool/updates/main/p/perl/perl-debug_5.8.8-7etch2_i386.deb Size/MD5 checksum: 2491262 c99e05f4ae2cc54041eb0c47b9d43d14 http://security.debian.org/pool/updates/main/p/perl/libperl5.8_5.8.8-7etch2_i386.deb Size/MD5 checksum: 526958 91c2e4ff10f98219b062bc930d800bb9 http://security.debian.org/pool/updates/main/p/perl/perl-suid_5.8.8-7etch2_i386.deb Size/MD5 checksum: 32074 fa1e0caf1940a0ff8665b82a2d2f26e3 http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2_i386.deb Size/MD5 checksum: 3583758 2dbf25e51b8cf7a082f7afd04427ffdc http://security.debian.org/pool/updates/main/p/perl/libperl-dev_5.8.8-7etch2_i386.deb Size/MD5 checksum: 585400 133aee0f403d7c31abb59c32600de5c9 http://security.debian.org/pool/updates/main/p/perl/perl-base_5.8.8-7etch2_i386.deb Size/MD5 checksum: 760350 5864e59b250a597ea524357e603decbc ia64 architecture (Intel ia64) http://security.debian.org/pool/updates/main/p/perl/perl-suid_5.8.8-7etch2_ia64.deb Size/MD5 checksum: 51282 930868ee78bf728282c2c779ae0e439e http://security.debian.org/pool/updates/main/p/perl/perl-base_5.8.8-7etch2_ia64.deb Size/MD5 checksum: 1153370 04a4c670d2ba5470234cd60e16362c12 http://security.debian.org/pool/updates/main/p/perl/libperl-dev_5.8.8-7etch2_ia64.deb Size/MD5 checksum: 977470 a572348ac95a6050529871738a09eb45 http://security.debian.org/pool/updates/main/p/perl/perl-debug_5.8.8-7etch2_ia64.deb Size/MD5 checksum: 3364140 078fce96136de4f893678630237be8fa http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2_ia64.deb Size/MD5 checksum: 4335648 a96e0ee84c4024a0b49b61b7c7fb0b4b http://security.debian.org/pool/updates/main/p/perl/libperl5.8_5.8.8-7etch2_ia64.deb Size/MD5 checksum: 1014 c7f68e8b50d41aade5a7a3cdf75d4373 mips architecture (MIPS (Big Endian)) http://security.debian.org/pool/updates/main/p/perl/perl-debug_5.8.8-7etch2_mips.deb Size/MD5 checksum: 2781044 f5e48f307a9bbc84d68c7f474e5a2541 http://security.debian.org/pool/updates/main/p/perl/perl-suid_5.8.8-7etch2_mips.deb Size/MD5 checksum: 32222 1b5f5a124882606ceb2b4f5801081e7f http://security.debian.org/pool/updates/main/p/perl/libperl5.8_5.8.8-7etch2_mips.deb Size/MD5 checksum: 1010 7b177e038a86893333a0ef2951489cbb http://security.debian.org/pool/updates/main/p/perl/libperl-dev_5.8.8-7etch2_mips.deb Size/MD5 checksum: 693726 64abc926643ec3fa1dc3189948491772 http://security.debian.org/pool/updates/main/p/perl/perl-base_5.8.8-7etch2_mips.deb Size/MD5 checksum: 785736 8a67775aaba9228bc9c1b100f2f5f3d1 http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2_mips.deb Size/MD5 checksum: 3678816 6b60afdd9010bac0d2a9f353ba5d249b mipsel architecture (MIPS (Little Endian)) http://security.debian.org/pool/updates/main/p/perl/perl-base_5.8.8-7etch2_mipsel.deb Size/MD5 checksum: 784398 fd31742e635dd9c0fe468c6bfa5a0d40 http://security.debian.org/pool/updates/main/p/perl/perl-debug_5.8.8-7etch2_mipsel.deb Size/MD5 checksum: 2729530 c91ec6207992ff835d3f7eaf4e188a76 http://security.debian.org/pool/updates/main/p/perl/perl-suid_5.8.8-7etch2_mipsel.deb Size/MD5 checksum: 32336 52f9c48eaf781eb3c1356705f7ae143f http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2_mipsel.deb Size/MD5 checksum: 3413324 0fe5f12ac26b6dfb335d55db699a0cc6 http://security.debian.org/pool/updates/main/p/perl/libperl-dev_5.8.8-7etch2_mipsel.deb Size/MD5 checksum: 687108 54d8b8b5c7ab9ddd96cc1eb00174a5ba http://security.debian.org/pool/updates/main/p/perl/libperl5.8_5.8.8-7etch2_mipsel.deb Size/MD5 checksum: 1016 72acf47685af2821bcd7120c3288d16f powerpc architecture (PowerPC) http://security.debian.org/pool/updates/main/p/perl/perl-suid_5.8.8-7etch2_powerpc.deb Size/MD5 checksum: 32908 377ca57ed879c2d325dfbd2ece75d3f3 http://security.debian.org/pool/updates/main/p/perl/perl-debug_5.8.8-7etch2_powerpc.deb Size/MD5 checksum: 2709324 0f9215154a4caba359525de6b92a7a9c http://security.debian.org/pool/updates/main/p/perl/libperl-dev_5.8.8-7etch2_powerpc.deb Size/MD5 checksum: 653286 7a9fdda2a07cbcf721f2200de30cbb12 http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2_powerpc.deb Size/MD5 checksum: 3824700 23d8303bbba2cb597fa250b4caa0a565 http://security.debian.org/pool/updates/main/p/perl/libperl5.8_5.8.8-7etch2_powerpc.deb Size/MD5 checksum: 1006 644993449bbeb42ae0f145d46d422431 http://security.debian.org/pool/updates/main/p/perl/perl-base_5.8.8-7etch2_powerpc.deb Size/MD5 checksum: 810628 3082d54b4866297abf981f5bd4b45521 s390 architecture (IBM S/390) http://security.debian.org/pool/updates/main/p/perl/libperl5.8_5.8.8-7etch2_s390.deb Size/MD5 checksum: 1012 f2ddd8fcaa8cc11d8472da9719ddf757 http://security.debian.org/pool/updates/main/p/perl/perl-debug_5.8.8-7etch2_s390.deb Size/MD5 checksum: 2796222 45bb1fa51a3420a040373c3671fa0466 http://security.debian.org/pool/updates/main/p/perl/perl-base_5.8.8-7etch2_s390.deb Size/MD5 checksum: 823028 733c85331bb3327f4c8a1bec6e231091 http://security.debian.org/pool/updates/main/p/perl/perl_5.8.8-7etch2_s390.deb Size/MD5 checksum: 4099882 7e7c3d76475f2a488070d2e9538a9f3f http://security.debian.org/pool/updates/main/p/perl/perl-suid_5.8.8-7etch2_s390.deb Size/MD5 checksum: 33094 7740f1d01184c5931e943bdb0aa00185 http://security.debian.org/pool/updates/main/p/perl/libperl-dev_5.8.8-7etch2_s390.deb Size/MD5 checksum: 633506 3dd38df3fedd8f6a9d8bec505bc9f60b These files will probably be moved into the stable distribution on its next update. - --------------------------------------------------------------------------------- For apt-get: deb http://security.debian.org/ stable/updates main For dpkg-ftp: ftp://security.debian.org/debian-security dists/stable/updates/main Mailing list: debian-security-announce at lists.debian.org Package info: `apt-cache show ' and http://packages.debian.org/ -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20080425/d84bf0c4/attachment.bin From spaceman at foo.at Mon Apr 28 06:34:30 2008 From: spaceman at foo.at (Stefan Weiss) Date: Mon, 28 Apr 2008 15:34:30 +0200 Subject: [Vienna-pm] Escapen von Shellparametern Message-ID: <4815D266.5010004@foo.at> Hi. Soweit ich das gesehen habe, ist die g?ngige Meinung im Usenet und in den Messageboards, dass ein verl??liches Escapen von Parametern, die der Shell ?bergeben werden (mit system() oder Backticks o?) sehr komplex bis kaum m?glich ist. Leider ist es nicht immer (einfach) m?glich, system() mit einer Liste von Parametern zu verwenden, und das Escapen Perl zu ?berlassen. Zum Beispiel in diesem Fall: my $cmd = "faxjob --from $from --faxnum $num (usw)"; print LOG "$cmd\n"; my $result = `$cmd`; Ich m?chte die komplette Befehlszeile loggen, und STDOUT lesen. Der grausliche Umweg ?ber fork(), der in perlsec beschrieben wird, ist mir ehrlich gesagt zu umst?ndlich - noch dazu weil ich das aus einem Daemon ausf?hre und jedes weitere h?ndische fork()en vermeiden will. Ich verwende jetzt stattdessen diese Funktion, um Dinge wie $from und $num zu escapen: sub esc { local $_ = shift; s#([^\w./+-])#\\$1#g; return $_; } my $cmd = "faxjob --from " . esc($from) . " --faxnum " . esc($num) . ...; Die Shell ist in meinem Fall die Bash, auf andere Shells brauche ich keine R?cksicht zu nehmen. Jetzt frage ich lieber zur Sicherheit noch einmal nach: reicht das aus, um unangenehme ?berraschungen zu vermeiden, oder fehlt noch etwas? lg, stefan -- LOAD"Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn!",8,1 RUN! From alfie at ist.org Mon Apr 28 07:16:32 2008 From: alfie at ist.org (Gerfried Fuchs) Date: Mon, 28 Apr 2008 16:16:32 +0200 Subject: [Vienna-pm] Escapen von Shellparametern In-Reply-To: <4815D266.5010004@foo.at> References: <4815D266.5010004@foo.at> Message-ID: <1209392192.32224.105.camel@edna.deb.at> Am Montag, den 28.04.2008, 15:34 +0200 schrieb Stefan Weiss: > Soweit ich das gesehen habe, ist die g?ngige Meinung im Usenet und in > den Messageboards, dass ein verl??liches Escapen von Parametern, die der > Shell ?bergeben werden (mit system() oder Backticks o?) sehr komplex bis > kaum m?glich ist. Leider ist es nicht immer (einfach) m?glich, system() > mit einer Liste von Parametern zu verwenden, und das Escapen Perl zu > ?berlassen. > > Zum Beispiel in diesem Fall: > > my $cmd = "faxjob --from $from --faxnum $num (usw)"; > print LOG "$cmd\n"; > my $result = `$cmd`; Witzig, ich hab auch etwas mit faxen in perl geschrieben. Aber: es gibt doch genau daf?r quotemeta(): #v+ my $cmd = "faxjob --from ".quotemeta($from) ." --faxnum ".quotemeta($num) ." (usw)"; #v- > Ich verwende jetzt stattdessen diese Funktion, um Dinge wie $from und > $num zu escapen: > > sub esc { > local $_ = shift; > s#([^\w./+-])#\\$1#g; > return $_; > } Siehe oben, die Funktion genau daf?r gibt's bereits. ;) Bis dann, Rhonda From Wolfgang.Laun at thalesgroup.com Mon Apr 28 07:19:56 2008 From: Wolfgang.Laun at thalesgroup.com (Wolfgang Laun) Date: Mon, 28 Apr 2008 16:19:56 +0200 Subject: [Vienna-pm] Escapen von Shellparametern In-Reply-To: <4815D266.5010004@foo.at> References: <4815D266.5010004@foo.at> Message-ID: <4815DD0C.5080904@thalesgroup.com> Mit sub esc wie gezeigt: for my $ifrom ( 0x20..0x7e, 0xa0..0xff ){ my $from = chr( $ifrom ); my $cmd = "echo -n " . esc($from); my $res = `$cmd`; if( $from ne $res ){ print "i='$from', o='$res'\n"; } } mfgWL Stefan Weiss wrote: >Hi. > >Soweit ich das gesehen habe, ist die g?ngige Meinung im Usenet und in >den Messageboards, dass ein verl??liches Escapen von Parametern, die der >Shell ?bergeben werden (mit system() oder Backticks o?) sehr komplex bis >kaum m?glich ist. Leider ist es nicht immer (einfach) m?glich, system() >mit einer Liste von Parametern zu verwenden, und das Escapen Perl zu >?berlassen. > >Zum Beispiel in diesem Fall: > >my $cmd = "faxjob --from $from --faxnum $num (usw)"; >print LOG "$cmd\n"; >my $result = `$cmd`; > >Ich m?chte die komplette Befehlszeile loggen, und STDOUT lesen. Der >grausliche Umweg ?ber fork(), der in perlsec beschrieben wird, ist mir >ehrlich gesagt zu umst?ndlich - noch dazu weil ich das aus einem Daemon >ausf?hre und jedes weitere h?ndische fork()en vermeiden will. > >Ich verwende jetzt stattdessen diese Funktion, um Dinge wie $from und >$num zu escapen: > >sub esc { > local $_ = shift; > s#([^\w./+-])#\\$1#g; > return $_; >} > >my $cmd = "faxjob --from " . esc($from) > . " --faxnum " . esc($num) > . ...; > >Die Shell ist in meinem Fall die Bash, auf andere Shells brauche ich >keine R?cksicht zu nehmen. Jetzt frage ich lieber zur Sicherheit noch >einmal nach: reicht das aus, um unangenehme ?berraschungen zu vermeiden, >oder fehlt noch etwas? > >lg, >stefan > > > > From spaceman at foo.at Mon Apr 28 07:53:50 2008 From: spaceman at foo.at (Stefan Weiss) Date: Mon, 28 Apr 2008 16:53:50 +0200 Subject: [Vienna-pm] Escapen von Shellparametern In-Reply-To: <4815DD0C.5080904@thalesgroup.com> References: <4815D266.5010004@foo.at> <4815DD0C.5080904@thalesgroup.com> Message-ID: <4815E4FE.7050204@foo.at> On 2008-04-28 16:19, Wolfgang Laun wrote: > > Mit sub esc wie gezeigt: > > > > for my $ifrom ( 0x20..0x7e, 0xa0..0xff ){ > > my $from = chr( $ifrom ); > > my $cmd = "echo -n " . esc($from); > > my $res = `$cmd`; > > if( $from ne $res ){ > > print "i='$from', o='$res'\n"; > > } > > } Ok, das gibt auf meinem Terminal keinen Output, was wohl ein gutes Zeichen ist (wobei ich schon die anderen Zeichen unter 0x20 auch escapen m?chte, wie zB \n und \r). @ Gerfried Fuchs und quotemeta: Stimmt nat?rlich. Ich lasse allerdings mehr Zeichen durch als quotemeta (zB ./+-), u.a. damit das Logfile leserlicher wird. Die Frage ist halt, ob ich damit sicher genug bin. lg, stefan -- LOAD"Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn!",8,1 RUN! From e9427749 at stud4.tuwien.ac.at Mon Apr 28 09:20:34 2008 From: e9427749 at stud4.tuwien.ac.at (Josef Schmid) Date: Mon, 28 Apr 2008 18:20:34 +0200 Subject: [Vienna-pm] Escapen von Shellparametern In-Reply-To: <4815E4FE.7050204@foo.at> References: <4815D266.5010004@foo.at> <4815DD0C.5080904@thalesgroup.com> <4815E4FE.7050204@foo.at> Message-ID: <4815F952.9080607@stud4.tuwien.ac.at> Stefan Weiss schrieb: > @ Gerfried Fuchs und quotemeta: > Stimmt nat?rlich. Ich lasse allerdings mehr Zeichen durch als quotemeta > (zB ./+-), u.a. damit das Logfile leserlicher wird. > > Die Frage ist halt, ob ich damit sicher genug bin. 1) Hmm, ich w?rde es als Array system() oder open() ?bergeben, und den *String nur f?r's Log konstruieren*. Besser es ist gar keine Shell dazwischen! -> Kann dorthin ? ausgebrochen werden. -> unabh?ngiger von OS 2) quotemeta ist f?r RE gedacht, m?sste man sich durchdenken. ala ?? etc. Adererseits alles mit '' einschliessen, dann reicht vielleicht schon "'" => "\'" Zumindest ihmo ein besserer Ansatz, wenn schon so sein muss, wo ich aber bei deinem Bsp. ?berhaupt keine Notwendigkeit seh. 3) Offensichtlich handelt es sich bei $from und $num um speziellere Datentypen, deshalb sollte auch eingeschr?nkter gepr?ft werden: z.B. $num nur erlaubt wenn !/\D/ M?glicherweise gef?llt Dir eins der unz?hligen Validierungs- module auf CPAN. 4) wenn schon unsicher, dann so dass man jemand anderen die Schuld zuschieben kann. ;-) use Shell; pfiateng, Josef From spaceman at foo.at Mon Apr 28 10:24:17 2008 From: spaceman at foo.at (Stefan Weiss) Date: Mon, 28 Apr 2008 19:24:17 +0200 Subject: [Vienna-pm] Escapen von Shellparametern In-Reply-To: <4815F952.9080607@stud4.tuwien.ac.at> References: <4815D266.5010004@foo.at> <4815DD0C.5080904@thalesgroup.com> <4815E4FE.7050204@foo.at> <4815F952.9080607@stud4.tuwien.ac.at> Message-ID: <48160841.1070607@foo.at> On 2008-04-28 18:20, Josef Schmid wrote: > 1) Hmm, ich w?rde es als Array system() oder open() ?bergeben, system() geht nicht, weil ich den Output lese m?chte. open(): Das war mir noch gar nicht bekannt, dass das ?berhaupt unterst?tzt wird. Das k?nnte eine wirklich interessante L?sung sein. Ist das ein neueres Feature? > 2) quotemeta ist f?r RE gedacht, m?sste man sich durchdenken. > ala ?? etc. Adererseits alles mit '' einschliessen, dann > reicht vielleicht schon "'" => "\'" Zeichen in quoted-Strings zu escapen (gerade ' und ") ist in der Bash umst?ndlicher als ohne Quotes. Probier mal echo 'foo\'bar' (und dann echo 'foo'"'"'bar') > 3) Offensichtlich handelt es sich bei $from und $num > um speziellere Datentypen, deshalb sollte auch eingeschr?nkter > gepr?ft werden: z.B. $num nur erlaubt wenn !/\D/ > M?glicherweise gef?llt Dir eins der unz?hligen Validierungs- > module auf CPAN. Das funktioniert nur f?r einfache Parameter. Was ich validieren kann, habe ich validiert. Sobald man aber einen user-definierten Textinhalt mitgeben m?chte, muss man trotzdem richtig escapen. > 4) wenn schon unsicher, dann so dass man jemand anderen die > Schuld zuschieben kann. ;-) > use Shell; Auch interessant, habe ich auch noch nicht gekannt. Lohnt sich ja doch, zur Sicherheit auf der vienna.pm Liste nachzufragen =) Wobei mich die Manpage von Shell.pm ein bi?chen abschreckt: | This package is included as a show case, illustrating a few Perl | features. It shouldn?t be used for production programs. Ich nehme an, es wird schon richtig funktionieren, aber wenn nicht, und jemand diese Passage liest, bekomm erst recht wieder ich eine auf den Deckel :-) Danke, Stefan -- LOAD"Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn!",8,1 RUN! From alfie at ist.org Mon Apr 28 10:55:59 2008 From: alfie at ist.org (Gerfried Fuchs) Date: Mon, 28 Apr 2008 19:55:59 +0200 Subject: [Vienna-pm] Escapen von Shellparametern In-Reply-To: <4815F952.9080607@stud4.tuwien.ac.at> References: <4815D266.5010004@foo.at> <4815DD0C.5080904@thalesgroup.com> <4815E4FE.7050204@foo.at> <4815F952.9080607@stud4.tuwien.ac.at> Message-ID: <1209405359.32224.112.camel@edna.deb.at> Am Montag, den 28.04.2008, 18:20 +0200 schrieb Josef Schmid: > Stefan Weiss schrieb: > > @ Gerfried Fuchs und quotemeta: > > Stimmt nat?rlich. Ich lasse allerdings mehr Zeichen durch als quotemeta > > (zB ./+-), u.a. damit das Logfile leserlicher wird. > > > > Die Frage ist halt, ob ich damit sicher genug bin. > > 1) Hmm, ich w?rde es als Array system() oder open() ?bergeben, > und den *String nur f?r's Log konstruieren*. > Besser es ist gar keine Shell dazwischen! > -> Kann dorthin ? ausgebrochen werden. > -> unabh?ngiger von OS Dass bei open("foo |") keine shell dazwischen ist, wage ich stark zu bezweifeln. Und system() steht hier au?er Frage, da man damit die Ausgabe nicht abfangen kann, was aber explizit gefragt ist. > 2) quotemeta ist f?r RE gedacht, m?sste man sich durchdenken. > ala ?? etc. Adererseits alles mit '' einschliessen, dann > reicht vielleicht schon "'" => "\'" > Zumindest ihmo ein besserer Ansatz, wenn schon so sein muss, > wo ich aber bei deinem Bsp. ?berhaupt keine Notwendigkeit seh. aus perldoc -f quotemeta: "Returns the value of EXPR with all non-"word" characters backslashed. (That is, all characters not matching "/[A-Za-z_0-9]/" will be preceded by a backslash in the returned string, regardless of any locale settings.)" - gen?gt dir das zum Durchdenken? :) > 3) Offensichtlich handelt es sich bei $from und $num > um speziellere Datentypen, deshalb sollte auch eingeschr?nkter > gepr?ft werden: z.B. $num nur erlaubt wenn !/\D/ > M?glicherweise gef?llt Dir eins der unz?hligen Validierungs- > module auf CPAN. Hier bin ich absolut bei dir. Es macht immer Sinn, die Usereingaben vorher schon auf Sinnhaftigkeit zu testen. > 4) wenn schon unsicher, dann so dass man jemand anderen die > Schuld zuschieben kann. ;-) > use Shell; "This package is included as a show case, illustrating a few Perl features. It shouldn?t be used for production programs." - sehr ?berzeugend. :) Bis dann, Rhonda From e9427749 at stud4.tuwien.ac.at Mon Apr 28 11:18:56 2008 From: e9427749 at stud4.tuwien.ac.at (Josef Schmid) Date: Mon, 28 Apr 2008 20:18:56 +0200 Subject: [Vienna-pm] Escapen von Shellparametern In-Reply-To: <48160841.1070607@foo.at> References: <4815D266.5010004@foo.at> <4815DD0C.5080904@thalesgroup.com> <4815E4FE.7050204@foo.at> <4815F952.9080607@stud4.tuwien.ac.at> <48160841.1070607@foo.at> Message-ID: <48161510.6080903@stud4.tuwien.ac.at> Stefan Weiss schrieb: > On 2008-04-28 18:20, Josef Schmid wrote: >> 1) Hmm, ich w?rde es als Array system() oder open() ?bergeben, > > [...]open(): Das war mir noch gar nicht bekannt, dass das ?berhaupt > unterst?tzt wird. Das k?nnte eine wirklich interessante L?sung sein. Ist > das ein neueres Feature? ich glaub ab 5.6 (oder ab 5.8?) my $result=do { open(my $fh,'-|','faxjob','--from',$from,'--faxnum',$num,...) or die; local $/; <$fh> }; >> 2) quotemeta ist f?r RE gedacht, m?sste man sich durchdenken. >> ala ?? etc. Adererseits alles mit '' einschliessen, dann >> reicht vielleicht schon "'" => "\'" Ok quotemeta scheint sehr grossz?gig mit '\' zu sein. Aber auf charset muss man dann trotzdem noch aufpassen. Da manche Kodierungen aus mehreren Bytes bestehen, wenn sich da beide Seiten ? einig sind. ... > > Zeichen in quoted-Strings zu escapen (gerade ' und ") ist in der Bash > umst?ndlicher als ohne Quotes. Probier mal > echo 'foo\'bar' > (und dann echo 'foo'"'"'bar') Daf?r scheint's das einzige zu sein, was man 'quoten' muss, und sub qesc($){ (my $t=shift)=~s{'}{'\\''}g; "'$t'" } ist auch wieder ? so kompliziert. Allerdings was ist wenn's dann eine andere Shell ist... >> 3) Offensichtlich handelt es sich bei $from und $num >> um speziellere Datentypen, deshalb sollte auch eingeschr?nkter >> gepr?ft werden: z.B. $num nur erlaubt wenn !/\D/ >> M?glicherweise gef?llt Dir eins der unz?hligen Validierungs- >> module auf CPAN. > > Das funktioniert nur f?r einfache Parameter. Was ich validieren kann, > habe ich validiert. Sobald man aber einen user-definierten Textinhalt > mitgeben m?chte, muss man trotzdem richtig escapen. Oder per IO ?bergeben ala -from-file - oder -from-file /dev/fd/3. Oder 'named pipes' Insbesondere da man wenn man komplette zu faxende Texte angibt, riskiert irgendwann Bekanntschaft mit der maximalen Befehlszeilen- l?nge zu machen. Gibt's auch einiges auf CPAN. Halte nach IPC::* Ausschau. >> 4) wenn schon unsicher, dann so dass man jemand anderen die >> Schuld zuschieben kann. ;-) >> use Shell; > > Auch interessant, habe ich auch noch nicht gekannt. Lohnt sich ja doch, > zur Sicherheit auf der vienna.pm Liste nachzufragen =) > > Wobei mich die Manpage von Shell.pm ein bi?chen abschreckt: > > | This package is included as a show case, illustrating a few Perl > | features. It shouldn?t be used for production programs.[?] > > Ich nehme an, es wird schon richtig funktionieren, aber wenn nicht, und > jemand diese Passage liest, bekomm erst recht wieder ich eine auf den > Deckel :-) that's life, Josef ad 1) Ach w?rd ich ? so eng sehen, ist doch eh Standardtext so ziemlich jeder Lizenz ;-) btw&ps: f?r alles was ich so von mir gegeben hab & geb, gilt: | This is included as a show case, illustrating a few Perl | features. It shouldn?t be used for production programs.[?] From Wolfgang.Laun at thalesgroup.com Mon Apr 28 23:32:15 2008 From: Wolfgang.Laun at thalesgroup.com (Wolfgang Laun) Date: Tue, 29 Apr 2008 08:32:15 +0200 Subject: [Vienna-pm] Escapen von Shellparametern In-Reply-To: <48160841.1070607@foo.at> References: <4815D266.5010004@foo.at> <4815DD0C.5080904@thalesgroup.com> <4815E4FE.7050204@foo.at> <4815F952.9080607@stud4.tuwien.ac.at> <48160841.1070607@foo.at> Message-ID: <4816C0EF.2090203@thalesgroup.com> Stefan Weiss wrote: >Wobei mich die Manpage von Shell.pm ein bi?chen abschreckt: > > | This package is included as a show case, illustrating a few Perl > | features. It shouldn?t be used for production programs. > >Ich nehme an, es wird schon richtig funktionieren, aber wenn nicht, und >jemand diese Passage liest, bekomm erst recht wieder ich eine auf den >Deckel :-) > > Ich habe das seinerzeit auf p5p wenn nicht selbst hineingepatcht so doch hineinreklamiert (Perl bug ID 20000326.008). Ich wei? nicht mehr genau, was der Anlass war; Quoting wird aber mitgespielt haben. Der Hinweis sollte ernst genommen werden. -WL > >Danke, >Stefan > > > > From michael.kroell at uibk.ac.at Tue Apr 29 02:21:13 2008 From: michael.kroell at uibk.ac.at (=?UTF-8?B?TWljaGFlbCBLcsO2bGw=?=) Date: Tue, 29 Apr 2008 11:21:13 +0200 Subject: [Vienna-pm] TechSocialMeet am 5.5.2008 In-Reply-To: <20080419071415.GA9200@d610.chello.at> References: <20080419071415.GA9200@d610.chello.at> Message-ID: <4816E889.1090802@uibk.ac.at> Thomas Klausner wrote: > Und was haltet ihr davon, nachher mal woanders als in die Stigl Ambulanz > zu gehen. Dort bin ich naemlich schon die Speisekarte durch :-) > > Sehr nett ist der Wiener Deewan (http://www.deewan.at/), aber vielleicht > ein bissl klein, und "nur" bis 23:00 offen. Sonst irgendwelche Ideen? > Oder sind eh all mit der Ambulanz zufrieden? Das Tin-Tan w?rde sich anbieten. Es gibt ein "Hinterzimmer" mit Platz f?r ~25, dass reserviert werden kann. Die Speisen- und Getr?nkekarte d?rften die meisten von uns auch nicht bereits durch haben und nahe zum NIG ist es auch. F?r eine potentielle Reservierung dort - wer kommt denn aller? lg, michael -- 063A F25E B064 A98F A479 1690 78CD D023 5E2A 6688 http://zis.uibk.ac.at/.m/uibk.ac.at_pgp_pubkey.asc From kh at dartbase.com Tue Apr 29 02:41:49 2008 From: kh at dartbase.com (Karlheinz) Date: Tue, 29 Apr 2008 11:41:49 +0200 Subject: [Vienna-pm] TechSocialMeet am 5.5.2008 In-Reply-To: <4816E889.1090802@uibk.ac.at> References: <20080419071415.GA9200@d610.chello.at> <4816E889.1090802@uibk.ac.at> Message-ID: <4816ED5D.3060401@dartbase.com> Michael Kr?ll wrote: > F?r eine potentielle Reservierung dort - wer kommt denn aller? *anmeld* lg kh From lt at toetsch.at Tue Apr 29 03:08:29 2008 From: lt at toetsch.at (Leopold Toetsch) Date: Tue, 29 Apr 2008 12:08:29 +0200 Subject: [Vienna-pm] TechSocialMeet am 5.5.2008 In-Reply-To: <4816E889.1090802@uibk.ac.at> References: <20080419071415.GA9200@d610.chello.at> <4816E889.1090802@uibk.ac.at> Message-ID: <200804291208.29300.lt@toetsch.at> Am Dienstag, 29. April 2008 11:21 schrieb Michael Kr?ll: > F?r eine potentielle Reservierung dort - wer kommt denn aller? Bin dabei. leo From gr at univie.ac.at Tue Apr 29 03:16:38 2008 From: gr at univie.ac.at (=?ISO-8859-1?Q?Marcel_Gr=FCnauer?=) Date: Tue, 29 Apr 2008 12:16:38 +0200 Subject: [Vienna-pm] TechSocialMeet am 5.5.2008 In-Reply-To: <4816E889.1090802@uibk.ac.at> References: <20080419071415.GA9200@d610.chello.at> <4816E889.1090802@uibk.ac.at> Message-ID: On Apr 29, 2008, at 11:21 AM, Michael Kr?ll wrote: > > Das Tin-Tan w?rde sich anbieten. Es gibt ein "Hinterzimmer" mit Platz > f?r ~25, dass reserviert werden kann. Die Speisen- und Getr?nkekarte > d?rften die meisten von uns auch nicht bereits durch haben und nahe > zum > NIG ist es auch. > F?r eine potentielle Reservierung dort - wer kommt denn aller? Ich werd auch schauen, da? ich's diesmal schaffe. Marcel From rho at devc.at Tue Apr 29 02:15:35 2008 From: rho at devc.at (Robert Barta) Date: Tue, 29 Apr 2008 11:15:35 +0200 Subject: [Vienna-pm] TechSocialMeet am 5.5.2008 In-Reply-To: <4816E889.1090802@uibk.ac.at> References: <20080419071415.GA9200@d610.chello.at> <4816E889.1090802@uibk.ac.at> Message-ID: <20080429091535.GF21098@mama.devc.at> On Tue, Apr 29, 2008 at 11:21:13AM +0200, Michael Kr?ll wrote: > F?r eine potentielle Reservierung dort - wer kommt denn aller? Der Wunsch ist gross, mein Zeitguthaben klein (muss von Seibersdorf reinpilgern). \rho From elcondor at wennja.warum.net Tue Apr 29 04:12:48 2008 From: elcondor at wennja.warum.net (Martin Schipany) Date: Tue, 29 Apr 2008 13:12:48 +0200 Subject: [Vienna-pm] TechSocialMeet am 5.5.2008 In-Reply-To: <4816E889.1090802@uibk.ac.at> References: <20080419071415.GA9200@d610.chello.at> <4816E889.1090802@uibk.ac.at> Message-ID: <481702B0.90406@wennja.warum.net> Michael Kr?ll schrieb: > Thomas Klausner wrote: >> Und was haltet ihr davon, nachher mal woanders als in die Stigl Ambulanz >> zu gehen. Dort bin ich naemlich schon die Speisekarte durch :-) >> >> Sehr nett ist der Wiener Deewan (http://www.deewan.at/), aber vielleicht >> ein bissl klein, und "nur" bis 23:00 offen. Sonst irgendwelche Ideen? >> Oder sind eh all mit der Ambulanz zufrieden? > > Das Tin-Tan w?rde sich anbieten. Es gibt ein "Hinterzimmer" mit Platz > f?r ~25, dass reserviert werden kann. Die Speisen- und Getr?nkekarte > d?rften die meisten von uns auch nicht bereits durch haben und nahe zum > NIG ist es auch. > F?r eine potentielle Reservierung dort - wer kommt denn aller? $reservation->add('myself'); From e9427749 at stud4.tuwien.ac.at Tue Apr 29 10:10:30 2008 From: e9427749 at stud4.tuwien.ac.at (Josef Schmid) Date: Tue, 29 Apr 2008 19:10:30 +0200 Subject: [Vienna-pm] Escapen von Shellparametern In-Reply-To: <48161510.6080903@stud4.tuwien.ac.at> References: <4815D266.5010004@foo.at> <4815DD0C.5080904@thalesgroup.com> <4815E4FE.7050204@foo.at> <4815F952.9080607@stud4.tuwien.ac.at> <48160841.1070607@foo.at> <48161510.6080903@stud4.tuwien.ac.at> Message-ID: <48175686.20201@stud4.tuwien.ac.at> Nochmals hallo! Josef Schmid schrieb: > Stefan Weiss schrieb: >> On 2008-04-28 18:20, Josef Schmid wrote: >>> 1) Hmm, ich w?rde es als Array system() oder open() ?bergeben, >> [...]open(): Das war mir noch gar nicht bekannt, dass das ?berhaupt >> unterst?tzt wird. Das k?nnte eine wirklich interessante L?sung sein. Ist >> das ein neueres Feature? > > ich glaub ab 5.6 (oder ab 5.8?) > my $result=do { > open(my $fh,'-|','faxjob','--from',$from,'--faxnum',$num,...) or die; > local $/; <$fh> > }; backtick_noshell() aus Proc::SafePipe ist mehr oder weniger das. IO::Plumbing scheint auch recht nett zu sein. Und IPC::Run: "I've thought for some time that it would be nice to have a module that could handle full Bourne shell pipe syntax internally, with fork and exec, without ever invoking a shell." Ach ja: readpipe('comand', at args) w?re nett!! Vielleicht f?r 5.10.1 ;-) pfiateng, Jos "p=0.6 f?r 5.5." ef From rho at devc.at Tue Apr 29 10:11:04 2008 From: rho at devc.at (Robert Barta) Date: Tue, 29 Apr 2008 19:11:04 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? Message-ID: <20080429171104.GB16597@mama.devc.at> Kurze Frage: Wenn ich in meinen Perl Programmen so etwas gerne hinschreiben wuerde my @students = ....; my @cleverlies = from $s in @students where $s->{marks} > 85 select $s->{matrikelnr}; nach welchem Paket koennte ich da schauen? Oder geht das gar nicht so einfach? \rho PS: Ja, das soll so was wie LINQ werden. From domm at cpan.org Tue Apr 29 13:27:13 2008 From: domm at cpan.org (Thomas Klausner) Date: Tue, 29 Apr 2008 22:27:13 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080429171104.GB16597@mama.devc.at> References: <20080429171104.GB16597@mama.devc.at> Message-ID: <20080429202713.GB24242@d610.chello.at> Hi! On Tue, Apr 29, 2008 at 07:11:04PM +0200, Robert Barta wrote: > Kurze Frage: Wenn ich in meinen Perl Programmen so etwas > gerne hinschreiben wuerde > my @students = ....; > my @cleverlies = from $s in @students > where $s->{marks} > 85 > select $s->{matrikelnr}; > Soll das auf eine DB zugreifen? Oder willst du "nur" einen Array of Hashrefs durchwuehlen? wenn letzteres: my @cleverlies = map { $_->{matrikelnr} } grep { $_->{marks} > 85 } @students; Wenn ersters: da kenn ich nix, aber DBIx::Class ist schon sehr super. my @cleverlies = $schema->resultset('Students')->search({ marks => { '>' => 85 }, # hm, bin nicht 100%ig sicher, ob das so # ausschaut... }); -- #!/usr/bin/perl http://domm.plix.at for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/} From spaceman at foo.at Tue Apr 29 12:34:51 2008 From: spaceman at foo.at (Stefan Weiss) Date: Tue, 29 Apr 2008 21:34:51 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080429171104.GB16597@mama.devc.at> References: <20080429171104.GB16597@mama.devc.at> Message-ID: <4817785B.8090302@foo.at> On 2008-04-29 19:11, Robert Barta wrote: > my @students = ....; > my @cleverlies = from $s in @students > where $s->{marks} > 85 > select $s->{matrikelnr}; Nur for the record, Perl-Syntax daf?r w?re ungef?hr so: my @students = ( {name => "agnes", matrikelnr => "123", marks => 80}, {name => "benno", matrikelnr => "456", marks => 90}, {name => "clara", matrikelnr => "789", marks => 99}, ); my @cleverlies = map { $_->{matrikelnr} } grep { $_->{marks} > 85 } @students; > nach welchem Paket koennte ich da schauen? Oder geht > das gar nicht so einfach? Um deinen Sourcecode so umzuschreiben, dass nachher Perl rauskommt, schau dir mal die Source Filter in "perldoc perlfilter" an, oder das Modul Filter::Simple. HTH, Stefan -- LOAD"Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn!",8,1 RUN! From rho at devc.at Tue Apr 29 20:50:04 2008 From: rho at devc.at (Robert Barta) Date: Wed, 30 Apr 2008 05:50:04 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080429202713.GB24242@d610.chello.at> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> Message-ID: <20080430035004.GA28390@mama.devc.at> On Tue, Apr 29, 2008 at 10:27:13PM +0200, Thomas Klausner wrote: > Hi! > > On Tue, Apr 29, 2008 at 07:11:04PM +0200, Robert Barta wrote: > > Kurze Frage: Wenn ich in meinen Perl Programmen so etwas > > gerne hinschreiben wuerde > > my @students = ....; > > my @cleverlies = from $s in @students > > where $s->{marks} > 85 > > select $s->{matrikelnr}; > > > > Soll das auf eine DB zugreifen? Oder willst du "nur" einen Array of > Hashrefs durchwuehlen? > > wenn letzteres: > > my @cleverlies = map { $_->{matrikelnr} } > grep { $_->{marks} > 85 } > @students; Der Clue an dem LINQ ist, dass man mit dem selben Zugriffsmechanismus 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). http://msdn.microsoft.com/en-us/vbasic/aa904594.aspx Ich moecht' hauptsaechlich einmal einen proof-of-concept mit TMs bauen. Die Syntaxerweiterung ist eigentlich eh Augenauswischerei, weil ein @some_collection = from $v in @other_collection where ... select .... intern auf lauter Methoden mit lambda expressions umgebogen wird: @other_collection.where (...) .select () \rho From domm at cpan.org Tue Apr 29 23:20:23 2008 From: domm at cpan.org (Thomas Klausner) Date: Wed, 30 Apr 2008 08:20:23 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080430035004.GA28390@mama.devc.at> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> Message-ID: <20080430062023.GD24242@d610.chello.at> Hi! On Wed, Apr 30, 2008 at 05:50:04AM +0200, Robert Barta wrote: > Der Clue an dem LINQ ist, dass man mit dem selben Zugriffsmechanismus > 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. > Ich moecht' hauptsaechlich einmal einen proof-of-concept mit TMs > bauen. Die Syntaxerweiterung ist eigentlich eh Augenauswischerei, Wirkliche Syntaxerweiterungen sind kaum moegliche in Perl 5, was ich weiss. Natuerlich kannst du aber mit cleveren Methoden, Importern und aehnlichem recht nette Interfaces basteln. siehe zB Moose: package Foo; use Moose; has bar => (is => 'rw'); # 'has' ist eine exportierte Methode 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, rausfindet, was was ist (@students (muesste dann aber wohl \@students sein), $s), und dann zum Schluss die richtigen Methoden ('where', 'select') in der richtigen Reihenfolge mit den richtigen Parametern aufruft. Soundy mighty kompliziert. Und nur schwer generalisierbar. Aber durchaus moeglich. -- #!/usr/bin/perl http://domm.plix.at for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/} From Wolfgang.Laun at thalesgroup.com Wed Apr 30 00:11:23 2008 From: Wolfgang.Laun at thalesgroup.com (Wolfgang Laun) Date: Wed, 30 Apr 2008 09:11:23 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5?] Message-ID: <48181B9B.5070708@thalesgroup.com> Thomas Klausner wrote: > 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, >rausfindet, was was ist (@students (muesste dann aber wohl \@students >sein), $s), und dann zum Schluss die richtigen Methoden ('where', >'select') in der richtigen Reihenfolge mit den richtigen Parametern >aufruft. > Ausdr?cke wie $s->{marks} und $s->{matrikelnr} werden dem Vorhaben bei undefiniertem $s ein j?hes Ende bereiten. Wenn SQL wirklich 100% wie SQL aussehen soll, dann w?rde ich die Query als String schreiben, sonst aber (wie vorgeschlagen) mit map und grep operieren. -W > >Soundy mighty kompliziert. >Und nur schwer generalisierbar. >Aber durchaus moeglich. > > > > > From rho at devc.at Tue Apr 29 22:25:13 2008 From: rho at devc.at (Robert Barta) Date: Wed, 30 Apr 2008 07:25:13 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080430062023.GD24242@d610.chello.at> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> Message-ID: <20080430052513.GA3526@mama.devc.at> 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 > 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. 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. \rho From daxim at cpan.org Tue Apr 29 23:33:00 2008 From: daxim at cpan.org (Lars =?utf-8?b?RMmq4bSH4bSE4bSL4bSP4bShIOi/quaLieaWrw==?=) Date: Wed, 30 Apr 2008 08:33:00 +0200 Subject: [Vienna-pm] TechSocialMeet am 5.5.2008 In-Reply-To: <4816E889.1090802@uibk.ac.at> References: <20080419071415.GA9200@d610.chello.at> <4816E889.1090802@uibk.ac.at> Message-ID: <200804300833.09246.daxim@cpan.org> Michael Kr?ll ?: > wer kommt denn aller? aol! -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 194 bytes Desc: This is a digitally signed message part. Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20080430/bf63764e/attachment.bin From daxim at cpan.org Tue Apr 29 23:35:58 2008 From: daxim at cpan.org (Lars =?utf-8?b?RMmq4bSH4bSE4bSL4bSP4bShIOi/quaLieaWrw==?=) Date: Wed, 30 Apr 2008 08:35:58 +0200 Subject: [Vienna-pm] Escapen von Shellparametern In-Reply-To: <48175686.20201@stud4.tuwien.ac.at> References: <4815D266.5010004@foo.at> <48161510.6080903@stud4.tuwien.ac.at> <48175686.20201@stud4.tuwien.ac.at> Message-ID: <200804300835.58663.daxim@cpan.org> Josef Schmid ?: > IO::Plumbing scheint auch recht nett zu sein. > Und IPC::Run Und String::ShellQuote. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 194 bytes Desc: This is a digitally signed message part. Url : http://mail.pm.org/pipermail/vienna-pm/attachments/20080430/ff929e5e/attachment-0001.bin From rgiersig at cpan.org Wed Apr 30 03:02:52 2008 From: rgiersig at cpan.org (Roland Giersig) Date: Wed, 30 Apr 2008 12:02:52 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080430052513.GA3526@mama.devc.at> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> <20080430052513.GA3526@mama.devc.at> Message-ID: <481843CC.30607@cpan.org> 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 > >> 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. > > > 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. > > > > \rho > > _______________________________________________ > Vienna-pm mailing list > Vienna-pm at pm.org > http://mail.pm.org/mailman/listinfo/vienna-pm > From info at peter.st Wed Apr 30 03:56:16 2008 From: info at peter.st (Peter Stoehr) Date: Wed, 30 Apr 2008 12:56:16 +0200 Subject: [Vienna-pm] TechSocialMeet am 5.5.2008 In-Reply-To: <4816E889.1090802@uibk.ac.at> References: <20080419071415.GA9200@d610.chello.at> <4816E889.1090802@uibk.ac.at> Message-ID: <48185050.10801@peter.st> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Michael Kr?ll schrieb: | F?r eine potentielle Reservierung dort - wer kommt denn aller? *2 personen anmeld* lg peter -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFIGFBQvnDnNEbp4LkRAqltAJ9Ltq3yBhvdxRnVXcRTJZTYD9ZyLACeNUJn 2jKGzVFSqhlnHLkWd4LsqBo= =Cn2v -----END PGP SIGNATURE----- From dada at perl.it Wed Apr 30 04:15:35 2008 From: dada at perl.it (Aldo Calpini) Date: Wed, 30 Apr 2008 13:15:35 +0200 Subject: [Vienna-pm] TechSocialMeet am 5.5.2008 In-Reply-To: <4816E889.1090802@uibk.ac.at> References: <20080419071415.GA9200@d610.chello.at> <4816E889.1090802@uibk.ac.at> Message-ID: <481854D7.4080100@perl.it> Michael Kr?ll wrote: > F?r eine potentielle Reservierung dort - wer kommt denn aller? > Ich bin da. cheers, Aldo From rho at devc.at Wed Apr 30 03:05:58 2008 From: rho at devc.at (Robert Barta) Date: Wed, 30 Apr 2008 12:05:58 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <481843CC.30607@cpan.org> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> <20080430052513.GA3526@mama.devc.at> <481843CC.30607@cpan.org> Message-ID: <20080430100558.GA13029@mama.devc.at> On Wed, Apr 30, 2008 at 12:02:52PM +0200, Roland Giersig wrote: > Oder das alles nur per SQL abhandeln, mit DBI und einer in-memory SQLite > DB im Hintergrund. Um SQL geht's eigentlich nicht... > Der Punkt ist: f?r wen sind diese Syntax-?berlegungen? F?r einen > Maintainer, der mehr SQL als Perl versteht? ... sondern um einen Weg (persistente) Collections ueber _ein und denselben_ Mechanismus anzusprechen. D.h. bei @collection = from $s in @students ..... ist es fuer den Programmierer egal, ob die Studis aus einer SQL Datenkrank, aus dem memory oder einem XML Dokument, oder einem RDF Graphen geholt werden. > 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. Right. Aber fuer das gibt's ja schon nen Haufen. \rho > 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 > > > >> 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. > > > > > > 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. > > > > > > > > \rho > > > > _______________________________________________ > > Vienna-pm mailing list > > Vienna-pm at pm.org > > http://mail.pm.org/mailman/listinfo/vienna-pm > > > _______________________________________________ > Vienna-pm mailing list > Vienna-pm at pm.org > http://mail.pm.org/mailman/listinfo/vienna-pm > From patrick at pantheon.at Wed Apr 30 05:18:50 2008 From: patrick at pantheon.at (Patrick Meidl) Date: Wed, 30 Apr 2008 13:18:50 +0100 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080430100558.GA13029@mama.devc.at> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> <20080430052513.GA3526@mama.devc.at> <481843CC.30607@cpan.org> <20080430100558.GA13029@mama.devc.at> Message-ID: <20080430121850.GD16066@lektor.home.lan> On Wed, Apr 30 2008, Robert Barta wrote: > Um SQL geht's eigentlich nicht... > > > Der Punkt ist: f?r wen sind diese Syntax-?berlegungen? F?r einen > > Maintainer, der mehr SQL als Perl versteht? > > ... sondern um einen Weg (persistente) Collections ueber _ein und > denselben_ Mechanismus anzusprechen. D.h. bei > > @collection = from $s in @students ..... > > ist es fuer den Programmierer egal, ob die Studis aus einer SQL > Datenkrank, aus dem memory oder einem XML Dokument, oder einem RDF > Graphen geholt werden. das ist ein gaengiges problem mit einer ebenso gaengigen loesung: du delegierst den zugriff auf die daten an eine persistance layer, die den darunterliegenden data store abstrahiert und ein einheitliches interface fuer den zugriff auf die daten implementiert. dazu braucht man aber keine zusaetzliche syntax erfinden, du vermischt da IMHO also zwei unabhaengige anforderungen. was du beschreibst, klingt mehr sehr aehnlich wie Hibernate fuer Java (inclusive der aehnlichkeit der von dir vorgeschlagenen query syntax mit HQL) - ob's was vergleichbares in Perl gibt, weiss ich allerdings nicht. patrick -- Patrick Meidl ................................ +44 7770 526961 (mobile) 2 Kinkell Terrace .............................. +44 1334 475795 (home) St Andrews, Fife KY16 8DS ......................... patrick at pantheon.at Scotland, UK ............................. http://pmeidl.homelinux.net/ -- From rho at devc.at Wed Apr 30 04:16:52 2008 From: rho at devc.at (Robert Barta) Date: Wed, 30 Apr 2008 13:16:52 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080430121850.GD16066@lektor.home.lan> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> <20080430052513.GA3526@mama.devc.at> <481843CC.30607@cpan.org> <20080430100558.GA13029@mama.devc.at> <20080430121850.GD16066@lektor.home.lan> Message-ID: <20080430111652.GB13029@mama.devc.at> On Wed, Apr 30, 2008 at 01:18:50PM +0100, Patrick Meidl wrote: > > > > @collection = from $s in @students ..... > > > > ist es fuer den Programmierer egal, ob die Studis aus einer SQL > > Datenkrank, aus dem memory oder einem XML Dokument, oder einem RDF > > Graphen geholt werden. > das ist ein gaengiges problem mit einer ebenso gaengigen loesung: du > delegierst den zugriff auf die daten an eine persistance layer, die > den darunterliegenden data store abstrahiert und ein einheitliches > interface fuer den zugriff auf die daten implementiert. Natuerlich. Das ist die (Implementierungs)Idee. > dazu braucht man aber keine zusaetzliche syntax erfinden, du > vermischt da IMHO also zwei unabhaengige anforderungen. Die Syntax gibt's schon (eben LINQ), also da auch nix neues zum Erfinden. > was du beschreibst, klingt mehr sehr aehnlich wie Hibernate fuer Java > (inclusive der aehnlichkeit der von dir vorgeschlagenen query syntax mit > HQL) - ob's was vergleichbares in Perl gibt, weiss ich allerdings nicht. Hibernate ist _nur_ O/R mapping. Witz von dem LINQ Sprachkonstrukt ist, dass es _genauso_ funktionieren soll, wenn die Daten in ... ... .. sitzen. Oder auch in einer Topic Map hubert isa student. norbert isa student. herumgurken. Lots of DWIMming. \rho From patrick at pantheon.at Wed Apr 30 06:50:11 2008 From: patrick at pantheon.at (Patrick Meidl) Date: Wed, 30 Apr 2008 14:50:11 +0100 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080430111652.GB13029@mama.devc.at> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> <20080430052513.GA3526@mama.devc.at> <481843CC.30607@cpan.org> <20080430100558.GA13029@mama.devc.at> <20080430121850.GD16066@lektor.home.lan> <20080430111652.GB13029@mama.devc.at> Message-ID: <20080430135011.GE16066@lektor.home.lan> On Wed, Apr 30 2008, Robert Barta wrote: > Hibernate ist _nur_ O/R mapping. Witz von dem LINQ Sprachkonstrukt > ist, dass es _genauso_ funktionieren soll, wenn die Daten in > > > ... > ... > .. > > > sitzen. Oder auch in einer Topic Map > > hubert isa student. > > norbert isa student. > > herumgurken. brauchst also nur einen JDBC adaptor, der dein XML versteht :) im ernst, die LINQ idee klingt interessant, werde mir bei gelegenheit mal die episode darueber im Software Engeneering Radio podcast vom letzten Oktober anhoeren. patrick -- Patrick Meidl ................................ +44 7770 526961 (mobile) 2 Kinkell Terrace .............................. +44 1334 475795 (home) St Andrews, Fife KY16 8DS ......................... patrick at pantheon.at Scotland, UK ............................. http://pmeidl.homelinux.net/ -- From e9427749 at stud4.tuwien.ac.at Wed Apr 30 07:01:21 2008 From: e9427749 at stud4.tuwien.ac.at (Josef Schmid) Date: Wed, 30 Apr 2008 16:01:21 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080430052513.GA3526@mama.devc.at> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> <20080430052513.GA3526@mama.devc.at> Message-ID: <48187BB1.7090609@stud4.tuwien.ac.at> Hi, allerseits! F?hl mich mal wieder aufgerufen, auch meinem Senf dazuzugeben... Robert Barta schrieb: > On Wed, Apr 30, 2008 at 08:20:23AM +0200, Thomas Klausner wrote: [...] >> 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 .... Hmm, mal sehen wenn ich from ala "sub from (\$*\@*$*$);" deklarier, dann k?nnte ich mal my @students =(); freevars my $s; my @cleverlies = from $s,in, at students, where,$s->{marks} > 85, select,$s->{matrikelnr}; schreiben, was aber a) die zus?tzlichen "," sehen ? gerade h?bsch aus & b) damit ich mit $s auch was anfangen kann, brauch ich noch was, z.B. ala sub freevars (\$;\$\$\$....) c) keine Ahnung wie ich die extra "keywords" ?berpr?fe (aber vielleicht k?nnte, dass wer posten) Hmm 2. Versuch: sub from (\$$); sub in (\@$); sub where ($$); sub select ($); # mal abgesehen davon, da? es eh schon ... freevars my $s; my @cleverlies = from $s, in @students, where $s->{marks} > 85, select $s->{matrikelnr}; a) etwas weniger st?rende zus?tzliche Beistriche. b) daf?r den Namensraum etwas mehr, mit "nichtssagende" Funktionsnamen verschmutzt. c) immer noch Trick um mit $s was anfangen zu k?nnen n?tig. Hmm 3. Versuch: Da uns der '&'-Prototyp nur was hilft wenn er an 1. Stelle steht... m?ssten wir den Sytax ab?ndern, z.B. select { $a->{matrikelnr} } where { $a->{marks} } from @students; Hmm, 4. Versuch: Da wir ohnehin bei Versuch 1+2. wahrscheinlich um Operator?berladung ? herumkommen, um where & select als Ausdruck wiederzubekommen. Hmm, hmm, ... ... ... ... Also zu Versuch *Nr 5*: my @cleverlies = do { from my $s, in @students; select { $s->{matrikelnr} } where { $s->{marks} > 85 } }; Das h?tte den vorteil das man die Namensraumverschmutzung einschr?nken k?nnte. Ein Trick den ich bisher noch nirgends angewandt gesehen habe. my @cleverlies = do { use linq; .... } # %^H und so und auch noch ausbauf?hig Noch 'ne M?glichkeit: freevars my $s; my @c=from($s)->in(@students) ->where($s->{marks}> 85) ->select($s->{matrikelnr}); ... >> From: Stefan Weiss >> 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. [...] > > 3) Bei preprocessors habe ich immer das Problem, dass sie nicht > leicht immer miteinander kombinierbar sind. Neben Filter::Simple gibt es noch: Module::Compile, Filter::Simple::Compile und dann muss man aber noch Perl5 parsen: Parse::* oder PPI oder ... pfiateng, Jos "hoffentlich niemanden verschreckt" ef From rgiersig at cpan.org Wed Apr 30 07:26:19 2008 From: rgiersig at cpan.org (Roland Giersig) Date: Wed, 30 Apr 2008 16:26:19 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080430100558.GA13029@mama.devc.at> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> <20080430052513.GA3526@mama.devc.at> <481843CC.30607@cpan.org> <20080430100558.GA13029@mama.devc.at> Message-ID: <4818818B.7000708@cpan.org> und wie schaut das aus? @cleverlies = select {$_->{matrikelnr}} where {$_->{marks} > 85} from @students; extra bonuspunkte f?r diejenigen, die jetzt lachend am boden liegen, weil sie die implementation von select, where und from schon vor augen haben... ;o) Robert Barta wrote: > On Wed, Apr 30, 2008 at 12:02:52PM +0200, Roland Giersig wrote: >> Oder das alles nur per SQL abhandeln, mit DBI und einer in-memory SQLite >> DB im Hintergrund. > > Um SQL geht's eigentlich nicht... > >> Der Punkt ist: f?r wen sind diese Syntax-?berlegungen? F?r einen >> Maintainer, der mehr SQL als Perl versteht? > > ... sondern um einen Weg (persistente) Collections ueber _ein und > denselben_ Mechanismus anzusprechen. D.h. bei > > @collection = from $s in @students ..... > > ist es fuer den Programmierer egal, ob die Studis aus einer SQL > Datenkrank, aus dem memory oder einem XML Dokument, oder einem RDF > Graphen geholt werden. > >> 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. > > Right. Aber fuer das gibt's ja schon nen Haufen. > > \rho > >> 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 >>>> 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. >>> >>> >>> 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. >>> >>> >>> >>> \rho >>> >>> _______________________________________________ >>> Vienna-pm mailing list >>> Vienna-pm at pm.org >>> http://mail.pm.org/mailman/listinfo/vienna-pm >>> >> _______________________________________________ >> Vienna-pm mailing list >> Vienna-pm at pm.org >> http://mail.pm.org/mailman/listinfo/vienna-pm >> > From e9427749 at stud4.tuwien.ac.at Wed Apr 30 07:52:11 2008 From: e9427749 at stud4.tuwien.ac.at (Josef Schmid) Date: Wed, 30 Apr 2008 16:52:11 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <4818818B.7000708@cpan.org> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> <20080430052513.GA3526@mama.devc.at> <481843CC.30607@cpan.org> <20080430100558.GA13029@mama.devc.at> <4818818B.7000708@cpan.org> Message-ID: <4818879B.4090706@stud4.tuwien.ac.at> Roland Giersig schrieb: > und wie schaut das aus? > > @cleverlies = select {$_->{matrikelnr}} where {$_->{marks} > 85} from > @students; > > extra bonuspunkte f?r diejenigen, die jetzt lachend am boden liegen, > weil sie die implementation von select, where und from schon vor augen > haben... ;o) mist erwischt, Josef PS: Aber ich ging davon aus das es mehrere verschiedene Parameter gibt. PPS: Da die Problematik von LINQ, SQL ? un?hnlich scheint, w?re als Anregung mal zu empfehlen, sich diversen CPAN-Module die sich mit SQL besch?ftigen anzusehen, zu Abwechslung ein konstruktiver Beitrag von mir. :-/ From gr at univie.ac.at Wed Apr 30 08:10:03 2008 From: gr at univie.ac.at (=?ISO-8859-1?Q?Marcel_Gr=FCnauer?=) Date: Wed, 30 Apr 2008 17:10:03 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <4818818B.7000708@cpan.org> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> <20080430052513.GA3526@mama.devc.at> <481843CC.30607@cpan.org> <20080430100558.GA13029@mama.devc.at> <4818818B.7000708@cpan.org> Message-ID: On Apr 30, 2008, at 4:26 PM, Roland Giersig wrote: > und wie schaut das aus? > > @cleverlies = select {$_->{matrikelnr}} where {$_->{marks} > 85} from > @students; Die Reihenfolge von WHERE und FROM stimmt nicht, aber sonst schon ganz ok... #!/usr/bin/env perl use warnings; use strict; my @students = ( { id => 1234, marks => 20 }, { id => 4711, marks => 85 }, { id => 3000, marks => 86 }, { id => 9999, marks => 99 }, ); sub SELECT (&@) { my $code = shift; map { $code->() } @_ } sub WHERE (&@) { my $code = shift; grep { $code->() } @_ } sub FROM (@) { @_ } sub id () { $_->{id} } sub marks () { $_->{marks} } my @cleverlies = SELECT { id } WHERE { marks > 85 } FROM @students; From rho at devc.at Wed Apr 30 08:21:33 2008 From: rho at devc.at (Robert Barta) Date: Wed, 30 Apr 2008 17:21:33 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <4818818B.7000708@cpan.org> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> <20080430052513.GA3526@mama.devc.at> <481843CC.30607@cpan.org> <20080430100558.GA13029@mama.devc.at> <4818818B.7000708@cpan.org> Message-ID: <20080430152133.GA5315@mama.devc.at> On Wed, Apr 30, 2008 at 04:26:19PM +0200, Roland Giersig wrote: > > und wie schaut das aus? > > @cleverlies = select {$_->{matrikelnr}} where {$_->{marks} > 85} from > @students; > > extra bonuspunkte f?r diejenigen, die jetzt lachend am boden liegen, > weil sie die implementation von select, where und from schon vor augen > haben... ;o) Ja. Lustig. ;-/ \rho > Robert Barta wrote: > > On Wed, Apr 30, 2008 at 12:02:52PM +0200, Roland Giersig wrote: > >> Oder das alles nur per SQL abhandeln, mit DBI und einer in-memory SQLite > >> DB im Hintergrund. > > > > Um SQL geht's eigentlich nicht... > > > >> Der Punkt ist: f?r wen sind diese Syntax-?berlegungen? F?r einen > >> Maintainer, der mehr SQL als Perl versteht? > > > > ... sondern um einen Weg (persistente) Collections ueber _ein und > > denselben_ Mechanismus anzusprechen. D.h. bei > > > > @collection = from $s in @students ..... > > > > ist es fuer den Programmierer egal, ob die Studis aus einer SQL > > Datenkrank, aus dem memory oder einem XML Dokument, oder einem RDF > > Graphen geholt werden. > > > >> 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. > > > > Right. Aber fuer das gibt's ja schon nen Haufen. > > > > \rho > > > >> 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 > >>>> 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. > >>> > >>> > >>> 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. > >>> > >>> > >>> > >>> \rho > >>> > >>> _______________________________________________ > >>> Vienna-pm mailing list > >>> Vienna-pm at pm.org > >>> http://mail.pm.org/mailman/listinfo/vienna-pm > >>> > >> _______________________________________________ > >> Vienna-pm mailing list > >> Vienna-pm at pm.org > >> http://mail.pm.org/mailman/listinfo/vienna-pm > >> > > > _______________________________________________ > Vienna-pm mailing list > Vienna-pm at pm.org > http://mail.pm.org/mailman/listinfo/vienna-pm > From rho at devc.at Wed Apr 30 08:31:48 2008 From: rho at devc.at (Robert Barta) Date: Wed, 30 Apr 2008 17:31:48 +0200 Subject: [Vienna-pm] Hausbackene Syntaxerweiterung mit Perl5? In-Reply-To: <20080430152133.GA5315@mama.devc.at> References: <20080429171104.GB16597@mama.devc.at> <20080429202713.GB24242@d610.chello.at> <20080430035004.GA28390@mama.devc.at> <20080430062023.GD24242@d610.chello.at> <20080430052513.GA3526@mama.devc.at> <481843CC.30607@cpan.org> <20080430100558.GA13029@mama.devc.at> <4818818B.7000708@cpan.org> <20080430152133.GA5315@mama.devc.at> Message-ID: <20080430153148.GB5315@mama.devc.at> On Wed, Apr 30, 2008 at 05:21:33PM +0200, Robert Barta wrote: > On Wed, Apr 30, 2008 at 04:26:19PM +0200, Roland Giersig wrote: > > > > und wie schaut das aus? > > > > @cleverlies = select {$_->{matrikelnr}} where {$_->{marks} > 85} from > > @students; > > > > extra bonuspunkte f?r diejenigen, die jetzt lachend am boden liegen, > > weil sie die implementation von select, where und from schon vor augen > > haben... ;o) > > Ja. Lustig. ;-/ Fuer alle, die lustig aus der Huefte schiessen: Es geht um diese Liste von Operatoren: http://download.microsoft.com/download/5/8/6/5868081c-68aa-40de-9a45-a3803d8134b8/standard_query_operators.doc \rho > > Robert Barta wrote: > > > On Wed, Apr 30, 2008 at 12:02:52PM +0200, Roland Giersig wrote: > > >> Oder das alles nur per SQL abhandeln, mit DBI und einer in-memory SQLite > > >> DB im Hintergrund. > > > > > > Um SQL geht's eigentlich nicht... > > > > > >> Der Punkt ist: f?r wen sind diese Syntax-?berlegungen? F?r einen > > >> Maintainer, der mehr SQL als Perl versteht? > > > > > > ... sondern um einen Weg (persistente) Collections ueber _ein und > > > denselben_ Mechanismus anzusprechen. D.h. bei > > > > > > @collection = from $s in @students ..... > > > > > > ist es fuer den Programmierer egal, ob die Studis aus einer SQL > > > Datenkrank, aus dem memory oder einem XML Dokument, oder einem RDF > > > Graphen geholt werden. > > > > > >> 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. > > > > > > Right. Aber fuer das gibt's ja schon nen Haufen. > > > > > > \rho > > > > > >> 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 > > >>>> 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. > > >>> > > >>> > > >>> 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. > > >>> > > >>> > > >>> > > >>> \rho > > >>> > > >>> _______________________________________________ > > >>> Vienna-pm mailing list > > >>> Vienna-pm at pm.org > > >>> http://mail.pm.org/mailman/listinfo/vienna-pm > > >>> > > >> _______________________________________________ > > >> Vienna-pm mailing list > > >> Vienna-pm at pm.org > > >> http://mail.pm.org/mailman/listinfo/vienna-pm > > >> > > > > > _______________________________________________ > > Vienna-pm mailing list > > Vienna-pm at pm.org > > http://mail.pm.org/mailman/listinfo/vienna-pm > > > _______________________________________________ > Vienna-pm mailing list > Vienna-pm at pm.org > http://mail.pm.org/mailman/listinfo/vienna-pm >