Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2010-04-28

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:11 * diakopter blinks
00:11 eternaleye joined #perl6
00:12 diakopter TimToady: maybe - is an optional prefix on a decimal/integer token, so LTM gets it.
00:13 TimToady that'll screw up -2**4, which is usually meant -(2**4)
00:14 TimToady since in math it's usually written -2⁴
00:15 TimToady we might be able to get away with ^10 as a literal though
00:15 TimToady won't help with -8.abs though
00:16 TimToady we started going that direction with -3+2i but it was turning into a Bad Idea
00:17 diakopter ---8.abs  "emphatically negative"
00:17 TimToady and -1/7 was a mess, as you discovered :)
00:17 diakopter yes
00:18 TimToady so we'll probably leave quo the status
00:18 diakopter or 0-8.abs
00:19 TimToady there are lots of ways to fix it, but they all seem to be worse than (^10).foo
00:19 * ruoso wonders if there is another unicode character to represent prefix:<->
00:20 * ruoso runs for cover before the crowd approaches with torchs
00:26 yinyin joined #perl6
00:28 eternaleye ruoso:
00:28 eternaleye ergh
00:28 eternaleye
00:28 eternaleye — is another
00:29 eternaleye (compose, -, -, -)
00:31 TimToady obviously, ☹ for negative and ☺ for positive
00:32 PerlJam heh
00:32 lue hello!
00:35 lue looks like I missed a bit of non-ASCII discussion. darn :)
00:36 sorear hello
00:36 * sorear appears
00:36 diakopter like an apparition
00:37 isBEKaml apparitions never say hello. :)
00:37 lue a quantum appearance, to be precise :)
00:42 * isBEKaml winds up. The day has dawned brighter. Let's see what it holds. Gotta get to work. :)
00:42 * isBEKaml is gone.... o/
00:42 am0c joined #perl6
00:42 isBEKaml left #perl6
00:44 dalek book: a8ccc78 | chromatic++ | src/subs-n-sigs.pod:
00:44 dalek book: Edited half of this section, mostly for clarity and style.  This could use some
00:44 dalek book: more index tags, and we need to make an editorial decision about the use of the
00:44 dalek book: word parameter versus argument.
00:45 dalek book: review: http://github.com/perl6/book/commit/a8ccc789874eac56c108f41f1551547655c0fc08
00:46 Exodist joined #perl6
00:53 kst joined #perl6
01:14 bradb joined #perl6
01:15 bradb joined #perl6
01:25 ShaneC joined #perl6
01:38 snarkyboojum phenny: tell masak, --target=sic is mighty fun to play with. cool stuff.
01:38 phenny snarkyboojum: I'll pass that on when masak is around.
01:45 takadonet1 joined #perl6
01:55 snarkyboojum joined #perl6
01:58 Psyche^ joined #perl6
02:03 takadonet1 left #perl6
02:10 alester joined #perl6
02:11 Minimiscience joined #perl6
02:14 bradb joined #perl6
02:21 JimmyZ joined #perl6
02:30 takadonet1 joined #perl6
02:35 [Coke] JimmyZ: what about the userid zhuomingliang ?
02:36 [Coke] ww
02:42 JimmyZ there was an id, jimmy
02:58 takadonet1 left #perl6
03:01 snarkyboojum joined #perl6
03:16 sorear rakudo: sub k ($x) { sub () { $x }; }; my $a = k(12);  my $b = k(24);  say $a()
03:16 p6eval rakudo 082cae: OUTPUT«24␤»
03:22 sorear ah
03:22 sorear #73034
03:22 sorear moritz++
03:22 sorear reporting my bugs 2 months before me
03:24 molaf joined #perl6
03:25 meppl joined #perl6
03:26 am0c joined #perl6
03:26 agentzh joined #perl6
03:38 meppel joined #perl6
03:40 diakopter perlesque: my $a = BigInteger.Create('2'); my $b = (BigInteger.Multiply($a.Power(333333),BigInteger.Create('65516468355'))).ToString(); say('length in decimal digits of the largest known twin prime: ' + ($b.Length)); say('its first few digits: ' + $b);
03:40 p6eval perlesque: OUTPUT«length in decimal digits of the largest known twin prime: 100355␤its first few digits:
03:40 p6eval ..111659361658117427982275056447748284627841501989315818143195562512552903769893899706131450160346036174685646429662107217694437705071008106571894525498510538322214090908452524919159911490325297241…
03:47 TimToady er, + for concatenate?  that's...not perlesque, no, no, no!
03:49 diakopter yes.
03:49 diakopter I mean, no, it's not.
03:49 diakopter you thought you saw a "+"; you didn't really; it's actually a tilde
03:49 diakopter see one sec
03:52 dalek csmeta: r212 | diakopter++ | trunk/Sprixel/ (2 files):
03:52 dalek csmeta: add tilde
03:52 dalek csmeta: review: http://code.google.com/p/csmeta/source/detail?r=212
03:52 alester joined #perl6
03:53 diakopter and by add tilde, I mean ADD
03:53 diakopter ;)
03:54 TimToady <diakopter> TimToady: does a while () { } loop  retain the inner scope across iterations (preserving contextual assignments) or does it reinitialize/revert them at the end of each iteration?
03:54 TimToady reinitializes
03:55 diakopter ok
03:55 diakopter or as they say nowadays, okies.
03:55 TimToady "everything is a closure"
03:56 p6eval joined #perl6
03:57 diakopter zugh.
03:58 sorear while is semantically a builtin HOF
03:58 diakopter ('zugh' at me breaking p6eval yet again)
04:02 diakopter perlesque: my $a = BigInteger.Create('2'); my $b = (BigInteger.Multiply($a.Power(333333),BigInteger.Create('65516468355'))).ToString(); say('length in decimal digits of the largest known twin prime: ' ~ ($b.Length)); say('its first few digits: ' ~ $b);
04:02 p6eval perlesque: OUTPUT«length in decimal digits of the largest known twin prime: 100355␤its first few digits:
04:02 p6eval ..111659361658117427982275056447748284627841501989315818143195562512552903769893899706131450160346036174685646429662107217694437705071008106571894525498510538322214090908452524919159911490325297241…
04:02 diakopter perlequel: .
04:02 diakopter oh; it's rebuilding rakudo ;)
04:02 diakopter perlesquel: .
04:02 p6eval perlesquel: OUTPUT«Cannot open assembly 'asmbly_1.exe': No such file or directory.␤Command exited with non-zero status 2␤real 0.10␤user 0.00␤sys 0.00␤»
04:03 diakopter or I can't type
04:04 diakopter hm. I guess I can't do the perlesquel thing till I make it more robust.
04:04 diakopter the building of the stages and things is a tad fragile.
04:14 sorear The new tools/contributors.pl in Rakudo is virtually a reimplementation of 'git shortlog'
04:20 sorear rakudo: say pir::isa__IPS(sub () {}, 'Sub')
04:20 p6eval rakudo 082cae: OUTPUT«0␤»
04:20 sorear problematic
04:20 * sorear needs a more robust way to detect invocables
04:34 quester_ joined #perl6
04:39 snarkyboojum joined #perl6
04:42 quester_ phenny: tell pmichaud When you have a moment, could you please take a look at RT #73148: "[PATCH] Fix bug #68752, make perl6 --version more informative" and let me know what you think?  Thank you!
04:42 phenny quester_: I'll pass that on when pmichaud is around.
04:59 quester_ rakudo: say ~\(1;2;3)
04:59 p6eval rakudo 082cae: OUTPUT«Capture()<0x5fa0930>␤»
04:59 quester_ rakudo: say ~\()
04:59 p6eval rakudo 082cae: OUTPUT«Capture()<0x4ed3138>␤»
05:01 rurban joined #perl6
05:02 quester_ phenny: tell masak It seems to me that RT #73326: "[BUG] Infinite recursion in stringification of a capture in Rakudo" was resolved at some point in the past, "say ~\()" now says "Capture()<0x4ed3138>".
05:02 phenny quester_: I'll pass that on when masak is around.
05:18 bradb left #perl6
05:21 * lue ĵums in to say goodnight moon
05:21 japhb joined #perl6
05:27 kaare joined #perl6
05:42 XaeroOne joined #perl6
05:47 lurking2long joined #perl6
05:50 lurking2long left #perl6
05:54 pugssvn r30489 | lwall++ | [STD] better messages at EOF, especially for regexes
05:57 TimToady wow, finally caught up on backlog for first time in a week...now I just have to do everything else I have to do...
05:58 uniejo joined #perl6
05:59 snarkyboojum TimToady: you need that text to speech converter and some kind of wearable computer setup :P
06:01 TimToady that wouldn't work too well for me; my reading speed varies too much, so most of the time the TTS would be either too fast or too slow
06:02 TimToady and many things here have to be seen to be believed :)
06:02 snarkyboojum hehe
06:04 eternaleye I can just see flite or festival having an aneurism trying to parse some of what occurs in this channel
06:07 eternaleye rakudo: say pir::does__IPS(sub () {}, 'Callable')
06:07 p6eval rakudo 082cae: OUTPUT«0␤»
06:08 eternaleye rakudo: say pir::does__IPS(sub () {}, 'Code')
06:08 p6eval rakudo 082cae: OUTPUT«1␤»
06:08 eternaleye sorear: ^^ maybe?
06:10 quester_ left #perl6
06:10 eternaleye rakudo: say pir::does__IPS(-> {}, 'Code')
06:10 p6eval rakudo 082cae: OUTPUT«1␤»
06:10 eternaleye rakudo: say pir::does__IPS( *.foo, 'Code')
06:11 p6eval rakudo 082cae: OUTPUT«1␤»
06:11 _jaldhar joined #perl6
06:11 eternaleye sorear: ^^^ very likely what you want
06:12 eternaleye rakudo: say pir::does__IPS( "Test for false positive", 'Code')
06:12 p6eval rakudo 082cae: OUTPUT«0␤»
06:18 Trashlord joined #perl6
06:23 viklund joined #perl6
06:25 eternaleye The funny thing is I've never written a single line of PIR.
06:28 moritz_ good morning
06:28 phenny moritz_: 27 Apr 23:21Z <jnthn> tell moritz_ if you're in the know at all on the book PDF gen, the operators.pod example loses its » in the PDF, which makes the example have a FAIL. Maybe we could fix it, or even just use the ASCII >> instead, since it's a bit easier for people to type. ;-)
06:30 XaeroOne joined #perl6
06:31 moritz_ phenny: tell jnthn the » work here... seems to be dependent on tex version/flavour :(
06:31 phenny moritz_: I'll pass that on when jnthn is around.
06:32 eternaleye moritz_: The error came up when isBEKaml was looking at the release PDF
06:55 JimmyZ_ joined #perl6
06:55 XaeroOne left #perl6
07:10 moritz_ eternaleye: it's wrong in the release pdf, but fixed locally here
07:10 eternaleye moritz_: I know,
07:11 eternaleye I was noting that because the actual message didn't specify if it was on someone building it themselves
07:19 jiing joined #perl6
07:20 XaeroOne joined #perl6
07:26 _jaldhar joined #perl6
07:32 bbkr_ joined #perl6
07:32 _sri joined #perl6
07:37 _jaldhar joined #perl6
07:37 jiing joined #perl6
07:37 eternaleye joined #perl6
07:37 ruoso joined #perl6
07:37 gurjeet joined #perl6
07:37 araujo joined #perl6
07:37 szabgab joined #perl6
07:37 obra joined #perl6
07:37 sunnavy joined #perl6
07:37 cookys_ joined #perl6
07:37 c1sung joined #perl6
07:37 Kovensky joined #perl6
07:37 hugme joined #perl6
07:37 lestrrat joined #perl6
07:37 IRSeekBot joined #perl6
07:38 iblechbot joined #perl6
07:42 M_o_C joined #perl6
07:44 iblechbot joined #perl6
07:44 XaeroOne joined #perl6
07:46 XaeroOne left #perl6
08:01 yinyin joined #perl6
08:21 sbp joined #perl6
08:24 fridim joined #perl6
08:48 dakkar joined #perl6
08:59 gfx joined #perl6
09:05 jonasbn joined #perl6
09:15 moritz_ rakudo: say ~\(1;2;3)
09:15 p6eval rakudo 082cae: OUTPUT«Capture()<0x5ff38e8>␤»
09:17 moritz_ I wonder what it should print
09:17 moritz_ maybe that's right... no idea
09:18 moritz_ it's a bit hard to write tests for something you don't know at all
09:23 m6locks whatsa capture
09:24 moritz_ basically an argument list
09:24 moritz_ see S02
09:24 m6locks ok
09:52 jnthn o/
09:52 phenny jnthn: 06:31Z <moritz_> tell jnthn the » work here... seems to be dependent on tex version/flavour :(
09:52 jnthn Oh, ew.
09:52 moritz_ actually I've investigated a bit more
09:53 moritz_ the pdf from last release is b0rked
09:53 moritz_ but when I build it locally, the new PDFs seem to be fine
09:53 moritz_ although sorear++ told me that on his setup the ASCII version >> is broken
09:53 moritz_ which I can't begin to comprehend at all
10:01 iblechbot joined #perl6
10:17 kcwu joined #perl6
10:18 pjcj_ joined #perl6
10:19 breinbaa1 joined #perl6
10:19 mdxi_ joined #perl6
10:19 broquain1 joined #perl6
10:19 jnthn_ joined #perl6
10:24 dalek book: 0db6713 | moritz++ | src/subs-n-sigs.pod:
10:24 dalek book: [subs] try to be more consistent wrt argument vs. parameter; also define "parameter"
10:24 dalek book: review: http://github.com/perl6/book/commit/0db67136a23885e615e37372888e7b9f8e4a177b
10:29 pugssvn joined #perl6
10:30 alester joined #perl6
10:34 pmurias joined #perl6
10:34 pmurias diakopter: hi
10:35 pmurias how should i invoke sprixel now?
10:43 masak joined #perl6
10:43 masak oh hai, #perl6
10:43 phenny masak: 01:38Z <snarkyboojum> tell masak --target=sic is mighty fun to play with. cool stuff.
10:43 phenny masak: 05:02Z <quester_> tell masak It seems to me that RT #73326: "[BUG] Infinite recursion in stringification of a capture in Rakudo" was resolved at some point in the past, "say ~\()" now says "Capture()<0x4ed3138>".
10:45 * masak resolves #73326
10:57 arthur-_ joined #perl6
11:07 envi^home joined #perl6
11:08 masak this reminds me of Perl 6 and the reasons behind LTA: http://cheerfulsw.com/2010/dont-listen-to-le-corbusier%E2%80%94or-jakob-nielsen/
11:09 masak 'In short, software cries out for love.' <3
11:09 masak putting good error messages into STD.pm6 and into Rakudo means putting in love.
11:20 alester joined #perl6
11:22 M_o_C joined #perl6
11:37 dual joined #perl6
11:38 meppl joined #perl6
11:40 dalek nqp-rx: 5961dad | bacek++ |  (5 files):
11:40 dalek nqp-rx: Update nqp-rx to recent parrot trunk.
11:40 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/5961dad596a797710c07b4bf17832be2e905f3d9
11:40 dalek nqp-rx: 8600657 | bacek++ | src/stage0/ (4 files):
11:40 dalek nqp-rx: New stage0 files
11:40 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/8600657a0e908c1862d3894db619e7fd0b3d6f3b
11:40 dalek nqp-rx: 4271e79 | moritz++ |  (17 files):
11:40 dalek nqp-rx: Merge remote branch 'bacek/master'
11:40 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/4271e79d91a3d0c44ff15113b11449dc9f540faf
11:40 dalek nqp-rx: 09ca8b1 | moritz++ | build/PARROT_REVISION:
11:40 dalek nqp-rx: bump PARROT_REVISION
11:40 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/09ca8b173c48bea87a43b6d27a150bdd19453ca4
11:45 JimmyZ joined #perl6
11:48 masak I'd be interested to hear what people think of cognominal++'s suggestion on p6l.
11:49 masak as far as I can see, it proposes to undo the generalization that led ? quantifiers to produce empty lists.
11:50 moritz_ it requires more thought
11:50 moritz_ would it be the same for all qunantifiers?
11:51 dalek nqp-rx: d893061 | moritz++ |  (17 files):
11:51 dalek nqp-rx: Revert "Merge remote branch 'bacek/master'"
11:51 dalek nqp-rx: This reverts commit 4271e79d91a3d0c44ff15113b11449dc9f540faf, reversing
11:51 dalek nqp-rx: changes made to d823fc2d9ea6c8706c260937b34861c0596e6486.
11:51 dalek nqp-rx: There were more changes in that branch than I realized, so I'll try to
11:51 dalek nqp-rx: cherry-pick the commits I'm really interested in
11:51 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/d893061d99fbfa8dccc90ef8f4a4017f6ca3ad8a
11:52 moritz_ sorry for all the nqp-rx noise, I accidentally the whole thing
11:53 moritz_ masak: in particular, would ** 0..1 behave the same as as ?
11:53 gurjeet joined #perl6
11:53 moritz_ masak: and what if a different quantifier matches just once, will it still produce a list?
11:54 masak those are all good questions.
11:54 moritz_ maybe I should answer to the mail on p6l
11:54 masak yeah, I thought of writing something like that, too.
11:56 dalek nqp-rx: 695e31a | bacek++ |  (5 files):
11:57 dalek nqp-rx: Update nqp-rx to recent parrot trunk.
11:57 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/695e31a5dfebb0b18d9d397e7423af1fdb4d0f0b
11:57 dalek nqp-rx: d04243b | bacek++ | src/stage0/ (4 files):
11:57 dalek nqp-rx: Update stage0 files
11:57 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/d04243bb8211822881a047df0522f42760d31a54
11:58 takadonet morning all
11:59 am0c joined #perl6
11:59 colomon o/
12:01 masak takadonet: \o
12:02 moritz_ rakudo: 'a' ~~ / <digit>* | 'a' /; say $/.keys
12:02 p6eval rakudo 082cae: OUTPUT«Method 'keys' not found for invocant of class 'Regex;Match'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
12:02 * moritz_ hates it
12:02 moritz_ rakudo: 'a' ~~ / <digit>* | 'a' /; say $/.Hash.keys
12:02 p6eval rakudo 082cae: OUTPUT«Method 'Hash' not found for invocant of class 'Regex;Match'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
12:02 moritz_ rakudo: 'a' ~~ / <digit>* | 'a' /; say $/.exists('digit')
12:03 p6eval rakudo 082cae: OUTPUT«Method 'exists' not found for invocant of class 'Regex;Match'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
12:03 moritz_ alpha: 'a' ~~ / <digit>* | 'a' /; say $/.Hash.keys
12:03 p6eval alpha 30e0ed:  ( no output )
12:03 moritz_ alpha: 'a' ~~ / <digit> | 'a' /; say $/.Hash.keys
12:03 p6eval alpha 30e0ed:  ( no output )
12:06 * moritz_ hopes he sent a non-bikesheddy response to p6l
12:07 lichtkind joined #perl6
12:11 lichtkind i dont get the parameter trait dynamic
12:11 cognominal "As far as I can see, it proposes to undo the generalization that led ? quantifiers to produce empty lists.". I wish I had expressed that so clearly.
12:11 cognominal masak++
12:12 lichtkind the sentence is: Specifies that the parameter is to be treated as an "environmental" variable, that is, a lexical that is accessible from the dynamic scope (see S02).
12:13 lichtkind does that mean a eg $a parameter is mapped to $*a ?
12:13 dalek nqp-rx: 40bb2a8 | moritz++ | docs/bootstrapping.pod:
12:13 dalek nqp-rx: [docs] fix typo in path
12:13 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/40bb2a8d84864d10935db50cd060e10fc13f5a52
12:16 lichtkind no suggestion?
12:17 moritz_ lichtkind: "accessible from the dynamic scope" means that if that sub calls another sub, that second sub can use CALLER:: to inspect the parameter
12:18 lichtkind moritz_: a like local var, thank you very much
12:19 moritz_ please don't use that term, it's confusing
12:19 lichtkind i ment it in the way: what we define in perl 4 and 5 as local
12:20 moritz_ I know. Still please don't use it in the context of Perl 6
12:20 plobsing joined #perl6
12:20 cognominal moritz: the point of my idea is that it is specific que the '?' quantfier.  zero or one, is not naturally represented by an array but by something present or missing.
12:20 cognominal s/que/to/
12:20 moritz_ it's even in Perl 5 confusing
12:21 moritz_ because people think of "local vars" as what my() provides
12:21 moritz_ cognominal: still it blurs the distinction between a successful-but-zero-times and a failed submatch
12:22 moritz_ cognominal: maybe it's worth it - I don't know
12:22 moritz_ I just wanted to mention the points that came to my mind while reading the proposal
12:23 cognominal I indeed agree that it blurs this distinction.
12:23 moritz_ if you really care about it, you can introduce an outer capture as a workaround
12:24 moritz_ $<outer>=[<inner>?]
12:24 masak I'm very uneasy with such a change.
12:24 masak but I can't pinpoint why.
12:24 masak maybe pmichaud has something to say about this.
12:24 moritz_ I'm quite sure he has :-)
12:26 cognominal The strongest argument against my proposal is indeed that a successful-but zero-times match does not appear in the parse tree. On the other hand, that's my very point : suppressing them.
12:27 masak I think the lack of exceptions that led to the current design is the strongest argument against your proposal.
12:27 masak IIRC, we originally had it much as you proposed.
12:29 cognominal I did not remember the orginal discussion, I just want to show the consequences with a Perl 6 grammar that has optional rules everywhere.
12:29 cognominal I would not be surprised that it does not hit other grammars heavily.
12:29 cognominal oops, double negation.
12:30 * moritz_ mentallly removes a negation in an inappropriate place
12:30 masak the original discussion was many years ago.
12:30 masak 2006 or 2007, perhaps.
12:31 masak it was either prompted by a request from audreyt or pmichaud, or both.
12:31 cognominal what was the original design?
12:31 moritz_ cognominal: maybe an interesting optimization would be to use a singleton empty list
12:33 jnthn Well, match objects are readonly iirc, so that could maybe work.
12:33 moritz_ they only mutable part of match objects are the ASTs
12:33 moritz_ s/they/the/
12:34 moritz_ and since arrays don't store ASTs, it could work
12:35 cognominal My interest in not only parse tree generating less data, but also being more readable, I just find  successful-but-zero-times submatch cluttering the parse tree.
12:36 * masak found the p6l message where $1 became $0! http://www.nntp.perl.org/group/perl.perl6.language/2005/05/msg21038.html
12:36 masak :)
12:37 cognominal When you read a parse tree of a siimple program it is cluttered with the  reductions triggered by the most adanced features of the language.
12:37 masak seems at that time, S05 said "Quantifiers (except C<?> and C<??>) cause a matched subrule or subpattern to return an array of C<Match> objects, instead of just a single object."
12:37 cognominal Pedagagically speaking, it is wrong.
12:37 [particle] joined #perl6
12:38 masak wow, regex match syntax was really in flux in 2005 :)
12:39 moritz_ aye
12:40 am0c joined #perl6
12:40 cognominal Perl 6 grammars is the very feature that convinced me of the Perl 6 power.
12:41 [Coke] joined #perl6
12:42 moritz_ it's certainly one of its outstanding killer features
12:43 masak rakudo: say flip 42
12:43 p6eval rakudo 082cae: OUTPUT«24␤»
12:43 moritz_ rakudo++
12:43 takadonet flip.... WOW!
12:44 [particle] rakudo: flip off
12:44 [particle] ;)
12:44 p6eval rakudo 082cae: OUTPUT«Could not find sub &off␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
12:44 [Coke] ugh. I need to write p6doc just so I can do perldoc -f flip. :P
12:44 masak rakudo: say flip [*] 1..4
12:44 p6eval rakudo 082cae: OUTPUT«42␤»
12:44 masak \o/
12:44 * moritz_ has an idea what masak is about...
12:44 masak you do? I don't :)
12:44 snarkyboojum joined #perl6
12:44 moritz_ we had that channel topic "we do haskell, too"
12:44 SmokeMachine joined #perl6
12:44 [Coke] hurm. do we have any tests or specs for what p6doc should do?
12:44 masak snarkyboojum: \o
12:45 snarkyboojum masak: o/
12:45 masak [Coke]: I like to think of p6doc as grok.
12:45 moritz_ which did the equivalent of flip [*] 1..4 in haskell
12:45 masak [Coke]: but it's only a directory of plans in the pugs repo so far.
12:45 masak moritz_: ah, yes. that must be where I got it.
12:46 [Coke] masak: path?
12:46 [Coke] only grok I see is in util
12:46 masak http://svn.pugscode.org/pugs/docs/u4x/
12:47 masak last time I spent time on u4x, I was trawling through P2T1A.
12:47 masak that's one of the files there.
12:47 masak don't remember how far I got.
12:48 masak were I to spend another batch of time on that -- something which by necessity would have to happen after the book is out -- I'd probably try to get a command-line app going.
12:48 moritz_ didn't literal++ do just that?
12:48 masak yes.
12:49 masak and his efforts have found their use in Padre, I think.
12:49 masak they would probably be a very good starting-point.
12:49 [Coke] literal?
12:49 moritz_ aka hinrik
12:49 literal aka yours truly
12:50 masak literal: \o/
12:50 [Coke] ah, there you are. do you have something like perldoc6 going?
12:50 masak literal: what do think about the u4x readiness of grok.
12:50 literal [Coke]: something like that
12:50 masak literal: we never really got to that point during that project, mostly due to lack of u4x :)
12:50 literal I need to look into this stuff some more again
12:52 literal I read somewhere that the NPW scheduled this weekend is all but cancelled due to the ash
12:52 literal is that true?
12:52 masak [Coke]: it might help to see the README, but my dream is basically that when the user sees e.g. a '^' in a Perl 6 program, she would type 'grok ^' and get help on the various constructs that might have a '^' in it.
12:52 moritz_ literal: yes
12:52 literal damn
12:53 masak yes. a real pity.
12:53 [Coke] masak: I'm assuming that grok should itself be written in perl6, and rely on the existing synopses ?
12:53 literal it's written in Perl 5 currently...
12:53 masak the implementation language isn't terrivly important. something that works.
12:53 [Coke] literal: where is grok now?
12:53 literal [Coke]: http://github.com/hinrik/grok
12:54 [Coke] masak: sorry, "ultimately" written in perl6.
12:54 masak aye. sure.
12:54 [Coke] er, no quotes necessary
12:54 masak it was probably wise of literal to choose Perl 5 for the project last summer.
12:54 [particle] it was wise enough to finish the grant
12:54 _jaldhar joined #perl6
12:55 masak it's possible to write impressive stuff in Rakudo at this point, but it'll be impressive in a glacial, molasses kind of way.
12:55 masak except when it crashes, which it does reasonably quickly.
12:55 masak </rant>
12:56 [particle] you're innovating too quickly.
12:56 [particle] we're helping you. :P
12:56 colomon but as I said yesterday, I've been having really good luck with Rakudo lately.
12:56 [Coke] literal: tests_recursive will not work if tests are already defined at /Users/coke/usr/lib/perl5/site_perl/5.10.1/Module/Install/Makefile.pm line 189.
12:57 literal [Coke]: yeah, that's due to a Module::Install change
12:57 literal lemme fix
12:57 colomon master seems to be drastically more stable than alpha was.
12:57 [Coke] guess I forked too soon. :P
12:57 masak colomon: yes, things do seem to be improving. you're probably more of a master guy than I am right now.
12:57 moritz_ colomon: except for the non-zero exit status that I've seen cropping up in the spectests recently :/
12:58 colomon moritz_: oh noez!
12:58 colomon masak: I don't even remember where I have alpha installed on my computer anymore.
12:59 masak I wish I could say the same. I use alpha daily.
12:59 colomon and I'm pretty sure the code I've been writing wouldn't work on alpha anyway.  ;)
12:59 moritz_ masak: have you tried SVG.pm with master?
13:00 pmurias joined #perl6
13:01 literal [Coke]: try now
13:01 moritz_ rakudo: rx/foo/
13:01 p6eval rakudo 082cae:  ( no output )
13:01 perseo22 joined #perl6
13:01 moritz_ rakudo: my $x = rx{ foo }; say $x.WHAT
13:01 p6eval rakudo 082cae: OUTPUT«Could not find sub &rx␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
13:01 [Coke] anyone know how to rebase my fork? =-)
13:01 ReiniUrban joined #perl6
13:02 moritz_ [Coke]: do you have changes in there?
13:02 moritz_ if not, git merge hinrik/master
13:02 moritz_ rakudo: my $x = rx/ foo /; say $x.WHAT
13:02 p6eval rakudo 082cae: OUTPUT«Regex()␤»
13:03 [Coke] fatal: 'hinrik/master' does not point to a commit
13:04 moritz_ [Coke]: have you added literal's repo as a remote?
13:04 [Coke] no.
13:04 literal try: git pull --rebase git://github.com/hinrik/grok.git master
13:04 * [Coke] re-reads the "setup a fork" page on github.
13:04 masak moritz_: no. haven't done anything with SVG.pm in ages.
13:05 moritz_ git remote add hinrik http://github.com/hinrik/grok.git; git remote update; git merge hinrik/master
13:05 masak moritz_: specifically, I haven't renamed it to something more generic.
13:05 moritz_ masak: needs just one change to parse
13:05 masak hugme: add moritz_ to svg
13:05 hugme masak: sorry, I don't know anything about project 'svg'
13:05 [Coke] http://help.github.com/forking/ works much better if you do the "git remote add". =-)
13:05 masak ah.
13:06 masak moritz_: you now have commit access to the svg project.
13:06 * masak hugs moritz_
13:06 masak welcome aboard :)
13:06 moritz_ thanks :-)
13:07 * takadonet takes a picture
13:07 * moritz_ is not ashamed
13:07 takadonet moritz_: Just a touching moment that I want to remember :)
13:08 dalek grok: daf3a0c | (Hinrik Örn Sigurðsson)++ |  (2 files):
13:08 dalek grok: Sidestep some Module::Install fail
13:08 dalek grok: review: http://github.com/hinrik/grok/commit/daf3a0c2da78de51e6107aba4b5e4b1a447eb937
13:08 [Coke] literal: all tests pass.
13:08 moritz_ rakudo: say (a => 1).elems
13:08 masak a grok commit! literal++
13:08 p6eval rakudo 082cae: OUTPUT«Method 'elems' not found for invocant of class 'Pair'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
13:09 moritz_ alpha: say (a => 1).elems
13:09 p6eval alpha 30e0ed: OUTPUT«1␤»
13:09 * masak submits rakudobug
13:10 * moritz_ spectests fix for rakudobug
13:11 moritz_ that's what blows up in SVG.pm
13:11 masak appcheese++
13:11 colomon moritz_: how are you fixing that?  he asked with some curiosity...
13:12 moritz_ augment class Any { multi method elems() { 1 } }
13:12 masak colomon: '"Who discovered radium?" asked Marie curiously.' :)
13:12 masak colomon: http://www.fun-with-words.com/tom_swifties_history.html
13:12 bluescreen joined #perl6
13:12 colomon masak: yes, I know tom swifties.  :)
13:13 colomon (though maybe not the history...)
13:13 muixirt joined #perl6
13:15 moritz_ masak: feel free to add yourself to the "basic Buf implementation" goal in docs/ROADMAP :-)
13:15 * masak does so
13:16 colomon masak: what's your timeline like for Buf?
13:17 * masak goes looking for the appropriate gist
13:17 masak http://gist.github.com/360097
13:18 cognominal hum, what is the way to call a method in the super class?
13:18 masak depends.
13:18 masak usually through WALK-y things.
13:18 moritz_ $obj.Class::method()
13:18 masak such as 'nextsame'.
13:18 cognominal thx, reading the doc
13:19 masak or what moritz_ said, but I've never done that. feels a bit hardcoded.
13:19 dalek rakudo: 6cf515b | masak++ | docs/ROADMAP:
13:19 dalek rakudo: [ROADMAP] added self to Buf impl work
13:19 dalek rakudo: Seems someone got his GSoC project accepted. \o/
13:19 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6cf515ba8ac53d7e97988220eba735821aea0982
13:20 cognominal hum, I forgot to say that the signature  of the super method is different.
13:20 moritz_ nextwith() then
13:21 JimmyZ someone? It's masak! :)
13:21 colomon masak++ # had a good time reading the example tom swifties, even if I did know what they were already.  :)
13:21 masak :)
13:23 * JimmyZ wonders why people is interested in GSoC.
13:23 moritz_ JimmyZ: getting money for fun hacking is interesting :-)
13:25 JimmyZ oh, just find google needs GSoC students in China too. :)
13:26 moritz_ sure, why not?
13:27 JimmyZ I thought google didn't need
13:27 masak it's mostly about goodwill from Google's side, I think.
13:27 moritz_ google doesn't really care where the students come from
13:28 moritz_ there are a few countries which are not acceptable, but that's because of US laws, not because of google being selective
13:29 * masak .oO( Illegal GSoC tribute )
13:29 JimmyZ bad laws, I guess.
13:30 moritz_ JimmyZ: will, the US has trade embargos, iirc
13:30 moritz_ Cuba, Iran, ... don't know if there are more
13:33 ruoso joined #perl6
13:36 pugssvn r30490 | moritz++ | [t/spec] test for RT #74732, Pair.elems
13:36 pugssvn r30491 | moritz++ | [t/spec] 3.end should return 0, just like 3.elems == 1
13:38 JimmyZ joined #perl6
13:39 [particle] North Korea
13:39 dalek rakudo: 6a502fc | moritz++ | src/core/Any-list.pm:
13:39 dalek rakudo: implement Any.elems to fix RT #74732
13:39 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6a502fcb6675d313df7739536128bf227c3814ae
13:40 colomon Thought that might be your solution.  :) moritz_++
13:42 perseo22 left #perl6
13:43 chitragupt joined #perl6
13:44 masak meanwhile, at work, a colleague would have been saved a lot of pain and frustration today if Java had just had roles.
13:46 moritz_ masak: SVG.pm is maximally hostile wrt inheritance :(
13:46 masak is that so? anything that can be improved?
13:46 moritz_ well, all routines are (lexical) subs
13:46 masak oops :)
13:47 moritz_ so there's just one public method
13:47 moritz_ and nothing that could be changed through inheritance
13:47 masak would be nice if it mutated into a general XML emitter which could be extended for e.g. SVG.
13:47 moritz_ aye
13:47 moritz_ anyway, with the latest rakudo fix it passes 2 of 3 tests
13:48 masak \o/
13:48 moritz_ and it fails the one test because the text that should be escaped doesn't appear in the output at all
13:49 masak huh.
13:53 Guest4436 joined #perl6
13:53 JimmyZ \o
13:58 moritz_ rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {%c{$_}}, :g)
13:58 p6eval rakudo 6cf515: OUTPUT«ab␤»
13:58 moritz_ that's the real problem
13:58 moritz_ rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {warn $_.perl; %c{$_}}, :g)
13:58 p6eval rakudo 6cf515: OUTPUT«Method 'perl' not found for invocant of class 'Regex;Match'␤current instr.: '_block59' pc 587 (EVAL_1:208)␤»
13:58 moritz_ rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {%c{"$_"}}, :g)
13:58 p6eval rakudo 6cf515: OUTPUT«ab␤»
13:59 moritz_ rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {wary $_; %c{"$_"}}, :g)
13:59 p6eval rakudo 6cf515: OUTPUT«Could not find sub &wary␤current instr.: '_block59' pc 587 (EVAL_1:208)␤»
13:59 moritz_ rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {warn $_; %c{"$_"}}, :g)
13:59 colomon is the issue that $_ isn't being set properly in the code block called by subst?
13:59 p6eval rakudo 6cf515: OUTPUT«Warning␤␤ab␤»
13:59 moritz_ rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {warn $_.WHAT; %c{"$_"}}, :g)
13:59 p6eval rakudo 6cf515: OUTPUT«Regex::Match()␤ab␤»
13:59 moritz_ colomon: there's a Regex::Match object being passed
14:00 moritz_ colomon: but it seems empty, or so
14:00 colomon so that part is working, anyway.  huh.
14:00 gurjeet joined #perl6
14:00 colomon :\
14:00 moritz_ rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {warn join ',', .from, .to, .Str %c{"$_"}}, :g)
14:00 p6eval rakudo 6cf515: OUTPUT«Could not find sub &c␤current instr.: '_block59' pc 587 (EVAL_1:208)␤»
14:00 moritz_ rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {warn join ',', .from, .to, .Str; %c{"$_"}}, :g)
14:00 p6eval rakudo 6cf515: OUTPUT«3,-3,␤ab␤»
14:00 moritz_ but it's a failed match object... WTF?
14:01 moritz_ why would .subst pass a match object of a failed match to the substitution block?
14:01 moritz_ rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {warn join ',', .from, .to, .Bool; %c{"$_"}}, :g)
14:01 p6eval rakudo 6cf515: OUTPUT«3,-3,0␤ab␤»
14:02 moritz_ rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {warn join ',', .from, .to, .Bool, .orig; %c{"$_"}}, :g)
14:02 p6eval rakudo 6cf515: OUTPUT«3,-3,0,a&b␤ab␤»
14:03 colomon moritz_: I need to get a big build going for $work, then I'll see if I can help here.
14:04 alester joined #perl6
14:09 isBEKaml joined #perl6
14:09 smash_ joined #perl6
14:09 smash_ hello everyone
14:09 colomon o/
14:09 [Coke] SMASH!
14:10 masak smash_: \o
14:10 isBEKaml good evening, #perl6!
14:10 moritz_ good localtime() isBEKaml
14:11 isBEKaml moritz_: aww, maybe there should be something that tells the time of the day (morning, evening, night) ;)
14:12 moritz_ isBEKaml: sounds like a good exercise for a module, to get familiar with DateTime :-)
14:12 masak yes, please.
14:12 masak and a blog post :P
14:13 isBEKaml moritz_: :)
14:15 pmurias ruoso: hi
14:16 kst joined #perl6
14:17 pmurias ruoso: rebuilding the mildew setting has seemed to bitrotted, i'm fixing it
14:17 isBEKaml moritz_: I have a little suggestion about the book. Since this is essentially a learn-as-you-code (code-as-you-learn as the case maybe :) ) approach,  I feel you don't need to include answers to exercises at the end of the chapters.
14:18 isBEKaml moritz_: Instead, since the API can change over time, maybe you can just include some stable methods and additional ones to play with?
14:18 moritz_ isBEKaml: maybe the answers should go at the end of the book
14:19 masak aye.
14:19 moritz_ but they should be included if people don't find out themselves - research on minimal-guidance based learning suggests it's necessary
14:19 moritz_ isBEKaml: uhm, which API are you talking about?
14:20 moritz_ (or at least for some of them)
14:21 pmurias does any one do exercises from programming books ? ;)
14:21 moritz_ pmurias: depends on how serious I am about learning
14:23 SmokeMachine joined #perl6
14:24 moritz_ wow, I still get feedback for my 5-to-6 blog posts
14:24 moritz_ I wonder if I should turn them into a mini book or so
14:27 isBEKaml moritz_: maybe API's the wrong term to use, I meant the functions, operators that you demonstrate through the chapters. I was thinking you can include some more of them that do similar things, perhaps..
14:28 pmurias moritz_: it could be very usefull for perl5 coder who don't want to read the whole spec and would be bored by a from the basic introductory approach
14:28 isBEKaml pmurias: :D I usually don't... Exercises let me be choosy about what to do.. ;)
14:28 dalek book: db22164 | masak++ | src/subs-n-sigs.pod:
14:28 dalek book: [subs-n-sigs] fixed grammaro
14:28 dalek book: review: http://github.com/perl6/book/commit/db22164a931c8c19532a20572f53ec19cc81961a
14:29 moritz_ isBEKaml: you mean like a short reference?
14:29 colomon moritz_: any luck sorting out .subst?
14:30 moritz_ colomon: haven't investigated much more - only found that .subst calls .split(..., :all)
14:30 masak pmurias: we should probably have a comment such as 'if you're a Perl 5 coder, you might want to start from chapter $N rather than chaper 1'.
14:30 isBEKaml no, not exactly. Problem statement, hint states some function that we can use. Now, have a look at this function/op and see what it does. If you don't understand, there's the glossary/IRC. ;)
14:30 moritz_ masak: except that it doesn't work with our book
14:31 masak why not?
14:31 moritz_ isBEKaml: that's actually a good idea
14:31 moritz_ masak: because we cover things in chapter 1 that perl 5 programmers don't know
14:32 masak that may be. but it's definitely more of a beginner's introduction than meant for Perl 5 coders.
14:34 [Coke] immutable strings branch is better with parrot trunk now, but still failing.
14:34 isBEKaml moritz_: I think readers would appreciate things more if the book takes on a laidback approach of allowing the learner to figure things out.
14:35 moritz_ isBEKaml: agreed
14:35 isBEKaml moritz_: But lay down the concepts/foundation well beforehand..
14:36 moritz_ isBEKaml: might I trick you into writing such a laid-back guiding for one exercise?
14:37 moritz_ or bribe you, with virtual $beverage-of-choice
14:38 am0c joined #perl6
14:38 isBEKaml moritz_: sure, seeing as I'm only a couple of days into perl6, I might take long to come up with even a para of text. :D
14:39 moritz_ isBEKaml: well, it's a good test for the book...
14:39 moritz_ isBEKaml: if you read the first chapter, and try to solve the exercises
14:39 moritz_ isBEKaml: you know *now* where you have troubles
14:39 moritz_ isBEKaml: even telling us about these troubles would be helpful for us authors
14:41 isBEKaml moritz_: yeah, there were some off-ish issues with formatting and some broken code, as far into chapter 2, nothing that's still in latest repos..  I'll be working through chapter 3 now, but the formatting there is broken. :(
14:41 moritz_ isBEKaml: wait, I'll upload a better PDF
14:42 moritz_ isBEKaml: please try http://moritz.faui2k3.org/tmp/book.pdf
14:43 moritz_ isBEKaml: should include fixed >> + their unicode versions
14:45 isBEKaml moritz_: there's quite a distance! Connection's crawling in singledigit kbps.. :D
14:45 isBEKaml moritz_: done downloading, thanks.
14:48 nihiliad joined #perl6
14:51 isBEKaml moritz_: In page 11, even as it is explained about [max] and infix operators, it doesn't explain the significance of including the ">>" between objects and methods. We could go on wondering what these characters were doing there...
14:53 colomon rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {warn $/.WHAT; %c{"$/"}}, :g)
14:53 p6eval rakudo 6a502f: OUTPUT«Any()␤ab␤»
14:55 M_o_C joined #perl6
14:55 masak bug opened 15:11, closed 15:50. :) moritz_++
14:57 moritz_ colomon: I don't expect $/ to be set; I know it's NYI
14:58 moritz_ rakudo: 'a&b'.subst(rx/ <[&]> /, -> $x { warn $x.WHAT; 2 })
14:58 p6eval rakudo 6a502f: OUTPUT«Regex::Match()␤»
14:58 moritz_ rakudo: say 'a&b'.subst(rx/ <[&]> /, -> $x { warn $x.WHAT; 2 })
14:58 p6eval rakudo 6a502f: OUTPUT«Regex::Match()␤a2b␤»
14:58 moritz_ rakudo: say 'a&b'.subst(rx/ <[&]> /, -> $x { warn ~$x; 2 })
14:58 p6eval rakudo 6a502f: OUTPUT«&␤a2b␤»
14:58 colomon so that pir::store_dynamic_lex call to set $/ isn't working?
14:59 moritz_ nope; we could just as well remove it
15:00 moritz_ rakudo: my %c = '&' => '&amp'; say %c.perl; say 'a&b'.subst(rx/ <[&]> /, -> $x { warn ~$x; 2 })
15:00 p6eval rakudo 6a502f: OUTPUT«{"\&" => "\&amp"}␤&␤a2b␤»
15:02 moritz_ rakudo: my %c = '&' => '&amp'; say %c.perl; say 'a&b'.subst(rx/ <[&]> /, -> $x { warn ~$x; %c{~$x} })
15:02 p6eval rakudo 6a502f: OUTPUT«{"\&" => "\&amp"}␤&␤a&ampb␤»
15:02 moritz_ rakudo: my %c = '&' => '&amp'; say %c.perl; say 'a&b'.subst(rx/ <[&]> /, -> $x { warn ~$x; %c{$x} })
15:02 p6eval rakudo 6a502f: OUTPUT«{"\&" => "\&amp"}␤&␤a&ampb␤»
15:04 molaf joined #perl6
15:10 dalek book: 95acbd0 | moritz++ | bin/book-to-latex:
15:10 dalek book: [latex] use the font "bera" consistently. Patch by sahadev++
15:10 dalek book: review: http://github.com/perl6/book/commit/95acbd01877af41bb865f2e5855b1b8c61161a13
15:14 diakopter pmurias: hi
15:15 colomon rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, {warn $_.WHAT; %c{"$_"}}, :g)
15:15 p6eval rakudo 6a502f: OUTPUT«Regex::Match()␤ab␤»
15:15 colomon huh.
15:15 moritz_ so
15:15 colomon I removed the pir::store_dynamic_lex locally, and now I don't even get the ab from that.
15:15 pmurias diakopter: hi
15:15 moritz_ it works with -> $x but not with $_, right?
15:16 pmurias diakopter: is sprixel in a working state atm?
15:16 colomon rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, -> $x {warn $x.WHAT; %c{"$x"}}, :g)
15:16 p6eval rakudo 6a502f: OUTPUT«Regex::Match()␤ab␤»
15:17 moritz_ rakudo: my %c = '&' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, -> $x {warn $x.WHAT; %c{~$x}}, :g)
15:17 p6eval rakudo 6a502f: OUTPUT«Regex::Match()␤ab␤»
15:17 cotto_work joined #perl6
15:17 * moritz_ lost
15:18 colomon I'm suspecting the real issue may be with the match objects.
15:18 diakopter pmurias: oh, sorta.
15:18 colomon but I'm pretty lost myself in all this.
15:18 diakopter I'll revert that change.
15:19 pmurias i'm currently removing bitrot from mildew so i don't need a working sprixel atm
15:20 diakopter pmurias: fixed
15:20 jt joined #perl6
15:21 dalek csmeta: r213 | diakopter++ | trunk/Sprixel/ (2 files):
15:21 dalek csmeta: [perlesque] revert the save-assembly-only change
15:21 dalek csmeta: review: http://code.google.com/p/csmeta/source/detail?r=213
15:23 colomon moritz_: quasi-confirmed
15:23 colomon I just added             say @chunks[$i].WHAT ~ ": " ~ @chunks[$i];
15:23 colomon to the source
15:23 colomon and what I got back was
15:23 colomon Regex::Match():
15:23 moritz_ so it's really a match object stringifying to the empty string?
15:24 moritz_ rakudo: my %c = '' => '&amp;'; say 'a&b'.subst(rx/ <[&]> /, -> $x {warn $x.WHAT; %c{~$x}}, :g)
15:24 p6eval rakudo 6a502f: OUTPUT«Regex::Match()␤a&amp;b␤»
15:24 moritz_ (note the hash key...)
15:24 colomon at least, it is that before it is passed as $_, yes.
15:25 * moritz_ wonders why the tests for split() still all pass
15:25 ruoso joined #perl6
15:26 colomon actually, it may be failing instead of stringifying to the empty string, or something like that.
15:26 colomon not sure how you would tell the difference.
15:26 masak rakudo: sleep
15:26 p6eval rakudo 6a502f: OUTPUT«Not enough positional parameters passed; got 0 but expected 1␤current instr.: 'sleep' pc 373833 (src/gen/core.pir:29344)␤»
15:26 * masak updates rakudobug
15:26 [Coke] masak - that was fixed in alpha, but not master.
15:27 masak indeed.
15:27 [Coke] masak: pending a "how to sleep for infinity" method in parrot.
15:27 masak [Coke]: seems you already updated that ticket, to boot :)
15:27 colomon heh.  I'm not sure there are ANY tests in subst for sending a closure in that we actually pass at the moment.
15:27 masak alpha sleeps for 68 years instead :)
15:27 colomon lots of skips in that file.
15:27 moritz_ that's sad-ish
15:28 masak 68 years is probably enough for most purposes.
15:28 moritz_ (I mean the skips, not the 68 years :)
15:28 pmurias diakopter: see the bug found when parsing mildews output
15:29 colomon moritz_: there is exactly 1 test for the :all modifier to split, and that is skipped.  :(
15:29 moritz_ :(
15:30 pugssvn r30492 | pmurias++ | [mildew] fixes to the output of bread -Cperlesque
15:31 dalek csmeta: r214 | pawelmurias++ | trunk/Sprixel/t/parse_bug.t:
15:31 dalek csmeta: failing test
15:31 dalek csmeta: review: http://code.google.com/p/csmeta/source/detail?r=214
15:31 colomon moritz_: do you want to have a go at writing some, or should I?
15:31 synth joined #perl6
15:32 moritz_ colomon: I need to decommute - I have you have time for some tests, that would be great
15:32 colomon moritz_: can't do a bunch, but I can at least do a few.  sure thing.
15:33 diakopter pmurias: did it say what line number it got to?
15:33 diakopter gtg; bbl
15:35 colomon moritz_: it gets better.  as far as I can tell, we have pretty much only one direct test for the .match method, which is key to making split work.
15:35 rv2733 joined #perl6
15:37 colomon rakudo: say "hello world".split(/[aeiou]/).perl
15:37 p6eval rakudo 6a502f: OUTPUT«("hello world")␤»
15:37 colomon rakudo: say "hello world".split(/o/).perl
15:37 p6eval rakudo 6a502f: OUTPUT«("hell", " w", "rld")␤»
15:37 colomon rakudo: say "hello world".split(/o/, :all).perl
15:37 p6eval rakudo 6a502f: OUTPUT«Method 'perl' not found for invocant of class 'Regex;Match'␤current instr.: 'perl6;Iterator;_block14882' pc 453094 (src/gen/core.pir:59398)␤»
15:39 pmurias diakopter: no
15:43 masak colomon: [aeiou] is spelled <[aeiou]> nowadays.
15:43 colomon masak++
15:45 colomon errr.... what do I test for to see if something is a match?
15:45 colomon Is it Match?  Regex::Match?
15:45 colomon I'm suspicious Rakudo doesn't match the spec there...
15:46 masak known. :)
15:46 masak and very aggravating.
15:48 colomon what should it be ideally?
15:49 nadim joined #perl6
15:49 jnthn Match, iirc.
15:50 jnthn We're blocking on Rakudo running on latest Parrot so moritz++ can continue hacking in this area.
15:50 jnthn That in turn blocks on a Parrot bug, though I didn't check latest status of the ticket today.
15:50 colomon jnthn++
15:52 jnthn ah, there has been a patch from Allison that may deal with the issue.
15:52 dalek joined #perl6
15:52 TimToady catching errors like [aeiou] is on my list of lovin's to be installed in STD
15:52 masak :)
15:53 colomon jnthn: can you back up a minute and provide more context for your last few comments here?  you're not blocking on split, subst, or SVG.pm, are you?
15:53 [Coke] jnthn: immutable_strings is now hanging on a setprop fail.
15:53 masak STD.pm6 -- knows more about Perl 6 programming than the average Perl 6 programmer :)
15:53 [Coke] s/hanging/blocking/
15:54 [Coke] jnthn: the bug you reported in parrot yesterday is fixed.
15:54 jnthn colomon: Progress on getting Match right is blocking on Rakudo running on latest Parrot trunk.
15:54 colomon masak: you mean "than the average Perl 6 developer"  ;)
15:54 jnthn [Coke]: Ah, great.
15:54 colomon jnthn: ah, interesting.
15:54 TimToady All Perl 6 programmers are above average.  :)
15:54 pugssvn r30493 | colomon++ | [t/spec] Add some simple tests for :all.
15:54 jnthn [Coke]: Will look into The Next Issue this evening then.
15:55 colomon rakudo: my $a = "hello".match(/<[aeiou]>/); say $a.WHAT; say $a
15:55 p6eval rakudo 6a502f: OUTPUT«Regex::Match()␤e␤»
15:57 masak Perl 6 -- applying the Lake Wobegon effect to Second System Syndrome since 2001.
15:58 colomon ah, might have an idea what is going wrong here....
16:01 justatheory joined #perl6
16:02 colomon got it/
16:03 colomon (past colomon)--
16:10 redicaps joined #perl6
16:10 redicaps std: say "hello world"
16:10 p6eval std 30493: OUTPUT«ok 00:01 109m␤»
16:14 redicaps left #perl6
16:15 ash__ joined #perl6
16:15 moritz_ rakudo: say ?«'moin'.split(rx/<[aeiou]>/, :all)
16:15 p6eval rakudo 6a502f: OUTPUT«10001␤»
16:15 moritz_ rakudo: say ?«'mon'.split(rx/<[aeiou]>/, :all)
16:16 p6eval rakudo 6a502f: OUTPUT«101␤»
16:16 moritz_ rakudo: say 'mon'.split(rx/<[aeiou]>/, :all)».WHAT
16:16 p6eval rakudo 6a502f: OUTPUT«Str()Regex::Match()Str()␤»
16:16 moritz_ rakudo: say 'mon'.split(rx/<[aeiou]>/, :all)».uc
16:16 p6eval rakudo 6a502f: OUTPUT«Method 'uc' not found for invocant of class 'Regex;Match'␤current instr.: '!dispatch_method_parallel' pc 359 (src/glue/dispatch.pir:72)␤»
16:16 dalek csmeta: r215 | anteus4++ | trunk/Sprixel/t/controlflow.t:
16:16 dalek csmeta: added loop tests
16:16 dalek csmeta: review: http://code.google.com/p/csmeta/source/detail?r=215
16:21 cdarroch joined #perl6
16:21 cdarroch joined #perl6
16:28 masak std: >>.say
16:28 p6eval std 30493: OUTPUT«[31m===[0mSORRY![31m===[0m␤Method call found where infix expected (omit whitespace?) at /tmp/4DPhQ3ZTnW line 1:␤------> [32m>>[33m⏏[31m.say[0m␤    expecting any of:␤  bracketed infix␤  infix or meta-infix␤[31m===[0mSORRY![31m===[0m␤Method call found where infix
16:28 p6eval ..expected (…
16:29 masak std: .>>say
16:29 p6eval std 30493: OUTPUT«[31m===[0mSORRY![31m===[0m␤Bogus statement at /tmp/FMxWM2dVEL line 1:␤------> [32m<BOL>[33m⏏[31m.>>say[0m␤Parse failed␤FAILED 00:01 108m␤»
16:30 jnthn rakudo: >>.say
16:30 p6eval rakudo 6a502f: OUTPUT«Confused at line 11, near ">>.say"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
16:30 jnthn rakudo: .>>say
16:30 p6eval rakudo 6a502f: OUTPUT«Confused at line 11, near ".>>say"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
16:30 jnthn Awesomization required!
16:32 am0c joined #perl6
16:33 moritz_ colomon: in http://perl6advent.wordpress.com/2009/12/06/day-6-going-into-hyperspace/ you talk about (1, 2, 3, 4)>>++
16:33 TimToady you're the first person who has asked for that to work, so I'm not sure that it's worth making it work.
16:33 moritz_ colomon: which can't work, because ++ modifies in-place
16:34 TimToady and $_».say isn't so much longer
16:34 masak not asking for it to work. :)
16:34 * jnthn isn't asking for it to work either :-)
16:34 TimToady it doesn't even look like something people will try very often
16:34 jnthn I was meaning the error messages in Rakudo needed improving to STD quality. :-)
16:34 TimToady oh, nevermind then :)
16:35 TimToady std: ».say
16:35 p6eval std 30493: OUTPUT«[31m===[0mSORRY![31m===[0m␤Method call found where infix expected (omit whitespace?) at /tmp/UsHpS4CPe0 line 1:␤------> [32m»[33m⏏[31m.say[0m␤    expecting any of:␤    bracketed infix␤  infix or meta-infix␤[31m===[0mSORRY![31m===[0m␤Method call found where infix
16:35 p6eval ..expected (o…
16:35 jnthn Well, and I did also wonder if it accidentally worked in Rakudo. ;-)
16:35 TimToady though it's not clear to me why it's even getting that message
16:35 jnthn TimToady: It's...extremely SORRY.
16:36 jnthn Twice
16:36 jnthn :-)
16:36 jnthn (Which is also a tad odd.)
16:36 TimToady it's supposed to suppress duplicates
16:36 TimToady which are often created under backtracking
16:37 diakopter pmurias: I fixed the bug(s)
16:38 diakopter pmurias: I'll commit them, but you need to commit P6Str.cs :P
16:39 TimToady I think my supposition logic is not sufficiently suppositional...
16:40 jnthn I suppose not.
16:42 pmurias diakopter: it's already commited
16:43 diakopter oh
16:43 diakopter pmurias: oh, you typoed the capitalization :P
16:44 diakopter the class is named P6str inside P6Str.cs, and in parse_bug.t it's called P6Str
16:45 pmurias what's the type of sprixel literals?
16:46 dalek csmeta: r216 | diakopter++ | trunk/Sprixel/ (5 files):
16:46 dalek csmeta: [perlesque] note: subs that don't have an explicit return statement need to
16:46 dalek csmeta: declare their return type up front.
16:46 dalek csmeta: review: http://code.google.com/p/csmeta/source/detail?r=216
16:47 pmurias diakopter: commited
16:51 dalek csmeta: r217 | pawelmurias++ | trunk/Sprixel/src/Types/P6Str.cs:
16:51 dalek csmeta: fix P6Str
16:51 dalek csmeta: review: http://code.google.com/p/csmeta/source/detail?r=217
16:51 pmurias bjj&
16:55 _jaldhar joined #perl6
17:00 dalek rakudo: 72f914f | (Solomon Foster)++ | src/core/Cool-str.pm:
17:00 dalek rakudo: Clone the returned match so we can take it without worrying about the next iteration clobbering it.
17:00 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/72f914f44897c5a1d64287a119af8b9fa5d9dbc7
17:01 * moritz_ thought matches were immutable
17:11 bezko joined #perl6
17:12 bezko new here, just dropping to ask if anyone knows what is the status of mod_parrot
17:12 molaf joined #perl6
17:13 diakopter bezko: #parrot is on the mag-net
17:13 colomon moritz_: a match might be,but the var holding it isn't.
17:14 jnthn bezko: Not sure folks here would know - I've not heard anything much for a while.
17:14 jnthn bezko: Probably best to ask on #parrot as diakopter suggested, they are more likely to be clued in. :-)
17:15 bezko anyone using perl6 for web development?
17:15 * moritz_ points to masak
17:32 Transformer joined #perl6
17:41 ingy joined #perl6
17:43 wasy_ joined #perl6
17:43 wasy_ joined #perl6
17:44 wasy_ left #perl6
17:45 SmokeMachine joined #perl6
17:54 cotto_work joined #perl6
17:58 colomon rakudo: say "a"
17:58 p6eval rakudo 72f914: OUTPUT«a␤»
17:59 colomon rakudo: say ?«'moin'.split(rx/<[aeiou]>/, :all)
17:59 p6eval rakudo 72f914: OUTPUT«11011␤»
18:00 colomon rakudo: say 'moin'.split(rx/<[aeiou]>/, :all)>>.Str
18:00 p6eval rakudo 72f914: OUTPUT«moin␤»
18:00 colomon rakudo: say ('moin'.split(rx/<[aeiou]>/, :all)>>.Str)
18:00 p6eval rakudo 72f914: OUTPUT«moin␤»
18:00 colomon rakudo: say ('moin'.split(rx/<[aeiou]>/, :all)>>.Str).perl
18:00 p6eval rakudo 72f914: OUTPUT«("m", "o", "", "i", "n")␤»
18:02 ash__ joined #perl6
18:03 colomon Does everyone agree that's the correct behavior?  If so, I'll plop it in the test suite too.
18:07 [Coke] semi-related question: should .perl use '' for string literals?
18:07 [Coke] (where possible, modulo escaped chars, etc.)
18:07 colomon [Coke]: you mean single versus double quotes?
18:07 TimToady '' ends up looking like " in proportional fonts, alas
18:09 [Coke] well, hell, let's use ‘’then. =-)
18:10 [Coke] (I am being facetious.)
18:11 colomon rakudo: say ('moin'.split(/<[aeiou]>/, :all)>>.Str).perl
18:11 p6eval rakudo 72f914: OUTPUT«("m", "o", "", "i", "n")␤»
18:11 TimToady I am of the school that says you always use "" unless you specifically want to suppress interpolation, but certainly I can see the other mindset as well.  I don't think either view is "correct".
18:11 [Coke] as long as there's a reason. just wondering, as I prefer 'foo' over "foo"
18:11 [Coke] ah. I am of the school that says you use '' unless you need interpolation.
18:12 [particle] q<>
18:12 [Coke] oh hush, you. =-)
18:12 TimToady Q^@...^@
18:13 [particle] HA
18:13 [Coke] "Now you're just being silly!"
18:13 [particle] you didn't need interpolation there.
18:13 [Coke] whoa.
18:13 [Coke] phenny: .u asterism
18:13 TimToady I see stars
18:14 ash__ .u asterism
18:14 phenny U+2042 ASTERISM (⁂)
18:15 ash__ .u snowman
18:15 phenny U+2603 SNOWMAN (☃)
18:16 stephenlb joined #perl6
18:16 [Coke] I am sidetracked to U+203B (reference mark) which is also the sign of the indian chief I used to be the paperboy of. (
18:16 spinclad "there's more to {esc}ape $in a "'d @string["
18:19 spinclad rakudo: say 'h"i" "there"!'.perl
18:19 p6eval rakudo 72f914: OUTPUT«"h\"i\" \"there\"!"␤»
18:22 diakopter std: my $a of Int
18:22 p6eval std 30493: OUTPUT«ok 00:01 107m␤»
18:22 sorear nqp: say(pir::does__IPS(sub () {}, 'Code'))
18:22 p6eval nqp: OUTPUT«0␤»
18:23 [Coke] http://slash7.com/2006/12/22/vampires/ - "help vampires" via bdf.
18:25 spinclad My school says that, all else being in an even balance, .perl should emit the form simplest for reconstituting, so prefers '' over "" here.  (but not vehemently.)
18:27 uniejo joined #perl6
18:29 hicx174 joined #perl6
18:35 justatheory joined #perl6
18:41 nihiliad joined #perl6
18:44 sorear eternaleye: No.  Won't do, since it doesn't work with Parrot
18:44 sorear jnthn: Hi!
18:44 sorear jnthn: I'm looking for... a better way for Parrot to recognize callables.
18:45 sorear jnthn: blizkost currently uses VTABLE_isa(INTERP, $obj, 'Sub')
18:45 sorear but there are plenty of non-Sub callables... like oh Perl6Sub
18:46 sorear I'm thinking this is going to need a multi-faceted fixz
18:46 sorear 1. add a 'callable' interface to Parrot, like our current 'array', etc
18:47 sorear 2. make P6opaque support 'callable' iff does 'postcircumfix:<( )>'
18:47 sorear 3. use 'callable' in blizkost
18:47 sorear P6opaque already forwards VTABLE_invoke to postcircumfix:<( )>
18:48 gurjeet joined #perl6
18:48 uniejo joined #perl6
18:58 [Coke] sorear: you probably want something like "does Callable" (which is not set on a Sub, MultiSub, or an Eval, but can be in about 5m.)
18:58 * [Coke] catches up. Right. what you said, with does. =-)
18:59 Transformer joined #perl6
18:59 [Coke] (does Perl6Sub not inherit from Sub at some point?)
19:06 ShaneC joined #perl6
19:06 ShaneC left #perl6
19:07 [Coke] joined #perl6
19:10 sorear [Coke]: none of the Rakudo base classes actually inherit from PMCs iirc.  It's delegation all the way down.
19:12 [Coke] sorear: would it be helpful if you could ask VTABLE_does(interp, pmc, "Callable") ?
19:12 sorear yes
19:12 diakopter TimToady: (cont. previous "everything's a closure" thread), this means lexicals declared in the block also become uninitialized, unless of course they are "state" variables...?
19:14 TimToady yes, the block is called repeatedly by the implementation of loop, and Perl doesn't care whether it's a "built-in" or something the user cooked up.
19:14 diakopter ok.
19:14 sorear the default slang has special syntax for for but that can be overriden
19:14 TimToady if you want a fast loop, there's always 'redo' and 'goto'
19:14 * diakopter reallocates mental resources to tricksiness
19:15 jnthn sorear: May we that we need a vtable override in Mu.pir for the does vtable method.
19:16 sorear jnthn: P6opaque would be more correct IMO as that's where our 'invoke' lives
19:17 jnthn And also inconsistent with all of our other vtable overrides.
19:18 jnthn (Aside from invoke.)
19:18 jnthn The only ones that live in the PMC are in there because they need to be.
19:20 sahadev joined #perl6
19:22 diakopter I just remembered I already accounted for this.  doh.  I should write more comments.  my code is not very self-documenting. even the code I wrote a few days ago.
19:23 TimToady perhaps you should consider writing in APL, since Unicode now supports that...
19:23 [Coke] conveniently, we have an APL for parrot.
19:24 [Coke] (a very crappy, broken one, but still!)
19:24 * diakopter pretends not to be nonplussed... oh nm
19:24 [Coke] ETOOMANYNEGATIVES
19:25 sorear [Coke]: An APL for Parrot?
19:26 diakopter ok, but I didn't think "plussed" wasn't a non-word
19:26 [Coke] "I pretend to care."
19:26 [Coke] ?
19:26 [Coke] sorear: http://code.google.com/p/paraplegic/
19:28 diakopter I wonder for what 'egic' is short.
19:28 [Coke] nothing.
19:29 diakopter I would understand the suffix -ergic
19:30 arnsholt diakopter: The word is properly segmented as para-plegic =)
19:31 diakopter oh, I thought it meant PARrotAPLegic
19:31 diakopter er
19:31 diakopter PARrotAPLEGIC
19:31 diakopter PARrot-APL-EGIC
19:31 diakopter without the rot.
19:31 [Coke] just PAR(rot)APLegic.
19:31 arnsholt Yeah, that's probably the influence
19:33 sorear jnthn: http://trac.parrot.org/parrot/ticket/1597
19:33 TimToady wow, making STD parse the insides of character classes makes it really upset with itself...
19:34 [Coke] bad std.
19:34 [Coke] ... "give yourself an STD, play with Perl6!" ?
19:35 sorear I wonder how reasonable it would be to use Perl 6 itself to build a language implementation... we've got this wonderful grammar engine.
19:35 arnsholt I had a similar problem with NQP. There's some code that panics with a Perl 5 compat message when there's a - in a character class
19:35 arnsholt Which is helpful, until you actually want - in your character class =)
19:35 TimToady it's supposed to let you use \- there
19:36 c9s joined #perl6
19:36 arnsholt Yeah, that's what I did
19:37 sorear rakudo: sub foo($a) { $a() * 2; }; sub bar($b) { foo($b) * 2; }; say(bar({return 52}));
19:37 p6eval rakudo 72f914: OUTPUT«104␤»
19:37 sorear TimToady: What's the correct output for that?
19:38 pmichaud 19:33 <TimToady> wow, making STD parse the insides of character classes makes it really upset with itself...
19:38 phenny pmichaud: 27 Apr 15:29Z <moritz_> tell pmichaud that I pushed 082caee15e26038b615204b27034563706a16253 without asking you first - hope you like it, if not feel free to revert
19:38 phenny pmichaud: 04:42Z <quester_> tell pmichaud When you have a moment, could you please take a look at RT #73148: "[PATCH] Fix bug #68752, make perl6 --version more informative" and let me know what you think?  Thank you!
19:39 diakopter sorear: re "I wonder how reasonable... ": LOL. but, that's the goal (as stated in S01, at least).
19:39 pmichaud This is why neither PGE nor NQP have worried about parsing things like \s, \S, \d, etc. inside of character classes :)
19:39 pmichaud actually, parsing wouldn't be too bad, it's making them do something useful that is the pain point :-)
19:40 jnthn sorear: Yes, but that won't help entirely since we wrap Parrot subs.
19:41 sorear jnthn: It's half of the solution.  I still need a rakudocommitter to make Perl6Sub 'does' invokable
19:41 jnthn Perl6Sub?
19:42 pmichaud phenny: tell moritz_  commit 082caee looks great to me if the other release managers are generally in agreement.
19:42 phenny pmichaud: I'll pass that on when moritz_ is around.
19:42 sorear Or Sub?  Whatever src/builtins/Sub.pir defines
19:42 jnthn rakudo: say pir::does(Sub, 'invokable')
19:42 p6eval rakudo 72f914: OUTPUT«1␤»
19:43 [Coke] greetings, pmichaud.
19:43 moritz_ pmichaud: jnthn and masak were in agreement
19:43 phenny moritz_: 19:42Z <pmichaud> tell moritz_  commit 082caee looks great to me if the other release managers are generally in agreement.
19:43 [Coke] jnthn: where is that invokable coming from?
19:43 pmichaud +1 from me then
19:44 pmichaud was just stopping in for a moment to check on some messages; I'll be back tomorrow most likely
19:44 pmichaud afk
19:45 pugssvn r30494 | colomon++ | [t/spec] Simple test that split handles captures correctly.
19:45 jnthn [Coke]: Forget, I think we may just lie somewhere to say we do it.
19:45 [Coke] jnthn: sneaky!
19:46 jnthn yeah
19:46 jnthn Code.pir
19:46 sorear nqp: say pir::does(sub () {}, 'invokable')
19:46 p6eval nqp: OUTPUT«Confused at line 1, near "say pir::d"␤current instr.: 'parrot;HLL;Grammar;panic' pc 500 (src/cheats/hll-grammar.pir:197)␤»
19:46 sorear nqp: say(pir::does(sub () {}, 'invokable'))
19:46 p6eval nqp: OUTPUT«0␤»
19:51 sorear !!! I have the Tk example working in Perl6 now
19:53 jnthn sorear++ \o/
19:54 [Coke] sorear++ \o/
19:54 colomon \o/
19:54 sorear jnthn: http://pastie.org/939776 - two small bugfixes in the foreign module loader.  (CGI.new works now, plus a forgotten newclosure)
19:54 [Coke] |o/  \o| |o| _._  # important to stretch every once in a while.
19:55 sorear there are two fudges in the Tk - perl6 example
19:55 sorear (sub () { ... }).do  # this returns a Parrotsub
19:55 TimToady alpha: sub foo($a) { $a() * 2; }; sub bar($b) { foo($b) * 2; }; say(bar({return 52}));
19:55 p6eval alpha 30e0ed: OUTPUT«104␤»
19:55 sorear eval("'MainWindow'", :lang<perl5>) # to use indirectly imported classes
19:55 TimToady the correct behavior is to complain about a return outside of a sub
19:56 jnthn sorear: Yes, .do gives you the Parrot sub.
19:56 jnthn sorear: Thanks for the patch - I'd wondered if we'd need a newclosure there.
19:57 jnthn sorear: Going to read for a bit now and got a couple of other little things to fix, then will get it in.
20:00 sorear http://github.com/jnthn/blizkost/raw/bb4950c39cfafd5233f7ff6cddeebd9a7c2fa7f7/examples/tk.pl
20:00 TimToady phone
20:00 sorear not *too* bad
20:02 tri1 joined #perl6
20:06 madalu joined #perl6
20:10 pmurias diakopter: what type should the P6Str constructor take?
20:11 wasy joined #perl6
20:11 wasy left #perl6
20:11 cotto_work joined #perl6
20:15 pyrimidine joined #perl6
20:17 xinming_ joined #perl6
20:18 TiMBuS joined #perl6
20:18 takadonet left #perl6
20:26 * [Coke] needs to actually do something for next week. :P
20:27 diakopter pmurias: I don't know
20:28 pmurias ?
20:28 diakopter UTF32String.cs is essentially buf32
20:28 diakopter (I wrote UTF32String)
20:28 diakopter so maybe that
20:29 TimToady with a buf32 type we could replace icu
20:30 diakopter it does hi/lo surrogates but obviously not combining
20:30 pmurias diakopter: if P6Str.new("foo") is to work it should be UTF32String?
20:31 diakopter pmurias: probably so, yeah
20:31 pmurias doesn't work
20:31 diakopter and wherever input is pulled in, do a UTF32String.new(inputUTF16string)
20:32 diakopter what doesn't work
20:32 diakopter yeah you can't send a clr string into it (a clr string is a two-byte utf16 string)
20:32 pmurias P6Str.new("foo") doesn't work when the constructor tkaes UTF32String
20:32 diakopter right,
20:32 pmurias * takes
20:33 diakopter instead of storing a "string" as a field in P6Str, store a UTF32String, and give P6Str two constructors
20:34 diakopter one that takes a clr string, and one that takes a UTF32String
20:34 cognominal rakudo:  class A { has $a }; say "can" if A.new.can('a')
20:34 p6eval rakudo 72f914:  ( no output )
20:34 pmurias which one will be called by P6Str.new("foo")?
20:34 cognominal rakudo:  class A { has $a=1 }; say "can" if A.new.a
20:35 p6eval rakudo 72f914: OUTPUT«Method 'a' not found for invocant of class 'A'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
20:35 breinbaas joined #perl6
20:35 cognominal hum
20:35 diakopter whichever you want perlesque to :) if you think it should have character semantics, then I can have perlesque transform "foo" (string literal) into UTF32String
20:35 pmurias neither works currently
20:35 diakopter (it doesn't matter since you'll have two constructors anyway
20:35 diakopter )
20:36 diakopter commit your .cs and your .t
20:37 dalek csmeta: r218 | pawelmurias++ | trunk/Sprixel/ (2 files):
20:37 dalek csmeta: failed attempt at getting P6Str.new to work
20:37 dalek csmeta: review: http://code.google.com/p/csmeta/source/detail?r=218
20:38 diakopter oh.
20:39 diakopter my bad; I forgot to make the constructors actually pass in its arguments
20:39 diakopter since "new" is a special case (it isn't actually a method name on the class)
20:39 SmokeMachine joined #perl6
20:46 knewt_ joined #perl6
20:51 knewt_ joined #perl6
20:54 [particle] joined #perl6
20:57 tri1 left #perl6
21:01 ReiniUrban joined #perl6
21:03 iblechbot joined #perl6
21:03 ShaneC joined #perl6
21:04 ShaneC left #perl6
21:09 takadonet1 joined #perl6
21:10 espadrine joined #perl6
21:13 diakopter pmurias: omg.
21:14 diakopter I just spent 1 hr trying to find my bug, when it was your bug :P
21:14 diakopter you didn't make P6capture derive P6object ;)
21:15 diakopter (but I still had the new(args) bug)
21:18 takadonet1 left #perl6
21:18 pmurias diakopter: sorry ;)
21:19 wknight8111 joined #perl6
21:19 diakopter (committed)
21:19 takadonet joined #perl6
21:21 pmurias the test still fails
21:21 dalek csmeta: r219 | diakopter++ | trunk/Sprixel/ (7 files):
21:21 dalek csmeta: [perlesque] fix constructor invocation bug ++pmurias
21:21 dalek csmeta: begin work on resetting own lexicals upon block *re*entry
21:21 dalek csmeta: review: http://code.google.com/p/csmeta/source/detail?r=219
21:22 diakopter oh, oops.
21:23 diakopter oh, one more NYI thing there
21:23 diakopter wait, no
21:23 diakopter that should work.
21:23 pmurias why do bugs in the emitter generate parse errors?
21:23 diakopter 'cuz it's all 1 phase
21:24 diakopter parse/emit
21:24 diakopter meesa fan of transliteration
21:24 pmurias meesa?
21:24 espadrine left #perl6
21:25 diakopter a star wars episode 1 allusion. nm.    I'm a fan of transliteration.
21:25 espadrine joined #perl6
21:26 pmurias throwing away the buggy parser and accepting json would be so nice...
21:26 pmurias ;)
21:27 diakopter but that's not the point; all the emitter bugs would still be there.
21:27 diakopter because the json tree would have to be walked just like the lazily-created AST
21:27 diakopter so all the same emitter bugs would still need fixed.
21:28 diakopter like you said, it's the emitter bugs that cause the "parse" to fail.
21:28 diakopter emitting is the tough part.
21:28 pmurias how can an emitter bug cause backtracking?
21:28 diakopter that's a better question. :P
21:28 diakopter I haven't thought through that one.  I'm not sure.
21:29 diakopter there must be some try/catch somewhere I'm not seeing
21:32 diakopter I'm working on fixing your .t
21:33 diakopter oh wait.
21:33 diakopter that's strange.
21:36 tomaw joined #perl6
21:42 espadrine left #perl6
21:47 am0c joined #perl6
21:50 hicx174 joined #perl6
21:58 masak joined #perl6
21:58 masak ahoy, #perl6!
21:58 diakopter hi
21:59 masak diakopter: having perlesque commits on-channel is quite new, isn't it?
21:59 masak I like it. it makes work on it more visible.
22:00 diakopter yes; ++moritz_ suggested it.
22:01 masak oughta do the same for Yapsi.
22:01 diakopter just let me know the rss/atom url
22:02 masak seems to be http://github.com/masak/yapsi/commits/master.atom
22:02 lue o hai!
22:03 pmurias why do you ++nick instead of nick++?
22:03 masak lue-san: hai!
22:03 pmurias diakopter: what does the catch in Compiler/Continuations.cs do?
22:04 diakopter that's program-runtime
22:04 diakopter (stage2 input)
22:04 diakopter so it doesn't get that far at all
22:04 diakopter that's the trampoline
22:04 chitragupt joined #perl6
22:05 pmurias why doesn't it catch a specific Exception class
22:05 pmurias ?
22:05 masak ooh, someone in my vicinity who uses the word 'trampoline'!
22:05 masak what's a trampoline, and how does it differ from a continuation?
22:05 diakopter it could catch NullReferenceException
22:06 diakopter it's just there for when next is null
22:06 diakopter so it doesn't have to check it every time
22:06 diakopter obviously in real user code, there would be user-level exception blocks
22:06 diakopter a trampoline can be a way to bounce reified frames
22:07 masak bounce... reified... frames.
22:07 diakopter http://refractalize.blogspot.com/2009/02/stackless-c-trampolining-continuations.html
22:07 masak what, like an exception?
22:07 masak thanks. will read.
22:07 diakopter there's a part 2 of that too
22:08 masak excellent.
22:08 pmurias diakopter: how's my test doing?
22:08 Gruber joined #perl6
22:08 diakopter pmurias: getting there.
22:08 diakopter keep at it; assume I'll fix it :P
22:09 pyrimidine left #perl6
22:09 pmurias g'night
22:09 diakopter nite
22:09 masak night, pmurias.
22:09 takadonet ..
22:10 diakopter er
22:11 meteorjay joined #perl6
22:11 diakopter where'd p6eval go
22:11 lue rakudo: I AM ERROR
22:12 lue :*(
22:12 p6eval joined #perl6
22:12 masak I'm refactoring Yapsi tonight to pass 'environments' from compiler to runtime. an environment is simply all of the lexical scopes right now. I think that's a worthy abstraction to be using.
22:12 masak it will allow things such as BEGIN blocks and a proper REPL to work.
22:12 lue rakudo: say (0 orelse "hi")
22:12 p6eval rakudo 72f914: OUTPUT«Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 11␤current instr.: 'perl6;Regex;Cursor;FAILGOAL' pc 1664 (ext/nqp-rx/src/stage0/Regex-s0.pir:907)␤»
22:12 diakopter instances of the scopes? or just 1?
22:12 lue ō.o
22:13 masak diakopter: hm, there seems to be a confusion in my mind about that right now.
22:13 diakopter ahah.
22:13 masak which tells me I'm implementing it wrong.
22:13 masak scopes are not clonable at all in Yapsi presently.
22:13 diakopter in perlesque, a class is generated for each scope (actually just each frame, but effectively each scope).
22:14 diakopter that class has slots for each lexical declared in that scope.
22:14 masak how backwards :P
22:14 lue rakudo: say 0 orelse "hi"
22:14 p6eval rakudo 72f914: OUTPUT«Confused at line 11, near "say 0 orel"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
22:14 diakopter it's just a thoroughly GC'd edition of the way all compilers end up doing it...
22:14 masak lue: I don't think any implementation does 'orelse' yet.
22:15 diakopter like, way-over-thoroughly
22:15 masak diakopter: I see. well, as long as it works...
22:15 diakopter GC'd
22:15 lue I was hoping it'd be different :)
22:16 masak lue: isn't '//' enough for your purposes?
22:16 lue I need closure though.
22:16 lue Bug closure :)
22:17 masak lue: that's a nice, healthy need.
22:17 masak and it compensates my need to open bugs quite well :P
22:17 masak speaking of which...
22:17 masak rakudo: my $*a = 42; foo; sub foo { say $*a; my $*a }
22:17 p6eval rakudo 72f914: OUTPUT«Any()␤»
22:18 masak what's a reasonable expectation here?
22:18 masak should it be a compile error?
22:18 masak std: my $*a = 42; foo; sub foo { say $*a; my $*a }
22:18 p6eval std 30494: OUTPUT«ok 00:01 110m␤»
22:18 lue .oO(I love my crude orelse implementation, but a proper one requires deep magic into the kind of stuff C code was invented for.)
22:18 lue masak: what does the foo; on a line by itself do?
22:18 masak lue: it calls the sub by that name.
22:18 diakopter speaking of runtime, I'm starting to suspect I should just bite the bullet and write an "interpreted" (virtual method calls, not bytecode) edition of this parser generator. :| :| :|  after all that work on writing ultra-efficient single-routine parsers.
22:19 masak diakopter: why?
22:19 masak I mean, what is making you realize that?
22:19 diakopter cuz the startup (JIT) time in both mono and .NET is pretty high for the single-routine parser
22:19 diakopter (only relevant during bootstrapping phases.. but still)
22:19 hejki joined #perl6
22:20 masak std: class A {}; sub foo(A $a .= new) {} # I'm probably way too spoiled, but today I felt a need for this syntax, especially since my 'A' was really 'Yapsi::Environment'
22:20 PerlJam masak: re code above--error
22:20 p6eval std 30494: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unable to parse signature at /tmp/c88fdHSFig line 1:␤------> [32mclass A {}; sub foo([33m⏏[31mA $a .= new) {} # I'm probably way too s[0m␤Couldn't find final ')'; gave up at /tmp/c88fdHSFig line 1:␤------> [32mclass A {}; sub foo(A $a
22:20 p6eval ..[33m⏏[31m…
22:20 diakopter b/c the single-routine parser is .... hundreds of thousands of bytecode instructions long.
22:20 masak PerlJam: good. that's all I need to hear.
22:20 * masak submits rakudobug
22:21 diakopter std: class A {}; sub foo(A $a += new) {}
22:21 p6eval std 30494: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unable to parse signature at /tmp/bveMolPNpk line 1:␤------> [32mclass A {}; sub foo([33m⏏[31mA $a += new) {}[0m␤Couldn't find final ')'; gave up at /tmp/bveMolPNpk line 1:␤------> [32mclass A {}; sub foo(A $a [33m⏏[31m+= new) {}[0m␤
22:21 p6eval ..expect…
22:21 diakopter oh
22:21 lue I would think it returns 42 (unless I'm completely wrong about the finer points of $*)
22:22 masak rakudo: say $*a; my $*a = 42
22:22 p6eval rakudo 72f914: OUTPUT«Any()␤»
22:22 masak ah, that's an even simpler error case.
22:23 jnthn Probably wants to die at compile time.
22:23 jnthn But at least it doesn't NPMCA at runtime.
22:23 masak *nod*
22:23 PerlJam rakudo:  foo(); sub foo { say "hi" }
22:23 p6eval rakudo 72f914: OUTPUT«hi␤»
22:23 jnthn Yes, that but one should work. :-)
22:23 PerlJam Hmm.
22:23 masak std: my $a; { say $a; my $a } # it's a bit like this, actually
22:23 p6eval std 30494: OUTPUT«[31m===[0mSORRY![31m===[0m␤Lexical symbol '$a' is already bound to an outer symbol (see line 1);␤  the implicit outer binding at line 1 must be rewritten as OUTER::<$a>␤  before you can unambiguously declare a new '$a' in this scope at /tmp/snmNA7T0aX line 1:␤------> [32mmy
22:23 p6eval ..$a…
22:23 jnthn masak: Right, it's exactly that.
22:24 jnthn masak: Rakudo gets that wrong too - it'll be the same fix for both.
22:24 PerlJam Doesn't one of the synopses say that lexicals are available from the point of declaration to the end of the innermost enclosing scope?
22:24 sahadev left #perl6
22:24 masak jnthn: right. still reporting this one separately, just in case.
22:24 PerlJam Or is that just lexical *variables*/
22:24 PerlJam ?
22:25 PerlJam I mean, if subs are lexical now, then I would expect  foo();  sub foo { ... }   to die too
22:25 jnthn PerlJam: I'd understood it as just variables.
22:25 masak PerlJam: subs are 'evaluated' at CHECK time or something of the kind.
22:25 masak PerlJam: so they're available textually before their declaration at runtime.
22:26 PerlJam That seems  ... anti-lexical
22:26 PerlJam or, anti- one of the salient features of lexicals according to PerlJam  :)
22:26 masak I'm very grateful it works that way.
22:27 masak otherwise it'd be difficult to do mutual recursion, or even normal recursion.
22:27 am0c joined #perl6
22:27 masak hm. maybe normal recursion would work.
22:28 masak still, it'd force everyone to declare subs towards the top of a file.
22:28 jnthn Yes, it'd be quite the nuisance.
22:28 PerlJam Sure, I don't disagree.  I just want a good definition of "lexical"
22:29 * lue thought subs are useless closer to the top :)
22:29 masak rakudo: class A { method foo(A :$a) { say $a.WHAT } }; A.new.foo
22:29 p6eval rakudo 72f914: OUTPUT«Any()␤»
22:29 masak jnthn: has this been reported? the fact that $a is of a type that wouldn't bind?
22:30 masak lue: sure, they tend to sink low when they can, just like puns. :P
22:30 dalek left #perl6
22:30 dalek joined #perl6
22:31 jnthn masak: Looks odd.
22:31 jnthn Is it peculiar to nameds?
22:31 * masak submits rakudobug
22:31 lue D: /me continues to find closure
22:31 ash__ didn't :$a make it a named param?
22:31 diakopter masak: test push to yapsi? :)
22:31 jnthn rakudo: class A { method foo(A $a?) { say $a.WHAT } }; A.new.foo
22:31 p6eval rakudo 72f914: OUTPUT«Any()␤»
22:31 masak diakopter: in a bit :)
22:31 jnthn rakudo: class A { method foo(Int $a?) { say $a.WHAT } }; A.new.foo
22:32 p6eval rakudo 72f914: OUTPUT«Any()␤»
22:32 ash__ rakudo: class A {}; sub foo(A :$a) { say $a.WHAT }; foo;
22:32 jnthn oh good
22:32 masak so, not specific to nameds.
22:32 p6eval rakudo 72f914: OUTPUT«Any()␤»
22:32 jnthn It's an easy fix then, I expect.
22:32 masak rakudo: say {a=>1, b=>1}.invert.perl # should be (1 => ["a", "b"])
22:32 * jnthn is a little surprised we musta gone many months with this bug.
22:32 p6eval rakudo 72f914: OUTPUT«(1 => "a", 1 => "b")␤»
22:32 * masak submits rakudobug
22:33 masak jnthn: we have too few spectests :)
22:33 ash__ rakudo: class A {}; sub foo(A :$a) { say $a.WHAT }; foo :a<A.new>; foo :a<1>;
22:33 p6eval rakudo 72f914: OUTPUT«Nominal type check failed for parameter '$a'; expected A but got Str instead␤current instr.: 'foo' pc 240 (EVAL_1:96)␤»
22:33 nihiliad joined #perl6
22:33 * lue feels a tear in the smtp rifts
22:33 ash__ rakudo: sub foo(Int :$a) { say $a.WHAT }; foo;
22:33 jnthn ash__: It's just a bug in the "what happens if an optional isn't bound and there's no default" logic, I think.
22:34 p6eval rakudo 72f914: OUTPUT«Any()␤»
22:34 ash__ is that the same issue masak was talking about?
22:34 jnthn Yeah
22:35 PerlJam rakudo:  $x = 42; say $x; my $x;
22:35 p6eval rakudo 72f914: OUTPUT«42␤»
22:35 PerlJam Hmm
22:35 masak rakudo: sub foo(Int $a = "OH HAI") { say $a }; foo
22:35 p6eval rakudo 72f914: OUTPUT«OH HAI␤»
22:36 masak that was fun, too :)
22:36 masak jnthn-- :P
22:36 jnthn That one is annoying.
22:36 masak I'll take that back. you're doing a great job. jnthn++
22:37 diakopter ++jnthn # karma ain't real, though
22:37 lue rakudo: class A { method WHAT { "B" } }; A.new.WHAT.say # masak, you rakudobug'd this when output came in [] as opposed to «»
22:37 p6eval rakudo 72f914: OUTPUT«B␤»
22:37 jnthn Though probably easy to patch also.
22:37 lue and it's still broken :/
22:37 sorear I need to get myself a PCA so I can actually fix these stupid little rakudobugs
22:38 masak lue: is that the 'WHAT should be a macro' ticket?
22:38 jnthn sorear: Best to start by creating patches.
22:39 lue Oh yes :)
22:39 ruoso joined #perl6
22:39 lue it's probably not as simple as just changing it from 'method WHAT' to 'macro WHAT' :)
22:40 masak well, step one: implement macros :)
22:40 lue .oO(ruoso just joined us, and he's a part of #60992 as well!)
22:40 lue :O ...
22:40 lue ...........
22:40 sorear alternatively, implement methodicals
22:40 sorear I've lost a lot of my interest in them
22:40 hercynium joined #perl6
22:40 sorear but they're still a nice, 100% static equivalent of method-shaped macros
22:41 sorear so they could be good as a transitional form before we get true macros implemented
22:41 masak sorear: have you seen the .$method syntax in Perl 6?
22:41 lue <allcaps>We're this far in P6/Rakudo and we still don't have <i>macros</i>?</allcaps>
22:42 lue sorry about that.
22:42 [Coke] lue: HIO, patches welcome!
22:43 masak rakudo: class A { has $.greeting = "OH HAI" }; my $method = method { say self.greeting }; A.new.$method
22:43 lue rakudo: our macro foo(){say "yay";}; foo() # first I should learn what a macro is :P
22:43 p6eval rakudo 72f914: OUTPUT«Malformed our at line 11, near "macro foo("␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
22:43 p6eval rakudo 72f914: OUTPUT«OH HAI␤»
22:43 masak sorear: it reminds me of your methodicals, and it already exists.
22:43 masak lue: Pugs almost got to macros.
22:43 ash__ std: macro foo { return "say 'yay';" }; foo;
22:43 p6eval std 30494: OUTPUT«ok 00:01 109m␤»
22:44 masak with all the parser technology we have at this point, they're definitely within reach.
22:45 lue rakudo: my @a=((1,2,3),(4,5,6)); my @b=((7,8),(9,0),(1,2)); say (@a * @b)
22:45 p6eval rakudo 72f914: OUTPUT«36␤»
22:45 sorear masak: have you seen the STD.pm implementation of q:a:s{ ... } ?
22:45 * lue is reading up on macros
22:46 masak sorear: not in particular, no.
22:46 Tene I had a prototype of macros working, actually.
22:46 masak sorear: why do you ask?
22:46 masak Tene: what happened to it?
22:47 sorear masak: It's insane.  And it's related to how macro implementation needs to work.
22:47 masak I'll definitely check it out.
22:47 Tene masak: It's still on my laptop somewhere.  It was Perl 6 style macros for my scheme compiler.
22:47 masak thanks for the tip.
22:47 masak Tene: I remember you working on it.
22:47 Tene What's q:a:s ?
22:47 masak Tene: were you blocking on spec or something?
22:48 lue .oO( spec definition of macro hertz my brain /o\ )
22:48 Tene masak: Yes, there was one spec question I was blocking on.  Still unresolved, afaik.  I had a proposal, and TT was going to think about it.  A limited subset would be fine to implement, though.
22:48 masak Tene: what was the proposal?
22:49 Tene masak: the body of a proto regex should be the default parsing rule for regexes in that class.
22:49 Tene The macro stuff refers to a "default parsing rule" for grammatical categories, and assumes one for its examples.
22:50 Tene I think it did in at least one example, at least.
22:50 Tene Lemme look for an example.
22:51 IllvilJa joined #perl6
22:51 masak that soudns vaguely sane, I think.
22:51 masak but all this is predicated on people using macros anyway.
22:52 masak that's why it's important to have a working version out there for people to toy with, even a prototype.
22:52 Tene like, macro postfix:<{{{ }}}> { ... }
22:52 Tene Or, better...
22:53 Tene http://github.com/rakudo/rakudo/blob/master/src/Perl6/Grammar.pm#L444
22:53 Tene If I want a new statement_prefix, the spec implies that I can just say:
22:54 Tene macro statement_prefix:sym<OMG> { ... whatever }
22:54 Tene and it would inherit the default parsing rule, which the grammar suggests is "<sym> <blorst>"
22:54 Tene but that's not defined anywhere, so I would instead need to add: "is reparsed(/ <sym> <blorst> /)"
22:55 dalek book: 228f280 | duff++ | src/subs-n-sigs.pod:
22:55 dalek book: [subs] some clarifications and minor text changes
22:55 dalek book: review: http://github.com/perl6/book/commit/228f280eb4284b59f40503404666edfa2d337e1d
22:55 Tene I'd instead prefer to see in the grammar: proto token statement_prefix { <sym> <blorst> }
22:55 Tene and the body of the others as {...}
22:56 sorear Tene: have you seen the blizkost advancements?
22:56 masak diakopter: I pushed a change to yapsi 5 minutes ago, but it hasn't showed up yet.
22:56 diakopter sign.
22:56 Tene sorear: I've seen nothing at all.  I'm excited to find out.
22:57 sorear http://github.com/jnthn/blizkost/raw/bb4950c39cfafd5233f7ff6cddeebd9a7c2fa7f7/examples/tk.pl
22:57 Tene masak: So, you could implement macros with the requirement that all macro definitions contain a parsing rule.
22:57 sorear that.  works in rakudo master.
22:57 masak Tene: that'd still be way better than nothing.
22:57 Tene sorear: That's very exciting. :)
22:57 masak sorear++
22:58 gurjeet joined #perl6
22:59 Tene masak: I think that I had some higher priorities pending in Rakudo to work on first, though?  I don't really remember, and I never really had any notes on my tasklist, so I'm fairly lost.
23:00 * masak gently encourages Tene visavi macros ;)
23:00 masak unless, I mean, there are more urgent things that I'm forgetting about right now.
23:00 jnthn Tene: There's some exceptiony stuff if you're interested. Including the block exit handling bits.
23:00 dalek book: a706369 | chromatic++ | src/subs-n-sigs.pod:
23:00 dalek book: Finished editing what's in this section.  Added a couple of examples.
23:00 dalek book: review: http://github.com/perl6/book/commit/a706369d110b8df1cadc210ec99f34a014b2233e
23:00 dalek book: 7c843c4 | chromatic++ | src/subs-n-sigs.pod:
23:01 dalek book: Merged branch 'master' of git@github.com:perl6/book.
23:01 dalek book: review: http://github.com/perl6/book/commit/7c843c418aa05fa3baec95a5e2fa70c4655293ab
23:01 jnthn But more the CATCH catches return exceptions.
23:02 Tene jnthn: I kind of remember that one.  That would be easy.  Is there a ticket somewhere for me to open in my browser and ignore? ;)
23:02 jnthn http://rt.perl.org/rt3/Ticket/Display.html?id=61126
23:02 jnthn oh, that wasn't the one I wanted
23:02 jnthn but it's related
23:02 jnthn http://rt.perl.org/rt3/Ticket/Display.html?id=63430
23:02 jnthn That's the one.
23:03 Tene Ah.
23:03 Tene Yeah, I can do that.
23:05 masak ah, yes. that one essentially makes CATCH blocks worthless.
23:05 sorear Does anyone here now have any cute small demos of programming with CGI, DBI, etc?
23:06 masak sorear: there is the beginning of that in the Web.pm project. especially check out http://github.com/masak/web/blob/master/tutorial/win.pdf -- I wish it was more complete than it currently is.
23:08 sorear Er
23:08 sorear I'm looking for stuff I can turn into CGI:from<perl5> examples
23:08 sorear though that is interesting, it's not quite what I'm looking for.
23:09 masak ah, no. it's quite different.
23:09 * masak goes to bed
23:09 masak 'night, #perl6
23:09 Tene sleep well
23:10 lue goodnight
23:14 jt sorear: perldoc CGI has very good example snippet?
23:16 lisppaste3 takadonet pasted "bye bye for" at http://paste.lisp.org/display/98519
23:16 takadonet is there a way to get rid of the for in that piece of code so I can directly plug $*IN into the parse function?
23:17 jnthn $*IN.slurp()
23:17 takadonet !!!!!!!!!!!!!!!
23:17 takadonet jnthn++
23:32 plobsing_ joined #perl6
23:32 snarkyboojum joined #perl6
23:46 lue afk

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo