From Peter at PSDT.com Thu Feb 2 10:49:45 2006 From: Peter at PSDT.com (Peter Scott) Date: Thu, 02 Feb 2006 10:49:45 -0800 Subject: [VPM] Feb 21 meeeting? Message-ID: <6.2.3.4.2.20060202104818.034272f8@mail.webquarry.com> Shall we resume monthly meetings on Feb 21? I have two topics that I could talk about: WWW::Mechanize and Class::Std. The latter is Damian Conway's new module for building better O-O classes. If someone has a counter proposal, I'm all ears. -- Peter Scott Pacific Systems Design Technologies http://www.perldebugged.com/ http://www.perlmedic.com/ From darren at DarrenDuncan.net Thu Feb 2 14:06:51 2006 From: darren at DarrenDuncan.net (Darren Duncan) Date: Thu, 2 Feb 2006 14:06:51 -0800 Subject: [VPM] Feb 21 meeeting? In-Reply-To: <6.2.3.4.2.20060202104818.034272f8@mail.webquarry.com> References: <6.2.3.4.2.20060202104818.034272f8@mail.webquarry.com> Message-ID: At 10:49 AM -0800 2/2/06, Peter Scott wrote: >Shall we resume monthly meetings on Feb 21? > >I have two topics that I could talk about: WWW::Mechanize and >Class::Std. The latter is Damian Conway's new module for building >better O-O classes. That sounds good to me. >If someone has a counter proposal, I'm all ears. I also thought that this is about the right time, now or in the March meeting, to give a new talk about my Rosetta database access framework, which has seen huge design changes since I last mentioned it. Perhaps I should do a full talk on that in March, to give myself more time to prepare. Though I could still say a smaller amount about it in February, to supplement your talk. Coincidentally, I'm just about to post an announcement of the huge changes to various Perl lists, including VPM, so that should say more about this. -- Darren Duncan From darren at DarrenDuncan.net Thu Feb 2 20:08:10 2006 From: darren at DarrenDuncan.net (Darren Duncan) Date: Thu, 2 Feb 2006 20:08:10 -0800 Subject: [VPM] ANNOUNCE: first post-rewrite Rosetta release (v0.720.0) Message-ID: 2006-02-01 Darren Duncan -------------------------------------------------- I am pleased to announce the first CPAN release of the second major code base (started on 2005-10) of the Rosetta database access framework, v0.720.0, which is available now in synchronized native Perl 5 and Perl 6 versions. This is a complete rewrite, including very different detail designs, implementations, and documentations, though it still retains the same high level design and purpose. ------------ The Perl 5 version is composed of these 2 distributions (more come later): * Rosetta-v0.720.0.tar.gz * Rosetta-Engine-Native-v0.1.0.tar.gz These have Locale-KeyedText-v1.72.1.tar.gz (released at the same time) as an external dependency. The Perl 6 versions of all 3 of the above items are bundled with Perl6-Pugs-6.2.11.tar.gz (released a half-day earlier) in its ext/ subdirectory. The Perl 6 versions don't depend on anything outside the Perl6-Pugs distro that they live in. But the Perl 5 versions also have external dependencies on Perl 5.8.1+ and these Perl 5 packages, which add features that Perl 6 and Pugs already have built-in: 'version', 'only', 'Readonly', Class::Std, Class::Std::Utils, Scalar::Util, Test::More; the latter 2 are bundled with Perl 5. ------------ Following is both a reintroduction to the remade Rosetta as it is and will soon be, and a summary of the main changes from before the rewrite (first major code base of 2002 thru 2005-09). For various reasons such will be bared below, it should be more apparent than ever that Rosetta is "not just another DBI wrapper" and really stands out as something different than any existing tools on CPAN. Note that many of these details aren't yet in Rosetta's own documentation (they will be later), so they are distinct to this email. * Locale::KeyedText is officially not part of the Rosetta framework anymore, being a distinct external dependency instead of its localization component. * Anything that was in the SQL::Routine name space has been renamed into the 'Rosetta' name space. * Briefly comparing DBI to Rosetta, DBI provides users with database driver independence; Rosetta provides them with database language independence, which is a higher abstraction, but it should still work quickly. * Rosetta is now officially a federated relational database of its own that just happens to be good with cross-database-manager portability issues, and be good as a toolkit on which to build ORMs and persistence tools, rather than being mainly about portable SQL generation. * The native query and schema design language of Rosetta is now based mainly on Tutorial D (by Christopher J. Date and Hugh Darwen) and closely resembles relational algrebra, rather than being based on SQL as it was before (note that some current documentation suggests otherwise, but that will be rewritten). * Note, see http://www.oreilly.com/catalog/databaseid/ , the book by Date named "Database in Depth", which is one of the best references on database design I have ever seen. Everyone who works with databases should read it. Its not dry and has practical stuff you can apply right now. I am. * The native language of Rosetta is presently called "Intermediate Relational Language" ("IRL", pronounced "earl", or "girl" without the "g"); it is inspired by Pugs' "PIL", which serves a similar purpose for Perl 6 as what IRL does for Tutorial D and SQL and other languages. * IRL is strongly typed, where every value and container is of a single type, and permits user data type definitions to be arbitrarily complex (such as temporal and spacial data) but non-recursive. Aside from forbidding "references", it includes the features of so-called "object-relational" databases which are actually part of the true plain "relational" data model. Values of each distinct data type can not be substituted as operator arguments for others, or stored in containers for others, but they can be explicitly cross-converted in some circumstances (eg num to str or str to num). * Despite actually being strongly typed, IRL has facilities to simulate weak data types over strong ones; for example, you can define an SV type that has numerical and character string components. More broadly speaking, you can define multi-part "disjunctive" types, each of a different other type, where only one member has a significant value at once, and the others have their type's concept of an "empty" value; actually, these have a single extra member that says which of the others holds the significant value. * IRL natively uses 2-valued-logic (2VL) like Tutorial D, and not 3-valued-logic (3VL) like SQL, so every boolean valued expression always evaluates to true or false, not true or false or unknown (a SQL NULL). But it does simulate 3-valued-logic using disjunctive data types, one of whose members is the system defined "Unknown" strong data type, which can only ever hold the same single value; by definition, a disjunctive data type value whose member A is the significant one will never match with another whose significant member is B, and hence we can distinguish between "Unknown" and zero or the empty string when a number or string can't actually be set to Unknown (null). * IRL has distinct data types for what are commonly referred to as "relations" (like a SQL table with a key, which may be over all of its columns) and "bags" (like a SQL table that lacks a key), where the former forbids duplicates and the latter allows them. Given Rosetta's hard typing, a relation and a bag can not be substituted for each other (except that they can be cross-converted, as numbers and character strings can be cross-converted), but rather have their own operators which either never output or can output duplicates respectively. A bag can be implemented over a relation where the relation has one extra attribute which stores a count of occurances for the otherwise distinct combination of other attributes, and operators do the right thing with that count. * There is no inherent order of the attributes/columns of relations/bags/tables, and there is no inherent order to their tuples/rows, unlike SQL where at least the order of columns is significant. IRL does all references by names rather than by position; all operator parameters are named, as are relation attributes. * Besides relations and bags, IRL has a distinct array data type, which is what you get when using an order-by; usually it only makes sense to use this as the last step in a query when fetching data, if the order is important. * All typical joins between relations/bags/tables are natural joins, where attributes/columns of each joined item implicitly correspond and match when they have the same names and data types (and if none match, you have a cartesian). You never specify join conditions explicitly by using "foo = bar" or any such thing; rather, if you want to match on dis-similar names, you first rename (like SQL's "AS") one or both source columns. This also means that you can join an arbitrary number of relations/tables in a single operation, and they will just work, with the combined output relation/table having distinct attribute/column names already. * Instead of saying "select from where ", you nest arbitrary relational algebra expressions like "project( restrict( , ), )" or "restrict( project( , ), )"; both of those latter 2 happen to give the exact same result. * The finer grained IRL should be easier to write non-trivial queries in than SQL, especially when adding things like groups and havings and such, since you can more reliably know what pieces you have to work with, and exactly what will happen when you say certain things, and you don't have to needlessly duplicate expressions. Writing queries in IRL should be more reliable than SQL since you don't have to worry about getting different results from 2 logically identical queries and you don't have to deal with ambiguous syntax. * IRL should also be a lot easier to optimize for speed given the lack of ambiguity that plagues attempts to optimize SQL. * Rosetta is designed to be very componentized, where you can substitute back-ends and front-ends at will, so it can work over both SQL based and non-SQL based database engines, and its user interface can resemble anything you want. It is also reasonably easy to map SQL to IRL and back, so you can still query Rosetta databases using various SQL dialects or other languages if you don't want to see the IRL, and this can help with migrating older applications. * It is likely to be the ideal case for most Rosetta users to have an alternate front end, such as some adapted from current DBI wrappers, object persistence or relational mapping tools, and so on, rather than using IRL directly. Using Rosetta rather than DBI should make the tasks of people making such wrappers and tools easier, since they have a more reliable language to work against and they don't have to maintain a multiplicity of back ends for each storage engine; Rosetta does the latter for them. * A typical Rosetta back-end that operates over an existing database engine will take care of optimizing the queries for the native database so they perform best. When using Rosetta, you just say *what* you want to happen, not so much how, and Rosetta will take care of getting it done quickly and correctly. * A self contained back-end named Rosetta::Engine::Native implements a relational database in Perl, so you can have that functionality without straying outside Perl if you want. Of course, Rosetta::Engine::Native is only meant to be a correct example, not fast, so it should only be used for testing. Other backends can be used for production. * Genezzo is an already existing fast third party database, implemented in Perl, which will be adapted to use Rosetta as its interface, so you do have, a Perl option besides the for-testing-only Native. * The license of Rosetta has changed, such that my GPL exception granted to allow linked code to retain its own license has changed; it is no longer based on technicalities like how the linking is done, but rather on what kind of license the linked code has. This should make things a lot easier for developers of all stripes. * See the Changes file with 'Rosetta' for more details on some aspects. ------------ Note that the current Rosetta framework on CPAN is mostly documentation (incomplete and partly out of date), and has little in the way of executable code right now. I recommend looking, in particular, at the pod in these files: Rosetta.pm, Model.pm, Language.pod, Overview.pod, TODO.pod. Over the next month or so, hopefully coinciding with the Pugs 6.28.0 release (that is refactored over the new PIL2 and perl 6 object model), I should have more code such that you can actually start playing with Rosetta in your code. I welcome any kind of assistence that you can provide with Rosetta, and I hope that it will have a huge positive impact on the community. Really, assistence would be appreciated. Thank you and have a good day. -- Darren Duncan From crimson at uvic.ca Mon Feb 6 00:41:27 2006 From: crimson at uvic.ca (Clarke Brunsdon) Date: Mon, 06 Feb 2006 00:41:27 -0800 Subject: [VPM] Feb 21 meeeting? In-Reply-To: <6.2.3.4.2.20060202104818.034272f8@mail.webquarry.com> References: <6.2.3.4.2.20060202104818.034272f8@mail.webquarry.com> Message-ID: <1139215287.3101.2.camel@localhost> yea sounds good, i'll try and grab a room tommorow On Thu, 2006-02-02 at 10:49 -0800, Peter Scott wrote: > Shall we resume monthly meetings on Feb 21? > > I have two topics that I could talk about: WWW::Mechanize and > Class::Std. The latter is Damian Conway's new module for building > better O-O classes. > > If someone has a counter proposal, I'm all ears. From Peter at PSDT.com Thu Feb 9 08:55:35 2006 From: Peter at PSDT.com (Peter Scott) Date: Thu, 09 Feb 2006 08:55:35 -0800 Subject: [VPM] February Perl Mongers Meeting Message-ID: <6.2.3.4.2.20060209085418.02447118@mail.webquarry.com> Victoria.pm will meet at its regular date and time on Tuesday, November 15, 7pm, at UVic, room to be announced the day before (probably our usual one in Harry Hickman) I will give two talks on modules of great practicality: WWW::Mechanize (how to automate interaction with web sites), and Class::Std (Damian Conway's new module for clean object-oriented class construction). I will have some examples and news of the latter not currently publically documented. We have room for other topics, so if you either want to present something or hear about something, contact me. Presentations need not be restricted to Perl; we can learn by expanding our horizons so Ruby, Python, and Haskell, for instance, are all valid. Topics in functional or O-O programming, parsing, or data structures are equally useful. (Courtesy copy to VLUG members by permission of the list manager. Victoria.pm's home page is .) -- Peter Scott Pacific Systems Design Technologies http://www.perldebugged.com/ http://www.perlmedic.com/ From Peter at PSDT.com Mon Feb 13 10:50:59 2006 From: Peter at PSDT.com (Peter Scott) Date: Mon, 13 Feb 2006 10:50:59 -0800 Subject: [VPM] February Perl Mongers Meeting Message-ID: <6.2.3.4.2.20060213105021.024e5ea8@mail.webquarry.com> Victoria.pm will meet at its regular date and time on Tuesday, November 15, 7pm, at UVic, in Harry Hickman building, room 116. I will give two talks on modules of great practicality: WWW::Mechanize (how to automate interaction with web sites), and Class::Std (Damian Conway's new module for clean object-oriented class construction). I will have some examples and news of the latter not currently publically documented. We have room for other topics, so if you either want to present something or hear about something, contact me. Presentations need not be restricted to Perl; we can learn by expanding our horizons so Ruby, Python, and Haskell, for instance, are all valid. Topics in functional or O-O programming, parsing, or data structures are equally useful. (Courtesy copy to VLUG members by permission of the list manager. Victoria.pm's home page is .) -- Peter Scott Pacific Systems Design Technologies http://www.perldebugged.com/ http://www.perlmedic.com/ From Peter at PSDT.com Mon Feb 13 10:52:28 2006 From: Peter at PSDT.com (Peter Scott) Date: Mon, 13 Feb 2006 10:52:28 -0800 Subject: [VPM] February Perl Mongers Meeting - date correction Message-ID: <6.2.3.4.2.20060213105208.022f5a70@mail.webquarry.com> Victoria.pm will meet at its regular date and time on Tuesday, February 21, 7pm, at UVic, in Harry Hickman building, room 116. I will give two talks on modules of great practicality: WWW::Mechanize (how to automate interaction with web sites), and Class::Std (Damian Conway's new module for clean object-oriented class construction). I will have some examples and news of the latter not currently publically documented. We have room for other topics, so if you either want to present something or hear about something, contact me. Presentations need not be restricted to Perl; we can learn by expanding our horizons so Ruby, Python, and Haskell, for instance, are all valid. Topics in functional or O-O programming, parsing, or data structures are equally useful. (Courtesy copy to VLUG members by permission of the list manager. Victoria.pm's home page is .) -- Peter Scott Pacific Systems Design Technologies http://www.perldebugged.com/ http://www.perlmedic.com/ From Peter at PSDT.com Mon Feb 20 07:52:00 2006 From: Peter at PSDT.com (Peter Scott) Date: Mon, 20 Feb 2006 07:52:00 -0800 Subject: [VPM] Perl Mongers Meeting tomorrow Message-ID: <6.2.3.4.2.20060213105110.022ec1d8@mail.webquarry.com> Victoria.pm will meet at its regular date and time tomorrow, Tuesday, February 21, 7pm, at UVic, in Harry Hickman building, room 116. I will give two talks on modules of great practicality: WWW::Mechanize (how to automate interaction with web sites), and Class::Std (Damian Conway's new module for clean object-oriented class construction). I will have some examples and news of the latter not currently publically documented. We have room for other topics, so if you either want to present something or hear about something, contact me. Presentations need not be restricted to Perl; we can learn by expanding our horizons so Ruby, Python, and Haskell, for instance, are all valid. Topics in functional or O-O programming, parsing, or data structures are equally useful. (Courtesy copy to VLUG members by permission of the list manager. Victoria.pm's home page is .) -- Peter Scott Pacific Systems Design Technologies http://www.perldebugged.com/ http://www.perlmedic.com/ From abez at abez.ca Mon Feb 20 09:35:03 2006 From: abez at abez.ca (abez) Date: Mon, 20 Feb 2006 12:35:03 -0500 (EST) Subject: [VPM] Perl Mongers Meeting tomorrow In-Reply-To: <6.2.3.4.2.20060213105110.022ec1d8@mail.webquarry.com> Message-ID: It is good to hear you guys are getting back into the action :) I recently gave another bot talk to the Kitchener-Waterloo Perl Mongers. http://churchturing.org/w/abez-botpresentation.pdf http://churchturing.org/w/abez-botpresentation.tar.gz One neat thing they do (they are as small as we were) was rotate who buys pizza per month. So get 2 pizzas and some pop. It allows chatter at the start of the meeting. I hope you guys are enjoying the nice Victoria weather :) abram On Mon, 20 Feb 2006, Peter Scott wrote: > Victoria.pm will meet at its regular date and time tomorrow, Tuesday, > February 21, 7pm, at UVic, in Harry Hickman building, room 116. > > I will give two talks on modules of great practicality: WWW::Mechanize > (how to automate interaction with web sites), and Class::Std (Damian > Conway's new module for clean object-oriented class construction). I > will have some examples and news of the latter not currently publically > documented. > > We have room for other topics, so if you either want to present > something or hear about something, contact me. Presentations need not > be restricted to Perl; we can learn by expanding our horizons so Ruby, > Python, and Haskell, for instance, are all valid. Topics in functional > or O-O programming, parsing, or data structures are equally useful. > > (Courtesy copy to VLUG members by permission of the list > manager. Victoria.pm's home page is .) > -- abez ------------------------------------------ http://www.abez.ca/ Abram Hindle (abez at abez.ca) ------------------------------------------ abez From Peter at PSDT.com Mon Feb 20 14:14:50 2006 From: Peter at PSDT.com (Peter Scott) Date: Mon, 20 Feb 2006 14:14:50 -0800 Subject: [VPM] Perl Mongers Meeting tomorrow In-Reply-To: References: <6.2.3.4.2.20060213105110.022ec1d8@mail.webquarry.com> Message-ID: <6.2.3.4.2.20060220141335.0269d948@mail.webquarry.com> At 09:35 AM 2/20/2006, abez wrote: >It is good to hear you guys are getting back into the action :) > >I recently gave another bot talk to the Kitchener-Waterloo Perl Mongers. > >http://churchturing.org/w/abez-botpresentation.pdf A neat presentation. Also, Clarke's IRC authenticator that he talked about is very cool, I hope you have seen it. >One neat thing they do (they are as small as we were) was rotate who >buys pizza per month. So get 2 pizzas and some pop. It allows chatter at >the start of the meeting. Sounds intriguing. Show of hands of who's interested? -- Peter Scott Pacific Systems Design Technologies http://www.perldebugged.com/ http://www.perlmedic.com/ From darren at DarrenDuncan.net Mon Feb 20 17:23:26 2006 From: darren at DarrenDuncan.net (Darren Duncan) Date: Mon, 20 Feb 2006 17:23:26 -0800 Subject: [VPM] my Feb 21st meeting attendence Message-ID: Hello, Given a recent cold that I am now in the midst of recovering from (risk of transmission should be low), I risk not being able to attend the February VPM meeting without some assistence. Specifically, I am in the trailing stage with a sore throat. If I were to travel home on my own after the meeting, that would involve walking for a good hour (about 30-40 min of that being continuous, at the end), and breathing the rather cold air we've been having. This would probably serve to aggrevate the condition. My request is if one of you having a car can give me a ride all the way home after the meeting. (I don't expect to need a ride to the meeting, as it should be warmer then.) I live in Deep Cove, so this would likely mean a good hour of extra driving for you, assuming you don't normally travel into the Saanich Peninsula. As compensation, I will pay you a reasonable sum, such as $20, to cover your gas and time. (Even if that sounds high for a ride, it is still less than half of cab fare.) At the meeting, I will make sure to sit apart from others, just in case. Please reply as soon as possible if you can do this, today being best. If no ride is secured in advance, before I would leave home, then I will probably have to miss the meeting, unless I feel fully recovered tomorrow. Thank you in advance. P.S. On the other hand, if there is a general recommendation that I should just stay home anyway, despite meeting attendence being small enough that every person would count, let me know that too. -- Darren Duncan From darren at DarrenDuncan.net Tue Feb 21 16:41:11 2006 From: darren at DarrenDuncan.net (Darren Duncan) Date: Tue, 21 Feb 2006 16:41:11 -0800 Subject: [VPM] my Feb 21st meeting attendence In-Reply-To: References: Message-ID: Hello, I decided unconditionally, after sending my other message, that I would stay home today. While I regret missing the meeting, this also means there is a zero percent chance of spreading anything, so we're all probably better off that way. My apologies if that request for a ride was inappropriate. -- Darren Duncan From victoriaperlmongers at wardroper.org Fri Feb 24 11:58:43 2006 From: victoriaperlmongers at wardroper.org (Alan Wardroper) Date: Fri, 24 Feb 2006 11:58:43 -0800 Subject: [VPM] Object Oriented Perl Message-ID: <43FF6573.4050203@wardroper.org> Enjoyed the last presentation on Class::Std and WWW::Maximizer, some of which went a bit over my head. Which brings me to the point - anyone have a copy of Damian Conway's Object Oriented Perl for sale? New to Victoria too, so if anyone knows of a good bookstore for technology-related books in town (competitive with online sellers--is there such a thing?), esp used, would appreciate a pointer. From Peter at PSDT.com Fri Feb 24 12:44:49 2006 From: Peter at PSDT.com (Peter Scott) Date: Fri, 24 Feb 2006 12:44:49 -0800 Subject: [VPM] Object Oriented Perl In-Reply-To: <43FF6573.4050203@wardroper.org> References: <43FF6573.4050203@wardroper.org> Message-ID: <6.2.3.4.2.20060224123906.024c9fc8@mail.webquarry.com> At 11:58 AM 2/24/2006, Alan Wardroper wrote: >Enjoyed the last presentation on Class::Std and WWW::Maximizer, some of >which went a bit over my head. Which brings me to the point - anyone >have a copy of Damian Conway's Object Oriented Perl for sale? New to >Victoria too, so if anyone knows of a good bookstore for >technology-related books in town (competitive with online sellers--is >there such a thing?), esp used, would appreciate a pointer. http://www.amazon.ca/exec/obidos/ASIN/1884777791/qid=1140813481/sr=8-3/ref=sr_8_xs_ap_i3_xgl14/702-8683230-9062400 $32 http://dogbert.abebooks.com/servlet/BookDetailsPL?bi=657177173&searchurl=sts%3Dt%26an%3Dconway%26y%3D8%26tn%3Dobject-oriented%2Bperl%26x%3D38 $25 USD + shipping from USA. The book is actually increasing in value due to being out of print and in demand. Rumour has it that Manning is going to do a reprint but it is only a rumor. However, OOP is a bit dated now (2000) and I'd recommend Perl Best Practices instead: http://www.amazon.ca/exec/obidos/ASIN/0596001738/qid=1140813804/sr=8-2/ref=sr_8_xs_ap_i2_xgl14/702-8683230-9062400 $37 -- Peter Scott Pacific Systems Design Technologies http://www.perldebugged.com/ http://www.perlmedic.com/ From abez at abez.ca Fri Feb 24 13:21:42 2006 From: abez at abez.ca (abez) Date: Fri, 24 Feb 2006 16:21:42 -0500 (EST) Subject: [VPM] Object Oriented Perl In-Reply-To: <6.2.3.4.2.20060224123906.024c9fc8@mail.webquarry.com> Message-ID: I highly recommend Conway's OOP perl book because it is a great all around OO book, even if it is dated for Perl. On Fri, 24 Feb 2006, Peter Scott wrote: > > http://www.amazon.ca/exec/obidos/ASIN/1884777791/qid=1140813481/sr=8-3/ref=sr_8_xs_ap_i3_xgl14/702-8683230-9062400 > $32 > > http://dogbert.abebooks.com/servlet/BookDetailsPL?bi=657177173&searchurl=sts%3Dt%26an%3Dconway%26y%3D8%26tn%3Dobject-oriented%2Bperl%26x%3D38 > $25 USD + shipping from USA. > > The book is actually increasing in value due to being out of print and > in demand. Rumour has it that Manning is going to do a reprint but it > is only a rumor. > > However, OOP is a bit dated now (2000) and I'd recommend Perl Best > Practices instead: > > http://www.amazon.ca/exec/obidos/ASIN/0596001738/qid=1140813804/sr=8-2/ref=sr_8_xs_ap_i2_xgl14/702-8683230-9062400 > $37 > -- abez ------------------------------------------ http://www.abez.ca/ Abram Hindle (abez at abez.ca) ------------------------------------------ abez From darren at DarrenDuncan.net Fri Feb 24 23:27:43 2006 From: darren at DarrenDuncan.net (Darren Duncan) Date: Fri, 24 Feb 2006 23:27:43 -0800 Subject: [VPM] Object Oriented Perl In-Reply-To: <43FF6573.4050203@wardroper.org> References: <43FF6573.4050203@wardroper.org> Message-ID: At 11:58 AM -0800 2/24/06, Alan Wardroper wrote: >Enjoyed the last presentation on Class::Std and WWW::Maximizer, some of >which went a bit over my head. Which brings me to the point - anyone >have a copy of Damian Conway's Object Oriented Perl for sale? New to >Victoria too, so if anyone knows of a good bookstore for >technology-related books in town (competitive with online sellers--is >there such a thing?), esp used, would appreciate a pointer. The best local place for technology books is Bolen Books in the Hillside mall. Go there first and you won't regret it. -- Darren Duncan From jeremygwa at hotmail.com Sat Feb 25 19:13:08 2006 From: jeremygwa at hotmail.com (Jeremy Aiyadurai) Date: Sat, 25 Feb 2006 19:13:08 -0800 Subject: [VPM] regular expression and execution of routine Message-ID: hello all perl guru's in a regular expression how do I execute subroutines? eg. ------------------- $_ =~ s/replaceme (.*)/hello($1);/ig; sub hello { my ($test) = @_; ... } ----------------- I am using an ActiveState 5.8 something, perl distro. thanks in advance for all help, -Jeremy A. From abez at abez.ca Sat Feb 25 19:40:50 2006 From: abez at abez.ca (abez) Date: Sat, 25 Feb 2006 22:40:50 -0500 (EST) Subject: [VPM] regular expression and execution of routine In-Reply-To: Message-ID: perldoc perlre s/what/hello($1)/e (I think) On Sat, 25 Feb 2006, Jeremy Aiyadurai wrote: > hello all perl guru's > > in a regular expression how do I execute subroutines? > > eg. > ------------------- > $_ =~ s/replaceme (.*)/hello($1);/ig; > > > sub hello { > my ($test) = @_; > ... > } > > ----------------- > I am using an ActiveState 5.8 something, perl distro. > thanks in advance for all help, > > -Jeremy A. > > > _______________________________________________ > Victoria-pm mailing list > Victoria-pm at pm.org > http://mail.pm.org/mailman/listinfo/victoria-pm > -- abez ------------------------------------------ http://www.abez.ca/ Abram Hindle (abez at abez.ca) ------------------------------------------ abez