Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2011-09-15

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:02 uasi joined #perl6
00:07 replore joined #perl6
00:17 sorear yeah slang NYI
00:18 sorear TimToady: what should it say?  "type"?
00:19 jnthn nom: (anon package foo { }).WHAT.gist.say # curious...
00:19 p6eval nom 12b860: OUTPUT«===SORRY!===␤Cannot use anon scope with package at line 1, near "{ }).WHAT."␤»
00:19 jnthn nom: (package foo { }).WHAT.gist.say # curious...
00:19 p6eval nom 12b860: OUTPUT«foo()␤»
00:21 jnthn anon package should probably work.
00:29 diakopter jnthn: you're up late
00:31 diakopter niecza: gather my $a=5; say $a
00:31 p6eval niecza v9-30-g2b3ba1c: OUTPUT«Any()␤»
00:31 jnthn diakopter: Yeah...my sleep's been a little messed up of late.
00:32 wolfman2000 joined #perl6
00:33 PZt joined #perl6
00:34 diakopter niecza: proceed # NYI I guess, but what should it mean
00:34 p6eval niecza v9-30-g2b3ba1c: OUTPUT«Unhandled exception: Illegal control operator: proceed␤  at /tmp/ETRbgZ4hfl line 1 (MAIN mainline @ 1) ␤  at /home/p6eval/niecza/lib/CORE.setting line 2060 (CORE C968_ANON @ 2) ␤  at /home/p6eval/niecza/lib/CORE.setting line 2061 (CORE module-CORE @ 58) ␤  …
00:34 diakopter nom: proceed
00:34 p6eval nom 12b860: OUTPUT«Warning␤»
00:35 diakopter jnthn: I like the Warning
00:35 jnthn :P
00:36 jnthn I think niecza's output is more helpful
00:36 diakopter what's it supposed to mean and where
00:36 jnthn Just means a control exception was thrown and unhandled.
00:37 sorear jnthn: the package works in niecza, it's just that packages as types have an empty method set
00:38 sorear jnthn: should unhandled control exceptions be nonfatal?
00:38 lichtkind_ joined #perl6
00:42 jnthn sorear: Arguably, given CATCH won't get 'em...personally I would be happy with them being fatal, though.
00:43 diakopter niecza: class foo { say -> foo { 2 } }; say foo.bar # dunno
00:43 p6eval niecza v9-30-g2b3ba1c: OUTPUT«Unhandled exception: Unable to resolve method ast in class Any␤  at /home/p6eval/niecza/src/NieczaActions.pm6 line 1911 (NieczaActions NieczaActions.parameter @ 149) ␤  at /home/p6eval/niecza/src/STD.pm6 line 2920 (STD P6.parameter @ 312) ␤  at /home/p6eval…
00:44 sorear jnthn: I think have control continue past a next; or last; is Just Plain Wrong
00:45 diakopter sorear: ^^ std is okay with it
00:45 jnthn sorear: It's hard to imagine a situation where it's not a bug.
00:46 jnthn (So I won't argue against them being fatal.)
00:48 sorear diakopter: longstanding bug
00:48 diakopter oh
00:49 sorear but I'm not fixing any bugs this week
00:49 sorear I've started a major refactor
00:49 diakopter ooooo what refactor
00:50 sorear going to work on making tighter integration between parse time and runtime-object-creation time, and using bounded serialization
00:50 sorear mainly to the end of having real working BEGIN
00:56 diakopter sorear: you were right about M^N+N-1
00:56 diakopter though the various algorithms I've found to generate the strings still perplex me
01:11 uasi joined #perl6
01:18 jnthn sleep &
01:28 frhodes joined #perl6
01:32 frhodes_ joined #perl6
01:34 dalek niecza/serialize: c984628 | sorear++ | / (6 files):
01:34 dalek niecza/serialize: Remove non-dotnet backends, including nam; its role will be filled later
01:34 dalek niecza/serialize: review: https://github.com/sorear/niecza/commit/c984628b5c
01:44 jevin joined #perl6
01:50 uasi joined #perl6
01:51 uasi joined #perl6
01:55 _jaldhar joined #perl6
01:55 orafu joined #perl6
01:58 benabik joined #perl6
02:02 dalek niecza/serialize: e50410a | sorear++ | / (3 files):
02:02 dalek niecza/serialize: Streamline type conversion for downcalls
02:02 dalek niecza/serialize: review: https://github.com/sorear/niecza/commit/e50410a6e2
02:04 uasi joined #perl6
02:05 snarkyboojum I think there's something to be said for developing on crumby, slow machines to down downward pressure on software bloat :)
02:05 snarkyboojum to put*
02:05 frhodes joined #perl6
02:18 frhodes joined #perl6
02:19 lichtkind good night
02:22 uasi joined #perl6
02:23 bbkr1 joined #perl6
02:26 pernatiy joined #perl6
02:30 woosley joined #perl6
02:41 uasi joined #perl6
02:43 dukeleto joined #perl6
02:47 uasi joined #perl6
02:47 colomon joined #perl6
02:48 sorear o/ colomon
02:48 colomon \o
02:48 Vlavv joined #perl6
02:48 colomon was just going to check -- you didn't integrate the C# Complex changes I sent you yet, did you?
02:49 sorear no
02:49 colomon great
02:50 colomon planning on adding all the rest of the trig functions to it before the weekend.  :)
02:50 sorear cool
02:51 colomon I keep on hearing mentions of Gtk (I think it was) and Niecza?
02:51 sorear I'm working on a major refactor of the back end to support stuff like BEGIN, macros, and roles
02:51 sorear yes
02:51 sorear examples/gtk1.pl
02:51 colomon sweet, and sweet!
02:51 sorear did you miss that being added?
02:52 colomon probably, I've been pretty busy, and haven't pulled your changes since I started seriously on the trig work.
02:53 colomon I keep forgetting to branch before starting changes.  :)
02:54 uasi joined #perl6
02:55 sorear colomon: I'm on a branch.  There may be an ugly merge in a couple weeks
02:58 colomon branch for your refactor mentioned above?
02:59 sorear ye
03:05 odoacre joined #perl6
03:13 _jaldhar joined #perl6
03:16 uasi joined #perl6
03:16 molaf joined #perl6
03:22 yellow joined #perl6
03:23 yellow ?
03:23 sorear yellow: hi
03:23 sorear yellow: what are you looking for?
03:24 sorear and welcome
03:24 yellow curiosity satisfaction
03:24 TimToady so far we're being more curious than you :)
03:26 sorear yellow: you're not likely to see much activity while the sun in the middle of the Pacific.  If you don't want to wait 6 hours, take the initiative and start asking questions :)
03:26 yellow looking for info on perl6, thought this might be a spot to listen in and see what folks are talking about. was rather afraid it might be a little quiet. mid-atlantic better?
03:27 sorear yeah
03:27 sorear once Europe wakes up it'll get quite noisy in here
03:27 yellow also wondering just how much activity/interest there is around p6
03:27 sorear TimToady and me are always up late though
03:28 yellow ah
03:28 sorear I suppose the question becomes "who"
03:28 sorear TimToady is our resident designer and I'm a compiler writer
03:29 TimToady I'm a fired compiler writer :)
03:29 am0c joined #perl6
03:29 yellow ah, I'm among the elite...
03:29 TimToady sorear is fired up
03:29 sorear neither of us is particularly representative
03:29 TimToady except insofar as everyone here is weird
03:30 sorear except when we're representing Perl 6 to interlanguage delegations
03:30 yellow "interlanguage delegations" sounds intriguing
03:31 sorear shrug, nothing formal
03:31 TimToady you from BC?
03:31 sorear but I keep a presence on #p5p and #mono
03:31 sorear as well as #parrot, which only sometimes seems like a related project
03:32 yellow I know very little about p6 and was hoping to snoop around a bit before getting involved. Yes, Vancouver, Nanaimo. Heavily involved in p5 development for a media company.
03:33 yellow parrot: thought it was integral
03:33 TimToady well lurkers are certainly welcome as well as more active participants
03:33 sorear TimToady has also been heavily involved in p5 development over the years
03:34 benabik yellow: parrot is what's underneath Rakudo, which isn't the only P6 compiler.  It has its rough patches but we're (#parrot) working on it.
03:35 benabik So related yes, integral, not exactly.  Niezca, the other major P6 compiler, has nothing to do with Parrot.
03:35 TimToady you can run any of the major compilers right here
03:35 TimToady perl6: say rand
03:35 p6eval rakudo 12b860: OUTPUT«0.00676845626822242␤»
03:35 p6eval ..niecza v9-30-g2b3ba1c: OUTPUT«0.614047374862268␤»
03:35 p6eval ..pugs: OUTPUT«8.885623307173518e-3␤»
03:35 yellow much to learn
03:36 TimToady well, we hope it's fun at most spots on the curve
03:37 TimToady if you're familiar with Perl 5 than rosettacode.org will let you compare Perl 5 code with Perl 6 code for a variety of tasks
03:37 TimToady (and with many other languages)
03:38 TimToady *then
03:38 sorear the community has a way of turning everyone into contributors
03:38 yellow good. what are my other starting points (must admit to being a little disappointed in the "Camelia" website as the front page for p6)
03:38 TimToady well, we're trying to brainwash the young more than the old :)
03:38 sorear Camelia is a test of character
03:39 sorear we prefer to induct people who are cheerful and young at heart :)
03:40 yellow who are we?
03:41 TimToady #perl6 and fiends, er, friends
03:42 TimToady anyway, that's just the .org site; other sites can have dreary corporate logos if they like :)
03:44 yellow ha. might satisfy the shirts a bit more...
03:45 yellow (yes, i have to deal with shirts)
03:45 TimToady and we're trying to encourage a slightly more balanced gender demographic as well as age demographic, but that's a long-term goal
03:45 benabik If you use it, the shirts will come.  ;-)
03:45 sorear yellow: you think the shirts' lepidophobia might have worn off on you? :D
03:46 yellow and a hard slog, I imagine
03:47 TimToady what we really don't want is for Perl 6 to become yet another bastion for the male geek chest pounding ethos
03:47 TimToady so we're trying to keep it pretty gentle from the start
03:47 yellow lepidophobia: yes, a the corporate grindstone has been wearing over the years.
03:48 TimToady and we find that Camelia tends to scare off the most venomous of that crowd :)
03:48 yellow ha
03:50 yellow I find myself the custodian of piles and piles of legacy p5 code, much of it incomprehensible and a real fear to the corporation.
03:50 sorear interesting, wikipedia thinks lepidos is a declension of "pleasantness"
03:50 sorear *wiktionary
03:50 TimToady and we really don't care if someone has a negative first impression; it's more a test of their dynamic range if they can overcome that, and some people of a trollish bent just can't
03:51 yellow the later code, though, well commented and well structured.
03:51 TimToady so you don't have to love and adore Camelia to hang out here :)
03:51 yellow understood
03:51 sorear I think Camelia is awesome, but that might just be TimToady's mind control field talking.
03:53 odoacre joined #perl6
03:53 yellow russian army perl coders seemed to have a love to single letter variables and compcat code...
03:54 sorear ...russian army?
03:54 * sorear likes single-character variable names too
03:56 yellow a lot of our legacy code was written by a Red Army-trained programmer
03:56 TimToady I got my first programming job partly because the head of the computer center was amused that I'd named a program 'g' when I could have used six letters
03:56 sorear I've always wondered how you got into programming...
03:56 yellow we're still using a lot of that code; I've re-written some of it
03:58 TimToady but mostly it was because the previous programmer in that job was graduating, and buttonholed me to take his place
03:58 * sorear is 20 years old and hasn't held any jobs
03:59 TimToady he was also a linguist, btw, and responsible for my interest in linguistics
03:59 sorear oh, that makes more sense, I thought it was the other way around... a linguist getting into programming
04:01 am0c joined #perl6
04:01 TimToady quietfanatic is 22 and just started his first job as a math TA
04:01 satyavvd joined #perl6
04:02 TimToady (is an offspring of mine, btw)
04:02 [Coke] ... jeez, I'm old.
04:03 yellow coke: ?
04:03 sorear oh, neat
04:03 [Coke] 2x as old as sorear. On my 12th job or so, depending on how you count. ;)
04:04 TimToady [Coke] is one of our parrotfolk
04:04 [Coke] Used to be, anyway. I'm more of a... barnacle at this point.
04:05 thou joined #perl6
04:08 yellow 2.7; I'll drop in later when I have a bit more to contribute. Have a good night all.
04:08 sorear 2.7?
04:08 yellow 2.7x
04:08 benabik as old?
04:08 Tene I got my first sysadmin/programming job by asking around on IRC for it.
04:09 Tene That's also how I've got every job since, including my current.
04:09 * sorear wonders if ey should try that
04:10 Tene sorear: If you're interested in moving to california, I can get you a recommendation at several companies here.
04:11 sorear Tene: I'm currently living in San Diego
04:11 birdwindupbird joined #perl6
04:11 Tene ahh, right, I think we've talked about this before.
04:11 Tene All my contacts are up around san francisco area
04:11 sorear lots of people want me!  in San Francisco, Boston, or Uppsala.
04:11 [Coke] I could use a web developer, btw. Albany, NY.
04:12 sorear I'm very indecisive about what I should do.
04:12 daniel-s joined #perl6
04:12 [Coke] you sure about that?
04:45 envi_laptop joined #perl6
04:45 xinming joined #perl6
05:26 packetknife joined #perl6
05:33 SHODAN joined #perl6
05:48 wtw joined #perl6
05:49 dalek niecza/serialize: 49a4ccb | sorear++ | / (7 files):
05:49 dalek niecza/serialize: First steps; create a RuntimeUnit object directly from the compiler
05:49 dalek niecza/serialize: review: https://github.com/sorear/niecza/commit/49a4ccb6f9
05:49 * sorear out
05:50 mberends sorear++
05:52 ZapZ joined #perl6
06:02 uasi joined #perl6
06:10 orafu joined #perl6
06:18 koban` joined #perl6
06:18 koban` left #perl6
06:36 masak joined #perl6
06:36 masak phenny: hot!
06:36 phenny masak: 14 Sep 21:44Z <diakopter> tell masak cool
06:36 masak good morgon, #perl6.
06:37 mberends good golly, masak
06:38 masak sorear: it's southern Sweden (Lund/Malmö) these days, not Uppsala. but yes, if you wanted to move here I would basically force my boss to hire you. not that I anticipate any resistance... ;)
06:39 masak sorear: we're a small startup with ambitions to make the enterprise a more aware place, development-wise. both jnthn and I enjoy having to look at our current habits as open-source developers, and try to distil what works and pass it on to a business IT environment in great need.
06:41 snarkyboojum that would be a mean little team indeed masak/jnthn/sorear :)
06:43 snarkyboojum "mean" meaning.. top notch (in case that was lost in translation)
06:48 masak ;)
06:55 mberends masak: I'm still hacking on Niecza graphics, and will look out for other dependencies you may need (I probably have a luck side effect of installing something else)
06:55 masak mberends: nod. if nothing else, it'll be useful for other Ubuntu users to know.
06:56 mberends Niecza is able to access some Cairo functions, although Rat to double conversion is currently missing.
06:57 mberends masak: oh, Ubuntu, I thought you used Debian.  I can try Ubuntu later today.
06:58 masak I was using Debian, but have gravitated towards Ubuntu in the past half year.
07:00 mberends that Unity desktop currently puts me off Ubuntu, and I can't be bothered to work out how to replace it.
07:01 masak oh, I turned that off without a second thought. haven't thought about it since.
07:02 snarkyboojum masak: just out of interest, are you running in on your mac laptop or did you change hardware?
07:02 masak I changed hardware.
07:03 masak host operating system is some version or other of Windows. :/ but my VMWare setup is so smooth that I often forget that until Windows decides to forcibly reboot.
07:04 snarkyboojum masak: yucky - but good stuff re linux :)
07:23 tadzik good good, morning
07:24 masak tadzik: mood gorning.
07:25 masak ok, so I have a grammar and an actions class. the grammar parses nested scopes, with what's essentially lexical variables inside. all these are declared at the top of the scope.
07:25 masak in order to check whether a variable has been declared, I need to "push" a new lexpad somewhere as I descend, and "pop" it as I ascend back up.
07:26 masak seems to me I need to do this in the grammar. but the variable declaration check is done in the actions. hmm.
07:27 masak my question is: how do I communicate the lexpad information between the grammar and actions class? through a dynvar?
07:27 masak though as I explan this it strikes me that I might's'well do the declaredness check in the 'var' rule in the grammar, too :)
07:29 * masak tries that
07:36 silug joined #perl6
07:41 * masak suddenly remembers http://strangelyconsistent.org/b​log/the-typo-trap-a-farcical-faq
07:41 masak it has pre-echoes of the current dialogue between Rakudo and Parrot.
07:43 masak oh, what a fun error message that was! I had completely forgotten about it.
07:43 masak rakudo: A::B.foo
07:43 p6eval rakudo 12b860: OUTPUT«Could not find symbol 'A::&B'␤  in <anon> at /tmp/NAoeylEJ8f:1␤  in <anon> at /tmp/NAoeylEJ8f:1␤␤»
07:43 masak \o/
07:44 masak though the symbol name looks a bit internal-ish.
07:44 masak std: A::&B
07:44 p6eval std bb4f150: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared names:â�¤   'A::' used at line 1â�¤   'B' used at line 1â�¤Check failedâ�¤FAILED 00:01 120mâ�¤Â»
07:44 masak std: module A {}; A::&B
07:44 p6eval std bb4f150: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    'B' used at line 1â�¤Check failedâ�¤FAILED 00:01 120mâ�¤Â»
07:44 masak std: module A { sub B {} }; A::&B
07:44 p6eval std bb4f150: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    'B' used at line 1â�¤Check failedâ�¤FAILED 00:01 120mâ�¤Â»
07:44 masak std: module A { our sub B {} }; A::&B
07:44 p6eval std bb4f150: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    'B' used at line 1â�¤Check failedâ�¤FAILED 00:01 121mâ�¤Â»
07:44 wamba joined #perl6
07:44 masak hey! I declared it! :)
07:45 tadzik bad std, no cookie
07:46 snarkyboojum is panda currently working?
07:47 snarkyboojum i.e. it's not on my machine :)
07:48 snarkyboojum but is it *supposed* to be working?
07:59 donri joined #perl6
08:00 masak hm. with this approach, my problem is that I can't pass parameters into the grammar parse.
08:01 masak maybe I should move all the lexicals checks into the actions class instead...
08:01 * masak plans to figure this out and then summarize it as a pattern in a blog post
08:04 masak it feels wrongish to have empty rules fire just so that one can put action methods in the right place...
08:05 masak ...but I'll do it like that until I get a better idea.
08:08 snarkyboojum tadzik: panda not working == possible nom regression?
08:08 tadzik snarkyboojum: yes
08:09 tadzik nom can't run panda yet
08:09 tadzik not even pies :)
08:09 tadzik I'm waiting for jnthn++ on this one
08:09 masak ah, Rakudo solves this by squarely putting @BLOCK in Perl6::Actions, and then accessing it from the grammar. that feels odd, too. but maybe it's necessary.
08:10 masak not only does it tie Perl6::Actions to Perl6::Grammar, but it also seems to treat Perl6::Action more as a module than as an object.
08:11 snarkyboojum tadzik: ah ok :( FWIW - I get an 'Invalid typename in parameter declaration' error in Pies.pm
08:11 tadzik yeah, that's the error
08:12 Alias_ joined #perl6
08:12 snarkyboojum tadzik: ok - cheers.
08:15 moritz what's the offending signature?
08:16 snarkyboojum method project-set-state(Pies::Project $p, Pies::Project::State $s) { !!! }
08:16 moritz thanks
08:16 snarkyboojum moritz: were you refering to Pies?
08:16 snarkyboojum ah k :)
08:17 tadzik jnthn was able to golf the error down to 2 lines or so
08:18 masak it's interesting to see fragments of Pls live on in Pies :)
08:18 tadzik the differences are really small, iirc
08:19 tadzik I think Pls doesn't have the distinction between ecosystem and resources, as Pies does
08:19 tadzik well, panda does
08:20 tadzik Pies doesn't care about such complicated hinks
08:21 masak sounds like a worthy distinction.
08:22 masak tadzik++
08:27 Shozan joined #perl6
08:36 moritz std: pair 'a', 1
08:36 p6eval std bb4f150: OUTPUT«ok 00:01 121m␤»
08:37 moritz there's a pair() routine in the setting?
08:38 daxim joined #perl6
08:39 masak yay! all tests pass!
08:40 moritz perl6: pair
08:40 p6eval rakudo 12b860: OUTPUT«Could not find sub &pair␤  in <anon> at /tmp/UfSc9XEbkF:1␤  in <anon> at /tmp/UfSc9XEbkF:1␤␤»
08:40 p6eval ..niecza v9-30-g2b3ba1c: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤      'pair' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 685 (CORE die @ 2) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1136 (STD P6.comp_unit @ 36) â�¤  â€¦
08:40 p6eval ..pugs:  ( no output )
08:40 moritz pugs: say (pair 'a', 2).perl
08:40 p6eval pugs: OUTPUT«(("a" => 2),)␤»
08:40 moritz hm.
08:40 moritz pugs: say (pair 'a', 2, 3, 4).perl
08:40 masak moritz: https://github.com/perl6/std/​blob/master/CORE.setting#L326
08:40 p6eval pugs: OUTPUT«(("a" => 2), ("3" => 4))␤»
08:41 moritz masak: I deducted the presence of pair() from std's response, I'm just rather surprised
08:41 moritz pugs: say (pair 'a', 2, 3).perl
08:41 p6eval pugs: OUTPUT«*** Odd number of elements found where hash expected: VList [VStr "a",VInt 2,VInt 3]␤    at /tmp/8KU7dmBbUU line 1, column 6-20␤»
08:42 tadzik moritz: seems that we're looking at the same test :)
08:43 moritz pugs' behavior seems to make some sort of sense, but if that's intended, why not call it 'pairs'?
08:44 tadzik perl6: class Naughty is Exception {}; die Naughty("error"); # how is that supposed to work
08:44 p6eval rakudo 12b860: OUTPUT«Could not find sub &Naughty␤  in <anon> at /tmp/G9W3shaAhS:1␤  in <anon> at /tmp/G9W3shaAhS:1␤␤»
08:44 p6eval ..niecza v9-30-g2b3ba1c: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Unhandled trait Exception for this context at /tmp/16oCB6adFF line 1:â�¤------> [32mclass Naughty is Exception [33mâ��[31m{}; die Naughty("error"); # how is that [0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecz…
08:44 p6eval ..pugs: OUTPUT«*** No such subroutine: "&Naughty"␤    at /tmp/NpElWCXnZi line 1, column 32-52␤»
08:45 moritz tadzik: you should call .new at least
08:46 tadzik moritz: that's from the spec :/
08:46 tadzik t/spec/S04-exception-handlers/catch.rakudo
08:46 tadzik #59
08:46 moritz TimToady: what's &pair supposed to do? can it go?
08:47 moritz tadzik: I believe spec and tests need to be fixed
08:47 moritz I mean there is the Type($foo) coercion syntax, which seems to be used here
08:47 tadzik well, from the spectests at least
08:48 moritz but Naughty would need to declare its coercion somehow
08:48 moritz unless Exception($foo) defaults to Exception.new(message => $foo)
08:48 moritz hm, that could be made to work
08:48 tadzik still, the test is broken
08:49 tadzik or not
08:49 tadzik what does the spec say? Oh, you write the spec :)
08:49 snarkyboojum which test is everyone looking at? :D
08:49 tadzik Exception($foo) looks C==y
08:49 * moritz says "not sure yet"
08:49 tadzik snarkyboojum: t/spec/S04-exception-handlers/catch.rakudo
08:49 tadzik s/==/++/
08:49 snarkyboojum tadzik: ta
08:50 moritz tadzik: I guess the test needs to be #?skip'ed for rakudo until we have that coercion syntax, or decide to abandon the test
08:50 masak -1 to using Exception($foo) to construct an exception
08:50 dakkar joined #perl6
08:50 moritz masak: are you also -1 to using Int("42") to construct an Int?
08:51 tadzik I am
08:53 masak moritz: yes.
08:53 dalek roast: d3a9312 | moritz++ | S04-statements/try.t:
08:53 dalek roast: [try.t] change compile time to run time error
08:53 dalek roast: review: https://github.com/perl6/roast/commit/d3a9312227
08:53 masak whoa. wait! :)
08:53 masak that's a conversion, IIRC.
08:53 tadzik so undeclared routine is a compile time error, yes?
08:53 masak but I'd write it as "42".Int
08:53 moritz tadzik: yes, should be
08:53 tadzik oh, moritz just fixed that, ok
08:53 moritz tadzik: I fixed the one in try.t, not in catch.t
08:54 tadzik moritz: that's the one I was looking at at the moment :)
08:54 moritz masak: I don't really see how Int("42") is different from Exception("message")
08:54 tadzik I'll leave those to you and catch some breakfast
08:55 moritz the difference between $obj.Type and Type($obj) is really who should know how to do the conversion
08:55 moritz $obj.WHAT or Type
08:55 moritz in that sense, "message".Exception would seem Very Wrong
08:56 moritz but I don't see what's wrong with Exception("message"), except that it's not very clear about creating a new object (or maybe it is, and I'm just not yet used to it?)
08:57 tadzik It doesn't look Perly
08:57 tadzik (for me)
09:09 masak moritz: I won't defend the difference very forcefully, because I'm undecided myself.
09:09 masak moritz: but it feels like there's a conceptual difference between casting and instantiating.
09:09 masak Exception("message") looks like it means "convert this string into an error message".
09:10 masak er, into an Exception object.
09:10 masak or this Cool, or whatever.
09:11 masak and conversion is simply not what happens here. an Exception swallows the string and wraps itself around it; that's different from a Str becoming an Int.
09:14 moritz well, I don't see the conceptual difference
09:15 moritz in both cases it's a routine that maps an object of one type to an object of another type
09:15 masak the Int doesn't eat the Str and keep it around inside of itself.
09:16 masak the relationship is more symmetrical between the Int and the Str than between the Exception and the Str.
09:16 masak the Exception HAS_A the Str.
09:17 masak (yes, this is me not defending the difference very forcefully) :P
09:18 masak or perhaps s/forcefully/vigorously/
09:20 eiro thanks for your tweet masak :)
09:21 masak which one? :)
09:21 eiro arguments of the the longuest answer really convinced me :)
09:21 eiro TeX one
09:22 masak eiro: ah :)
09:22 moritz masak: I understand the symmetry argument, but not the "eating"
09:22 moritz because immutables can't be eaten
09:23 masak ah, http://twitter.com/carlmasa​k/status/114234123710771200
09:23 george_z0rwell joined #perl6
09:23 masak moritz: eating in the sense of Jonah and the whale.
09:23 masak i.e. it's contained but not consumed.
09:24 donri joined #perl6
09:28 masak I just had an idea for a CPAN module I want to write. Perl6::MAIN.
09:28 masak full support for 'sub MAIN' and 'multi MAIN', with signatures.
09:28 jnthn morning, #perl6
09:28 masak jnthn! \o/
09:28 tadzik good hello, jnthn
09:30 * masak likes the new trend of absurdist greetings
09:31 snarkyboojum eiro: I had a lecturer once who was trying to improve on TeX - http://en.wikipedia.org/wiki/Omega_(TeX)
09:31 snarkyboojum eiro: not sure it picked up tho
09:32 tadzik masak: if you're greeting someone half of your day, you're starting te be a bit fancy about it, my dear zebra :)
09:36 arnsholt masak: I had the same idea the other day!
09:36 arnsholt But it needs some additional features like multis and signatures
09:37 eiro thanks for the link snarkyboojum
09:37 snarkyboojum eiro: looks like they recommend checking out http://www.luatex.org/ now instead
09:37 moritz masak: so you want to write a full Perl 6 multi dispatcher for a language that doesn't expose types?
09:37 eiro snarkyboojum, already done (by following your first link)
09:38 snarkyboojum eiro: too fast :)
09:38 Net joined #perl6
09:38 moritz masak: the idea is nice, just the "full" sounds a bit impractical
09:39 eiro but i really wonder how TeX can still compete with html viewports technologies. I mean: mathml + html canvas + css = TeX features in your viewport ?
09:40 eiro + html content can be dynamic (tex is not ... afaik)
09:40 moritz eiro: depends on what/whom you target
09:40 Net eiro: TeX have much bigger userbase :)
09:41 moritz eiro: when I write my master or phd thesis, I don't give a damn how it looks in the browser. I want a very good hardcopy in the end
09:41 eiro Net, sure! how is still using a web browser nowaday :
09:41 eiro :)
09:41 masak moritz: I wasn't planning on having types, I think. just the ability to dispatch on named arguments and such.
09:42 masak moritz: but I'd need to design it a bit to know for sure :)
09:42 Net how much canvas are used atm ?
09:42 eiro oh ... yes... producing printable books must be easier in TeX  :)
09:42 Net it is
09:42 eiro Net, well ... point :)
09:42 eiro ok: i'll give TeX a chance.
09:43 Net try latex first
09:43 eiro ok
09:43 eiro i tried long time ago (made slides with beamer)
09:44 moritz well, one can use latex for slides, but it's not latex' real strength
09:44 snarkyboojum eiro: for high fidelity typesetting, you can't compare browser technologies with TeX (in my experience) :D
09:44 tadzik I have a feeling that aside from beamer being awesome, latex is not really good for slides
09:44 tadzik see: images
09:44 moritz tadzik: correct
09:44 tewk joined #perl6
09:45 saaki joined #perl6
09:45 eiro yep... i seems this old experience was actually a bad start: let's do it again from scratch :)
09:45 lue joined #perl6
09:47 Net eiro: TeX and friends are (mainly) for matemathicans (who are forced by phd ovners to use it :) ) first think what you want to accomplish then use tools for that
09:48 arnsholt It's not unheard of in linguistics either to use LaTeX, actually
09:48 arnsholt Makes things like attribute-value matrices and trees so much easier
09:50 Net anyone can tell me how to grep for NQP version needed for rakudo compilation ? parrot version is 'parrot_version' in tools/distro/rakudo.spec i belive...
09:50 moritz Net: which rakudo are you looking at? (brach? release?)
09:51 Net usually master but it is not good probably...
09:52 Net how-to-get-rakudo from rakudo.org say nom...
09:52 moritz Net: master doesn't need NQP
09:52 moritz and on nom it's in tools/build/NQP_REVISION
09:53 Net ahh.. how i can miss it...
09:53 Net thank you
09:57 eiro Net, i need a templating system for printable reports with graphs and sheets. i don't need all the power of TeX but i would like the result to be eye candy
10:00 Net eiro: 'sounds' like www technologies :)
10:00 Net Web-1.x :)
10:03 eiro i thought about TeX because of multipage reports
10:04 arnsholt eiro: For making graphs, I usually use gnuplot
10:04 moritz eiro: how will the reports be viewed? on screen? on paper?
10:04 arnsholt It's a bit baroque and arcane at times, but the output is pretty nice
10:04 Net eiro: whatever you will choose you will need substantial amount of coding... so 'shiny' technology is not necesary required
10:05 arnsholt I think gnuplot even has a mode where it outputs a full LaTeX document for your graph
10:09 jnthn So...Perl 6 day. Any requests? I plan to fix that Pies-blocking bug, and try and track down the bugs in an optimizer thing I was working on last night.
10:10 Net jnthn: is zavolaj complete ?
10:10 moritz jnthn: it would be very good to be able to hack on DateTime again
10:11 jnthn Net: Far from.
10:11 Net i mean: how to get more C libraries to work in Perl6... but maybe it is Parrot team work//
10:11 moritz jnthn: uncommenting the attributes and methods from Temporal.pm causes setting compilation to hang
10:11 moritz jnthn: if you could fix that, that would be awesome
10:11 eiro moritz, paper.
10:12 jnthn Net: I plan to work more on Zavolaj in the near future. Of note, I want to get it handling structs.
10:13 jnthn moritz: Eww. Those things are...hard to find. Will see what I can do.
10:14 tadzik jnthn: some Buf at-looking maybe?
10:15 * moritz wonders if we can get a cheated by very fast Buf8 by boxing a parrot string in latin1 encoding
10:16 moritz jnthn: well, they need to be found eventually.
10:17 tadzik I'm frightened by the speed in which I typed 'mkfs.vfat /dev/sdb1<return>'. One day I'll do myself some serious harm
10:17 Net eiro: here you have few possibilities: http://freshmeat.net/search​?q=report&amp;submit=Search
10:18 Net it depends from where you will get data - db, existing closed system...
10:19 Net and probably it is off topic for #perl6 :)
10:26 Reaganomicon joined #perl6
10:30 jnthn moritz: true
10:31 eiro true: i stop the ot :) thanks everyone
10:34 bbkr when NOM-based release is expected?
10:36 woosley joined #perl6
10:39 donri http://rakudo.org/2011/09/09/nom-branch-default/
10:39 im2ee joined #perl6
10:40 im2ee Hi! :)
10:40 araujo joined #perl6
10:42 bbkr I have to say I love NOM branch (despite regression in some places), using nqp is much clearer that raw Q:PIR sections.
10:42 jnthn There's many nice things in nom :)
10:50 wamba joined #perl6
10:51 Net any management-level BIG plans for nom -> main conversion ? would be good imho...
10:52 Net maybe s/management/marketing/
10:55 Trashlord joined #perl6
10:58 MayDaniel joined #perl6
10:58 jnthn Net: I'm not sure I want us to hype the initial nom relesae excessively. It does contain many good improvements, but realistically we'll need another release after that to shore up various regressions, and to get things like basic optimizers landed.
11:00 jnthn It's amazing how a night's sleep, then coming back to a problem, can get it solved quickly...
11:06 dalek rakudo/optimizer: 58589e3 | jnthn++ | src/main.nqp:
11:06 dalek rakudo/optimizer: Make it possible to actually pass --optimize=0 to turn off the optimizer.
11:06 dalek rakudo/optimizer: review: https://github.com/rakudo/rakudo/commit/58589e3e86
11:06 dalek rakudo/optimizer: a2fae73 | jnthn++ | / (3 files):
11:06 dalek rakudo/optimizer: First cut of infrastructure for supporting us being able to call right into the multi-dispatcher without invoking the onlystar proto. Not optimized yet.
11:06 dalek rakudo/optimizer: review: https://github.com/rakudo/rakudo/commit/a2fae7386c
11:06 dalek rakudo/optimizer: c93f36d | jnthn++ | src/Perl6/Optimizer.pm:
11:06 dalek rakudo/optimizer: Fill out inline_proto in the optimizer.
11:06 dalek rakudo/optimizer: review: https://github.com/rakudo/rakudo/commit/c93f36d73e
11:06 dalek rakudo/optimizer: b60d8b4 | jnthn++ | src/binder/multidispatch.c:
11:06 dalek rakudo/optimizer: Fix bug in multi-dispatch junction failover, exposed by optimizer work.
11:06 dalek rakudo/optimizer: review: https://github.com/rakudo/rakudo/commit/b60d8b498f
11:11 masak jnthn: "optimizerS"?
11:12 jnthn masak: *nod*
11:12 jnthn masak: NQP gets one too
11:13 envi joined #perl6
11:14 masak ah, right.
11:14 jnthn May start prototyping that a bit at the weekend. We'll see. :)
11:17 masak \o/
11:18 jnthn It's tricky, though fairly -Ofun work :)
11:27 drbean joined #perl6
11:29 masak -O(-O)
11:33 dalek rakudo/optimizer: 925c37d | jnthn++ | src/ (3 files):
11:33 dalek rakudo/optimizer: Cache the MD thunk, so we avoid creating a load of GCables.
11:33 dalek rakudo/optimizer: review: https://github.com/rakudo/rakudo/commit/925c37dbaa
11:35 Psyche^ joined #perl6
11:40 uasi joined #perl6
11:44 flussence hm, the irclogs seem to have some utf8 issues...http://irclog.perlgeek.de/​perl6/2011-09-15#i_4432447
11:44 benabik joined #perl6
11:46 moritz flussence: seems that the mixture of UTF-8 and color code sometimes strains p6eval
11:46 moritz std: 1 1
11:46 p6eval std bb4f150: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Two terms in a row at /tmp/FvOFv4C7rD line 1:â�¤------> [32m1 [33mâ��[31m1[0mâ�¤    expecting any of:â�¤ bracketed infixâ�¤        infix or meta-infixâ�¤    statement modifier loopâ�¤Parse failedâ�¤FAILED 00:01 119mâ�¤Â»
11:46 moritz »
11:46 moritz strange, that used to work
11:47 moritz flussence: thanks for the report
11:47 masak did something change recently?
11:47 masak something else, I mean.
11:47 moritz masak: not that I'm aware of
11:48 moritz the error comes from the rendering somehow
11:48 moritz (I checked an earlier date, it was fine; I depleted the cache, it broke)
11:55 masak huh.
11:57 woosley perl6: class a is rw{ has $.a};
11:57 p6eval niecza v9-30-g2b3ba1c: OUTPUT«[31m===[0mSORRY![31m===[0m��Attribute a declared outside of any class at /tmp/YtFiHFzNsC line 1:�------> [32mclass a is rw{ has $.a[33m�[31m};[0m��Unhandled trait rw for this context at /tmp/YtFiHFzNsC line 1:�------> [32mclass a is rw{ has $.a}[3…
11:57 p6eval ..pugs:  ( no output )
11:57 p6eval ..rakudo 12b860: OUTPUT«===SORRY!===␤Can only use get_how on a SixModelObject␤»
11:57 moritz perl6: class a is rw { has $.a};
11:57 p6eval niecza v9-30-g2b3ba1c: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Unhandled trait rw for this context at /tmp/Y4PDyjNSDN line 1:â�¤------> [32mclass a is rw [33mâ��[31m{ has $.a};[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 685 (CORE die @ 2) â�¤â€¦
11:57 p6eval ..pugs, rakudo 12b860:  ( no output )
11:57 moritz whitespace matteres.
11:57 moritz whitespace matteres.
11:57 moritz whitespace matters.
11:58 moritz whitespace matters.
11:58 moritz whitespace matters.
11:58 woosley :)
11:59 woosley will "no whitespace" be allowed in the future?
11:59 moritz jnthn: on the optimizer branch, undef.t fails with "get_attr_str() not implemented in class 'MDThunk'"
11:59 jnthn moritz: Yeah
11:59 moritz woosley: not in this case
11:59 dalek rakudo/nom: 113d9e5 | jnthn++ | src/Perl6/SymbolTable.pm:
11:59 dalek rakudo/nom: Fix things like 'role A::B { }; class A { has A::B $!x }', which stopped Pies working.
11:59 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/113d9e5c5d
11:59 moritz (I think)
11:59 moritz woosley: the problem is that rw{  is parsed as a postcircumfix to rw
11:59 jnthn moritz: Same here. Will look at it next time I do optimizer stuff; wanted to do some nom fixes for a while first :)
12:00 moritz jnthn: sure
12:00 jnthn Like the Pies fix above ;)
12:00 jnthn tadzik: ^^
12:01 jnthn moritz: Would be curious if mandelbrot ran any faster in optimizer branch than nom.
12:02 moritz jnthn: lemme check :-)
12:02 woosley moritz: what is the difference between "rw{ ...}" and "sub a {}" ? I assume a{} is also parsed as a post...fix
12:03 jnthn woosley: The thing is that traits parse a circumfix after their name.
12:03 jnthn Well, is trait does.#
12:03 moritz woosley: I think that routine declarations are special-cased to allow that
12:03 moritz woosley: whereas traits can be general expressions
12:03 jnthn So it swallows up the {...} doing that
12:03 moritz you can't name your sub %foo<bar>
12:03 jnthn It also seems a bit unsure what to do with it :)
12:06 moritz mandelbrot is  real    1m57.562s
12:06 moritz user    1m56.655s
12:07 moritz last time it was pretty much exactly 2m
12:07 moritz so not a big difference, it seems
12:08 moritz ah, but the script is already written in a way that avoids most intermediate blocks
12:09 bluescreen10 joined #perl6
12:09 jnthn moritz: OK. It shoulda got a little win on any multi dispatches. But maybe not a huge one.
12:10 moritz jnthn: multi sub or method?
12:10 jnthn sub
12:10 moritz operators too?
12:10 jnthn Yes.
12:10 jnthn moritz: got a link to it, ooc?
12:11 moritz I'll add some type annotations and see if it speed things up
12:11 jnthn That's not likely to help yet.
12:11 jnthn We're not actually selecting candidates at compile time yet.
12:11 moritz jnthn: https://github.com/colomon/mandelbrot script bin/mandelbrot-color.pl
12:12 moritz I run it as  time ./perl6 $script 201 > /dev/null
12:12 Trashlord joined #perl6
12:13 mj41 joined #perl6
12:28 * [Coke] yawns and eats some coffee.
12:45 pernatiy joined #perl6
12:58 xinming joined #perl6
12:59 colomon joined #perl6
13:01 jnthn wtf, my new machine runs the NQP test suite in 8 seconds.
13:02 benabik jnthn: The horror.
13:02 masak time to write more tests!
13:08 benabik Huh.  nom/t/02-embed/01-load.pir fails…  But using load_bytecode "perl6.pbc" in a handwritten file works.
13:10 tadzik jnthn++
13:11 flussence I finally got this finished! https://github.com/flussence/specgraph​s/raw/d5461e0/output/rakudo-tests.png
13:11 uasi joined #perl6
13:12 benabik flussence: What are the dark bands? (i.e. near 2011-09-10)
13:12 flussence passes fall to 0, so I guess they're build failures
13:13 benabik Neat.  flussence++
13:13 molaf joined #perl6
13:18 benabik Trying to load_bytecode perl6.pbc fails off it's done after .including test_more.pir
13:18 benabik How very odd.
13:18 benabik *iff
13:23 Holy_Cow joined #perl6
13:24 Holy_Cow left #perl6
13:26 mishin joined #perl6
13:26 moritz benabik++ # locating the error
13:27 jnthn benabik: What's the failure mode?
13:27 uasi joined #perl6
13:28 tadzik oh, fine. The blocker on Pies in now JSON
13:28 tadzik well, on Panda
13:28 moritz so, just needs proto regexes
13:28 tadzik yep
13:28 moritz and :actions
13:28 moritz so, need pmichaud++ to have regex-shaped tuits
13:30 kaleem joined #perl6
13:34 replore_ joined #perl6
13:38 russellw joined #perl6
13:41 uasi joined #perl6
13:48 dalek nqp: ef1c9e3 | jnthn++ | src/6model/reprs/P6opaque.c:
13:48 dalek nqp: Tweak P6opaque some so we can start doing the indexed attribute lookups.
13:48 dalek nqp: review: https://github.com/perl6/nqp/commit/ef1c9e3a81
13:48 dalek nqp: c89bd60 | jnthn++ | src/ (2 files):
13:48 dalek nqp: Use hint in order to do indexed lookups of attributes in the v-table delegation case; should be a small win for parsing, invocation, etc.
13:48 dalek nqp: review: https://github.com/perl6/nqp/commit/c89bd60b79
14:00 benabik jnthn: unimplemented key type 1.  It's some strange parrot error that occurs by loading Test/More.pbc and then perl6.pbc.  I'm investgating between things at work.
14:00 kaleem joined #perl6
14:02 kaleem left #perl6
14:03 wamba joined #perl6
14:05 benabik jnthn: parrot/src/hash.c Parrot_hash_thaw() is the source of the error.  Poking a bit more in #parrot…  I don't think it's your fault.  :-D
14:05 benabik (source meaning where it's thrown from, not why it's happening...)
14:09 tokuhirom joined #perl6
14:18 moritz http://googlewebmastercentral.blogspot.com/201​1/09/pagination-with-relnext-and-relprev.html # sounds like rel="next" and rel="prev" would actually decrease the quality of google searches of the IRC logs
14:20 pmichaud good morning, #perl6
14:20 moritz good am, pm
14:20 jnthn morning, pmichaud
14:21 masak good pmorning, michaud.
14:22 PerlJam guten tag pmichaud
14:23 masak moritz: +1 for rel="new" and rel="prev"
14:25 dalek nqp: 4a0294c | jnthn++ | src/ (2 files):
14:25 dalek nqp: Regularize attribute access opcode set, and remove a level of indirection along the way.
14:25 dalek nqp: review: https://github.com/perl6/nqp/commit/4a0294c349
14:25 dalek nqp: b829866 | jnthn++ | src/ops/nqp.ops:
14:25 dalek nqp: Variants of attribute access opcodes that take hint for indexed access.
14:25 dalek nqp: review: https://github.com/perl6/nqp/commit/b829866d7c
14:25 dalek nqp: 0e9d828 | jnthn++ | src/ops/nqp.ops:
14:25 dalek nqp: Missing write barriers.
14:25 dalek nqp: review: https://github.com/perl6/nqp/commit/0e9d8282b1
14:28 kaare_ joined #perl6
14:29 moritz masak: added
14:30 masak moritz++
14:31 uasi joined #perl6
14:33 TimToady masak: note that A::&B is parsed as A:: & B
14:33 TimToady (I suspect)
14:35 masak g'ah
14:35 TimToady niecza: class A {}; class B {}; say (A::&B).WHAT
14:35 p6eval niecza v9-30-g2b3ba1c: OUTPUT«Junction()␤»
14:35 TimToady yup
14:35 masak huh, I didn't know the broken coffee mug was so famous that it could be name-dropped: http://radar.oreilly.com/2011/09/fo​ur-short-links-13-september-1.html
14:36 moritz and I thought most of the mugs survived, no? :-)
14:36 TimToady well, the first two didn't break
14:36 masak the author is Mr. Torkington, so it's still a within-Perl reference, I guess.
14:37 moritz TimToady: is &pair supposed to exist?
14:38 masak I say we convince everyone that Perl 6 is dead and failed and over budget... and THEN we take over the world.
14:38 pmichaud "first they ignore you..."
14:39 TimToady then they call you technowanks :)
14:39 pmichaud what would be truly ironic is if we weren't able to convince people that Perl 6 is dead  :-P
14:40 TimToady moritz: well, if it did exist, it should be named &cons ;)
14:41 moritz TimToady: wfm :-)
14:41 dalek nqp: b9cf1cb | jnthn++ | src/ (9 files):
14:41 dalek nqp: Fix some insanity in the hint_for API.
14:41 dalek nqp: review: https://github.com/perl6/nqp/commit/b9cf1cb64a
14:41 dalek nqp: dbb1a07 | jnthn++ | src/ops/nqp.ops:
14:41 dalek nqp: Op for getting hold of the attribute lookup hint.
14:41 dalek nqp: review: https://github.com/perl6/nqp/commit/dbb1a07c2c
14:41 moritz then I'll remove it from roast (one instance only), and from std
14:41 TimToady I don't mind if there's a &pair
14:41 TimToady but we do have => already
14:41 moritz aye
14:41 masak pmichaud: well, if I could quote you on that, I'm sure it'd go a long way :P
14:41 jnthn moritz: One that missing routine detection found?
14:41 moritz jnthn: correct
14:42 jnthn :)
14:42 * jnthn is very reassured that it's finding only real missing things.
14:42 TimToady and &[=>] for a prefix op if needed, which is only one longer than, and even [=>] works in a pinch
14:43 moritz TimToady: the difference is that &pair in pugs actuall returns a list of pairs, if you feed it 4 or more scalars
14:43 pmichaud I'm still thinking about how to fix the Pair/Enum dichotomy
14:44 TimToady I don't think we want immutable pairs or mutable enums
14:45 pmichaud for %hash -> $p { $p.value = 1 }
14:45 pmichaud what should that do?
14:45 pmichaud (assume %hash has some entries)
14:47 TimToady well, maybe it should fail unless $p is declared rw
14:47 pmichaud for %hash -> $p is rw { $p.value = 1 }
14:47 pmichaud okay, that then :)
14:48 TimToady in that case, we can have either ref or copy semantics when the pairs are produced, but I don't see how unifying with enums has any bearing
14:49 pmichaud it might not
14:49 dalek roast: 8cb0d32 | moritz++ | S02-builtin_data_types/hash_ref.t:
14:49 dalek roast: remove pointless test, there is no &pair
14:49 dalek roast: review: https://github.com/perl6/roast/commit/8cb0d32873
14:49 pmichaud I'm trying to figure out the ref/copy semantics, mainly.
14:50 pmichaud My working hypothesis thus far is that the distinction between Enum and Pair might be like the distinction between List and Array.
14:50 TimToady ref is obviously useful, if you want to examine each hash entry and tweak it based on the key
14:50 TimToady or not based on the key, in your example
14:51 pmichaud yes, I'm also thinking of  %hash.map(...)
14:52 TimToady and I'm thinking how that rw param works in the single write ownership model I proposed earlier
14:53 pmichaud I didn't see that proposal yet.  Anyway, I'm mainly thinking only in the rw cases atm.
14:54 pmichaud i.e., trying to get .pairs, .values, .keys, .list to produce the correct sort of objects and bindings
14:54 TimToady I supposed there .pairs(:rw) if we need it
14:55 TimToady and could default to returning enums, so -> $p works as expected most of the time
14:55 pmichaud would someone doing   %hash.values  expect to be able to modify the values in hash?
14:55 TimToady s/supposed/suppose/
14:55 pmichaud * %hash ?
14:55 TimToady I expect they'd expect both things contradictorily :)
14:55 pmichaud e.g.,   %hash.values.map( ... )
14:56 JimmyZ joined #perl6
14:57 TimToady we do have <-> to indicate the is rw on the receiving end, but .pairs et al. can't know that
14:57 pmichaud right
14:57 TimToady contrariwise they can't know the absense of it either
14:58 pmichaud well, just like .list returns references to individual elements, I'm thinking that .pairs ought to do the same
14:58 TimToady tempting to have -> default to 'is parcel' so it's agnostic about the writability of $p
14:58 moritz but that doesn't really answer the question here
14:59 TimToady what's likelier to be more efficient?  what's likelier to be more correct?  are they different things?
14:59 masak likely ;)
14:59 TimToady and what's likelier to be useful? :)
15:00 pmichaud as far as what .pairs produces, I don't think there's a huge difference in efficiency
15:03 TimToady in the one owner model, rw does the extra work of changing the owner, and readonly simply doesn't change the owner of an object, so that a write fails just because you aren't the owner, and copying the ref is as cheap as can be, despite the fact that the object is still writable by *someone* who just happens not to be you
15:04 dakkar joined #perl6
15:05 TimToady in that realm, it feels like .pairs wants to return a non-commital value that can either be bound rw to a new owner, or bound ro to leave the owner the same
15:06 pmichaud I think I need to read some of the details of the one owner proposal.
15:06 TimToady well, there aren't that many details yet, it's just a concept
15:06 pmichaud It sounds like it might affect List as well :-|
15:06 pmichaud is there some discussion in the ir clogs?
15:07 silug joined #perl6
15:07 TimToady http://irclog.perlgeek.de/search.pl?chan​nel=perl6&amp;nick=TimToady&amp;q=owner
15:08 masak "but the difference between o and oo will (to a western English speaker) be something like the difference between the o sounds in 'dough' and 'dough-owner'" -- TimToady :)
15:09 TimToady it is difficult to evince long vowels in English
15:09 TimToady as opposed to what English speakers are told are "long" vowels
15:09 masak you English peeps really made a mess of your vowels.
15:09 TimToady which are really diphthongs
15:10 PerlJam TimToady: if you want to hear long vowels, spend some time in the georgia, alabama, south carolina, etc.  :)
15:11 TimToady and if you want to hear a long vowel that isn't even based on a sound in Western English, have 'em pronounce 'pie'
15:12 TimToady (which is how we learned to say that particular vowel :)
15:12 TimToady kinda halfway between [a] and [æ]
15:12 * masak tries to render it
15:12 pmichaud "ah don't know what yer talking about there"
15:13 masak I realize that my preconceptions about how it should sounds are entirely based on movies.
15:13 * TimToady thinks of Gomer Pyle
15:16 TimToady anyway, the basic notion is that a given lexical scope kinda has an idea what it's allowed to change and what it isn't, and an rw parameter is a negotiation between two different lexical scopes as to whether ownership may be passed or not.
15:17 PerlJam When I was in spanish class in the 8th grade we had a student from kentucky and I'll never forget his "soy de kentucky" because it came out more like "so-oy day kentuuuuuuuckee"
15:17 pmichaud TimToady: that sounds a lot like what I was describing
15:17 TimToady so if a lexical scope is the current owner of an object, it can pass ownership to a called routine, but if it isn't, it can't
15:17 TimToady and if the routine doesn't want ownership, then you just pass the object with the "wrong" capability to write
15:17 * PerlJam isn't even sure how to represent the single-syllable-pronounced-as-if-it-were-two
15:18 pmichaud i.e., attaching rw-ness to the container (lexical symbol)
15:18 moritz PerlJam: kentuu-uuckee?
15:18 TimToady but if you only attach rw-ness, then you have to strip it in the common case, which is hard
15:19 pmichaud well, defaulting to ro-ness, of course.
15:19 TimToady if you attach rw-ness with ownership, it naturally de-rw's itself unless you take steps to preserve rw
15:19 pmichaud okay, I need to read the discussion then.
15:19 pmichaud (can't really do it atm)
15:19 TimToady trick will be to restore ownership on return
15:20 TimToady it also probably makes decontainerization dead simple, just don't change the owner upstream
15:20 pmichaud (simplify decontainerization)++
15:21 TimToady and works well for sharing objects among threads, if you posit that threads can pass ownership back and forth
15:22 TimToady I say lexical scope, but probably ownership is to a stack frame
15:22 jimmy1980 joined #perl6
15:25 alester joined #perl6
15:27 * masak decommutes
15:31 jimmy1980 joined #perl6
15:33 sorear good * #perl6
15:33 moritz good *, sorear
15:34 colomon o/
15:35 sorear phenny: tell mberends Try $rat.Num first
15:35 phenny sorear: I'll pass that on when mberends is around.
15:35 moritz \o colomon
15:42 moritz tadzik: fwiw I seem to break t/spec/S04-exception-handlers/catch.rakudo whenever I touch it
15:42 moritz tadzik: if you have any idea on how to fudge it without breaking it, please do it :-)
15:42 moritz it could also be that some of the passes in there are actually false positives
15:45 dalek nqp: 1b3034b | jnthn++ | src/HLL/SerializationContextBuilder.pm:
15:45 dalek nqp: Always tag SC lookups as having a known compile time value.
15:45 dalek nqp: review: https://github.com/perl6/nqp/commit/1b3034b4a3
15:45 dalek nqp: 3cb1917 | jnthn++ | src/NQP/Actions.pm:
15:45 dalek nqp: Make sure that the PAST compiler can get at the actual type object for an attribute's class.
15:45 dalek nqp: review: https://github.com/perl6/nqp/commit/3cb1917f06
15:45 dalek nqp: d174ebf | jnthn++ | src/6model/reprs/P6opaque.c:
15:45 dalek nqp: Make sure we did slot allocation before trying to obtain attribute lookup hints.
15:45 dalek nqp: review: https://github.com/perl6/nqp/commit/d174ebf4ac
15:46 dalek nqp: fd72d7a | jnthn++ | src/PAST/SixModelPASTExtensions.pir:
15:46 dalek nqp: Generate attribute lookups with lookup hints. This means that most lookups are now index based rather than needing a hash lookup.
15:46 dalek nqp: review: https://github.com/perl6/nqp/commit/fd72d7a6c7
15:47 uasi joined #perl6
15:49 silug joined #perl6
15:53 pmichaud afk, lunch
16:01 kaare_ joined #perl6
16:03 TimToady moritz: re http://irclog.perlgeek.de/​perl6/2011-09-15#i_4432713 coercion does not guarantee construction (or lack thereof) according to S13:198, while .new does guarantee construction
16:05 * moritz thought that .new was just a method call :-)
16:05 TimToady well, assuming you haven't defined .new strangely :)
16:06 TimToady similarly Dog() is just an invocation :)
16:07 simcop2387 joined #perl6
16:08 MayDaniel joined #perl6
16:24 alester joined #perl6
16:25 thou joined #perl6
16:27 sayu joined #perl6
16:29 alester joined #perl6
16:32 dalek nqp: a6d5b1c | jnthn++ | src/6model/reprs/P6opaque.c:
16:32 dalek nqp: Start moving away from using the (now otherwise unused) ->spill as the way P6opaque identifies whether something is a type object.
16:32 dalek nqp: review: https://github.com/perl6/nqp/commit/a6d5b1c795
16:32 dalek nqp: b95251e | jnthn++ | src/6model/reprs/P6opaque.c:
16:32 dalek nqp: Eliminate all usage of ->spill in P6opaque.
16:32 dalek nqp: review: https://github.com/perl6/nqp/commit/b95251ea25
16:32 dalek nqp: f9b7af3 | jnthn++ | src/6model/reprs/P6opaque. (2 files):
16:32 dalek nqp: Remove ->spill from P6opaque. This makes all objects 4 (32-bit) or 8 (64-bit) bytes smaller.
16:32 dalek nqp: review: https://github.com/perl6/nqp/commit/f9b7af3599
16:34 dalek rakudo/nom: 77d4dc1 | jnthn++ | / (6 files):
16:34 dalek rakudo/nom: Updates to use latest NQP, to get attribute access performance improvements and lower memory usage.
16:34 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/77d4dc1d8e
16:46 alester joined #perl6
16:48 wamba joined #perl6
16:51 donri joined #perl6
16:53 Chillance joined #perl6
17:05 static_perl joined #perl6
17:06 jimmy1980 joined #perl6
17:08 masak joined #perl6
17:08 masak evening! \o/
17:09 jnthn masak!
17:09 masak jnthn!
17:10 donri masakre
17:10 donri nooo grghl jnthnrg
17:10 PerlJam donri: "masakre" makes me think of Arlo Guthrie's "Alice's Restaurant"
17:11 * masak plays a seven minute solo
17:15 dukeleto joined #perl6
17:16 cotto_work mls++ got his parrot commit bit, so any future sub profiling work will be happening in parrot's git repo, not mls' clone
17:17 PerlJam nice.
17:17 jnthn nice :)
17:18 dalek rakudo/nom: b9ad532 | jnthn++ | src/Perl6/ (2 files):
17:18 dalek rakudo/nom: Be smarter about string constants, so we avoid various expensive unboxes when we should just have a PIR-level string constant.
17:18 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b9ad5329d0
17:18 dalek rakudo/nom: 884113e | jnthn++ | src/core/Any.pm:
17:18 dalek rakudo/nom: A missing explicit unbox.
17:18 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/884113e31c
17:21 dave joined #perl6
17:21 dave sup by auspicious panel of intellectuals
17:22 dalek nqp: 17c38b2 | jnthn++ | src/PAST/NQP.pir:
17:22 dalek nqp: Flesh out typed variants of some NQP ops.
17:22 dalek nqp: review: https://github.com/perl6/nqp/commit/17c38b28c5
17:22 Guest56681 anybody here
17:22 diakopter !
17:22 masak o/
17:22 Guest56681 hey all
17:23 Guest56681 i have a server 2003 question
17:23 Guest56681 i know this may not be the proper forum
17:23 diakopter heh, ok
17:23 PerlJam so far it doesn't sound promising, but go ahead :)
17:23 Guest56681 but my question is iso related
17:23 moritz Guest56681: then don't ask here
17:23 Guest56681 thanks moritz
17:24 Guest56681 i am trying to run virtual pc
17:24 Guest56681 i need to install server 2003
17:24 diakopter Guest56681: I'm not hearing much about Perl 6 the programming language
17:24 PerlJam Guest56681: does this connect in any way to Perl 6 ?
17:25 Guest56681 i have a download, but it is asking for an iso file
17:25 Guest56681 perljam
17:25 Guest56681 no
17:25 Guest56681 i prefeaced that from the beginning
17:25 PerlJam Guest56681: ah, then you'll likely not find a suitable answer here
17:25 diakopter Guest56681: no one here will be able to help you
17:25 Guest56681 *prefeced
17:25 moritz Guest56681: and I told you that you shouldn't ask here
17:25 moritz Guest56681: since it's not on topic here
17:25 Guest56681 nobody can tell me how to make an iso
17:26 moritz "I know that I'm wrong here" doesn't make you more on-topic
17:26 Guest56681 ok....i will go
17:26 Guest56681 but before i do, let me say this
17:26 PerlJam Guest56681: maybe try #win32
17:27 Guest56681 the only reason i came to this site is because i had begun learning about ubuntu, and i found the help forums very helpful
17:28 Guest56681 sorry to intrude rude people
17:28 PerlJam Hmm.
17:28 diakopter by site, he means the web chat interface to freenode
17:28 diakopter I wonder how he came across #perl6 from there
17:28 PerlJam indeed
17:28 moritz maybe there's a "join random channel" function somewhere
17:30 PerlJam And why did he only apologize to the rude people?  that seems a little bizarre.  :-)
17:30 benabik joined #perl6
17:33 dalek rakudo/nom: fce9f45 | jnthn++ | tools/build/NQP_REVISION:
17:33 dalek rakudo/nom: Get latest nqp:: ops.
17:33 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fce9f45218
17:33 dalek rakudo/nom: 8620e9c | jnthn++ | src/core/Any.pm:
17:33 dalek rakudo/nom: Further optimize Any so it does not create loads of intermediate Parrot String objects only to immediately throw them away.
17:33 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8620e9c9cc
17:33 dalek rakudo/nom: 67ff893 | jnthn++ | src/core/Capture.pm:
17:33 dalek rakudo/nom: Optimize Capture.Str.
17:33 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/67ff893b6b
17:33 jnthn moritz: The patches I just pushed - if my profiler isn't lying to me - seem to help mandelbrot a little. :) Would be interested to know if anybody else can reproduce. ;)
17:33 jnthn er, 8620e9c shoulda been "further optimize join". d'oh.
17:40 pmichaud back
17:41 pmichaud I think that Any.join properly belongs in List, fwiw (with Any delegating to List.join).
17:43 JimmyZ joined #perl6
17:45 jnthn pmichaud: makes sense
17:45 jnthn afk; fetching dinner
17:50 wolfman2000 joined #perl6
17:51 TimToady when rude people call someone else rude, it's a form of emotional blackmail that I do not in the least appreciate
17:53 diakopter prefeced indeed
17:57 jimmy1980 joined #perl6
17:59 slavik1 joined #perl6
18:01 diakopter niecza: my ($a,$b) = 2,3; my $c = \($a,$b); say "$c"; $b=4; say "$c"
18:01 slavik1 joined #perl6
18:01 p6eval niecza v9-30-g2b3ba1c: OUTPUT«Capture()<instance>␤Capture()<instance>␤»
18:01 diakopter nom: my ($a,$b) = 2,3; my $c = \($a,$b); say "$c"; $b=4; say "$c"
18:01 p6eval nom 67ff89: OUTPUT«2 3␤2 4␤»
18:02 diakopter which is right
18:05 diakopter if any
18:06 pmichaud I'm pretty sure nom is correct
18:07 diakopter niecza: sub a { say 3 }; say &a
18:07 p6eval niecza v9-30-g2b3ba1c: OUTPUT«{ ... }␤»
18:07 diakopter nom: sub a { say 3 }; say &a
18:07 p6eval nom 67ff89: OUTPUT«a␤»
18:07 diakopter which is right(er)
18:08 pmichaud rakudo has typically had that subs stringify to the name of the sub
18:08 pmichaud I don't know that it's been specced
18:08 diakopter oh
18:10 diakopter nom: my $a = \3; say $a.WHO
18:10 p6eval nom 67ff89: OUTPUT«Null PMC access in find_method('gist')␤  in sub say at src/gen/CORE.setting:4689␤  in <anon> at /tmp/U93wJdPv4M:1␤  in <anon> at /tmp/U93wJdPv4M:1␤␤»
18:11 diakopter no magic cookie for you
18:11 jnthn nom: say Capture.WHO
18:11 p6eval nom 67ff89: OUTPUT«Null PMC access in find_method('gist')␤  in sub say at src/gen/CORE.setting:4689␤  in <anon> at /tmp/akMqaszzZW:1␤  in <anon> at /tmp/akMqaszzZW:1␤␤»
18:12 * jnthn will investigate after food.
18:12 diakopter nom: say Parcel.WHO
18:12 p6eval nom 67ff89: OUTPUT«Null PMC access in find_method('gist')␤  in sub say at src/gen/CORE.setting:4689␤  in <anon> at /tmp/ElcPiacHCE:1␤  in <anon> at /tmp/ElcPiacHCE:1␤␤»
18:13 jnthn nom: say List.WHO
18:13 p6eval nom 67ff89: OUTPUT«().hash␤»
18:13 jnthn ah, I see what's going on...
18:14 diakopter food first!
18:16 * jnthn noms :)
18:19 [Coke] joined #perl6
18:35 moritz jnthn: quite a speedup on the mandelbrot benchmark
18:35 moritz before: 1m52; after: 1m1
18:36 moritz 45% speedup
18:36 moritz jnthn++
18:39 jnthn \o/
18:39 jnthn And master was?
18:41 skangas joined #perl6
18:43 * jnthn seems to recall 15 mins or so
18:43 * tadzik sees WB paches and tries his branch again
18:47 jnthn tadzik: Yeah, native str attr binds were missing WB
18:47 diakopter nom: multi sub a(Int $b, Num $c) { say "$b$c" }; multi sub a(Str $b, Str $c) { say "$b  $c" }; &a:(Int,Num)(3,4.5)
18:47 p6eval nom 67ff89: OUTPUT«===SORRY!===␤Symbol '&a:(Int,Num)' not predeclared in <anonymous> (/tmp/VtWy5V4SOX:1)␤»
18:48 tadzik good news
18:48 diakopter jnthn: is that NYI?
18:48 tadzik so, what performance win did we get? :)
18:48 jnthn diakopter: Yeah, I've never done that...
18:48 jnthn diakopter: Should get to it at some point...I guess it's not too hard.
18:48 diakopter heh NeverYetImplemented
18:48 jnthn :)
18:49 tadzik I have a feeling that nqp builds fast
18:49 tadzik it's either jnthn++ or new-ram++
18:49 jnthn Maybe a bit of both.
18:50 jnthn tadzik: The bad news is that the bt of the crashes you were getting looked more like PMC pool corruption than string pool corruption.
18:50 jnthn tadzik: Though I'd be happy to be wrong :)
18:51 tadzik gah
18:51 jnthn gah?
18:51 tadzik we'll see :)
18:53 tadzik there's some speed/memory win
18:54 jimmy1980 joined #perl6
18:54 jnthn master was 16m14
18:55 jnthn so
18:55 jnthn Mandelbrot is 16 times faster than master :)
18:55 jnthn Not bad.
18:57 tadzik hey, don't you count your new i7 :P
18:57 jnthn tadzik: I was going on moritz++'s numbers
18:57 jnthn tadzik: from http://perlgeek.de/blog-en/
18:57 tadzik oh, ok :)
18:57 jnthn er, http://perlgeek.de/blog-en/​perl-6/how-fast-is-nom.html
18:57 jnthn Though yes, should confirm it's same machine :)
19:03 tadzik ooh, wherefore-gc-bug seems to be fixed now!
19:04 tadzik spectesting for Justin Case, but both my testcase and podtest is ok
19:04 jnthn ooh :)
19:04 tadzik jnthn++
19:11 jnthn pmichaud: ping
19:12 birdwindupbird joined #perl6
19:14 thou joined #perl6
19:20 jimmy1980 joined #perl6
19:23 dalek rakudo/nom: 07991fb | jnthn++ | src/Perl6/Actions.pm:
19:23 dalek rakudo/nom: Avoid a bunch of common nested runloops.
19:23 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/07991fb56c
19:23 * jnthn had hoped that'd give quite a win, but not so much.
19:25 packetknife joined #perl6
19:25 * [Coke] reviews, and wonders if a prefeced has something to do with, as his gram would have said, a "BM".
19:26 [Coke] jnthn++ #all speedy and stuff.
19:31 tadzik spectest clean, merging
19:33 dalek rakudo/nom: 843aa4e | tadzik++ | src/Perl6/Actions.pm:
19:33 dalek rakudo/nom: Merge branch 'nom' into wherefore-gc-bug
19:33 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/843aa4e6f0
19:33 * tadzik uses git merge! It's not very effective...
19:40 bluescreen10 joined #perl6
19:46 jimmy1980 joined #perl6
19:48 benabik joined #perl6
19:54 im2ee joined #perl6
19:54 diakopter [Coke]: heh
19:54 Tene tadzik: git problems?
20:04 dalek rakudo/nom: 8e3408f | jnthn++ | src/pmc/perl6lexpad.pmc:
20:04 dalek rakudo/nom: Optimize lexical lookup/storage a little.
20:04 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8e3408f346
20:05 localhost joined #perl6
20:08 jimmy1980 joined #perl6
20:11 tadzik Tene: I don't think so
20:11 tadzik Tene: it's just that the merge message doesn't look quite as expected
20:12 Woodi hi ppls
20:12 Woodi pls tell me which rakudo I should use for some programming atm ?
20:12 tadzik hello
20:13 PerlJam Woodi: Star
20:13 masak hi Woodi
20:13 Woodi Star is one year old ?
20:14 jnthn Woodi: "Star" is a series of releases, not just one.
20:14 jnthn Woodi: The latest Star release is much less than a year old :)
20:16 Woodi looks like it's what comes with debian
20:16 Woodi failed on Text::CVS
20:17 diakopter CSV ?
20:17 Woodi "subst not defined for Failure"
20:17 Woodi yes, CSV
20:17 tadzik what do you mean as "failed"
20:17 tadzik ?
20:17 dalek nqp: de51c5d | jnthn++ | src/PAST/NQP.pir:
20:17 dalek nqp: Add an nqp::concat_s.
20:17 dalek nqp: review: https://github.com/perl6/nqp/commit/de51c5dc80
20:19 Woodi i got: Method 'subst' not found for invocant of class 'Failure'
20:19 Woodi from: my $text = ($m<quoted_contents> // $m).subst('""', '"', :global);
20:19 tadzik ok, but doing what?
20:19 tadzik ok, so it's not related to Text::CSV, is it?
20:20 Woodi not exactly, becouse that line comes from T::C
20:20 tadzik I see
20:20 tadzik does Text::CSV pass its tests?
20:20 Woodi 6/6 failed...
20:21 tadzik masak?
20:21 masak tadzik: dunno
20:21 tadzik masak: love your module :)
20:21 masak ooh! :)
20:21 Woodi that line is central for module
20:22 Woodi // is or in perl6 ?
20:22 tadzik defined-or, as in Perl 5
20:23 Woodi ( ... // ... ) must be Failure type for subst...
20:23 bbkr1 joined #perl6
20:23 dalek rakudo/nom: 9608337 | jnthn++ | / (2 files):
20:23 dalek rakudo/nom: Fix inefficiency in infix:<~>.
20:23 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9608337c4b
20:26 im2ee Good night! :)
20:26 masak im2ee: dobranoc!
20:26 masak dang! :)
20:26 masak missed him again!
20:27 masak why do people leave so *soon* after saying goodbye? :P
20:27 tadzik masak: you taught them that!
20:27 tadzik :P
20:27 PerlJam masak: it's so they don't accidentally get caught up in another conversation on the way out
20:28 jimmy1980 joined #perl6
20:28 masak ah, the dreaded "goodbye conversation".
20:28 masak it's like having to do things which might throw an exception while handling an exception.
20:29 * jnthn consistently gets spectest times <190s now :)
20:29 diakopter nice
20:29 tadzik (:
20:29 masak` joined #perl6
20:29 jnthn Down from being able to consistently hit the 220s region when I first got my new machine :)
20:30 PerlJam .oO( jnthn is consistentlt doing something wrong)
20:30 PerlJam :-)
20:31 jnthn Guess it's high time I ported the multi-dispatch cache...
20:34 jnthn Actually, a little fresh air first...
20:34 MayDaniel joined #perl6
20:34 diakopter niecza: our $val = 3; GLOBAL::<$mynewvar> = $val; say $*mynewvar
20:34 p6eval niecza v9-30-g2b3ba1c: OUTPUT«3␤»
20:34 diakopter nom: our $val = 3; GLOBAL::<$mynewvar> = $val; say $*mynewvar
20:34 p6eval nom 843aa4: OUTPUT«Method 'at_key' not found for invocant of class 'Any'␤  in find_method at src/gen/Metamodel.pm:143␤  in method postcircumfix:<{ }> at src/gen/CORE.setting:970␤  in method postcircumfix:<{ }> at src/gen/CORE.setting:972␤  in <anon> at /tmp/9b9UBXRh3h:1␤  in <anon> at /…
20:35 diakopter jnthn: ^^ <shruf>
20:35 diakopter *shrug
20:37 benabik std: GLOBAL::<$mynewvar>
20:37 p6eval std bb4f150: OUTPUT«ok 00:01 118m␤»
20:41 benabik nom: GLOBAL::<$a>
20:41 p6eval nom 843aa4: OUTPUT«Method 'at_key' not found for invocant of class 'Any'␤  in find_method at src/gen/Metamodel.pm:143␤  in method postcircumfix:<{ }> at src/gen/CORE.setting:970␤  in method postcircumfix:<{ }> at src/gen/CORE.setting:972␤  in <anon> at /tmp/60op7X905w:1␤  in <anon> at /…
20:41 benabik It looks kinda like the ::<> is trying to access an undef var instead of GLOBAL.
20:43 masak yes, probably.
20:43 masak not sure nom has GLOBAL at all.
20:44 benabik There's something at GLOBAL that doesn't like being printed.
20:44 benabik (by the REPL)
20:44 benabik nom: say GLOBAL
20:44 p6eval nom 843aa4: OUTPUT«GLOBAL()␤»
20:44 PerlJam nom: say FRED
20:44 p6eval nom 843aa4: OUTPUT«Could not find sub &FRED␤  in <anon> at /tmp/EH6R_ap6mo:1␤  in <anon> at /tmp/EH6R_ap6mo:1␤␤»
20:44 PerlJam (just checking :)
20:45 * masak .oO( Fred of snakes? )
20:49 [Coke] fred from angel!
20:50 PerlJam [Coke]++
20:50 jnthn nom: our $a = 42; say GLOBAL::<$a>
20:50 p6eval nom 843aa4: OUTPUT«Method 'at_key' not found for invocant of class 'Any'␤  in find_method at src/gen/Metamodel.pm:143␤  in method postcircumfix:<{ }> at src/gen/CORE.setting:970␤  in method postcircumfix:<{ }> at src/gen/CORE.setting:972␤  in <anon> at /tmp/86E2fMjuF0:1␤  in <anon> at /…
20:51 jnthn nom: our $a = 42; say GLOBAL.WHO<$a>
20:51 p6eval nom 843aa4: OUTPUT«42␤»
20:51 jnthn ah, trailing :: NYI I guess
20:52 diakopter so many NYI, so little tuits/developers
20:53 diakopter (not just rakudo, I mean, of course)
20:53 * [Coke] is reminded he needs to order the season of angel he's missing and watch the whole thing.
21:02 dalek specs: 1cc077a | diakopter++ | S02-bits.pod:
21:02 dalek specs: lots more S02 headings (Names and Variables and Names); break some smartlinks
21:02 dalek specs: review: https://github.com/perl6/specs/commit/1cc077aa55
21:02 diakopter d'oh; just missed the top-o-the-hour build
21:05 y3llow_ joined #perl6
21:05 pothos_ joined #perl6
21:08 pothos_ joined #perl6
21:16 masak niecza: grammar G { regex TOP { a } }; say G.parse("b").ast
21:16 p6eval niecza v9-30-g2b3ba1c: OUTPUT«Unhandled exception: System.InvalidCastException: Cannot cast from source type to destination type.␤  at CORE.C656_Cursor_2East (Niecza.Frame ) [0x00000] in <filename unknown>:0 ␤  at Niecza.Kernel.RunCore (Niecza.Frame& cur) [0x00000] in <filename unknown>…
21:16 diakopter 2East
21:16 masak phenny: tell sorear http://irclog.perlgeek.de/​perl6/2011-09-15#i_4435311 is the golf'd version of the casting error that's been haunting me.
21:16 phenny masak: I'll pass that on when sorear is around.
21:18 diakopter masak: I wonder if the Perl 6 grammar is available at runtime
21:18 masak diakopter: hm. I'd always assumed it would be.
21:18 diakopter but how
21:19 masak any number of things carry through from compile time to runtime.
21:20 soh_cah_toa joined #perl6
21:20 masak 'night, channel.
21:21 PerlJam nom doesn't do any constant folding yet, does it?
21:21 diakopter o/
21:21 PerlJam g'night masak
21:21 jnthn PerlJam: Not much
21:22 jnthn PerlJam: We could do more.
21:22 PerlJam jnthn: teach me how  :)
21:23 PerlJam I just want to fix something simple.    constant foo = 2 * 2; currently barfs and it shouldn't.
21:24 jnthn PerlJam: The problem is that we haven't got any kind of "general" serialization mechanism for the result at the moment, so we end up having to treat the thing a bit like bit like a thunk we re-run at deserialization time.
21:25 jnthn PerlJam: We do it in some limited places already where we have to, for example see in enum.
21:25 jnthn Oh, wait...we untangle that...
21:26 jnthn PerlJam: You could certainly detect when you have an AST which is going to call an op and that has constant children.
21:26 PerlJam jnthn: yeah, I was just pondering how to do that.
21:27 jnthn PerlJam: $op.name is the name of the op
21:27 jnthn $op[0]<has_compile_time_value> # true if there is a compile time value
21:27 jnthn For a binary op you can look it up with $*ST.find_symbol($op.name)
21:27 jnthn That gives you an invokable code object.
21:28 jnthn $op[0]<compile_time_value> gets you the compile time value
21:28 jnthn See apply_trait for an exmaple of calling code during compile time.
21:29 jnthn If it's an op that we didn't compile yet, that's fine; it'll hurry off and compile the body just in time. :)
21:31 PerlJam I suppose I could do this checking and compiling and such in EXPR?
21:32 jnthn PerlJam: Could do. I suggest a "is_foldable" or similar
21:32 pernatiy joined #perl6
21:33 jnthn Note that you won't really do any compiling when folding.
21:33 jnthn Or at least, the code you write shouldn't care whether we do any or not.
21:34 PerlJam right
21:34 jnthn Just use find_symbol to get you the thing to call. It's a "coderef" that you can call just like any other.
21:35 jnthn oh, thinking about it...
21:35 jnthn You don't need to look deeper than the current kids.
21:35 jnthn Because if they were foldable, that'll already have happened.
21:39 MayDaniel joined #perl6
21:43 jnthn PerlJam: BTW, if you're just playing with the compiler bit and don't need to re-compile the setting each time, you can just make perl6 and it'll only re-build the compiler.
21:43 PerlJam thanks.
21:43 PerlJam I'm still refamiliarizing myself with rakudo's innards :)
21:44 PerlJam how do you get the kids of an ast?
21:44 jnthn Array indexing
21:44 jnthn Oh, all of them
21:44 jnthn for @($ast_node) { ... }
21:44 jnthn Or in an array just @($ast_node) or $ast_node.list.
21:45 PerlJam ah, excellent.  (I'd done $ast.list and wasn't quite sure)
21:47 packetknife joined #perl6
21:56 packetknife joined #perl6
21:57 jimmy1980 joined #perl6
21:57 wamba joined #perl6
22:03 wolfman2000 joined #perl6
22:04 mberends joined #perl6
22:06 mberends sorear++ # $rat.Num for Cairo double params
22:06 phenny mberends: 15:35Z <sorear> tell mberends Try $rat.Num first
22:06 jnthn o/ mberends
22:06 mberends o/ jnthn
22:07 jnthn mberends: How's things? Still Dublin' up on the beer? :)
22:07 * mberends enjoyed, Dublin, and in Soviet style, Dublin enjoyed Me ;)
22:07 jnthn Odd, I'm normally further east when I get enjoyed Sovient style :P
22:08 mberends gah, comma fail too :/ # /me blames Smithwick's
22:08 jnthn Good excuse :)
22:11 wolfman2000 joined #perl6
22:14 mberends sorear: good idea, but the .Num trick did not convince Cairo that it was double. I'm making an xclock, but the hands are stationary (so far) and due to lack of double params, it supports only 3-bit color.
22:17 [Coke] joined #perl6
22:17 jimmy1980 joined #perl6
22:27 jimmy1980 joined #perl6
22:28 dukeleto joined #perl6
22:31 dorlamm joined #perl6
22:39 mberends niecza: say sin(0.25)
22:39 p6eval niecza v9-30-g2b3ba1c: OUTPUT«0.247403959254523␤»
22:39 mberends niecza: say cos(0.25) # fails locally
22:39 p6eval niecza v9-30-g2b3ba1c: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤      'cos' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 685 (CORE die @ 2) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1136 (STD P6.comp_unit @ 36) â�¤  a…
22:41 mberends there is a workaround if you have sin() but not cos(): offset by pi/2 and swap the x and y axes, but yuk...
22:43 mberends it's a phase thing ;)
22:51 am0c joined #perl6
22:55 packetknife joined #perl6
23:08 diakopter phenny: ask moritz could you take a look at the synopsis rebuild process; S02 doesn't seem to have my latest changes; podchecker says it's okay
23:08 phenny diakopter: I'll pass that on when moritz is around.
23:08 xinming joined #perl6
23:14 [Coke] joined #perl6
23:15 Reaganomicon joined #perl6
23:19 tokuhirom joined #perl6
23:31 mkramer joined #perl6
23:34 dalek specs: f998662 | diakopter++ | S02-bits.pod:
23:34 dalek specs: fix podchecker whitespace warning
23:34 dalek specs: review: https://github.com/perl6/specs/commit/f998662348
23:47 supernovus joined #perl6
23:51 supernovus I can't stick around long, but wanted to know if anyone has come across lovely errors like "error:imcc:syntax error, unexpected DOT ('.')" before?
23:52 jnthn supernovus: Not often, but I have.
23:52 jnthn supernovus: --target=pir tends to be the only sane way to debug them.
23:53 supernovus I've never seen anything like it. The "in file '(file unknown)' line 44624398" isn't very helpful either :-P
23:53 diakopter that's a really long file
23:54 supernovus hmm, it gives me a different line size every time, and not even close...
23:56 supernovus yeah, the line number in that report seems entirely random...
23:57 diakopter hmm
23:57 diakopter dare I ask what's your input
23:58 supernovus I need to cook dinner, so yeah, I'm abandoning my odd bug hunt for now. If anyone wants to try to recreate it, clone http://github.com/supernovus/perl6-http-easy/ and try "perl6 lib/HTTP/Easy.pm" It may just be my copy of nom on the server (I built it a couple hours ago.) Who knows. I'm off for now!

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

Perl 6 | Reference Documentation | Rakudo