Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2011-08-02

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:00 am0c joined #perl6
00:00 whiteknight left #perl6
00:01 jevin left #perl6
00:03 sorear TimToady: should $*::("dynvar") be legal?
00:03 sorear TimToady: STD.pm6 won't parse it (because twigils need to be followd by <identifier>)
00:05 donri left #perl6
00:05 jevin joined #perl6
00:13 dalek specs: c92cded | diakopter++ | S12-objects.pod:
00:13 dalek specs: more headings in S12 (Multisubs/multimethods and Enumerations)
00:13 dalek specs: review: https://github.com/perl6/specs/commit/c92cdeda52
00:17 jimmy1980 left #perl6
00:20 dalek niecza: a73f026 | sorear++ | / (2 files):
00:20 dalek niecza: Fix parsing $::(), ignore "is dynamic" on variables
00:20 dalek niecza: review: https://github.com/sorear/niecza/commit/a73f026ddc
00:20 diakopter phenny: ask TimToady any other walls of text you'd like divvied?
00:20 phenny diakopter: I'll pass that on when TimToady is around.
00:21 dalek rakudo/nom: c26878d | tadzik++ | src/core/Parameter.pm:
00:21 dalek rakudo/nom: Fill in some Parameter accessors
00:21 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c26878db56
00:21 dalek rakudo/nom: 124bec3 | tadzik++ | src/core/Parameter.pm:
00:21 dalek rakudo/nom: Fix Parameter.named, add Parameter.slurpy
00:21 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/124bec3aea
00:21 tadzik phenny: ask jnthn does https://gist.github.com/1119304 appear correct to you? It's taken straight from master, but seems to be broken (always false), and is blocking me on MAIN
00:21 phenny tadzik: I'll pass that on when jnthn is around.
00:22 * tadzik sleeps
00:23 sorear diakopter++ shaving documentation yaks
00:24 * diakopter hands the shears to sorear; it rhymes
00:25 TimToady well, there's always ::('$*dynvar')
00:26 phenny TimToady: 00:20Z <diakopter> ask TimToady any other walls of text you'd like divvied?
00:26 sorear TimToady: ok
00:26 TimToady well, as I mentioned, S02 also needs work, but probably a large amount of reorg at the same time
00:27 TimToady some of the spec links from features are to very general sections
00:28 diakopter I can't find the features page linked from perl6.org
00:28 diakopter is it hidden intentionally still
00:28 diakopter oh there it is
00:29 TimToady should maybe be in a box of its own color
00:30 dalek features: 060d531 | larry++ | features.json:
00:30 dalek features: more specs
00:30 dalek features: review: https://github.com/perl6/f​eatures/commit/060d531b14
00:31 diakopter I enjoyed =head2/3ifying those parts of S12.
00:31 diakopter maybe I have a future as an editor
00:33 noganex_ left #perl6
00:33 TimToady 'course, we're probably breaking a bunch of smart links...
00:35 diakopter TimToady: will the Synopses ever be printed do you think?
00:35 diakopter published, I mean
00:35 TimToady not without a major rewrite
00:36 diakopter allow me to snidely interject that the bottom half of S05 might need redacted
00:36 TimToady yes, well, TheDamian++ tends to be rather completist
00:37 diakopter heh, completionist
00:45 diakopter I've imagined someone writing the book Designing Implementing Perl 6 - the [hi]story of the implementations and the specifications and how they diverge[d] and converge[d]
00:45 diakopter Designing and Implementing Perl 6, I mean
00:47 diakopter TimToady: how went the Soto
00:48 dalek niecza: be423d4 | sorear++ | / (2 files):
00:48 dalek niecza: Patch up several missing cases, add S02-names/symbolic-deref.t
00:48 dalek niecza: review: https://github.com/sorear/niecza/commit/be423d4d68
00:48 dalek roast: 19e9310 | sorear++ | S02-names/symbolic-deref.t:
00:48 dalek roast: [S02-names/symbolic-deref.t]
00:48 dalek roast:
00:48 dalek roast: Silenced warnings, rearranged code using obsolete syntax, removed
00:48 dalek roast: CORE/GLOBAL conflation.
00:49 dalek roast: review: https://github.com/perl6/roast/commit/19e93108d1
00:52 Alias left #perl6
00:52 TimToady it seemed to go over pretty well
00:53 noganex joined #perl6
00:54 diakopter I wish video was made available
00:54 diakopter for those of us who can't visit Oscon [every year]
00:55 sorear TimToady: what was the soto?  Another demo?
00:55 rdesfo left #perl6
01:04 noganex left #perl6
01:06 [Coke] jnthn: your blog post dies in nom with: "load_bytecode" couldn't find file 'LoggedDispatch.pbc'
01:06 noganex joined #perl6
01:15 tokuhir__ left #perl6
01:16 tokuhir__ joined #perl6
01:17 TimToady Act 1, scroll all 361 RFC titles past and just point out the poignant bits
01:18 TimToady Act 2, show off the features matrix
01:18 TimToady Act 3, show a fight between the two sisters, P5 and P6, and what P6 really thinks of P5
01:18 TimToady Act 4, how P5 could get a type system
01:19 TimToady Act 5, how P5 could borrow various other features from P6
01:19 TimToady Act 6, scroll the RFC titles in reverse, and take questions
01:19 TimToady all packaged as 6 lightning talks
01:20 tokuhir__ left #perl6
01:32 woosley joined #perl6
02:03 dalek perl6.org: 46799e5 | larry++ | source/ (2 files):
02:03 dalek perl6.org: give the features their own box in Compilers
02:03 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/46799e51c6
02:04 djanatyn Hey, anybody want to help me install a library?
02:04 djanatyn I spent a couple hours trying last night. ._.
02:05 djanatyn It's the Web library for Perl 6. I'm trying to get Ratel, so I can write my website in Perl 6 :D
02:11 dalek perl6.org: 3eb9869 | larry++ | source/style.css:
02:11 dalek perl6.org: swap colors
02:11 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/3eb9869dbe
02:15 diakopter why remove the &nbsp;
02:15 * diakopter begins attacking S02
02:16 TimToady supposed to use U+00A0 instead
02:16 TimToady hmm, it did something strange :)
02:17 diakopter looks okay on winchrome
02:17 diakopter also IE
02:17 TimToady the right column is yellow around the two boxes for some reason in ff
02:17 diakopter oh, yes, that
02:18 diakopter thought you meant to do that
02:18 TimToady er no
02:20 diakopter Chrome does indeed handle U+00A0 correctly
02:20 diakopter TimToady++
02:20 dalek perl6.org: e03b7d9 | larry++ | source/style.css:
02:20 dalek perl6.org: make features box red
02:20 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/e03b7d963d
02:20 diakopter how often does perl6.org rebuild
02:23 TimToady 15m
02:23 TimToady you have about 5 minutes to fix it :)
02:24 TimToady or 20 minutes, or 35...
02:24 * TimToady should learn to read css someday
02:25 diakopter does a =head1 and =head3 need a =head2 between
02:26 TimToady don't think so
02:26 * TimToady thinks it's all done with the divs
02:26 diakopter no I mean for S02
02:27 TimToady generally one would not skip levels
02:27 diakopter k
02:32 daniel-s joined #perl6
02:33 diakopter hm, I guess those smartlinks did break
02:33 diakopter sadface
02:33 diakopter too bad the smartlinker isn't smarter enough to DTRT
02:37 daniel-s left #perl6
02:37 daniel-s_ joined #perl6
02:38 diakopter (where sections can live in multiple logical headings
02:38 diakopter )
02:39 dalek perl6.org: cc806d3 | larry++ | source/ (2 files):
02:39 dalek perl6.org: try a three column approach
02:39 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/cc806d321d
02:42 daniel-s_ left #perl6
02:43 daniel-s_ joined #perl6
02:45 Helios left #perl6
02:45 TimToady oopser :)
02:46 Helios joined #perl6
02:47 daniel-s__ joined #perl6
02:47 daniel-s_ left #perl6
02:48 dalek niecza: 48d6cd3 | sorear++ | lib/ (3 files):
02:48 dalek niecza: Implement object reification of pseudopackages and pseudostashes
02:48 dalek niecza: review: https://github.com/sorear/niecza/commit/48d6cd3525
02:51 daniel-s__ left #perl6
02:52 _daniel-s__ joined #perl6
02:53 dalek perl6.org: 7bc4720 | larry++ | source/compilers/index.html:
02:53 dalek perl6.org: try a more barebones approach
02:53 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/7bc4720585
02:56 _daniel-s__ left #perl6
02:56 _daniel-s__ joined #perl6
03:00 _daniel-s__ left #perl6
03:00 _daniel-s__ joined #perl6
03:01 TimToady \o/ the barebones approach worked, at least in firefox
03:05 daniel-s joined #perl6
03:05 _daniel-s__ left #perl6
03:06 sili hulk smash
03:08 djanatyn hey, when using regex, how do I use a different seperator than the forward slash, again?
03:09 TimToady m or rx, depending
03:09 TimToady and don't use parens for delims
03:09 daniel-s left #perl6
03:09 daniel-s_ joined #perl6
03:10 sili $foo ~~ m{hehe}
03:11 djanatyn Ah. Cool! :)
03:13 djanatyn :\
03:13 sili :D
03:14 daniel-s__ joined #perl6
03:14 daniel-s_ left #perl6
03:15 djanatyn https://gist.github.com/1119532 <-- hmm. is this a bug with rakudo, or a bug with me?
03:16 djanatyn "Method 'title' not found for invocant of class 'Cursor'"
03:17 djanatyn What's the cursor class, and why would it search there? Shouldn't it be looking for the Entry class, under which this method is defined?
03:18 djanatyn Ah. Looks like Cursor is a parser engine.
03:18 sorear djanatyn: bug in you
03:18 daniel-s__ left #perl6
03:18 _daniel-s__ joined #perl6
03:18 sorear djanatyn: < and > need to be quoted
03:18 djanatyn sorear: Good, much easier to fix :D
03:18 djanatyn ...yeah, I kinda thought that really wasn't a good idea to use for a template
03:18 sorear djanatyn: in fact ALL characters other than a..z 0..9 _ need to be quoted in regex
03:19 sorear s/ '<title>' /...//
03:19 djanatyn sorear: thanks for the advice - I don't use regex that much ;)
03:19 sorear <title> is interpreted as a call to the .title method in the current grammar
03:20 sili rules are different
03:22 djanatyn I see a couple bugs in here that I hadn't noticed before
03:22 djanatyn forgot to use interpolating quotes for at least one variable
03:22 _daniel-s__ left #perl6
03:22 _daniel-s__ joined #perl6
03:23 Su-Shee_ joined #perl6
03:26 djanatyn woot! It runs! :)
03:26 Su-Shee left #perl6
03:26 rdesfo joined #perl6
03:27 djanatyn ...except it outputs the file with quotes around '<h1>' and '<h2>'.
03:27 daniel-s joined #perl6
03:28 _daniel-s__ left #perl6
03:31 sorear djanatyn: you're only supposed to quote the regex, not the replacement string
03:31 daniel-s_ joined #perl6
03:32 daniel-s left #perl6
03:35 sorear TimToady: ping
03:36 daniel-s__ joined #perl6
03:36 sorear TimToady: the spectests test sub foo { $*x } ; sub bar { my $x is dynamic; foo }
03:36 daniel-s_ left #perl6
03:36 sorear TimToady: is this legit?  All current non-pugs implementations treat the star as part of the name
03:40 jedai left #perl6
03:40 _daniel-s__ joined #perl6
03:40 daniel-s__ left #perl6
03:41 pothos left #perl6
03:41 pothos_ joined #perl6
03:41 jedai joined #perl6
03:41 pothos_ is now known as pothos
03:43 sili left #perl6
03:43 sili joined #perl6
03:45 daniel-s joined #perl6
03:45 _daniel-s__ left #perl6
03:46 afiskon joined #perl6
03:49 daniel-s_ joined #perl6
03:50 daniel-s left #perl6
03:52 dalek roast: 10846df | sorear++ | S02-names/ (2 files):
03:52 dalek roast: S02-names/{caller,our}.t: update and fudge for niecza
03:52 dalek roast: review: https://github.com/perl6/roast/commit/10846dfa07
03:52 dalek niecza: f2fccf7 | sorear++ | / (2 files):
03:52 dalek niecza: Fix CALLER/inlining interaction and two new test files
03:52 dalek niecza: review: https://github.com/sorear/niecza/commit/f2fccf7bd4
03:53 daniel-s__ joined #perl6
03:53 daniel-s_ left #perl6
03:58 _daniel-s__ joined #perl6
03:58 daniel-s__ left #perl6
04:02 _daniel-s__ left #perl6
04:02 daniel-s joined #perl6
04:07 daniel-s_ joined #perl6
04:07 daniel-s left #perl6
04:08 birdwindupbird joined #perl6
04:09 TimToady the * is part of the name; is dynamic would make the $x dynamic but you can't get at it with $*x
04:10 envi joined #perl6
04:10 satyavvd joined #perl6
04:11 daniel-s__ joined #perl6
04:11 daniel-s_ left #perl6
04:14 jaldhar left #perl6
04:14 colorspace left #perl6
04:14 jaldhar joined #perl6
04:15 daniel-s__ left #perl6
04:16 daniel-s__ joined #perl6
04:20 daniel-s__ left #perl6
04:20 _daniel-s__ joined #perl6
04:20 satyavvd left #perl6
04:24 _daniel-s__ left #perl6
04:24 _daniel-s__ joined #perl6
04:27 sorear TimToady: ok, that's what I thought
04:29 _daniel-s__ left #perl6
04:29 _daniel-s__ joined #perl6
04:29 satyavvd joined #perl6
04:29 shinobicl joined #perl6
04:29 shinobicl left #perl6
04:31 dalek roast: a2e0a5a | sorear++ | S02-names/caller.t:
04:31 dalek roast: [S02-names/caller.t] in $*foo, the twigil is an integral part of the name
04:31 dalek roast: review: https://github.com/perl6/roast/commit/a2e0a5a93f
04:31 sorear What test file should I put pseudo package tests?
04:31 sorear roast doesn't currently have ANY tests for the correct functioning of MY::
04:33 daniel-s joined #perl6
04:33 _daniel-s__ left #perl6
04:33 birdwindupbird left #perl6
04:37 daniel-s left #perl6
04:38 daniel-s joined #perl6
04:42 daniel-s left #perl6
04:42 daniel-s joined #perl6
04:46 daniel-s left #perl6
04:46 daniel-s_ joined #perl6
04:48 molaf joined #perl6
04:51 daniel-s__ joined #perl6
04:51 daniel-s_ left #perl6
04:55 daniel-s__ left #perl6
04:55 _daniel-s__ joined #perl6
04:57 molaf left #perl6
05:00 _daniel-s__ left #perl6
05:00 daniel-s joined #perl6
05:09 shinobicl joined #perl6
05:13 shinobicl hi.... i have this problem.. i have an operator with this signature: our multi infix:<eqv> (WorkdayCalendar $wc1, WorkdayCalendar $wc2) { ... }. Then i call this operator with the same variable for $wc1 and $wc2. (testing the identity)
05:14 shinobicl the thing is, $wc2 always appears inside the operator's body as a "new" variable... with the default attributes. I've also tried putting "is copy" in the 2 parameters signatures, with no luck
05:15 shinobicl even if $wc1 and $wc2 have the same data, $wc2 seems to be "lost".
05:33 sorear what do you mean 'new'?
05:42 shinobicl wc2 and wc1 are objects. They have default values. I changed the values from the default to something else on $wc1 and $wc2 to see them inside the operator. For $wc1, the changes are there, but $wc2 contains the default values.
05:44 shinobicl tthat happens even if i pass the same variable as $wc1 and as $wc2.
05:46 shinobicl it is as if $wc2 was created inside the operator, and not passed as a parameter for the infix:>eqv
05:46 PerlJam shinobicl: show the code on a gist or something
05:46 shinobicl ok give me some minutes
05:56 shinobicl the test program: https://github.com/shinobi/TaskSched​uler/blob/master/t/WorkdayCalendar.t
05:56 jlaire perl6: say NaN == NaN; say NaN ~~ NaN
05:56 p6eval niecza v8-18-gf2fccf7: OUTPUT«Bool::False␤Bool::False␤»
05:56 p6eval ..rakudo 922500: OUTPUT«Bool::False␤Bool::True␤»
05:56 p6eval ..pugs: OUTPUT«␤1␤»
05:56 shinobicl the module: https://github.com/shinobi/TaskSched​uler/blob/master/WorkdayCalendar.pm
06:05 Mowah joined #perl6
06:19 wtw joined #perl6
06:20 koban joined #perl6
06:20 koban left #perl6
06:22 Su-Shee_ is now known as Su-Shee
06:37 envi left #perl6
06:39 moritz phenny: tell diakopter about https://github.com/moritz/perl6-Sudoku
06:39 phenny moritz: I'll pass that on when diakopter is around.
06:40 sorear o/ moritz
06:40 moritz \o sorear
06:41 sorear I am now working on comprehensive tests for pseudo packages
06:41 moritz that's great
06:44 envi joined #perl6
06:49 Trashlord joined #perl6
07:08 moritz sorear: btw several spectests abort on niecza because it doesn't implement .gist on type objects
07:10 daniel-s left #perl6
07:10 daniel-s joined #perl6
07:10 mj41 joined #perl6
07:14 sorear hah, niecza parses ::<$x> as a parametric role instantiation
07:14 daniel-s_ joined #perl6
07:15 daniel-s left #perl6
07:15 * moritz doesn't parse it at all :-)
07:18 dalek roast: 4c9c1b7 | sorear++ | S02-names/pseudo.t:
07:18 dalek roast: First draft of first section of pseudopackage tests
07:18 dalek roast: review: https://github.com/perl6/roast/commit/4c9c1b7805
07:18 sorear I hope I'm doing this more or less right
07:18 sorear it only covers MY so far
07:19 daniel-s__ joined #perl6
07:19 daniel-s_ left #perl6
07:23 _daniel-s__ joined #perl6
07:23 daniel-s__ left #perl6
07:24 mattp_ left #perl6
07:26 DonGene joined #perl6
07:28 daniel-s joined #perl6
07:28 _daniel-s__ left #perl6
07:32 daniel-s left #perl6
07:32 daniel-s_ joined #perl6
07:34 im2ee joined #perl6
07:37 daniel-s__ joined #perl6
07:37 daniel-s_ left #perl6
07:41 wamba joined #perl6
07:41 daniel-s__ left #perl6
07:41 _daniel-s__ joined #perl6
07:43 im2ee left #perl6
07:44 jnthn morning, #perl6
07:44 phenny jnthn: 00:21Z <tadzik> ask jnthn does https://gist.github.com/1119304 appear correct to you? It's taken straight from master, but seems to be broken (always false), and is blocking me on MAIN
07:45 sorear o/ jnthn
07:45 jnthn [Coke]: Note that nom still needs you to pre-compile modules by hand.
07:45 lumi_ joined #perl6
07:45 _daniel-s__ left #perl6
07:45 daniel-s joined #perl6
07:50 daniel-s_ joined #perl6
07:50 daniel-s left #perl6
07:52 jnthn tadzik: That's both NYI and non-trivial.
07:52 im2ee joined #perl6
07:52 im2ee left #perl6
07:54 daniel-s_ left #perl6
07:54 daniel-s_ joined #perl6
07:57 rdesfo left #perl6
07:58 cosimo left #perl6
07:59 daniel-s_ left #perl6
07:59 daniel-s_ joined #perl6
08:00 tadzik ouch
08:02 jnthn (long story short, there's no BIND method implemented in nom yet
08:02 jnthn )
08:02 jnthn (so that try always fails)
08:03 tadzik that explains why I couldn't find it in the source code
08:03 daniel-s_ left #perl6
08:03 daniel-s_ joined #perl6
08:05 tadzik .u 🐪
08:05 phenny U+1F42A (No name found)
08:08 daniel-s__ joined #perl6
08:08 daniel-s_ left #perl6
08:11 _daniel-s__ joined #perl6
08:11 daniel-s__ left #perl6
08:15 daniel-s joined #perl6
08:16 _daniel-s__ left #perl6
08:18 shinobicl left #perl6
08:19 dalek niecza: c1c841b | sorear++ | / (2 files):
08:19 dalek niecza: Fix parsing of ::<$a>, implement Foo:: = Foo.WHO syntax
08:19 dalek niecza: review: https://github.com/sorear/niecza/commit/c1c841b9eb
08:20 daniel-s left #perl6
08:23 moritz I thought we were about to deprecate trailing :: ?
08:24 daniel-s joined #perl6
08:27 moritz somehow perl6.org/compilers/ is very broken atm
08:29 daniel-s left #perl6
08:29 daniel-s_ joined #perl6
08:30 sorear moritz: I didn't get that impression
08:31 im2ee_ joined #perl6
08:31 sorear I asked about $Foo:: (the sigil case only) and got contradictory answers, which seems to be TimToadyese for "for now, forbid"
08:33 daniel-s_ left #perl6
08:33 moritz http://dl.dropbox.com/u/2519​4185/perl6-org-compilers.png is my screenshot of perl6.org/compilers/
08:33 im2ee_ left #perl6
08:33 daniel-s_ joined #perl6
08:34 moritz firefox 3.6
08:34 sorear "it renders fine in links"
08:34 sorear not terribly useful
08:35 moritz I guess it shouldn't use the .box class, which has a height of 9em
08:35 tadzik moritz: refresh? It helped for me
08:36 moritz indeed it does
08:36 moritz why?
08:36 moritz nm
08:36 moritz anyway, I'd prefer a two-column layout, with two boxes on the right
08:37 jlaire looks like  changed html + old css from cache = big mess
08:37 moritz first feature matrix, then supplementals
08:37 moritz but I can't preview it on the machine I'm on right now
08:37 daniel-s__ joined #perl6
08:37 daniel-s_ left #perl6
08:38 jlaire and it's two columns with a huge right margin in my smallish browser window
08:39 * moritz feels flattered that TimToady++ showed off the feature matrix in his SOTO speech
08:42 daniel-s__ left #perl6
08:42 daniel-s__ joined #perl6
08:43 sorear the feature matrix is very, very awesome
08:44 sorear I might call it more important than nom.  it will certainly have more of a lasting utility, after the next round of rewrites
08:46 daniel-s__ left #perl6
08:46 _daniel-s__ joined #perl6
08:51 daniel-s joined #perl6
08:51 _daniel-s__ left #perl6
08:54 jnthn .oO( There'll be a round of re-writes after nom?! :-) )
08:55 daniel-s left #perl6
08:55 daniel-s_ joined #perl6
08:55 moritz sure!
08:56 moritz history teaches us that there's always a next rewrite
08:56 moritz it's just a question of the scope of the rewrite
08:56 jnthn Oh, there'll be serious refactors in some areas.
08:57 moritz for example module loading will get one
08:57 jlaire but that doesn't mean the previous rewrites were not useful
08:57 jnthn But I don't anticipate another nom-level or ng-level rewrite this side of some kind of 6.0.0.
08:57 jnthn (e.g., a re-do near enough everything rewrite...)
08:57 sorear jnthn: I have my post-6.0.0 hat on when I say there will be a rewrite
08:57 moritz jkagreed
08:57 jnthn sorear: ah, ok :)
08:57 moritz sorry
08:58 moritz jlaire: agreed
08:59 jnthn jlaire: We couldn't have done nom without alpha and ng to learn from.
08:59 jnthn So yes, certainly useful :)
08:59 daniel-s__ joined #perl6
09:00 arnsholt The previous rewrite is usually a necessary condition for the next one IME =)
09:00 daniel-s_ left #perl6
09:01 daxim joined #perl6
09:04 daniel-s__ left #perl6
09:04 daniel-s__ joined #perl6
09:04 Kivutarrr joined #perl6
09:08 _daniel-s__ joined #perl6
09:09 daniel-s__ left #perl6
09:11 moritz hurm, it seems that nom doesn't honor the #icu markers
09:12 moritz I have a machine without icu, and it tries to run all the tests
09:12 dalek niecza: 6988dc9 | sorear++ | src/niecza:
09:12 dalek niecza: Improve detection of acceptable names, parse atomic pseudo-package names properly
09:12 dalek niecza: review: https://github.com/sorear/niecza/commit/6988dc9013
09:12 * sorear -> sleep
09:13 daniel-s joined #perl6
09:13 sorear you can now, for instance, MY.WHO.<$x>
09:13 _daniel-s__ left #perl6
09:13 moritz woah
09:13 jnthn moritz: Oh, it's not just me that it's doing that for then.
09:16 moritz it runs
09:16 moritz /home/moritz/perl5/perlbrew​/perls/perl-5.12.3/bin/perl t/harness --fudge --keep-exit-code --icu= --tests-from-file=t/spectest.data
09:16 awoodland joined #perl6
09:16 moritz the --icu= looks correct-ish
09:17 daniel-s_ joined #perl6
09:18 daniel-s left #perl6
09:21 mattp_ joined #perl6
09:22 daniel-s__ joined #perl6
09:22 daniel-s_ left #perl6
09:23 moritz ew, no
09:23 moritz Getopt::Long seems to treat that as missing
09:26 moritz how did that work in master?
09:26 _daniel-s__ joined #perl6
09:27 daniel-s__ left #perl6
09:27 jnthn moritz: Maybe it didn't... :)
09:30 _daniel-s__ left #perl6
09:30 _daniel-s__ joined #perl6
09:33 tadzik heh, they mentioned me in Perl Weekly :)
09:34 moritz what is "Perl Weekly"?
09:34 tadzik a new weekly newsletter
09:34 tadzik http://perlweekly.com/
09:35 _daniel-s__ left #perl6
09:35 _daniel-s__ joined #perl6
09:37 moritz nice
09:37 moritz oh, btw
09:38 moritz autounfudge found a pod-related test that now passes in nom
09:38 moritz sadly it's on a machine which I can't access right now
09:38 tadzik which one?
09:38 moritz one in quoting.t or so
09:39 daniel-s joined #perl6
09:40 _daniel-s__ left #perl6
09:40 tadzik oh, that's probably the one that passed in master too
09:40 tadzik I mean, on a master-based podparser
09:41 moritz ok, on master HAS_ICU  = 0   in the Makefile
09:42 jnthn aha
09:42 * moritz digs deeper
09:42 * moritz suspects an undef-vs-0 issue in Makefile generation
09:43 moritz yep
09:43 moritz $text =~ s/@([:\w]+)@/$config{$1} || $config{"parrot::$1"} || ''/ge;
09:43 tadzik I like how Perl 5 doesn't need local::lib these days
09:43 tadzik everything Just Works
09:43 daniel-s left #perl6
09:44 daniel-s joined #perl6
09:44 jnthn We really need to get module search/loading/caching sorted out in nom soon.
09:45 jnthn Rakudo itself needs to start maintaining the pre-compilation cache, rather than relying on the module installer to pre-compile, also.
09:45 awoodland_ joined #perl6
09:45 awoodland left #perl6
09:46 mls_ joined #perl6
09:46 mls_ Hi perl6!
09:47 tadzik hello mls_
09:47 moritz jnthn: agreed
09:47 moritz \o mls_
09:47 mls_ are there any non-control exception that are resumable?
09:47 mls_ exceptions
09:48 daniel-s left #perl6
09:48 daniel-s joined #perl6
09:48 tadzik what does autounfudge produce?
09:48 tadzik it Processed File, and?
09:48 moritz tadzik: a patch
09:48 moritz in autounfudge.patch
09:48 tadzik oh, there it is
09:48 tadzik ...empty :)
09:51 mls_ (Btw, the README file says perl Configure --gen-parrot, but it's Configure.pl)
09:51 tadzik not ok 9 - '\xa0' does not split in a whitespace quoted list
09:51 tadzik #      got: 'a b c d'
09:51 tadzik # expected: 'a b c d'
09:51 tadzik eh
09:51 moritz one of them might be a non-breaking space
09:52 moritz better to .join('|')
09:52 tadzik spectests shouldn't generally say(), should then
09:52 moritz no
09:52 tadzik s/then/they\?/
09:52 * tadzik fixes
09:52 daniel-s_ joined #perl6
09:53 moritz there's diag() for debug output
09:53 daniel-s left #perl6
09:53 moritz mls_: thanks, patched locally
09:53 moritz will push when the previous commit is spectested :-)
09:54 dalek roast: 8338765 | tadzik++ | S02-literals/listquote-whitespace.t:
09:54 dalek roast: Remove leftaround say()s
09:54 dalek roast: review: https://github.com/perl6/roast/commit/8338765b32
09:56 birdwindupbird joined #perl6
09:57 dalek rakudo/nom: 2dd618f | moritz++ | tools/lib/NQP/Configure.pm:
09:57 dalek rakudo/nom: [build] fix lookup of defined-but-false configure options while generating the Makefile
09:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2dd618febb
09:57 dalek rakudo/nom: 293215f | moritz++ | README:
09:57 dalek rakudo/nom: fix thinko on README, mls++
09:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/293215fc97
09:57 daniel-s__ joined #perl6
09:57 daniel-s_ left #perl6
10:01 frettled left #perl6
10:01 _daniel-s__ joined #perl6
10:02 daniel-s__ left #perl6
10:03 Tedd1 left #perl6
10:03 phenny left #perl6
10:03 yahooooo left #perl6
10:03 Tedd1 joined #perl6
10:04 daxim left #perl6
10:04 simcop2387 left #perl6
10:04 daxim joined #perl6
10:05 _daniel-s__ left #perl6
10:06 daniel-s joined #perl6
10:06 simcop2387 joined #perl6
10:07 yahooooo joined #perl6
10:10 daniel-s left #perl6
10:10 daniel-s joined #perl6
10:14 daniel-s_ joined #perl6
10:15 am0c left #perl6
10:15 daniel-s left #perl6
10:19 daniel-s__ joined #perl6
10:19 daniel-s_ left #perl6
10:23 _daniel-s__ joined #perl6
10:24 daniel-s__ left #perl6
10:28 daniel-s joined #perl6
10:28 _daniel-s__ left #perl6
10:32 daniel-s left #perl6
10:32 daniel-s_ joined #perl6
10:35 mls_ jnthn: with your patch from yesterday, $! and $_ are not set in the CATCH block
10:35 mls_ There seems to be a "capture_lex" on the handler sub missing
10:36 afiskon left #perl6
10:36 daniel-s__ joined #perl6
10:37 daniel-s_ left #perl6
10:37 MayDaniel joined #perl6
10:41 daniel-s__ left #perl6
10:41 _daniel-s__ joined #perl6
10:45 _daniel-s__ left #perl6
10:49 wamba left #perl6
10:52 daniel-s joined #perl6
10:53 jnthn mls_: Hm. Oddness.
10:53 jnthn mls_: It passed the various tests.
10:56 daniel-s_ joined #perl6
10:57 daniel-s left #perl6
11:01 daniel-s_ left #perl6
11:01 daniel-s_ joined #perl6
11:01 jnthn nom: die 42; CATCH { .say }
11:01 p6eval nom: OUTPUT«Any()␤»
11:01 jnthn nom: die 42; CATCH { say $! }
11:01 p6eval nom: OUTPUT«Any()␤»
11:01 jnthn :/
11:01 jnthn oh, I wonder if it's...grrrr.
11:02 jnthn Yeah, push_block_handler may well want to be tossed and re-done.
11:05 daniel-s__ joined #perl6
11:06 daniel-s_ left #perl6
11:09 daniel-s__ left #perl6
11:10 daniel-s__ joined #perl6
11:14 daniel-s__ left #perl6
11:14 pernatiy left #perl6
11:14 daniel-s__ joined #perl6
11:18 daniel-s__ left #perl6
11:18 _daniel-s__ joined #perl6
11:22 donri joined #perl6
11:23 _daniel-s__ left #perl6
11:23 _daniel-s__ joined #perl6
11:23 odoacre left #perl6
11:23 odoacre joined #perl6
11:27 daniel-s joined #perl6
11:28 _daniel-s__ left #perl6
11:28 frettled joined #perl6
11:29 moritz jnthn: I think we never really tested for $_ in CATCH, just for $!
11:31 MayDaniel left #perl6
11:31 daniel-s left #perl6
11:32 daniel-s_ joined #perl6
11:35 wamba joined #perl6
11:35 satyavvd left #perl6
11:35 phenny joined #perl6
11:36 daniel-s_ left #perl6
11:36 daniel-s_ joined #perl6
11:38 gokulnath joined #perl6
11:40 daniel-s__ joined #perl6
11:40 daniel-s_ left #perl6
11:42 jnthn moritz: OK, clearly not in tests we're running though...or I'd have regressed something.
11:43 takadonet morning all
11:45 daniel-s__ left #perl6
11:45 _daniel-s__ joined #perl6
11:46 mls_ back from lunch...
11:46 gokulnath is there a step by step installation guide for installing cpan modules
11:47 moritz gokulnath: are you talking about perl 5 or perl 6?
11:47 gokulnath 6
11:47 moritz I think https://github.com/tadzik/panda/#readme is the best we have
11:48 mls_ $! in the CATCH block also doesn't work
11:48 moritz nom: try { die "foo"; CATCH { say $! } }
11:48 p6eval nom: OUTPUT«Any()␤»
11:48 moritz oh.
11:49 mls_ some tests in catch.t fail because of this
11:49 daniel-s joined #perl6
11:50 _daniel-s__ left #perl6
11:50 jnthn mls_: fudged ones?
11:50 mls_ Yes. But wait, thay would also fail if this is fixed.
11:51 mls_ Because die() doesn't transport the class. mortiz++ is working on that
11:52 mls_ s/class/object
11:54 daniel-s left #perl6
11:54 daniel-s_ joined #perl6
11:54 jnthn mls_: Yeah. The whole exceptions thing needs a good bit of attention.
11:54 mls_ I think we need a new test case that does "my $ret; { die("foo"); CATCH {$ret = $_} }" and checks $ret
11:54 jnthn +1
11:55 moritz we currently don't have such a test because it's totally underspecced what die() puts in $!
11:55 mls_ What's the current mindset for warn()? Should CATCH catch it?
11:55 jnthn No
11:55 jnthn CONTROL probably should though.
11:56 mls_ ok, good.
11:56 jnthn More deeply though, I'm not sure we do things right in a deeper sense.
11:56 mls_ SO are there any resumable not-CONTROL exceptions?
11:56 mls_ s/SO/so/
11:56 jnthn We're meant to locate the exception handler, then run it, THEN unwind.
11:57 jnthn And resume means "don't bother unwinding"
11:57 jnthn iirc, resume involves a continuation today
11:58 jnthn Which suggests we unwind first.
11:58 jnthn I *think* .resume is a property that can be set on $! (but check S04)
11:58 daniel-s__ joined #perl6
11:58 jnthn In which case any exception is potentially resumable.
11:58 daniel-s_ left #perl6
11:58 mls_ Some are clearly not resumable, like the ones throws from parrot C Code
11:58 jnthn I got this working on the .Net impl of NQP.
11:59 jnthn True.
11:59 jnthn Well
11:59 mls_ Basically they can only be resumed if they are created by a throw opcode
11:59 jnthn I guess the issue is mostly that the C code doesn't expect to be returned to.
12:00 mls_ I think the C code also does a longjmp, will check...
12:00 jnthn If you're running your handler before unwinding in theory they *could* resume. It's just that every piece of code that throws from C today would be invalidated.
12:00 jnthn Yeah, I'm more talking about how I think exceptions shoulda been done in Parrot, not how they are.
12:00 jnthn If I'd designed it, it'd be much bett^W^Wquite different. :)
12:00 mls_ ;)
12:02 jnthn The way to handle resume in the design I'm suggestion would be that we longjmp after the handler in the C case, and if the user tried to mark a C exception as resumable we'd just say "no can do".
12:02 pernatiy joined #perl6
12:02 daniel-s__ left #perl6
12:02 jnthn *suggesting
12:02 jedai left #perl6
12:02 daniel-s__ joined #perl6
12:03 mls_ I should check the parrot code if the exceptions thrown from C have a continuation attached to them
12:03 jnthn *nod*
12:03 jedai joined #perl6
12:06 woosley left #perl6
12:07 daniel-s__ left #perl6
12:07 _daniel-s__ joined #perl6
12:07 moritz does &EXCEPTION get the parrot exception as first argument?
12:07 mls_ Yes
12:09 mls_ Parrot_ex_throw_from_c always does a longjmp()...
12:11 _daniel-s__ left #perl6
12:11 _daniel-s__ joined #perl6
12:12 jnthn mls_: That kinda makes sense.
12:14 mls_ Hmm, Parrot_ex_throw_from_c_args has a second argument "ret_addr", which seems to be ignored currently
12:15 mls_ It's supposed to hold the address from which to resume
12:16 daniel-s joined #perl6
12:16 _daniel-s__ left #perl6
12:17 mls_ Seems like the "resume" attribute is only set in the throw opcode
12:18 jnthn aha
12:18 jnthn To a Continuation?
12:18 mls_ "resume" holds the continuation
12:18 mls_ It's also set in the dir opcode
12:18 mls_ and exit opcode
12:18 mls_ that's all I could find
12:18 jnthn dir?
12:19 mls_ what dir?
12:20 daniel-s left #perl6
12:20 daniel-s joined #perl6
12:20 jnthn < mls_> It's also set in the dir opcode
12:21 jnthn I was asking what the opcode is
12:21 mls_ Ah sorry, typo. Meant die
12:21 jnthn Oh, did you mean die?
12:21 jnthn ah
12:21 jnthn :)
12:21 jnthn Was gonna say, what does directory listing and exceptions have to do with each other :)
12:22 mls_ Yeah, that would have been quite surprising ;)
12:23 gokulnath mortiz: is there a step by step installation guide for installing cpan modules in case of perl 5
12:24 * moritz must eventually hilight that mortiz guy
12:24 [Coke] jnthn++ # compiling LD to pir worked, thanks.
12:24 moritz gokulnath: there are lots and lots. Google knows most of them
12:24 moritz gokulnath: it also helps if you add the name of your perl distribution in the google search
12:24 daniel-s_ joined #perl6
12:24 daniel-s left #perl6
12:27 lichtkind joined #perl6
12:27 awoodland_ left #perl6
12:28 mls_ (Btw, is there an easy way to run generated pir code? I always do './perl6 -e "use foo.pir"', which is a bit cumbersome
12:29 daniel-s_ left #perl6
12:29 daniel-s_ joined #perl6
12:29 moritz ./install/bin/parrot foo.pir
12:30 mls_ Contextual $*ST not found
12:30 moritz ouch
12:30 moritz that needs to be fixed too
12:31 [Coke] mls_: having come here from parrot, that is cumbersome, but I love that it works.
12:32 mls_ Yes, I'm glad that I found a way to run it, too
12:33 mls_ jnthn: the old code implemented die() with throwing a CONTROL_ERROR exception
12:33 daniel-s_ left #perl6
12:33 mls_ thus CATCH doesn't catch CONTROL exceptions but CONTROL_ERROR
12:33 daniel-s_ joined #perl6
12:34 mls_ What exception type should warn() use?
12:34 mls_ the old code used the severity to differentiate between die/warn
12:34 mls_ but that means CATCH will catch warn() exceptions
12:35 mls_ (We could check the severity and rethrow, though)
12:37 cosimo joined #perl6
12:37 daniel-s_ left #perl6
12:38 daniel-s_ joined #perl6
12:38 jnthn moritz: (pre-comp bug) I worked out how to fix that one in the shower the other day...but didn't get around to it yet.
12:40 moritz nom: Exception.new().throw
12:40 p6eval nom: OUTPUT«Not a throwable object␤current instr.: 'throw' pc 682342 (src/gen/CORE.setting.pir:185946) (src/gen/CORE.setting:4569)␤»
12:40 jnthn nom: class Boomerang { }; Boomerang.throw
12:40 p6eval nom: OUTPUT«Method 'throw' not found for invocant of class 'Boomerang'␤current instr.: '_block1002' pc 99 ((file unknown):60304829) (/tmp/MpGSG1oRuE:1)␤»
12:41 Holy_Cow joined #perl6
12:42 daniel-s_ left #perl6
12:42 daniel-s__ joined #perl6
12:43 mls_ nom: class Boomerang { }; THROW(Boomerang, pir::const::CONTROL_ERROR)
12:44 p6eval nom: OUTPUT«Warning␤»
12:46 mls_ Hmm, I'm thinking about adding a pop_eh to the CATCH code
12:46 daniel-s__ left #perl6
12:46 _daniel-s__ joined #perl6
12:47 mls_ That would fix the "catches our own exception" problem in try.t for now
12:48 moritz we've had such a patch in master, and had it reverted
12:48 moritz I don't recall what the issue was, but it might be worth checking the commit logs
12:48 Holy_Cow left #perl6
12:48 mls_ S04 seems to indicate that we need to install a different exception handler anyway when processing exceptions (the SIMPLECATCH handler)
12:49 mls_ will check the logs
12:51 daniel-s joined #perl6
12:51 _daniel-s__ left #perl6
12:53 mls_ I found some change to try{} that got reverted later on. But nothing about pop_eh in CATCH
12:55 moritz hm, maybe I was wrong
12:55 moritz or maybe it was a change in nqp-rx or PCT
12:55 daniel-s_ joined #perl6
12:55 daniel-s left #perl6
12:56 jnthn Hm, it rings a bell for sure.
12:57 jnthn rakudo: die "foo"; CATCH { say "ok" }
12:57 p6eval rakudo 922500: OUTPUT«ok␤»
12:57 jnthn rakudo: die "foo"; CATCH { die "bar" }
12:57 p6eval rakudo 922500: OUTPUT«Segmentation fault␤»
12:57 jnthn ah, so it's wrong in master too
12:57 moritz it is indeed
13:00 daniel-s__ joined #perl6
13:00 daniel-s_ left #perl6
13:01 mls_ Hmm, pop_eh goes into an endless loop. strange...
13:02 gokulnath left #perl6
13:03 jnthn What does it try to pop?
13:04 * jnthn isn't sure about the scope of those ops
13:04 daniel-s__ left #perl6
13:04 daniel-s__ joined #perl6
13:04 mls_ You're right, it works if I put it in the sub where the push_eh is
13:05 mls_ moving the PAST::Op.new(:inline("    pop_eh")) ...
13:06 mls_ Ah, nice, try.t passes with no errors... spectesting...
13:07 arnsholt Does the code you're modifying use the PAST "catch" thing?
13:08 daniel-s__ left #perl6
13:08 daniel-s__ joined #perl6
13:09 mls_ I'm modifying push_block_handler in Actions.pm
13:09 * arnsholt has a look
13:10 arnsholt I've used PAST's exception handling a bit, and it requires a bit of care
13:10 moritz that reads like an understatement :-)
13:10 mls_ Do you mean PAST's try node?
13:11 arnsholt That's what it's called! My memory has holes =)
13:11 mls_ CATCH blocks don't use that, they use a different mechanism called block handlers
13:12 shinobicl joined #perl6
13:12 arnsholt 'k
13:13 _daniel-s__ joined #perl6
13:13 daniel-s__ left #perl6
13:14 tcunha joined #perl6
13:14 mls_ You can set exception handlers to a PAST Block node
13:15 arnsholt Probably a good idea =)
13:16 arnsholt But yeah, where you put the pop_eh is a bit fiddly IME. I had a tendency to end up with popping twice, which is wrong =)
13:16 dalek 6model: 2795df3 | (Martin Berends)++ | c/t (4 files):
13:16 dalek 6model: [6model/c] test availability of posix or win32 threads
13:16 dalek 6model: review: https://github.com/jnthn/6model/commit/2795df3b77
13:16 jnthn Apart from the lexical scope of CATCH with the current factoring is expected to be that PAST::Block, not the one the user wrote it in.
13:17 arnsholt Of course, my problems are compounded by continuations
13:17 mls_ The strange thing is that parrot started to loop on the pop_eh opcode
13:17 mls_ I put a "trace 1" opcode right before the pop_eh and it did the pop_eh over and over again. Seems to be a parrot bug.
13:17 _daniel-s__ left #perl6
13:17 daniel-s joined #perl6
13:17 awoodland joined #perl6
13:18 arnsholt Yeah, that definitely sounds like a Parrot issue
13:18 [Coke] is this the "finalize" issue?
13:18 mls_ No, it's pop_eh not incrementing the pc
13:19 jnthn That's really weird.
13:19 [Coke] mls_: do have a small PIR program that demonstrates the issue?
13:19 [Coke] *you
13:19 mls_ Not yet, I'll try to generate one...
13:20 cosimo left #perl6
13:20 [Coke] http://trac.parrot.org/par​rot/ticket/1151#comment:3 for "the finalize issue", btw.
13:21 [Coke] does at least sound related.
13:22 mls_ yes, rakudo (at least nom) now uses finalize for try and CATCH
13:22 daniel-s_ joined #perl6
13:22 cosimo joined #perl6
13:22 daniel-s left #perl6
13:26 daniel-s__ joined #perl6
13:26 daniel-s_ left #perl6
13:31 _daniel-s__ joined #perl6
13:31 daniel-s__ left #perl6
13:35 _daniel-s__ left #perl6
13:36 _daniel-s__ joined #perl6
13:36 tokuhirom joined #perl6
13:37 MayDaniel joined #perl6
13:39 mls_ coke: I think it's a false alert, seems like Parrot's "No handler to delete." get's recaught, thus the loop
13:40 _daniel-s__ left #perl6
13:40 _daniel-s__ joined #perl6
13:40 moritz is that a runtime error?
13:41 mls_ Yes, it's a parrot exception
13:42 espadrine joined #perl6
13:43 mls_ spectest finished, looks good. Patch: https://gist.github.com/1120201
13:44 _daniel-s__ left #perl6
13:44 _daniel-s__ joined #perl6
13:44 mls_ Hmm, maybe put a space before the :inline, so that it looks like the rest of the code...
13:48 [Coke] should we .gitignore generated test files?
13:49 _daniel-s__ left #perl6
13:49 moritz [Coke]: what kind of generated test files?
13:49 _daniel-s__ joined #perl6
13:49 [Coke] jnthn: did you already "put back" |$c (from NOMMAP) ?
13:50 moritz if you mean temp files generated from test files... those should be cleaned up by the tests themselves
13:50 moritz if not, the tests should be fixed
13:50 [Coke] tempfile_filehandles*, tempfile_io*, unlink-test-fileunlink-*
13:51 moritz yes, the test files should delete them
13:51 [Coke] moritz: ok. (I run a lot of tests that don't finish normally, so they're more noticable for me.)
13:51 moritz [Coke]: me too :-)
13:52 moritz btw t/spec/S32-array/unshift.t aborts for me... also for anybody else?
13:52 jnthn nom: sub foo(|$c) { say $c.list; say $c.hash }; foo(1,2,3,:c<4>,:d<5>)
13:52 p6eval nom: OUTPUT«1 2 3␤Segmentation fault␤»
13:52 jnthn [Coke]: Not yet, it seems :)
13:52 mls_ I get 'unshift_pmc() not implemented in class 'Mu''
13:52 [Coke] so close. ;)
13:53 moritz same here
13:53 moritz tadzik: I think you last touched shift... see above
13:53 jnthn [Coke]: Think I got half way through that and nested signatures, then got distracted hacking on meta-circularity stuff.
13:53 [Coke] hurm. t/spec/S12-introspection/methods.t changed its failure mode.
13:53 daniel-s joined #perl6
13:53 _daniel-s__ left #perl6
13:53 jnthn [Coke]: If it's now about :tree, just fudge it :)
13:53 jnthn (if it's only the :tree tests that fail)
13:54 [Coke] too many named arguments
13:54 jnthn I bet that's the :tree tests.
13:54 * [Coke] checks.
13:55 mls_ nom: my @a; unshift @a, 1
13:55 p6eval nom: OUTPUT«unshift_pmc() not implemented in class 'Mu'␤current instr.: '_block17034' pc 661650 (src/gen/CORE.setting.pir:176588) (src/gen/CORE.setting:3161)␤»
13:57 dalek rakudo/nom: d9323d4 | moritz++ | t/spectest.data:
13:57 dalek rakudo/nom: comb.t needs ICU
13:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d9323d4562
13:57 daniel-s_ joined #perl6
13:57 [Coke] jnthn: it doesn't really get anywhere, lots of unit strings, then barf.
13:58 [Coke] *uninit
13:58 daniel-s left #perl6
13:58 jnthn ah
13:58 buubot_backup left #perl6
13:59 buubot_backup joined #perl6
13:59 jnthn It can't be that busted, lots of bits of the metamodel use .^methods...
13:59 jnthn nom: say Int.^methods
13:59 p6eval nom: OUTPUT«Int Num Rat abs Bridge chr succ pred sqrt base Bool Str abs sign sqrt sin cos tan sinh cosh tanh atan2 floor ceiling unpolar cis Complex truncate base log exp Numeric log log10 exp roots ACCEPTS Bool gist rand truncate bytes chars fmt substr uc lc ucfirst lcfirst chomp chop …
13:59 jnthn nom: say Int.^methods(:local)
13:59 p6eval nom: OUTPUT«Int Num Rat abs Bridge chr succ pred sqrt base Bool Str␤»
14:00 buubot_backup left #perl6
14:01 daniel-s__ joined #perl6
14:01 dalek roast: d9d8264 | moritz++ | S (2 files):
14:01 dalek roast: fudge/simplify tests that made rakudo die in absence of bigint libs
14:01 dalek roast: review: https://github.com/perl6/roast/commit/d9d8264abb
14:01 daniel-s_ left #perl6
14:02 tadzik moritz: it works here
14:03 [Coke] nom: __END__
14:03 p6eval nom: OUTPUT«Could not find sub &__END__␤current instr.: '_block1002' pc 74 ((file unknown):28012180) (/tmp/_6qe5OMVnN:1)␤»
14:03 tadzik oh, the sub variant is broken indeed
14:03 moritz tadzik: are both your rakudo and t/spec/ repos clean?
14:03 tadzik nom: my @a; @a.unshift(5)
14:03 p6eval nom: OUTPUT«unshift_pmc() not implemented in class 'Mu'␤current instr.: '_block17034' pc 661650 (src/gen/CORE.setting.pir:176588) (src/gen/CORE.setting:3161)␤»
14:03 moritz ie in synch with github
14:04 tadzik what
14:04 tadzik hmm
14:04 moritz seems like unshift need needs to initialize $!storage if necessary
14:04 tadzik oh, I know what that is
14:04 tadzik we were supposed to consult pmichaud about this, yes
14:05 tadzik we've come to conclusion with jnthn that it's not the best idea to initialize it in unshift, I think it should be done way before that
14:05 moritz you could simply  return Nil unless pir::defined($!storage);
14:05 daniel-s__ left #perl6
14:05 Casan joined #perl6
14:05 tadzik that wouldn't help. @a.unshift(5) will make @a Nil
14:05 daniel-s__ joined #perl6
14:06 tadzik I can temporarily fix it in unshift itself, yes
14:06 moritz ah, I was thinking of shift, not unshift
14:06 [Coke] jnthn: bah. bitten by hidden TAP output... it does actually get further tan I though.
14:06 [Coke] *than I thought
14:06 dalek rakudo/nom: ffe522a | Coke++ | t/spectest.data:
14:06 dalek rakudo/nom: track failure modes
14:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ffe522a996
14:07 Casan hey, is it possible that we make a link to the compiler features on the rakudo.org page? (the old one used to have a rakudo status page which I enjoyed).
14:07 tadzik any good way to create an RPA in Rakudo?
14:07 shinobicl hi all... i'm having a weird problem with parameters for a infix operator i made....
14:09 drbean_ left #perl6
14:10 daniel-s__ left #perl6
14:10 daniel-s__ joined #perl6
14:10 jimmy1980 joined #perl6
14:14 shinobicl left #perl6
14:14 daniel-s__ left #perl6
14:14 daniel-s__ joined #perl6
14:15 woosley joined #perl6
14:15 dalek roast: e154be7 | Coke++ | S12-introspection/methods.t:
14:15 dalek roast: nom fudging
14:15 dalek roast: review: https://github.com/perl6/roast/commit/e154be739b
14:16 [Coke] jnthn: fudged.
14:16 [Coke] tadzik: pir::new ?
14:16 jnthn [Coke]: Thanks
14:16 jnthn [Coke]: oh, that's not bad :)
14:16 [Coke] shinobicl: you have sample code?
14:17 dalek rakudo/nom: b3869b4 | Coke++ | t/spectest.data:
14:17 dalek rakudo/nom: run another fudged test
14:17 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b3869b436f
14:17 jnthn Especially as the .multi one looks out of date
14:17 [Coke] Yah, I'm just fudging, I'm not examining tests for specworthiness.
14:18 jnthn [Coke]: That's fine, was just commenting. :)
14:18 [Coke] metoo.; )
14:18 daniel-s__ left #perl6
14:19 wtw left #perl6
14:19 daniel-s__ joined #perl6
14:23 daniel-s__ left #perl6
14:28 [Coke] nom's spectests are generate a huge # of "uninitialized string" warnings. was this happening in master, OOC?
14:28 ggoebel left #perl6
14:28 tadzik oh, mebbe
14:29 moritz there were occasionaly warnings, but not too many
14:30 Kivutarrr left #perl6
14:33 ggoebel joined #perl6
14:33 jnthn .win 17
14:33 jnthn oop
14:33 jnthn s
14:34 jnthn ...keyboard usage fail.
14:34 [Coke] esc-u is shorter. :)
14:34 * moritz tries to stay below a magic number of 15 irssi windows
14:34 moritz though I often fail
14:35 * jnthn blames having drunk too much coffee today
14:39 [Coke] Unknown error condition
14:39 [Coke] git-svn++
14:41 molaf joined #perl6
14:41 [Coke] "total",      8773,    12,   386,   955, 10126, 36184
14:41 [Coke] "Synopsis", "pass","fail","todo","skip","plan","spec"
14:42 jnthn What's the line for master?
14:42 [Coke] Iunno, that one took me a long time to run. :)
14:42 [Coke] lemme check.
14:45 birdwindupbird left #perl6
14:45 shinobicl joined #perl6
14:45 djh joined #perl6
14:46 djh left #perl6
14:47 dalek roast: 7788a35 | moritz++ | S32- (2 files):
14:47 dalek roast: remove outdated tests, add a missing .gist
14:47 dalek roast: review: https://github.com/perl6/roast/commit/7788a35c4c
14:55 jnthn decommute &
14:56 shinobicl left #perl6
14:59 buubot_backup joined #perl6
15:01 kaare_ joined #perl6
15:02 rdesfo joined #perl6
15:05 JimmyZ_ joined #perl6
15:18 Woodi hi ppls
15:18 Woodi anyone is doing P6 in C++ maybe ?
15:19 TimToady mberends++ was working on a 6model in C, iirc
15:20 moritz or is the question more about embedding?
15:21 Woodi i asking about new compiler
15:21 Woodi should be little easier then plain C, IMO
15:22 moritz the lesson learned from previous compiler projects is to write the runtime is a fast, low-level language, and most of the compiler in Perl 6
15:22 moritz Woodi: yes, only a little easier
15:22 moritz which is why nobody has really bothered
15:23 TimToady and smop was in C, if anyone decides to pick it up again
15:23 * moritz would like to see a comparison of smop and 6model, but is too lazy to make one
15:24 * TimToady suspects they are largely complementary
15:25 TimToady smop was mostly about binding captures to signatures
15:25 jedai_ joined #perl6
15:25 Woodi i got idea today: write P6 compiler in C++, start with embading P5 :) few goals will be met on start: P5, exceptions easier, classes...
15:25 PerlJam And then we'd come full circle back to Topaz!  :)
15:25 moritz iirc smop also did p5 interop pretty early on
15:26 moritz which wouldn't be all too ba
15:26 moritz d
15:26 jedai left #perl6
15:26 moritz Woodi: so, start coding :-)
15:26 TimToady we can add you a column on the features matrix :)
15:27 moritz ... as soon as at least 5 + appear
15:27 Woodi i am extraordinary uncarefull programmer
15:28 Woodi but start seems :))
15:28 TimToady maybe you should do it in Haskell then :)
15:28 Woodi no way :)
15:30 TimToady since you're basically talking about a C++ backend, consider starting with one of the current platforms as a front-end to a C++ emitter
15:32 TimToady at the moment, niecza seems to have a better parser, and rakudo seems to have a better metamodel
15:33 TimToady I don't know which one would be easier for writing a new emitter
15:34 Woodi i must read and think... and i feel i decided start coding README and TODO files :)
15:35 TimToady but embedding a P5 to start is a nice idea
15:36 TimToady pugs kinda did that
15:36 JodaZ_ is now known as JodaZ
15:37 Woodi http://www.linuxjournal.com/article/2901 do p5 embading in second paragraph of article :)
15:37 Woodi not quite but...
15:38 JimmyZ_ 1998 ...
15:38 JimmyZ_ that is very old
15:39 TimToady I doubt the embedding interface has changed much since then
15:39 moritz there are a few options in newer perls that give more sanity, I have heard
15:39 shinobicl joined #perl6
15:40 shinobicl [Coke]: the code is here https://github.com/shinobi/TaskSched​uler/blob/master/WorkdayCalendar.pm  ... the test program here https://github.com/shinobi/TaskSched​uler/blob/master/t/WorkdayCalendar.t
15:41 shinobicl [Coke]: is like the 2nd parameter of the operator gets "lost" on its way. The values that the 2nd object contains are the defaults for a new object, not the values of the object it should be taking.
15:44 pmichaud good morning, #perl6
15:44 mls_ Hi pm!
15:44 espadrine o/
15:44 * jnthn home
15:44 jnthn o/ pmichaud
15:44 TimToady shinobicl: I wonder if it could have to do with the chaining semantics of eqv's precedence level
15:45 DonGene left #perl6
15:45 TimToady you might try a different operator name that doesn't do chaining by default
15:46 TimToady also, I probably wouldn't do the internal eqv tests with ~~, but with more eqvs on the subparts
15:48 [Coke] arrrrgh. ran the test summary in master, but the results scrolled off my screen buffer.
15:48 TimToady to absolutely rule out precedence issues, you might put parens around the eqv test too
15:48 TimToady you have them around the !eqv, but not the eqv
15:48 jnthn moritz: (smop vs 6model) Both start with a prototype-ish primitive then build things up from there. 6model takes a fairly different approach to representations, and also has quite a big focus on gradual typing, which I'm not sure smop really did.
15:49 mls_ pmichaud: any insights on whether warn() should use CONTROL_ERROR as exception type or some other to-be-defined value?
15:49 im2ee joined #perl6
15:49 TimToady warn is defined to be a control exception, so you're in the right ballpark anyway
15:50 mls_ CONTROL_ERROR gets caught by CATCH, but warn() exceptions should not be caught by CATCH
15:50 pmichaud mls_: what does master use?
15:50 mls_ master uses CONTROL_ERROR, i.e. CATCH catches warn()
15:50 TimToady control exceptions should not be caught by CATCH
15:50 woosley left #perl6
15:50 mls_ well, currently die() also throws CONTROL_ERROR
15:50 TimToady eek
15:51 im2ee left #perl6
15:51 mls_ (at least in master)
15:51 TimToady it's a misuse of the word CONTROL, at minimum, then
15:52 TimToady control exceptions are "unexceptional" exceptions, and die is not unexceptional
15:52 jnthn That's possibly a Parrot choice of name, not a Rakudo one :)
15:52 mls_ that's why handle_types_except('CONTROL') doesn't include CONTROL_ERROR ;)
15:52 jnthn But yes, it's...not good.
15:53 pmichaud mls_: looking
15:54 [Coke] CONTROL_ERROR may be a leftover from tcl's [error]
15:54 shinobicl Timtoady: changing from "eqv" to "¬" works, thanks :)
15:55 cosimo left #perl6
15:55 mls_ so do we need a new CONTROL_X for warn()?
15:55 tadzik hi pmichaud
15:55 TimToady so some bug in chaining, probably
15:55 TimToady maybe in the copy semantics that keep a temp for the next comparison
15:56 TimToady in case you say $a eqv $b eqv $c
15:56 pmichaud copy?
15:56 pmichaud if it chains, it's not really a copy
15:56 TimToady shinobicl++ has a bug in overloading eqv
15:56 tadzik pmichaud: my yesterday's implementation of List.unshift, using nqp::unshift, has problems with uninitialized $!items, being Mu rather than an RPA. What do you think is a best place to initialize $!items? the unshift itself seems like not the best place to do it
15:56 pmichaud tadzik: your unshift also doesn't work for infinite lists :(
15:56 TimToady it goes away when a different operator is used
15:57 moritz what should unshift with an infinite list do? fail? loop?
15:57 TimToady we discussed that yesterday
15:57 pmichaud it should put the infinite part into the generator portion of the list, I suspect.
15:57 TimToady unreify the reified bits of the array, was the upshot
15:57 pmichaud exactly.
15:58 moritz why not throw them away?
15:58 tadzik pmichaud: well, it passes all spectests :/
15:58 TimToady why throw them away?
15:58 moritz you can't access anything after an infinite chunk anyway
15:58 pmichaud moritz: we don't always know that something is infinite.
15:58 TimToady you can if we provide a surreal shift
15:58 tadzik bbs
15:58 pmichaud something can be "infinite" without being actually infinite.
15:59 moritz ok, I wasn't aware of that
15:59 pmichaud tadzik: (spectests)  yeah, the spectests aren't very complete when it comes to stuff like this
15:59 shinobicl left #perl6
15:59 pmichaud anyway, List.unshift should not be putting things into $!items  (the reified bits)
16:00 TimToady say 1,2,3, -> $n { last if $n > 10; $n + 1 } ... *;  # officially infinite
16:00 TimToady perl6: say 1,2,3, -> $n { last if $n > 10; $n + 1 } ... *;  # officially infinite
16:00 p6eval rakudo 922500, niecza v8-20-g6988dc9: OUTPUT«1234567891011␤»
16:00 p6eval ..pugs: OUTPUT«*** ␤    Unexpected "  #"␤    at /tmp/0ulErPJtZT line 1, column 52␤»
16:00 jnthn nom: say 1,2,3, -> $n { last if $n > 10; $n + 1 } ... *;
16:00 p6eval nom: OUTPUT«...␤»
16:00 pmichaud I still have a fix for that coming :-)
16:00 jnthn oh, cool :)
16:01 TimToady biab &
16:01 pernatiy left #perl6
16:02 [Coke] pmichaud: any big things landing in nom soon?
16:02 pmichaud qregex, hopefully.  I'm not sure about "soon" though -- lots of household distractions lately. :(
16:02 pmichaud plus just a general lack of properly shaped tuits
16:03 [Coke] hokay.
16:03 wamba left #perl6
16:03 [Coke] no pressure. ;)
16:03 [Coke] I am very jealous of my 14 year old, btw. home playing PS3. :P
16:05 pmichaud ....why is CATCH catching die/warn exceptions?  I don't understand.
16:05 pmichaud oh, it's supposed to do that, yes?
16:05 pmichaud oh, CATCH catches die, but not warn.
16:05 pmichaud (is supposed to)
16:05 jnthn pmichaud: It also catches die inside the CATCH itself.
16:06 pmichaud jnthn: that's a separate issue.
16:06 mls_ I patched that
16:06 jnthn ah, ok
16:06 jnthn mls_: Did it get applied?
16:06 pmichaud mls_: can I see the patch for that?
16:06 jnthn (sorry, I was quite distracted by $dayjob earlier :))
16:07 mls_ I just added a pop_eh, patch: https://gist.github.com/1120201
16:07 pmichaud mls_: that's wrong.
16:07 mls_ why?
16:07 pmichaud it removes the handler in the case of a resumed exception.
16:07 mls_ It does? Doesn't a resume reinstall the handlers?
16:07 pmichaud it's also possible that the top handler on the stack isn't the handler being popped.
16:08 pmichaud sorry
16:08 pmichaud it's also possible that the top handler on the stack isn't the current handler.
16:09 pmichaud a resume doesn't reinstall the handler for the current callframe, or for any functions it calls after the resume.
16:10 spinclad left #perl6
16:10 mls_ Hmm, how can we rethrow an exception if we mustn't pop the handlers?
16:11 pmichaud we have to have some way to tell the handler not to catch things
16:11 pmichaud I don't have a good answer to the problem (given Parrot's current exception model)
16:11 pmichaud but I suspect that pop_eh won't play well with gather/take, or with while loops.
16:11 jnthn Parrot's current exception model is only a good answer to "How do I implement exceptions badly?" :/
16:12 mls_ no spectest failures with the patch, btw
16:12 pmichaud I don't think the spectests currently test resumable exceptions, or the combination of CATCH/gather
16:13 [Coke] I am sure that parrot could use a someone to drive an ng exception model if anyone here has those tuits.
16:13 pmichaud anyway, CATCH catching die is a long-standing known bug  (getting ticket #'s)
16:14 jevin left #perl6
16:14 pmichaud RT #64262
16:14 mj41 left #perl6
16:14 jevin joined #perl6
16:15 pmichaud RT #96028
16:19 mls_ still, I think resuming the continuation reinstalls the exception handler
16:20 colorspace joined #perl6
16:20 pmichaud let's try it then.
16:20 * pmichaud writes a PIR example.
16:20 mls_ nom: for 1..3 -> $i { say $i; next; say "hello"; }
16:20 p6eval nom: OUTPUT«1␤2␤3␤»
16:20 mls_ also works with my patch
16:21 pmichaud that doesn't really prove anything.
16:21 mls_ I feared that ;)
16:21 pmichaud there's no pop_eh there
16:21 mls_ why not? The setting is compiled with my patch
16:22 [Coke] here's master's run:
16:22 [Coke] "total",     17716,  1365,   619,  1722, 21396, 36197
16:22 pmichaud statement for doesn't use   CATCH/CONTROL blocks
16:22 [Coke] and nom:
16:22 pmichaud so the fact that you've added a pop_eh to CATCH/CONTROL makes no difference.
16:22 [Coke] "total",      8773,    12,   386,   955, 10126, 36184
16:22 [Coke] "Synopsis", "pass","fail","todo","skip","plan","spec"
16:23 mls_ ok, that could be the reason why it works ;)
16:23 [Coke] nom is currently at 49.5% of master
16:27 pmichaud http://gist.github.com/1120575   # resuming after exception doesn't restore handler
16:28 pmichaud a slightly more complete example:
16:28 pmichaud 16:22 <pmichaud> statement for doesn't use   CATCH/CONTROL blocks
16:28 pmichaud grrrr.
16:29 pmichaud http://gist.github.com/1120583 # a slightly more complete example
16:31 mls_ I'm wondering if parrot should be changed to restore the handlers
16:31 pmichaud ...but we popped it.
16:31 mls_ Yes, but the continuations is a "snapshot" of a time when it wasn't popped
16:32 pmichaud in the first resumed 'a', I suspect the handler is still there.
16:32 pmichaud I'm not sure it should be restoring the handler in 'main', though.
16:33 pmichaud although I bet that's another problem (more
16:33 pmichaud )
16:34 daxim left #perl6
16:34 pmichaud http://gist.github.com/1120594   # another case
16:34 pmichaud looks like the exception handler is gone for the called 'a' as well  :-/
16:38 JimmyZ_ left #perl6
16:39 mls_ why does it loop if I comment out the pop_eh?
16:39 pmichaud you mean why does the CATCH block result in an infinite loop?
16:40 mls_ In your second example, if you comment out pop_eh it starts to loop
16:42 pmichaud hmmmm
16:42 mls_ ah, it's the exit 0
16:42 mls_ there's a pop_eh missing right before the exit 0
16:42 pmichaud yes, that's it.
16:43 pmichaud good catch :)
16:43 espadrine left #perl6
16:43 pmichaud I forgot that exit also throws an exception :-)
16:43 pmichaud I should've just put .return (0)
16:46 mls_ do you see any use case for the current behaviour, i.e. not reinstalling the handler?
16:47 mls_ s/handler/handler stack/
16:47 pmichaud I don't understand how it's supposed to reinstall the handler.
16:48 mls_ well, store them in the contination PMC, I guess
16:48 [Coke] argh. that number for master might be wrong, as I'm not sure it was running against the right version of t/spec
16:48 mls_ continuation
16:48 pmichaud and invoking a continuation causes the exception handlers to be restored for all callers?  that feels very wrongish.
16:49 awoodland left #perl6
16:49 pmichaud I'm more inclined to believe that pop_eh isn't the correct solution here.
16:49 icwiener joined #perl6
16:49 pmichaud Really, "pop_eh" means "remove the exception handler"  and that's not what we're wanting to do here.
16:49 pmichaud We're simply wanting the exception handler to not catch certain exceptions for a period of time.  We're not wanting to remove it entirely.
16:50 pmichaud I have an another example coming... just a sec.
16:51 * [Coke] drinks tons of diet snapple, and is reminded of yapc in chicago.
16:51 jevin left #perl6
16:51 wamba joined #perl6
16:52 jevin joined #perl6
16:54 pmichaud http://gist.github.com/1120645  # another example of pop_eh failure
16:56 pmichaud note how handler1 accidentally removes handler2
16:57 diakopter moritz: u around?
16:57 phenny diakopter: 06:39Z <moritz> tell diakopter about https://github.com/moritz/perl6-Sudoku
16:57 pmichaud (instead of removing itself)
16:57 shinobicl joined #perl6
16:58 mls_ Ah yes, true, that's what you meant that pop_eh may remove the wrong handler
16:59 mls_ ok, pop_eh is completely wrong
16:59 diakopter is it bad that I vastly prefer github's rendering of the synopses' pod over the one at perlcabal.org/syn
17:00 pmichaud diakopter: it's devastating.
17:00 diakopter heh
17:00 Casan left #perl6
17:01 mls_ so we need to access the ExceptionHandler pmc in the exception somehow
17:02 pmichaud actually, if we can find a way for an exception handler to determine that it's already in the caller stack, we could have it rethrow
17:03 pmichaud or otherwise not catch exceptions
17:03 mkramer joined #perl6
17:03 mls_ seems like most HLLs will run into this problem, so it would be nice if parrot provided some convenient solution
17:04 jnthn pmichaud: Is there a reason you'd ever want a handler to catch its own exceptions?
17:04 pmichaud jnthn: I can't think of one, no.
17:04 pmichaud (doesn't mean there isn't one.)
17:06 pmichaud anyway, for rakudo I see a couple of possibilities
17:06 pmichaud (1) we could subclass our own ExceptionHandler PMC that does what we need
17:06 pmichaud (2) we could have an opcode that does   rethrow_if_handerl_active
17:06 pmichaud *handler_active
17:08 pmichaud I'm not exactly sure what the caller stack looks like when a handler is active
17:08 * pmichaud checks.
17:10 jnthn errand, bbs
17:11 [Coke] -> (13:07) From GArrow, to coding:
17:11 [Coke] -  Saying Perl 6 has a great feature is like saying Harry Potter has better
17:11 [Coke] - spells than Gandalf.  We need to stick to non-fictional languages here.
17:11 pmichaud heh.
17:12 tadzik well, it's Harry who survived
17:12 [Coke] ( http://search.cpan.org/~garrow/ )
17:12 [Coke] tadzik: ... that kind of misses the point there. ;)
17:12 tadzik shush! :)
17:12 [Coke] also, they both died. get with the program. ;)
17:16 tadzik new HPatMoR chapters?
17:17 tadzik (:
17:19 pmichaud hmmm
17:19 [Coke] pmichaud: hummmmmm
17:19 Doctor_Pi joined #perl6
17:19 pmichaud I'm not seeing any way to detect that we're currently in an exception handler based on the call trace.
17:20 [Coke] exceptions handlers are not .subs, so that makes sense.
17:20 [Coke] (at least, not necessarily subs)
17:21 pmichaud oh
17:22 pmichaud we could twiddle the min/max severity to enable/disable the handler.  :-)
17:22 pmichaud that feels appropriately evil.
17:23 [Coke] evil's a good word.
17:24 masak joined #perl6
17:24 masak yay! hi, #perl6!
17:24 phenny masak: 01 Aug 22:21Z <diakopter> ask masak do you know of anyone writing sudoku-related code in Perl 6
17:24 tadzik o
17:24 tadzik masak: o/
17:24 Doctor_Pi Perl6 uses ICU, so I thought I would install ICU on PowerBook G4 running 10.5.8. When I ran "perl Configure.pl --gen-parrot" I get "no icu-config".
17:24 masak diakopter: I'll be giving a talk about Sudoku in (Perl 5, C,) Perl 6 at YAPC::EU.
17:25 masak diakopter: haven't gotten to the point where I port my Moose code to Perl 6, but I will have in a week or so.
17:25 pmichaud so, when we enter a handler, set its min_severity to REALLY_HIGH_SEVERITY.  Resuming an exception then needs to set min_severity back to zero somehow.
17:25 [Coke] Doctor_Pi: how did you install icu?
17:26 [Coke] (you may need icu-devel or the equivalent)
17:26 [Coke] (powerbook) macports?
17:27 pmichaud because we don't do a lot with resumable exceptions at the moment, I'm absolutely fine with simply doing   eh.'min_severity'(65535) inside of a CATCH block for now.
17:27 takadonet masak: I was writing  Sudoku solver for the rosetta code by doing a simple port of the java version then golfing it to Perl6ism ways. However I ran out of time to work on it
17:27 pmichaud (that will disable the handler without removing it)
17:27 masak takadonet: nice. hope you get time back.
17:28 masak takadonet: I'm going the Knuth way and using the Dancing Links algorithm.
17:28 mls_ yes, I wonder if the Exception contains the ExceptionHandler somewhere.
17:28 takadonet masak: Was doing brute force way.... my second objective was to test performance as we improve the nom branch
17:29 pmichaud mls_: I'm looking at that now.
17:29 pmichaud I see handler_iter there.
17:29 mls_ there's handler_iter and handler_ctx
17:29 Doctor_Pi [Coke]: Downloaded the tarball off the ICU site. And used these instructions here: http://javajosh.blogspot.com/2010/​12/how-to-install-icu-on-osx.html
17:29 masak takadonet: hm... so, tree search without propagation? :/
17:29 masak takadonet: have you seen Norvig's solution?
17:29 takadonet nope
17:30 Doctor_Pi [Coke]: I need to add one thing because there was a preexisting icu directory in the Downloads directory, the most recent tarball was extracted into icu-1
17:31 pmichaud oh, there's another answer.
17:31 Doctor_Pi [Coke]: I then ran the instructions in the icu-1/source folder.
17:31 pmichaud since our CATCH always involves invoking a sub, we could look for the existence of that sub in the call stack
17:32 pmichaud (would need to check for the dynamic sub, not the static one)
17:32 pmichaud still, twiddling min_severity is easier for now.
17:32 pmichaud looking.
17:32 mkramer left #perl6
17:33 mls_ but the sub on the callstack doesn't mean much, it can be multiple times on the call stack...
17:34 pmichaud the CATCH sub cannot be.
17:34 [Coke] Doctor_Pi: is "icu_config" in your path?
17:34 [Coke] er, icu-config
17:34 masak pmichaud: why not?
17:35 pmichaud a given CATCH closure can't be recursive, I suspect.
17:35 Doctor_Pi [Coke]: I should check that.
17:35 pmichaud i.e., a CATCH closure shouldn't be catching its own exceptions.
17:35 mls_ why can't the code in CATCH do some fancy operation (on a different object) that also runs in the same code?
17:35 masak pmichaud: it can occur multiple times on the stack, can it not?
17:35 pmichaud masak: the same closure?
17:35 masak pmichaud: closure, or closure clone?
17:36 wooden left #perl6
17:36 mls_ different ExceptionHandler object, though
17:36 pmichaud closure clone, if you like.
17:36 masak then, no.
17:36 pmichaud S04:1076
17:36 pmichaud " so we say that a C<CATCH> block
17:36 pmichaud never attempts to handle any exception thrown within its own dynamic scope.
17:36 pmichaud "
17:36 masak ok.
17:37 [Coke] Doctor_Pi: if it is, parrot should be finding it (and we can diagnose why not) if not, you can add it, or use the explict parrot config parameters that say "here is my icu"
17:37 Doctor_Pi [Coke]: I have a icu-config in /sw/bin and this is in my path, but it's not the one I just installed.
17:39 impious joined #perl6
17:39 pmichaud since I think any given block is limited to a single CATCH block, I would not be opposed to storing the handler lexically, like we do for RETURN.
17:40 pmichaud or perhaps it's an attribute on the current block
17:40 pmichaud then we could easily twiddle its min_severity
17:41 pmichaud or just store the handler in a register somewhere.
17:42 pmichaud I guess PAST doesn't make it easy to do that, though.  Hrm.
17:43 mls_ I think the the Exception's handler_iter[-1] contains the exception handler
17:43 mls_ at least the code for the finalize opcode looks like it
17:44 * pmichaud looks
17:45 pmichaud yes, it does.
17:45 pmichaud I'd be fine with that :-)
17:46 Doctor_Pi [Coke]: there is a icu-config in /usr/local/bin.  this is in my path but after /sw/bin. what are explicit parameters for "here is my icu"?
17:46 mls_ so we get the ExceptionHandler, store the severity in some loval var, raise it to some insane value, and run the CATCH block
17:46 mls_ local
17:46 pmichaud at this stage, I don't even care if we store the severity in some local var
17:46 mls_ we just need to restore it when we resume the exception
17:47 pmichaud but actually, the more I think about it, the more I'm convinced that any given CATCH block can only exist once on the dynamic stack.
17:47 mls_ I don't know. The code from the CATCH block can do many things, I don't see why it can't run the same sub again
17:48 pmichaud oh, I see.
17:48 mls_ (setting up a new exception handler...)
17:48 pmichaud but if it runs the same sub again, it gets a new CATCH closure.
17:48 [Coke] Doctor_Pi: in parrot, you can run: perl Configure.pl --help | grep icu
17:48 pmichaud which isn't the same as the one that ran the same sub again.
17:48 [Coke] --icu-config=/path/to/icu-config
17:49 [Coke] that should do it. I don't know how to tell rakudo to use those args on parrot, though.
17:49 pmichaud for master, --gen-parrot-option=--icu-​config=/path/to/icu-config
17:49 pmichaud for nom, --parrot-option=--icu-config=/path/to/icu-config (I think)
17:50 Doctor_Pi [Coke]: --gen-parrot-option='--option=value'
17:51 Doctor_Pi [Coke]: i was reading the the Configure.pl in the root of the tarball.
17:51 pmichaud mls_: I'm fine with either approach for now.  Also note that you probably don't need to keep track of the severity, since we don't make use of the severity yet in any of our code (i.e., it's safe to restore min_severity to zero)
17:52 pmichaud where "either approach" is  (a) twiddle min_severity, or (b) check the dynamic stack and rethrow if the current block is already on it
17:52 mls_ ah, nice. I'll provide a patch tomorrow, my perl6 hacking time for today is over ;)
17:52 pmichaud note that (b) will work even with resumable exceptions, while (a) needs some big-time help to detect when we do a resume.
17:52 pmichaud (so I don't think that (a) can be the long-term answer)
17:52 mls_ understood. Thanks!
17:53 pmichaud we still need to figure out what exception to use for warn.
17:53 mls_ Ah, yes, that also ;)
17:53 pmichaud and die too, if we don't like using CONTROL_ERROR
17:53 sorear good * #perl6
17:54 mls_ What's CONTROL_OK?
17:54 pmichaud (I agree that CONTROL_ERROR is misnamed for this.  OTOH, that's what Parrot's 'die' opcode throws.)
17:54 pmichaud I don't think CONTROL_OK is specifically defined in Parrot.
17:55 pmichaud (Yes, there's a CONTROL_OK type; no, I don't think it's been given any specific meaning.)
17:55 mls_ ;)
17:56 pmichaud I don't see any other predefined parrot exception types that really fit for die/warn
17:57 Doctor_Pi Stupid question. perl Configure.pl --gen-parrot is quitting with an unable to locate parrot
17:57 Doctor_Pi _config error,
17:57 Doctor_Pi sorry pressed return instead of another key.
17:57 pmichaud Doctor_Pi: perhaps remove parrot_install dir and try again
17:57 diakopter masak: you grok Dancing Links?
17:57 masak diakopter: I do.
17:57 Tene Haha, you can probably blame me for the bad names, iirc.
17:57 mkramer joined #perl6
17:58 dorlamm joined #perl6
17:58 Doctor_Pi pmichaud: which one is the parrot_install dir?
17:59 masak diakopter: I invite you to look at my implementation of it in https://github.com/masak/dlx-simple
17:59 Tene pmichaud: severity was used for 'warn' at least once in the past; dunno if that's still the case or not.
17:59 pmichaud Tene: yes, that's still the case.
17:59 mls_ hmm we can use severity 2 for CATCH, so that warnings don't get caught
17:59 Doctor_Pi forgive me I'm a bit green at this.
17:59 wolfman2000 left #perl6
17:59 pmichaud mls_: that might exclude other errors, though.
17:59 masak Doctor_Pi++ # contributing
17:59 mls_ Other warnings ;)
18:00 pmichaud mls_: no, other exceptions that have severity set less than 2
18:00 pmichaud CATCH catches everything that isn't CONTROL
18:00 pmichaud if you set min_severity to 2, you'll miss any exceptions that have min_severity less than 2.
18:01 Tene I'm really sad that I never managed to fix Parrot's exceptions system like I wanted.
18:02 Tene iirc, though, whiteknight got my work on throwing instances of arbitrary subclasses of Exception reimplemented and merged into master a while back.
18:02 mls_ handle_types and handle_types_exclude should yse (type,severity) tupels ;)
18:02 mls_ s/yse/use/
18:02 Tene I don't recall whether you can push_eh an isntance of a subclass of ExceptionHandler, though.
18:02 pmichaud I believe so.
18:02 Tene If you can, you could just write your won subclass with a custom can_handle method that does what you want to ignore appropriate exceptions.
18:03 pmichaud Tene: yeah, I looked at that.
18:03 Tene (I haven't really been following the dicsussion here very closely; just barely stopped by)
18:03 pmichaud I think the other solutions are simpler and more faithful to the P6 spec.
18:04 mls_ gotta run, till tomorrow...
18:04 pmichaud and if we subclass the ExceptionHandler PMC, we'd need to update PAST::Control to allow custom ExceptionHandler types, or avoid it altogether.
18:04 mls_ left #perl6
18:04 diakopter masak: I think the most interesting sudoku solvers are the ones that can be used to generate human-solvable sudoku boards
18:05 diakopter the ones that can solve any board are just too powerful to do that
18:05 Tene pmichaud: PAST::Control is pretty bad as it is.  It doesn't actuall support many of the operations people want.  Fixing that is also on my list of projects I wish I had done before I stopped working on Parrot.
18:05 masak diakopter: I have some ideas in that area.
18:05 Tene I really should have put more thought into that design before adding it. :(
18:05 masak diakopter: viz. generating a full board, and then selectively removing numbers until it no longers solves to a unique solution.
18:06 diakopter right
18:06 Tene I don't think I ever wrote down the more-reasonable API for exception handling in PAST that I worked out before... I don't remember what I planned to do there.
18:06 diakopter masak: but if the solver is too powerful, it can solve boards that realy aren't human-solvable
18:07 diakopter masak: i.e. ones that require "guessing" and backtracking to solve
18:07 sorear #phasers in 52?
18:08 masak diakopter: are you saying there's a finite set of human tricks for solving Sudoku?
18:09 diakopter if you're asking whether I think there are boards that aren't realistically human-solvable, then yes
18:09 diakopter that still have unique solutions, of course
18:09 masak hadn't considered that. thanks for the input.
18:09 masak I've never actually tried solving a Sudoku grid. :P
18:09 masak it looks so boring.
18:09 diakopter lolz
18:09 sorear s/realistically/funly/
18:10 diakopter sorear: a coworker generated a board that his solver can solve that requires 8-deep guessing
18:11 diakopter that's not just unfun, that's nigh impossible
18:11 jlaire there's a collection of boards with a minimum number of given numbers and a unique numbers somewhere in the internets
18:11 jlaire they are waaay too hard for mere humans
18:11 diakopter yes
18:11 jlaire unique solution*
18:11 * jlaire finds sudoku boring too
18:12 tadzik sorear: ywis
18:12 sorear ywis=?
18:12 tadzik yes
18:15 Kivutarrr joined #perl6
18:23 diakopter masak: solving all computer-solvable sudoku boards is cool, but mimicking human solution techniques is better for generating human-solvable boards
18:24 masak diakopter: my purpose is slightly different. I want to explore the translation of human-readable problems into DLX matrices (and back).
18:25 moritz diakopter: my experience from running a sudoku website is that all sudokus are solvable by humans :-)
18:26 diakopter moritz: but how are those boards generated
18:26 [Coke] I prefer to solve them by avoiding trial and error.
18:26 diakopter of course
18:26 moritz diakopter: by brute force
18:26 moritz (in C++)
18:27 diakopter moritz: that's not what I and jlaire mean by human-solvable
18:27 diakopter oh you mean generated
18:27 diakopter but how by brute force
18:27 moritz *you* asked how they were generated :-)
18:27 jlaire some puzzles require one of 1) computer assistance, 2) *lots* of guessing and back-tracking, 3) non-practical amounts of look-ahead
18:27 masak moritz: could you define "brute force" more narrowly. because I tried a slightly cleverer than brute force generator, and couldn't get it to spit out solutions.
18:28 masak s/\./?/
18:28 diakopter moritz: please clarify "brute force"; how do you know boards have only one solution
18:28 Kivutarrr left #perl6
18:28 moritz diakopter, masak: http://moritz.faui2k3.org/en/yasss#generate
18:29 * masak looks
18:29 masak heh. nice :)
18:29 moritz what I do additionally (not mentioned on that page) is to check for each hint if you can take it away, and still have a unique solution
18:29 masak makes sense.
18:29 masak that's what I wanted to do.
18:30 jlaire 26 is a lot
18:30 masak jlaire: yes, but then you remove all hints you can remove...
18:30 masak 26 is for the computer, not for the human :)
18:30 moritz jlaire: yes, considering that 17 is the minimum... but those are really hard to find
18:31 envi left #perl6
18:31 jlaire masak: oh I see
18:31 moritz i guess you can use algorithms tailored for finding ones with only 17 hints
18:31 masak moritz++ # nice, pragmatic heuristic
18:32 moritz oh, and jnthn++ for http://6guts.wordpress.com/2011/0​8/01/a-hint-of-meta-programming/
18:33 diakopter moritz: how can you support your belief that all valid boards are human solvable
18:35 masak yes, jnthn++
18:35 masak great hopes for the future!
18:35 icwiener left #perl6
18:36 moritz diakopter: I have a website where I offer one sudoku each day for online solving
18:36 shinobicl hi... being that "==" means numerically equal, and ≅  means (mathematically) "structurally indentical", a perl6 operator for "functionally equivalent" should be ≅ or ≅≅ ?
18:36 moritz diakopter: I picked the hardest I could find/generate, by several different metrics
18:37 [Coke] ENOFONT
18:37 diakopter moritz: that's not very convincing, unfortunately
18:37 masak shinobicl: how would you define "functionally equivalent"?
18:37 moritz diakopter: and all of them have been solved about 30 times
18:37 [Coke] .u ≅
18:37 phenny U+2245 APPROXIMATELY EQUAL TO (≅)
18:37 phenny U+0020 SPACE ( )
18:37 [Coke] .u ≅
18:37 phenny U+2245 APPROXIMATELY EQUAL TO (≅)
18:37 phenny U+0020 SPACE ( )
18:37 [Coke] .u ≅≅
18:37 phenny U+2245 APPROXIMATELY EQUAL TO (≅)
18:37 phenny U+2245 APPROXIMATELY EQUAL TO (≅)
18:37 moritz diakopter: and I have data to support estimates that <10% was cheating
18:37 shinobicl that both objects have the same functionality.
18:38 diakopter moritz: how many of these "genius" level boards do you have
18:38 masak shinobicl: I mean, how would you define it computationally?
18:38 diakopter moritz: I'd be curious to try some of them
18:38 masak shinobicl: I can tell that sub foo { $^x * 2 } and sub bar { $^x + $^x } always give the same result (for Nums, at least), but most of my programming languages can't.
18:39 moritz diakopter: about 1.8k
18:39 shinobicl in my particular case. One workdaycalendar would give you "2 workdays between august 3 and august 5"
18:39 moritz diakopter: http://sudokugarden.de/en/online/
18:39 diakopter moritz: how do i ask for one of those 1.8k
18:40 masak shinobicl: I don't see the connection between that and "functionally equivalent".
18:40 moritz diakopter: http://sudokugarden.de/en/online/dstats has stats about the easiest and hardest
18:41 shinobicl_ joined #perl6
18:42 shinobicl_ even if other "secondary" properties of the objects are different
18:43 diakopter moritz: I suggest that your generation technique possibly precludes the generation of the impractical-to-solve-by-humans boards, in which case it's a good generator. :) but I still maintain there are plenty of impractically solvable boards
18:43 shinobicl left #perl6
18:43 moritz diakopter: most of these sudokus aren't generated by me
18:44 moritz diakopter: there's a list of minimal sudokus somewhere, collected by gordon royle or so
18:44 moritz diakopter: and I have a hard time believing the minimal sudokus are not among those that are hardest to solve
18:45 diakopter I don't understand your point
18:46 moritz the selection of sudokus is not as narrow as you seemed to think it is
18:46 shinobicl_ left #perl6
18:47 diakopter I don't understand what you mean, but no matter
18:48 moritz my experience about solving sudokus that are generated by computers is not limited to those generated with the algorithm linked to above
18:50 tokuhirom left #perl6
18:50 tokuhirom joined #perl6
18:51 mkramer left #perl6
18:51 shinobicl joined #perl6
18:51 shinobicl that is, the objects are functionally equivalent if they gave the same outputs with the same inputs
18:52 shinobicl (sorry my internet connection sucks today)
18:53 masak shinobicl: and how will Perl 6 know that they do?
18:54 masak in general, I mean.
18:55 shinobicl not in general, depends on each case
18:55 tokuhirom left #perl6
18:56 shinobicl for my class, i know that when certains part of the object data are equal, then the compared objects are "functionally equivalent"
18:56 shinobicl (i'm looking for a better term for that)
18:56 masak shinobicl: I guess what I'm saying is that while I see what you want to use it for, I fail to see how to build it.
18:57 shinobicl on, in my case i just compare 2 arrays on each object. I just need an appropiate operator for that
18:57 masak shinobicl: are you simply talking about infix:<eqv> on objects, not functions?
18:57 shinobicl i've tried "eqv" but that didn't work
18:57 shinobicl yes masak
18:57 masak eqv should do that.
18:57 shinobicl i have problems overloading it
18:57 masak rakudo: say [1, 2, 3] eqv [1, 2, 3]
18:57 p6eval rakudo 922500: OUTPUT«Bool::True␤»
18:57 masak \o/
18:58 shinobicl i just changed the word "eqv" by something else and then my overloaded operator worked
18:59 masak shinobicl: sounds like an RT ticket, yes.
18:59 masak (an existing one, I mean)
18:59 shinobicl masak: http://irclog.perlgeek.de/​perl6/2011-08-02#i_4209723
19:00 * masak looks
19:01 rgrau joined #perl6
19:02 masak shinobicl: I see.
19:04 alester joined #perl6
19:04 rgrau left #perl6
19:05 shinobicl is that a bug? or maybe 'eqv' should be overloaded with something different from "infix" ?
19:09 Mowah left #perl6
19:11 shinobicl ...nevermind, i've just found Timtoady's comments about the issue
19:18 BooK left #perl6
19:23 shinobicl left #perl6
19:26 dorlamm left #perl6
19:30 jnthn nom: my $x; $x ^^= 42, 43
19:30 p6eval nom:  ( no output )
19:30 donri left #perl6
19:30 donri joined #perl6
19:30 p6eval left #perl6
19:30 p6eval joined #perl6
19:31 pmichaud nom:  say &infix:[^^]
19:31 p6eval nom: OUTPUT«Confused at line 1, near "say &infix"␤current instr.: 'nqp;HLL;Grammar;panic' pc 23611 (src/stage2/gen/NQPHLL.pir:6348) (src/stage2/gen/NQPHLL.pm:329)␤»
19:31 pmichaud nom:  say &infix:<^^>
19:31 p6eval nom: OUTPUT«infix:<^^>␤»
19:31 pmichaud nom:  my $x; $x ^^= 42;  say $x;
19:31 p6eval nom: OUTPUT«42␤»
19:31 sorear nom: pir::branch__vI(-256)
19:31 benabik ^^ ?  XOR?
19:31 p6eval nom: OUTPUT«Segmentation fault␤»
19:32 moritz nom: my $x; $x ^^= 42; ^^= 15
19:32 p6eval nom: OUTPUT«Confused at line 1, near "^^= 15"␤current instr.: 'nqp;HLL;Grammar;panic' pc 23611 (src/stage2/gen/NQPHLL.pir:6348) (src/stage2/gen/NQPHLL.pm:329)␤»
19:32 moritz nom: my $x; $x ^^= 42; $x ^^= 15
19:32 p6eval nom: OUTPUT«Segmentation fault␤»
19:32 jnthn sorear: Using pir:: is cheating :)
19:32 moritz there you go
19:32 jnthn moritz: And how is ^^ implemented?
19:32 sorear jnthn: I was testing the segfault reporting code in p6eval
19:32 moritz jnthn: dunno
19:32 moritz nom: say (0 ^^ 0)
19:33 p6eval nom: OUTPUT«0␤»
19:33 moritz nom: say (0 ^^ 0).perl
19:33 p6eval nom: OUTPUT«0␤»
19:33 moritz nom: say (Any ^^ Any).perl
19:33 p6eval nom: OUTPUT«Any␤»
19:33 [Coke] if you can make parrot segfault, please open a ticket.
19:33 sorear nom: say (1 ^^ 1).perl
19:33 p6eval nom: OUTPUT«Method 'perl' not found for invocant of class 'Undef'␤current instr.: '_block1002' pc 110 ((file unknown):23355040) (/tmp/0dWdryZkUB:1)␤»
19:34 moritz Undef, that's the problem
19:34 jnthn Right, same as usual...a Parrot type gets into an unfortunate place.
19:34 pmichaud jnthn: I'm happy with mapping Undef to Mu, fwiw.
19:34 sorear [Coke]: I think it's completely reasonable for branch_ic -256 to segfault
19:35 moritz same with xor= fwiw
19:36 pmichaud We can also create a custom pasttype for the 'xor' we need if we want.  I looked at it a couple of weeks ago and didn't like any of the answers.
19:36 Kivutarrr joined #perl6
19:36 sorear Aren't you responsible for all the pasttypes?
19:37 pmichaud I don't understand the question, but the answer is "yes"
19:38 dalek rakudo/nom: 20edd76 | moritz++ | NOMMAP.markdown:
19:38 dalek rakudo/nom: update NOMMAP
19:38 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/20edd76abe
19:38 jnthn *lol*
19:40 Vlavv_ left #perl6
19:49 MayDaniel left #perl6
19:49 MayDaniel joined #perl6
19:49 MayDaniel left #perl6
19:49 MayDaniel joined #perl6
19:53 Vlavv_ joined #perl6
19:58 dalek niecza: 9c1607b | sorear++ | lib/Kernel.cs:
19:58 dalek niecza: Implement ::("OUR") reference
19:58 dalek niecza: review: https://github.com/sorear/niecza/commit/9c1607b4d8
19:58 alester left #perl6
19:59 dalek roast: ee3ad6f | sorear++ | S02-names/pseudo.t:
19:59 dalek roast: [S02-names/pseudo.t] Correct MY tests, add OUR tests
19:59 dalek roast: review: https://github.com/perl6/roast/commit/ee3ad6fa58
19:59 sorear 2 down 10 left
19:59 masak \o/
20:07 molaf left #perl6
20:09 mkramer1 joined #perl6
20:15 Vlavv` joined #perl6
20:17 Vlavv_ left #perl6
20:22 Doctor_Pi left #perl6
20:23 Vlavv` left #perl6
20:23 Vlavv_ joined #perl6
20:32 mkramer1 left #perl6
20:33 Fried_ joined #perl6
20:35 * pmichaud continues to have a strong dislike for xor.
20:35 BooK joined #perl6
20:35 pmichaud xor was fun the first time.  Now it's just a royal pain.
20:36 pmichaud ultimately, it's another example of where we need a way to define short-circuiting semantics in Perl 6.
20:37 TimToady List of Thunk?
20:37 jnthn pmichaud: Well, we could maybe implement macros ;-)
20:37 pmichaud jnthn: even if we say "do it as macros", I've yet to see a complete definition.
20:37 pmichaud same for List of Thunk.
20:38 TimToady LoT is the macro on which other can be defined
20:38 TimToady *others
20:38 pmichaud pmichaud@kiwi:~/specs$ ack Thunk
20:38 pmichaud pmichaud@kiwi:~/specs$
20:38 pmichaud :-(
20:40 benabik Short-circuiting xor?
20:40 pmichaud benabik: short-circuit anything, tbh
20:41 TimToady benabik: with one() semantics, not with parity semantics
20:41 pmichaud how does a Perl 6 programmer define a short-circuiting operator
20:41 pmichaud ?
20:44 sshc_ joined #perl6
20:46 sshc left #perl6
20:48 [Coke] I can write up some javascript to allow you to collapse sections on the summary, if that's desirable.
20:48 [Coke] (from phasers)
20:51 mkramer joined #perl6
20:51 mkramer left #perl6
20:59 sorear is xor actually useful?
21:00 sorear short-circuiting
21:00 pmichaud Yes.
21:01 pmichaud I don't have the use case in mind right now, but I have run into times where I wanted to short-circuit upon proving that more than one thing was true.
21:07 masak oh, sure it's useful.
21:07 masak say you're wanting to know whether a sudoku solution is unique.
21:08 masak hm, maybe not a perfect example.
21:08 masak but it involves halting at two because that indicates failure.
21:14 ggoebel left #perl6
21:15 * sorear chooses &CORE::none as a sacrifice for CORE binding tests
21:16 masak 'night, #perl6
21:16 masak left #perl6
21:20 ggoebel joined #perl6
21:20 Vlavv_ left #perl6
21:21 [Coke] (how to write short circuit) can functions take code refs as args?
21:22 dalek roast: 878cf06 | sorear++ | S02-names/pseudo.t:
21:22 dalek roast: [S02-names/pseudo.t] Tests for CORE
21:22 dalek roast: review: https://github.com/perl6/roast/commit/878cf064a5
21:24 sorear [Coke]: yes
21:24 sorear [Coke]: but you don't get the nice syntax that way
21:24 sorear {...} ^^ {...} ^^ {...}  vs.  ... ^^ ... ^^ ...
21:25 sshc_ is now known as sshc
21:33 Vlavv_ joined #perl6
21:34 [Coke] sorear: yup. one thing at a time.
21:34 kaare_ left #perl6
21:44 Psyche^ joined #perl6
21:46 Patterner left #perl6
21:46 Psyche^ is now known as Patterner
21:49 diakopter moritz: you still around
21:51 MayDaniel left #perl6
22:02 colorspace left #perl6
22:12 felipe left #perl6
22:14 impious left #perl6
22:14 impious joined #perl6
22:17 drbean joined #perl6
22:23 am0c joined #perl6
22:31 Kivutarrr left #perl6
22:35 felipe joined #perl6
22:40 felher jnthn++ for a-hint-of-meta-programming.
22:49 sorear diakopter: ping
22:49 sorear diakopter: now that I'm writing original test files, I think I need to know how the smartlinker works
22:59 Reaganomicon left #perl6
23:00 Reaganomicon joined #perl6
23:01 Vlavv_ left #perl6
23:02 Vlavv joined #perl6
23:04 jnthn night, #perl6
23:04 TimToady o/
23:06 Reaganomicon left #perl6
23:07 Reaganomicon joined #perl6
23:09 wamba left #perl6
23:15 colorspace joined #perl6
23:21 bitpart joined #perl6
23:26 Su-Shee left #perl6
23:26 nbrown left #perl6
23:26 nbrown joined #perl6
23:29 donri so, who will implement perl6 on pypy
23:29 donri get to work people
23:29 TimToady got a mirror?
23:29 donri complete the original parrot joke \o/
23:30 donri TimToady: sorry?
23:30 TimToady I thought you were talking to yourself. :)
23:31 TimToady the first stage of enlightenment is when you discover that "someone" is "me"
23:31 donri :) i was joking around
23:31 dalek roast: cdbf121 | sorear++ | S02-names/pseudo.t:
23:31 dalek roast: [S02-names/pseudo.t] add GLOBAL, PROCESS, DYNAMIC
23:31 dalek roast: review: https://github.com/perl6/roast/commit/cdbf121734
23:32 donri hey are you subtly sneaking in references to an MJ song?
23:32 sorear me?
23:33 donri no, TimToady :)
23:33 donri "man in the mirror"
23:34 jedai joined #perl6
23:34 jedai_ left #perl6
23:36 jaldhar left #perl6
23:36 jaldhar joined #perl6
23:41 bitpart left #perl6
23:50 ranott joined #perl6
23:56 sorear welcome, ranott

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

Perl 6 | Reference Documentation | Rakudo