Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2010-03-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:05 cognominal joined #perl6
00:07 lichtkind gud night
00:09 m-locks all tests passed, Files=240, Tests=26045, 1258 wallclock secs (1027.91 cusr + 89.79 csys = 1117.70 CPU)
00:09 m-locks now it's time to go ot bed ;P
00:14 ihrd joined #perl6
00:14 ihrd left #perl6
00:25 jaldhar joined #perl6
00:29 pugssvn r29908 | bkeeler++ | New test for proto tokens
00:43 yinyin joined #perl6
00:47 * bkeeler_ takes a nap while the trig tests run...
00:49 colomon bkeeler_: sorry....
00:49 bkeeler_ Oooh,  a beep!   I'm awake now
00:55 snarkyboojum joined #perl6
00:58 nihiliad joined #perl6
00:59 colomon doubly sorry then, I should have let you sleep.
01:00 jaldhar joined #perl6
01:11 jnthn lol I haz mberends++ here :-)
01:13 supernovus Well, still on January Rakudo, but pre-compiling the Perl 6 to PIR decreases CGI time from 13.6 seconds to 2.5 seconds, and SCGI time from 2.75 seconds to 403ms.
01:16 arlinius rakudo: my $x; say Nil.defined, ().defined, Any.defined, Mu.defined, Cool.defined, $x.defined, [].defined, {}.defined, \().defined
01:16 p6eval rakudo 5e5969: OUTPUT«Could not find non-existent sub &Cool␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
01:16 arlinius rakudo: my $x; say Nil.defined, ().defined, Any.defined, Mu.defined, $x.defined, [].defined, {}.defined, \().defined
01:16 p6eval rakudo 5e5969: OUTPUT«00000111␤»
01:17 arlinius bug, I think
01:17 arlinius at least, it disagrees with the spec
01:17 arlinius and the spec test does too
01:18 arlinius S02 says Nil.defined and ().defined return True
01:20 arlinius alpha: my $x; say Nil.defined, ().defined, Any.defined, Mu.defined, $x.defined, [].defined, {}.defined, \().defined
01:20 p6eval alpha 30e0ed:  ( no output )
01:20 arlinius odd
01:20 arlinius pugs: my $x; say Nil.defined, ().defined, Any.defined, Mu.defined, $x.defined, [].defined, {}.defined, \().defined
01:20 p6eval pugs: OUTPUT«*** ␤    Unexpected "."␤    expecting operator␤    at /tmp/ojgtkJAtks line 1, column 101␤»
01:20 arlinius alpha: say Nil.defined
01:20 p6eval alpha 30e0ed: OUTPUT«0␤»
01:20 arlinius alpha: say ().defined
01:20 p6eval alpha 30e0ed: OUTPUT«0␤»
01:20 arlinius pugs: say ().defined
01:20 p6eval pugs: OUTPUT«1␤»
01:20 arlinius pugs: say Nil.defined
01:20 p6eval pugs: OUTPUT«*** No such subroutine: "&Nil"␤    at /tmp/PpmgE7SXHt line 1, column 5 - line 2, column 1␤»
01:20 colomon jnthn: oh no, has The Gathering started already?
01:21 arlinius pus gets it right for ()!
01:22 arlinius s/s/gs/
01:23 dalek book: 8b0befd | (Jeff Balogh)++ | django_extensions/management/commands/ (4 files):
01:23 dalek book: Django removed ERROR_OUTPUT in [12009]; ERROR does the same thing
01:23 dalek book: review: http://github.com/django-extensions/django-extensions/commit/8b0befd0b2c82d61f752dacf83dc0cbe0dcfaf1c
01:23 diakopter sigh
01:23 dalek grok: d365759 | fperrad++ | setup.pir:
01:23 dalek grok: manifest: add missing lua_private.h
01:23 dalek grok: review: http://github.com/fperrad/lua/commit/d365759c54b8db1f0c448e7568db6169e47a646d
01:23 dalek grok: 857f04d | fperrad++ | setup.pir:
01:23 dalek grok: add doc_files field
01:24 diakopter o_O
01:24 dalek joined #perl6
01:24 dalek november: faf8ff7 | tav++ | doc/zero-planfile.txt:
01:24 diakopter sigh
01:25 dalek joined #perl6
01:26 arlinius sigh?
01:26 diakopter dalek flapping
01:26 arlinius ah
01:27 arlinius flood heh
01:30 TimToady Infinoid: dalek seems to be misbehaving again
01:31 mikehh_ went away for a bit, back again, we'll see
01:40 lue hello!
01:40 lue (oh noes not the dalek again :/)
01:43 ash_ joined #perl6
01:47 lisppaste3 joined #perl6
01:48 lue o great. I'm here when noone else is :(
01:48 arlinius nah
01:48 arlinius we're here when noone else is :P
01:48 mikehh just hidin'
01:49 pugssvn r29909 | lwall++ | [STD] move unexpected-!! panic from infixstoppers to infix:<!!>
01:49 pugssvn r29909 | so a user's infix definition isn't ignored if it starts with !!
01:50 * colomon is intermittently here and very very tired.
01:51 lue this place was hopping ~ 20 minutes ago. Then I come back on :/
01:52 TimToady "children and art"  -- Stephen Sondheim
01:52 * lue must get a laptop battery so he can cart it (the laptop) around in the middle of the day
01:52 TimToady colomon has both
01:52 * lue a DECENT laptop battery
01:53 colomon well, a child and some pretensions at (musical and perhaps programming) art, anyway.
01:53 TimToady I spent much of the weekend dismantling, rinsing in distilled water, and remantling an old laptop in the vain hope that cat pee wouldn't destroy the motherboard.
01:53 colomon long time since I thought of that song.
01:54 TimToady unfortunately, it got turned on before I got to it, so things had shorted out on the motherboard
01:54 TimToady fortunately an old laptop...
01:54 colomon doh!
01:54 colomon still, a sad fate for a noble machine.
01:54 TimToady yes, well, our fault for leaving it somewhere that looked like a catbox to the stupid cat, I suppose...
01:55 TimToady but I now know how to completely disassemble an old ThinkPad  :)
01:55 TimToady not to mention reassemble it, with only one screw left over!!!
01:56 lue that's not good necessarily...
01:56 lue I would prefer to use one more screw than it originally came with :)
01:56 TimToady well, I always have a screw loose in any case...
01:57 colomon so wait: I have "children and art", and you were "putting it together", eh?
01:58 TimToady well, motherboard don't generally like to have self-threading screws run through 'em in random spots...
01:58 lue the motherboard could care less. It's the components soldered TO the motherboard that mind.
01:59 hudnix joined #perl6
01:59 airbase joined #perl6
02:00 TimToady colomon: yeah, it's "No Life"
02:02 colomon TimToady: geez, I had to look that one up in my iTunes.
02:02 TimToady I just found that one on the Wikipedia
02:03 TimToady let's not start Into the Woods though
02:03 colomon That makes me feel better.
02:03 TimToady Or we won't get home before dark...
02:03 colomon I don't know Into the Woods at all.  My Sondheim knowledge is mostly Sunday in the Park and Sweeny Tood.
02:03 colomon with small bits of Company thrown in.
02:04 TimToady ItW is one of the best
02:04 colomon (the latter is my wife's influence)
02:05 lue Is there something in rakudo that needs working on? (I want to put off the jnthn omnisub until a full-featured stable P6 implementation exists...)
02:05 TimToady maybe you could put Sondheim quotes into every file?
02:06 TimToady "Good is better than nice."  -- Little Red
02:06 hudnix joined #perl6
02:07 lue how does that help, besides amusing reading? I may as well put Monty Python quotes in all the PIR files :)
02:08 hercynium joined #perl6
02:09 TimToady Amusing reading is the bedrock of a healthy culture.  :)
02:09 colomon "But not for long." -- S. Todd
02:10 TimToady "Red, red, red, red, red..."  --George & Dot
02:10 * colomon is mildly disturbed that that is the first Sondheim quote which pops into his mind.
02:10 lue so... permission to instill "fun"?
02:11 TimToady that usually requires forgiveness instead
02:11 arlinius in other words, do it, quick
02:12 TimToady has to be an appropriate line from Assassins, but I haven't seen it...
02:12 * lue Chase him, Exegesis Man! I will cut him off with the ApocolypseMobile!
02:13 colomon I'm also finding it hard to think of Sondheim lyrics while listening to the Dardanelle's "Uncle Manual Milks the Cow" set.  :)
02:15 Tene lue: have the file test operators been added back into master from the alpha branch?
02:16 colomon nope.
02:16 Tene rakudo: say '/etc/passwd' ~~ :f
02:16 p6eval rakudo 5e5969: OUTPUT«Method 'f' not found for invocant of class 'Perl6Str'␤current instr.: 'perl6;Enum;ACCEPTS' pc 352177 (src/gen/core.pir:49834)␤»
02:16 Tene lue: that should be a fairly simple project.
02:16 arlinius alpha: say '/etc/passwd' ~~ :f
02:16 p6eval alpha 30e0ed: OUTPUT«1␤»
02:16 lue file test...? (I prefer the humourification project better :D )
02:16 TimToady seems like one could compare the passing tests from alpha and master to see what used to work
02:17 Tene that would be a good project too.
02:17 Tene lue: the equivalent of -e, -f, -d, -x, -r, -w, etc from Perl 5.
02:17 TimToady I think you'll find that Python quotes will require much more forgiveness than Sondheim
02:18 lue Tene: don't talk to me in foreign languages I haven't studied! :)
02:18 TimToady which foreign languages have you studied?
02:18 lue TimToady: *jarring chord* NOBODY expects the spanish inquisiton!
02:19 Tene lue: it's inherited from shell scripting, the 'test' command has arguments to determine the properties of filesystem locations.
02:19 TimToady 日本語を話しますか?
02:19 Tene -e is "does this path exist", -f is "does this path exist and is it a file", -w is "does this exist and is it writable?", etc.
02:19 colomon On the test thing (alpha versus rakudo), I've just been going through Rakudo's t/spectest.data file looking at the tests which are commented out.  When I see one that looks "likely" to me, I just try it individually in master and see what happens.
02:19 lue Let's see: English, German (forgot most), French (learning), Esperanto (learning), Japanese (want to learn) [more]
02:20 Tene in Perl 6, the syntax has been changed to use pairs instead of subs named with a dash at the start.
02:20 lue [more] BASIC, C++ (a little), Python 3, HTML, JS, CSS, and P6 (learning)
02:21 lue oh, and some of 6502 assembler :)
02:21 hudnix joined #perl6
02:22 Tene lue: http://blog.endpoint.com/2009/08/file-test-comparison-table-for-shell.html has a table listing translation of file tests between perl and python, among others.
02:22 lue Tene: will look
02:23 Tene given $filename { when :f { say "It's a file!" }; when :d { say "It's a directory!" } }
02:23 colomon It's amazing how many test files "almost" work now, and work with a little fudge or a tiny patch.
02:23 Tene when :r & :w { say "Readable and writable!" }
02:23 lue wait, you can PATCH perl 6? Huh. (I've been running out of fingers lately...)
02:24 TimToady it's already doing the translation from :f to *.f so all that you need really is to define .f etc. on string types, or whatever type we end up with for filenames
02:24 Tene lue: Yeah.
02:25 Tene You could do a lot worse than defining a role and then adding that role to the string class.
02:25 * lue ACHTUNG! hudnix has exceeded my patience in terms of # of times /join ing and /leave ing. That is all
02:25 TimToady rakudo: augment Str { method f { say "GOT HERE" } }; '/etc/passwd' ~~ :f
02:25 p6eval rakudo 5e5969: OUTPUT«In "augment" declaration, typename Str must be predeclared (or marked as declarative with :: prefix) at line 11, near " { method "␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
02:26 TimToady o_O
02:26 Tene lue: just ignore JOINs and PARTS in your client.
02:26 Tene That's what I do.
02:26 arlinius or just ignore them in your head
02:26 Tene interferes with excessive backlogging
02:27 arlinius hiding it leaves out some important context for some conversations
02:27 colomon rakudo: augment class Str { method f { say "GOT HERE" } }; '/etc/passwd' ~~ :f
02:27 p6eval rakudo 5e5969: OUTPUT«Method 'f' not found for invocant of class 'Perl6Str'␤current instr.: 'perl6;Enum;ACCEPTS' pc 352177 (src/gen/core.pir:49834)␤»
02:27 lue and it tells you who is probably a roaming bot :)
02:28 hudnix joined #perl6
02:28 TimToady rakudo: say '/etc/passwd'.WHAT
02:28 p6eval rakudo 5e5969: OUTPUT«Str()␤»
02:29 colomon rakudo: say PARROT('/etc/passwd')
02:29 p6eval rakudo 5e5969: OUTPUT«Perl6Str␤»
02:29 colomon evil!
02:29 lue TimToady: allow me to detour your attention for a moment.
02:29 lue rakudo: say '/etc/passwd'.WHO
02:29 p6eval rakudo 5e5969: OUTPUT«Str␤»
02:29 arlinius rakduo: say '/etc/password.WHY
02:29 arlinius ugh
02:29 lue give me a reason why WHO is counterintuitive (and therefore redundant)
02:29 arlinius rakduo: say '/etc/password'.WHY
02:30 arlinius rakudo: say '/etc/password'.WHY
02:30 p6eval rakudo 5e5969: OUTPUT«Method 'WHY' not found for invocant of class 'Perl6Str'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
02:30 lue WHO, WHAT, and WHERE are the only ones implemented :)
02:30 lue (and WHO is a counterintuitive reiteration of WHAT)
02:31 lue I'll start working on stuff when I'm back from doing stuff.
02:31 arlinius rakudo: say '/etc/password'.WHERE
02:31 p6eval rakudo 5e5969: OUTPUT«47578612508784␤»
02:32 arlinius but WHY is the most important
02:32 TimToady rakudo: say '/etc/passwd'.WHICH
02:32 p6eval rakudo 5e5969: OUTPUT«/etc/passwd␤»
02:32 arlinius rakudo: say '/etc/password'.HOW
02:32 p6eval rakudo 5e5969:  ( no output )
02:33 TimToady rakudo: say 'foo'.HOW('foo')
02:33 p6eval rakudo 5e5969: OUTPUT«too many positional arguments: 2 passed, 1 expected␤current instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)␤»
02:33 TimToady rakudo: say 'foo'.'HOW'('foo')
02:33 p6eval rakudo 5e5969: OUTPUT«too many positional arguments: 2 passed, 1 expected␤current instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)␤»
02:33 TimToady rakudo: say 'foo'.HOW.WAHT
02:33 p6eval rakudo 5e5969: OUTPUT«Method 'WAHT' not found for invocant of class 'ClassHOW'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
02:33 TimToady rakudo: say 'foo'.HOW.WHAT
02:33 p6eval rakudo 5e5969: OUTPUT«Str()␤»
02:33 TimToady o_O
02:34 arlinius ah, right
02:35 arlinius rakudo: say Nil.WHAT
02:35 p6eval rakudo 5e5969: OUTPUT«Parcel()␤»
02:35 arlinius rakudo: say ().WHAT
02:35 p6eval rakudo 5e5969: OUTPUT«Parcel()␤»
02:35 TimToady rakudo: say 'foo'.WHAT.WHICH
02:35 p6eval rakudo 5e5969: OUTPUT«47943198851984␤»
02:36 TimToady rakudo: say 'foo'.HOW.WHICH
02:36 p6eval rakudo 5e5969: OUTPUT«47335069823888␤»
02:36 arlinius you see the bit about Nil earlier?
02:36 arlinius rakudo: say Nil.defined
02:36 p6eval rakudo 5e5969: OUTPUT«0␤»
02:36 TimToady we changed it to defined a few days ago, and rakudo hasn't caught up with pugs :)
02:36 arlinius so it should be true?
02:36 TimToady yes
02:36 arlinius ok
02:37 TimToady S02:2035
02:37 arlinius yeah
02:37 arlinius any chance I could get access to fix the spec test in S02-builtin_data_types/undefined-types.t?
02:38 TimToady you don't have a pugs repo commit bit?
02:38 arlinius nope
02:38 TimToady if you /msg me your email and preferred svn nick, I can send you a commitbit
02:38 arlinius ok
02:40 TimToady commitbit sent
02:40 arlinius thanks
02:40 hudnix joined #perl6
02:40 TimToady it's customary to add yourself to AUTHORS as a first test commit
02:41 arlinius before I'm an actual author, eh :) got it
02:41 TimToady as soon as you modify AUTHORS, you are one.  :)
02:42 arlinius in a very small way, I suppose :)
02:42 TimToady we have a very low opinion of authority around here...
03:03 arlinius silly mail forwarder must be clogged or something
03:07 cognominal joined #perl6
03:21 ash_ so, i noticed === uses .WHICH, but i don't see many (any) tests on it... or maybe i am not looking in the right place... anyone have any pointers?
03:21 agentzh joined #perl6
03:22 TimToady WHICH tests?
03:22 TimToady WHICH is pretty basic--any value returns itself, and any object returns its WHERE
03:23 TimToady (any non-value object, more acccurately)
03:26 lue hellos again!
03:26 snarkyboojum joined #perl6
03:26 lue rakudo: my $a="hi"; say $a.WHICH
03:26 p6eval rakudo 5e5969: OUTPUT«hi␤»
03:26 lue rakudo: my $a="hi"; say $a.HOW
03:26 p6eval rakudo 5e5969:  ( no output )
03:28 lue I think WHO should return the variable name. Especially if you use it on a reference (ex:)
03:28 lue my $a=3; my $b :=3; say $b.WHO #I want it to return either $a or a
03:29 quietfanatic joined #perl6
03:31 dalek joined #perl6
03:32 lue o hai dalek! o/
03:32 ash_ my thoughts on which were for custom objects with not default ways of comparing
03:33 Infinoid TimToady: Thanks for the heads up, we'll see if this fixes it
03:35 ash_ like, take an object that represents a lazy database table. If you compared two objects based off their attributes like === seems to imply, then it seems like normal === might not work correctly if certain attributes have been lazily loaded
03:36 ash_ i guess WHICH gives you the that sort of control though
03:37 lue rakudo: say "hello".REASON
03:37 p6eval rakudo 5e5969: OUTPUT«Method 'REASON' not found for invocant of class 'Perl6Str'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
03:37 TimToady the definition of === does WHICH on both, and then eqv of the resulting values
03:37 TimToady a class should not be overriding it
03:38 TimToady it should only override eqv
03:38 ash_ overriding WHICH?
03:38 TimToady WHICH always returns a value
03:38 TimToady either the value itself, or the address of the object
03:38 TimToady in either case eqv will work on the resulting values
03:39 TimToady redefining WHICH changes what kind of value type you have
03:39 TimToady and eqv will default to !cmp
03:40 ash_ so... you should be redefining eqv then?
03:40 ash_ for an object?
03:41 TimToady === only uses eqv on value types
03:41 TimToady non value types it's just comparing address values
03:41 TimToady so it doesn't matter if a non-value type defines eqv or not
03:42 TimToady (from ==='s perspective)
03:42 lue is that file test project still up for grabs? (Assuming no sneaky time-travelers came in while I was gone)
03:42 * lue hates ==='s perspective, and asks it to please raise the blinds
03:43 ash_ well, how would i define how two objects get compared? do i need to add a new multi infix:<eqv> ( ) for my object type?
03:44 TimToady if you want cmp and eqv to work on a type, you have to define at least cmp
03:44 TimToady cmp/eqv are "snapshot" semantics, compare the current values
03:44 TimToady since objects can change, unlike values
03:44 ash_ so, a method cmp(other) { return Order::Increase or Order::Decrease or Order::Same } ?
03:45 TimToady well, there's probably a default for cmp too if there's any kind of serializer
03:45 TimToady just serialize the two objects and then compare those serializations
03:46 TimToady but most types will want to define their own cmp for effficiency
03:47 TimToady like, a string should have to serialize itself to compare first chars, etc.
03:47 TimToady *shoudn't
03:47 wmiksss joined #perl6
03:49 ash_ well, going back to my example of a database row type object, what if I only wanted to compare two objects on a single variable, like the row ID, whatever that may be, i'd have to implement an eqv/cmp method then? or a serialize method? or... sorry, i guess i work best from examples, is there an example i should go look at in the spec?
03:50 TimToady composite items should delegate to the cmp of their parts in the pecking order desired
03:50 * lue imagines file test to be a potential nightmare O.o (but it shouldn't be _that_ bad... right?)
03:51 ash_ but, would i be overriding a multi infix:<eqv> ? or a meta method of some sort?
03:52 TimToady just defines a more specific eqv, multi dispatch should find it
03:53 ash_ would i have to define it multiple times though? for infix:<eqv> (Any $a, MyObj $b), infix:<eqv> (MyObj $a, Any $b); infix:<eqv>(MyObj $a, MyObj $b)
03:55 TimToady just do the same type for now; out-of-type comparisions are not yet specced
03:56 ash_ i guess, it seems like i am searching for something like a comparable role, that if you implement it, your object is comparable for a given definition of comparable, and by a similar notion, a role of sortable might be useful too
03:56 lue question: if file tests have been implemented *at all*, where would they be?
03:57 ash_ S32-IO i think
03:57 wmiksss joined #perl6
03:57 ash_ or S16 which is also on IO
03:58 lue so, that means no-one's programmed it? *sigh*
03:58 snarkyboojum seems like S16-filehandles/filetest.t
03:59 lue Even 1 bit of programming would be nice (1 byte would be wonderful :D )
03:59 ash_ i am sure someones programmed it somewhere, if its implemented in rakudo/pugs/elf/mildew/etc... i cannot say, i haven't tried those features yet
04:00 TimToady alpha has it already
04:00 TimToady alpha: say '/etc/passwd' ~~ :r
04:00 p6eval alpha 30e0ed: OUTPUT«Method ':r' not found for invocant of class 'Str'␤in Main (file src/gen_setting.pm, line 324)␤»
04:00 TimToady er, used to have it...
04:01 TimToady alpha: say '/etc/passwd'.r
04:01 p6eval alpha 30e0ed: OUTPUT«Method 'r' not found for invocant of class 'Str'␤in Main (file src/gen_setting.pm, line 324)␤»
04:01 TimToady alpha: say qp{/etc/passwd} ~~ :r
04:01 p6eval alpha 30e0ed: OUTPUT«Confused at line 10, near "{/etc/pass"␤in Main (file <unknown>, line <unknown>)␤»
04:02 ash_ alpha: say '/etc/passwd' ~~ :e
04:02 p6eval alpha 30e0ed: OUTPUT«1␤»
04:02 ash_ some of them seem to work
04:03 ash_ :e is exists
04:03 snarkyboojum alpha: say '/etc/passwd' ~~ :f
04:03 p6eval alpha 30e0ed: OUTPUT«1␤»
04:03 snarkyboojum alpha: say '/etc/passwd' ~~ :d
04:03 p6eval alpha 30e0ed: OUTPUT«0␤»
04:03 lue ah, well, if it's mildew, I might as well start over :)
04:04 TimToady alpha is not mildew
04:04 ash_ alpha is the old master of rakudo
04:04 TimToady alpha is parrot-based
04:04 TimToady so probably has the primitives you want somewhere
04:04 lue TimToady: see ash_ 's comment above
04:05 snarkyboojum rakudo: say '/etc/passwd' ~~ :f
04:05 p6eval rakudo 5e5969: OUTPUT«Method 'f' not found for invocant of class 'Perl6Str'␤current instr.: 'perl6;Enum;ACCEPTS' pc 352177 (src/gen/core.pir:49834)␤»
04:06 TimToady lue: which one?  none of them are surprising to me...
04:06 lue the one involving mildew. That's what I was referring to :)
04:07 TimToady there's nothing inconsistent between what ash_ said and what I said
04:07 lue I'm only concerned about how to test the files w/o file tests. The rest (ought to) be easy.
04:08 lue TimToady: then I am misunderstanding everybody.
04:09 ash_ to test files you generally need to call stat on the file, that should tell you about the file, but thats an operating specific function in most languages
04:10 lue .oO(maybe someday you can program file test functions by using file tests (part of the self-compiling thing))
04:10 lue rakudo: say stat('/etc/passwd')
04:10 p6eval rakudo 5e5969: OUTPUT«Could not find non-existent sub &stat␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
04:10 lue o great. I has to program stat too? :(
04:11 TimToady not if parrot already supplies it
04:11 TimToady look at how alpha (old master) does it
04:12 lue that's what I looking for. I think PIR is a better first step than P6 for brand-new programming (especially when the space between steps nothing and P6 is 7pc high :D )
04:15 ash_ http://github.com/rakudo/rakudo/blob/alpha/src/builtins/any-str.pir#L106
04:15 ash_ is the old implmentation of :e
04:15 ash_ implementation*
04:15 alester joined #perl6
04:15 ash_ they use the stat built into parrot to check if a given file string exists
04:16 ash_ you'd have to check parrots documentation for stat
04:17 TimToady rakudo: say pir:stat('/etc/passwd',0)
04:17 p6eval rakudo 5e5969: OUTPUT«Could not find non-existent sub &pir:stat('/etc/passwd',0)␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
04:17 ash_ i think its 2 ::
04:17 lue did you mean pir:: ?
04:17 TimToady rakudo: say pir::stat('/etc/passwd',0)
04:17 p6eval rakudo 5e5969: OUTPUT«The opcode 'stat_p_p' (stat<2>) was not found. Check the type and number of the arguments␤current instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 972 (compilers/pct/src/PCT/HLLCompiler.pir:538)␤»
04:18 TimToady 0 isn't a parrot int, I guess
04:18 TimToady rakudo: say pir::stat('/etc/passwd')
04:18 p6eval rakudo 5e5969: OUTPUT«The opcode 'stat_p' (stat<1>) was not found. Check the type and number of the arguments␤current instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 972 (compilers/pct/src/PCT/HLLCompiler.pir:538)␤»
04:19 * TimToady is not a pir expert...
04:19 lue just be glad I didn't decided to program it in pasm :D
04:19 ash_ is stat an opcode or a method? it looks like they are using it like an opcode so it might be invoked differently
04:19 lue s/decided/decide/
04:19 arlinius stat is an opcode
04:19 arlinius but it's not defined for PMCs
04:19 arlinius which is apparently all rakudo is willing to pass to it
04:20 lue point is, I have found some good code, and I shall 'steal it' thank you >:)
04:21 pugssvn r29910 | plunix++ | AUTHORed a one-liner.
04:21 TimToady arlinius++
04:21 arlinius hi
04:23 lue rakudo: say (pir::stat('/etc/passwd')
04:23 p6eval rakudo 5e5969: OUTPUT«Confused at line 11, near "say (pir::"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
04:23 lue rakudo: say (pir::stat('/etc/passwd'))
04:23 p6eval rakudo 5e5969: OUTPUT«The opcode 'stat_p' (stat<1>) was not found. Check the type and number of the arguments␤current instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 972 (compilers/pct/src/PCT/HLLCompiler.pir:538)␤»
04:24 lue rakudo: say (pir::stat('/etc/passwd'),0)
04:24 p6eval rakudo 5e5969: OUTPUT«The opcode 'stat_p' (stat<1>) was not found. Check the type and number of the arguments␤current instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 972 (compilers/pct/src/PCT/HLLCompiler.pir:538)␤»
04:24 lue rakudo: my $filename="/etc/passwd"; my $in=0; say pir::stat($filename,$in);
04:24 p6eval rakudo 5e5969: OUTPUT«The opcode 'stat_p_p' (stat<2>) was not found. Check the type and number of the arguments␤current instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 972 (compilers/pct/src/PCT/HLLCompiler.pir:538)␤»
04:24 lue rakudo: say pir::stat()
04:24 p6eval rakudo 5e5969: OUTPUT«The opcode 'stat' (stat<0>) was not found. Check the type and number of the arguments␤current instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 972 (compilers/pct/src/PCT/HLLCompiler.pir:538)␤»
04:25 lue rakudo: say (pir::stat('/etc/passwd'),'0')
04:25 p6eval rakudo 5e5969: OUTPUT«The opcode 'stat_p' (stat<1>) was not found. Check the type and number of the arguments␤current instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 972 (compilers/pct/src/PCT/HLLCompiler.pir:538)␤»
04:25 lue alpha: say '/dev/xyzzy'.:e
04:25 p6eval alpha 30e0ed: OUTPUT«Multiple Dispatch: No suitable candidate found for 'concatenate_str', with signature 'PSP->P'␤in Main (file <unknown>, line <unknown>)␤»
04:25 lue alpha: say '/dev/xyzzy' ~~ :e
04:25 p6eval alpha 30e0ed: OUTPUT«0␤»
04:27 pugssvn r29911 | plunix++ | Update test for Nil definedness: Nil is an empty list, but it is defined.
04:27 pugssvn r29911 | Added test for ().defined.
04:28 arlinius woo
04:30 ash_ so... comparison semantics generally depend on which side of the equation your on in practice, but in theory a Foo > Bar should have the same result as Bar < Foo
04:31 lue alpha: say pir::stat(0,'/etc/passwd',0)
04:31 p6eval alpha 30e0ed: OUTPUT«invoke() not implemented in class 'Undef'␤in Main (file <unknown>, line <unknown>)␤»
04:31 lue I got closer \o/
04:31 lue master: say pir::stat(0,'/etc/passwd',0)
04:31 ash_ lue, you might want to use Q:PIR { }
04:31 lue how doth I use that?
04:31 ash_ one sec
04:31 arlinius rakudo: Q:PIR { $I5 = stat '/etc/passwd', 0 }
04:31 p6eval rakudo 5e5969:  ( no output )
04:32 ash_ arlinius++ beat me to it
04:32 ash_ inside { } you can put normal parrot code
04:32 lue \o/ just what I was hoping for
04:32 arlinius not sure how to return values to rakudo from it
04:32 ash_ %r = $I5
04:33 lue rakudo: Q:PIR { $I0 = stat '/etc/passwd', 0 ; say $I0 }
04:33 p6eval rakudo 5e5969: OUTPUT«error:imcc:syntax error, unexpected ';', expecting '\n' (';')␤     in file 'EVAL_1' line 64␤»
04:33 lue rakudo: Q:PIR { $I0 = stat '/etc/passwd', 0 \n say $I0 }
04:33 p6eval rakudo 5e5969: OUTPUT«error:imcc:syntax error, unexpected $undefined, expecting '\n' ('\')␤      in file 'EVAL_1' line 64␤»
04:33 ash_ you can't really use it in here
04:33 TimToady what's a hash doing in an integer?
04:34 lue rakudo: Q:PIR { say stat '/etc/passwd',0 }
04:34 p6eval rakudo 5e5969: OUTPUT«undefined identifier 'stat'␤␤current instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 972 (compilers/pct/src/PCT/HLLCompiler.pir:538)␤»
04:34 arlinius can't chain opcodes in pir
04:34 * lue the sobbing never ends, it goes on and on and on and on
04:34 ash_ parrot code needs new lines to seperate op's which you can't write in IRC
04:34 arlinius rakudo: Q:PIR { $I5 = stat '/etc/passwd', 0␤say $I5 }
04:34 p6eval rakudo 5e5969: OUTPUT«1␤»
04:34 arlinius yes you can
04:34 snarkyboojum hehe
04:34 arlinius kind of
04:35 ash_ lol, well, you have a fancy unicode newline enabled input method
04:35 lue or great copy-n-paste ;)
04:35 arlinius no, I copy and paste from p6evals output :P
04:36 lue rakudo: Q:PIR { $I10 = stat '/etc/passwd',2␤say $I10 }
04:36 p6eval rakudo 5e5969: OUTPUT«0␤»
04:36 lue this file is not a directory.
04:36 lue rakudo: Q:PIR { $I10 = stat '/etc',2␤say $I10 }
04:36 p6eval rakudo 5e5969: OUTPUT«1␤»
04:36 ash_
04:36 ash_ ␤ = alt + 2424 on my computer
04:36 lue .u ␤
04:36 phenny U+2424 SYMBOL FOR NEWLINE (␤)
04:36 ash_ on OS X with hex unicode keyboard mode enabled
04:37 lue is THAT what the mac hex keypad option in KDE does!?
04:37 TimToady ctrl+shift-u 2424 on gnome
04:37 * lue QUICK! to the settings!
04:37 arlinius rakudo: say Q:PIR { $I5 = stat '/etc/passwd', 0␤%r = box $I5 }
04:37 p6eval rakudo 5e5969: OUTPUT«1␤»
04:37 arlinius ah
04:37 * ash_ i haven't the foggiest on kde
04:38 ash_ arlinius++ you just implemented :e
04:38 ash_ no commit it to rakudo master somewhere :P
04:38 JimmyZ joined #perl6
04:38 arlinius can't :P
04:38 bkeeler Ewwww, gross, just took a sip of yesterday's beer by mistake
04:38 lue bkeeler! \o/
04:38 bkeeler Also, evening #perl6!
04:39 TimToady serves you right for leaving it sitting
04:39 bkeeler True true
04:39 bkeeler Also (reading scrollback) 6502 assembly was the WORST EVAH!
04:40 bkeeler I suggest you attempt to forget it
04:40 lue hey! I was working on an NES emulator...
04:40 arlinius 6502 asm is awesome
04:40 LifeIsPain left #perl6
04:41 arlinius I should implement Perl 6 in it
04:41 bkeeler No 16 bit registers.  Trying to do pointer arithmetic was an exercise in masochism
04:41 lue some of you may find this sad that KDE supports more calendars than P6 :)
04:41 ash_ is there ever a time when $a > $b is not reversible by simply flipping the whole equation around, eg. $b < $a ?
04:41 bkeeler Now the Z80.  There was a MAN's chip
04:41 arlinius hrm, no but you can use concurrent bytes in memory as 16 bit pointers
04:42 bkeeler My point is you shouldn't have to
04:42 ash_ if not... then don't you only ever have to make > ? and just translated < into an equivalent > ?
04:43 bkeeler The only possible value in a CPU that can't store an address in a register is leaving it upside down on the floor so your roommate steps on it and gets lots of little holes in his feet
04:43 arlinius ash_: is 0 < 0?
04:43 bkeeler *ahem*
04:43 bkeeler not that I would ever have done such a thing
04:44 ash_ arlinius: isn't that the same as 0 > 0 ?
04:44 ash_ is what i am arguing
04:44 arlinius but is 0 > 0 equivalent to !(0 < 0)?
04:44 lue bkeeler: the Z80 is featured in several TI graphing calculators and the Gamebody (Advance, i think)
04:45 ash_ why i am arguing it, i am not sure, i am just kinda thinking if there is a way to make comparison semantics into some sort of ~~ like operation, kinda just thinking outloud
04:45 arlinius you mean like cmp?
04:45 ash_ yeah, like cmp
04:46 ash_ my issue with cmp is it seems restrictive if you have a custom type that uses some different way of comparing itself to things
04:46 arlinius as opposed to <?
04:47 ash_ just thinking about other languages, like in ruby if you implement the Comparable module (its a p6 role effectively) then you have to define <=> which you return -1 0 or 1, thus giving you = > < >= <= and between?(a, b)
04:48 ash_ err, that = needs to be ==
04:48 ash_ the only issue i see with that is it matters what side of the equation your object is on
04:48 ash_ if its on one side of the equation it functions different than if its on the other
04:48 arlinius not if you do it right
04:48 ash_ a <=> b translates to a.<=>(b)
04:50 ash_ but is there some way you can ensure that? ruby doesn't, so you have to be careful how you write your comparisons
04:50 arlinius that's why b should have a well-defined to-string, to-num, etc. method that a can use
04:51 ash_ so, should you attempt to cast before you compare?
04:52 * lue is trying to find decent documentation on his keyboard options for once
04:52 arlinius not necessarily explicitly
04:53 PerlJam What's the latest wisdom on flattening?  How do I get (1,2) to flatten?
04:54 arlinius rakudo: say ((1,2),3,5)
04:54 p6eval rakudo 5e5969: OUTPUT«1235␤»
04:54 ash_ rakudo: say ((1, 2), 3, 5).perl
04:54 p6eval rakudo 5e5969: OUTPUT«((1, 2), 3, 5)␤»
04:54 bkeeler rakudo: say map { $_, $_*2 }, 1..5
04:54 p6eval rakudo 5e5969: OUTPUT«22222␤»
04:55 ash_ rakudo: say @((1, 2), 3, 5)
04:55 p6eval rakudo 5e5969: OUTPUT«1235␤»
04:55 bkeeler That's my favorite example of parcel non-flattening
04:55 ash_ rakudo: say (@((1, 2), 3)).perl;
04:55 p6eval rakudo 5e5969: OUTPUT«List.new()␤»
04:55 lue does anyone know where the heck they define the options you can use for setxkbmap?
04:55 ash_ o.0  um... weird
04:56 arlinius options, lue?
04:56 ash_ pugs: say (@((1, 2), 3)).perl;
04:56 p6eval pugs: OUTPUT«[1, 2, 3]␤»
04:56 arlinius setxkbmap -help
04:57 arlinius rakudo: say [1,2,3].perl
04:57 p6eval rakudo 5e5969: OUTPUT«[1, 2, 3]␤»
04:57 arlinius rakudo: say [1,2,3].WHAT
04:57 p6eval rakudo 5e5969: OUTPUT«Array()␤»
04:57 lue setxkbmap -option [args here] I need the args
04:57 arlinius read the next lines?
04:58 arlinius you really just get one line with your setxkbmap -help?
04:58 lue I just want the args you can use and an explanation for them! (why are they soooo hard to find?)
04:58 lue I do get more with -help, but those are the args for setxkbmap. I need the ones for the -option command.
04:59 arlinius oh
04:59 ash_ rakudo: my @b = map { say $_[0], $_[1] } , map { $_, $_ * 2 }, 1..5; say @b;
04:59 p6eval rakudo 5e5969: OUTPUT«12␤24␤36␤48␤510␤11111␤»
04:59 arlinius you tried man?
05:00 ash_ bkeeler: i think that map you did was returning the correct things
05:00 arlinius not that it looks very helpful...
05:00 ash_ but it printed the parcel as its length, not its values...
05:00 bkeeler Sure, but the parcels are supposed to get flattened somewhere in the process of being passed to say
05:00 lue believe me, most of my search come up with zarking HTML-ified man pages
05:00 arlinius meaning it didn't flatten them
05:01 lue if it helped, I would have solved these problems 6 months ago :)
05:01 bkeeler There's parcel-flattening code in List.pir's get() method, but it's not being used
05:01 ash_ got ya, i guess i misunderstood what you were pointing out
05:01 arlinius oh you use kde, go to keyboard layout in kcontrol and there's some examples
05:01 lue kcontrol? hm... n'er heard of it.
05:01 arlinius guess you use the wrong kde :\
05:02 arlinius kde 4?
05:02 lue yes.
05:02 arlinius too bad they haven't gotten around to making that usable yet
05:02 pugssvn r29912 | bkeeler++ | New grammar test for rules with signatures
05:03 lue They don't do a good job explaining the options (why should they — they're xkb's options)
05:03 arlinius example: setxkbmap -option altwin:super_win,grp:rwin_switch,grp:ctrl_alt_toggle
05:03 lue options thru kde work, you just need to have a knowledge beforehand of what the options are :)
05:03 lue (trying to figure out what the hex keypad is right now)
05:04 arlinius yeah, it doesn't show you the setxkbmap command to run to set the options you chose at the bottom in kde 4?
05:04 lue it does, I just need to know what the options due (hence the need for documentation)
05:04 lue s/due/do/
05:05 arlinius time to adventure into the X source?
05:05 bkeeler TimToady: is the <foo: 1, 2> syntax of subrule calls with args supposed to be able to process arbitrary expressions as arguments?  The problem I'm having is (I think) that EXPR wants to eat the closing angle...
05:05 lue I've banged my head against this table before. I hate it every time
05:07 lue (wow, that's bad. x.org's wiki can't find setxkbmap when I search for it O.o)
05:08 TimToady bkeeler: if you want a > in the expression, then you want the <foo(1,2)> form instead
05:08 arlinius rakudo: my int $alpha = Nil;
05:08 p6eval rakudo 5e5969: OUTPUT«Malformed my at line 11, near "int $alpha"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
05:08 arlinius pugs: my int $alpha = Nil;
05:08 p6eval pugs: OUTPUT«*** No such subroutine: "&Nil"␤    at /tmp/AQDnyBk2T4 line 1, column 12-20␤»
05:08 arlinius alpha: my int $alpha = Nil;
05:08 p6eval alpha 30e0ed: OUTPUT«Malformed declaration at line 10, near "int $alpha"␤in Main (file <unknown>, line <unknown>)␤»
05:09 jaldhar joined #perl6
05:09 bkeeler TimToady: yeah, but it gets confused whether I want an angle in there or not.
05:09 TimToady which "it"?  STD doesn't get confused as far as I know
05:09 arlinius pugs: say defined(Nil)
05:09 p6eval pugs: OUTPUT«*** No such subroutine: "&Nil"␤    at /tmp/S6WSdQC44h line 1, column 13-16␤»
05:09 arlinius pugs: say defined(())
05:09 p6eval pugs: OUTPUT«1␤»
05:10 bkeeler The form with parens works fine, but colon form barfs on anything whatsoever once I switch it over to use rakudo's arglist
05:10 ihrd joined #perl6
05:10 ihrd left #perl6
05:10 bkeeler This is rakudo with my grammar patch
05:10 arlinius pugs: say defined([])
05:10 p6eval pugs: OUTPUT«1␤»
05:10 TimToady rakudo probably isn't doing all that STD is doing in terms of tracking the current language
05:11 arlinius rakudo: say defined([])
05:11 p6eval rakudo 5e5969: OUTPUT«1␤»
05:11 TimToady the language inside <> has > as a terminator
05:11 arlinius rakudo: say defined({})
05:11 p6eval rakudo 5e5969: OUTPUT«1␤»
05:11 bkeeler I see
05:12 bkeeler I think perhaps I should ask pmichaud about it then
05:12 TimToady I don't think rakudo is really doing derived languages yet
05:13 bkeeler It sort of is, I mean we can call p6 closures with regexes within p6 code and stuff
05:14 bkeeler It switches languages by saything things like <arglist=.LANG('MAIN', 'arglist'>
05:14 TimToady that's just switching to an existing langauge via the current language braid
05:14 TimToady but to take the existing expression language and add > as a terminator, I don't think it does htat
05:14 TimToady *that
05:15 arlinius rakudo: my @qa; say defined(@qa); say @qa.defined;
05:15 p6eval rakudo 5e5969: OUTPUT«1␤1␤»
05:15 bkeeler Ah, I see what you're getting at
05:15 bkeeler Well, for now the colon form can deal with a simple list of literals
05:15 bkeeler And they can use the paren form if they need anything more complicated
05:16 * lue bang ow bang ow bang ow (please, can something figure out what the various C<setxkbmap -option> settings are?
05:16 TimToady or maybe it's just buggy
05:16 arlinius rakudo: my @x ; undefine @x;
05:16 p6eval rakudo 5e5969:  ( no output )
05:16 lue TimToady: what input method do you recommend, should I use one?
05:17 TimToady for Japanese?  I use anthy
05:17 bkeeler Set it to use handwriting recognition via mouse gestures
05:18 arlinius lue: what is it you're trying to do with setxkbmap -option?
05:20 lue I'm trying to figure out what the various options for C<setxkbmap -option> do. *grab hair*
05:20 arlinius rakudo: my @vax = 2,3,4; undefine @vax; say +@vax;
05:20 p6eval rakudo 5e5969: OUTPUT«1␤»
05:20 lue bkeeler: I has a mousepad.
05:20 arlinius rakudo: my @vax = 2,3,4; say +@vax;
05:20 p6eval rakudo 5e5969: OUTPUT«3␤»
05:20 arlinius odd
05:20 arlinius rakudo: my @vax = 2,3,4; undefine @vax; say +@vax; say @vax[0]
05:20 p6eval rakudo 5e5969: OUTPUT«1␤Any()␤»
05:20 arlinius heh
05:21 bkeeler Or perhaps morse code on the middle mouse button
05:21 bkeeler You always wanted an excuse to learn morse code, admit it
05:21 lue bkeeler: I has one mouse button
05:21 lue and emulate the others thru keyboard
05:21 arlinius morse code on mouse button then
05:22 lue ah well. I'll continue using mac third-level for now :)
05:23 lue ¡™£¢∞§¶•ªº–≠œ∑†¥ŭøπ“‘«æ…¬ĥĝƒ∂ŝåΩ≈ĉ√∫∫≤≥÷
05:23 arlinius you might want to look into editing a layout file
05:23 bkeeler Ah yes, one button mice, I forgot
05:23 bkeeler I love Macs and all, but the mouse is the first thing to go
05:23 lue hah! I considered it. Not that desperate yet :)
05:23 arlinius yeah, macs: the height of technology
05:24 arlinius *shrug* a lot easier than finding documentation for setxkbmap options :)
05:24 bkeeler Perhaps I should get one of those ridiculous gaming mice with almost a full keyboard on it
05:25 JimmyZ_ joined #perl6
05:29 * lue wants to find out who wrote setxkbmap and beat him with his own code for not creating documentation
05:37 * lue wants to know where everybody went all of a sudden (sudden silence is interesting to him)
05:38 TimToady everyone is trying to figure out whether they wrote setxkbmap and just forgot about it...
05:39 arlinius ...i don't think i wrote it
05:40 lue whoever here wrote is trying to cushion it for when I impact them with it, to avoid pain.
05:42 arlinius rakudo: Nil.undefine;
05:42 p6eval rakudo 5e5969: OUTPUT«Method 'undefine' not found for invocant of class 'Parcel'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
05:42 arlinius rakudo: Nil*undefine;
05:42 p6eval rakudo 5e5969: OUTPUT«Not enough positional parameters passed; got 0 but expected 1␤current instr.: 'undefine' pc 225637 (src/gen/core.pir:2607)␤»
05:43 lue try undef
05:43 arlinius rakudo: Nil*undef;
05:43 p6eval rakudo 5e5969: OUTPUT«Unsupported use of undef as a value; in Perl 6 please use something more specific:␤        Mu (the "most undefined" type object),␤   an undefined type object such as Int,␤    Nil as an empty list,␤    *.notdef as a matcher or method,␤ Any:U as a type constraint␤       or
05:43 p6eval ..fail() as a failure return␤       …
05:43 arlinius rakudo: Nil*Mu;
05:43 p6eval rakudo 5e5969: OUTPUT«No applicable candidates found to dispatch to for 'infix:<*>'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
05:45 lue rakudo: Nil*Nil
05:45 p6eval rakudo 5e5969:  ( no output )
05:45 lue rakudo: say Nil*Nil
05:45 p6eval rakudo 5e5969: OUTPUT«0␤»
05:45 lue rakudo: {use v5; say Nil*undef;};
05:45 p6eval rakudo 5e5969: OUTPUT«Unsupported use of undef as a value; in Perl 6 please use something more specific:␤        Mu (the "most undefined" type object),␤   an undefined type object such as Int,␤    Nil as an empty list,␤    *.notdef as a matcher or method,␤ Any:U as a type constraint␤       or
05:45 p6eval ..fail() as a failure return␤       …
05:45 lue guess that part of the spec isn't supported yet :)
05:46 arlinius rakudo: say +Nil*+Mu;
05:46 p6eval rakudo 5e5969: OUTPUT«Use of type object as value␤current instr.: 'perl6;Perl6Exception;throw' pc 14359 (src/builtins/Seq.pir:52)␤»
05:47 arlinius rakudo: say +Nil*+Nil;
05:47 p6eval rakudo 5e5969: OUTPUT«0␤»
05:50 arlinius rakudo: my Array $x;
05:50 p6eval rakudo 5e5969:  ( no output )
05:51 lue rakudo: my Array $x; $x[1]=4; say $x[1];
05:51 p6eval rakudo 5e5969: OUTPUT«4␤»
05:52 lue when sigils don't matter...
05:52 diakopter rakudo: my Hash $x; $x[1] # masakbot
05:52 p6eval rakudo 5e5969: OUTPUT«No applicable candidates found to dispatch to for '_block12549'␤current instr.: 'perl6;Perl6Role;!select' pc 9770 (src/gen/RoleToClassApplier.pir:574)␤»
05:53 diakopter TimToady: LOL
05:53 lue rakudo: say 5.WHAT
05:54 p6eval rakudo 5e5969: OUTPUT«Int()␤»
05:54 lue rakudo: my Int %x; # hee hee
05:54 p6eval rakudo 5e5969:  ( no output )
05:54 bkeeler rakudo: my int $a = 3
05:54 p6eval rakudo 5e5969: OUTPUT«Malformed my at line 11, near "int $a = 3"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
05:54 lue rakudo: my Int %x = 3; say %x; # hee hee
05:54 p6eval rakudo 5e5969: OUTPUT«Odd number of elements found where hash expected␤current instr.: '&die' pc 16676 (src/builtins/Junction.pir:347)␤»
05:54 arlinius rakudo: my Int &foo = 3; say &foo;
05:54 p6eval rakudo 5e5969: OUTPUT«3␤»
05:54 diakopter rakudo knows about type names only if they're uppercase
05:54 lue rakudo: my Int %x = 3,5; say %x; # hee hee
05:54 p6eval rakudo 5e5969: OUTPUT«3  5␤␤»
05:54 lue rakudo: my Int %x = 3,5; say %x.WHAT; # hee hee
05:55 p6eval rakudo 5e5969: OUTPUT«Hash()␤»
05:55 bkeeler So it doesn't have the low-level naked ints yet I see
05:55 diakopter masakbot reported that one last week I think
05:55 diakopter no
05:55 diakopter perl6: my int $x
05:55 arlinius rakudo: my Int %x = 3,5; say %x.perl;
05:55 p6eval elf 29912, pugs:  ( no output )
05:55 p6eval ..rakudo 5e5969: OUTPUT«Malformed my at line 11, near "int $x"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
05:55 p6eval rakudo 5e5969: OUTPUT«{"3" => 5}␤»
05:56 diakopter oh; somseone fixed/implemented Hash.ToString()
05:56 diakopter or whatever
05:56 arlinius rakudo: my Int %x = 3,5; say %x
05:56 p6eval rakudo 5e5969: OUTPUT«3  5␤␤»
05:56 arlinius rakudo: my Int %x = 3,5,6,9; say %x
05:56 p6eval rakudo 5e5969: OUTPUT«3  5␤6      9␤␤»
05:56 diakopter o_O
05:56 arlinius yep
05:57 diakopter rakudo: my Int %x = 3,5,6,9,12,14; say %x
05:57 p6eval rakudo 5e5969: OUTPUT«6  9␤12      14␤3    5␤␤»
05:57 diakopter rakudo: my Int %x = 3,5,6,9,12,14,3332,33123423; say %x
05:57 p6eval rakudo 5e5969: OUTPUT«6  9␤3332    33123423␤3      5␤12      14␤␤»
05:57 diakopter that's some odd spacing
05:57 arlinius rakudo: my Int %x = 1..20; say %x
05:57 p6eval rakudo 5e5969: OUTPUT«19 20␤1     2␤11     12␤3      4␤13      14␤5     6␤15     16␤7      8␤17      18␤9    10␤␤»
05:57 diakopter and by odd, I mean even
05:57 snarkyboojum rakudo: my Int %x = 1..3; say %x
05:58 p6eval rakudo 5e5969: OUTPUT«Odd number of elements found where hash expected␤current instr.: '&die' pc 16676 (src/builtins/Junction.pir:347)␤»
05:58 snarkyboojum :)
05:58 diakopter heh
05:58 diakopter "Step Right Up, to the StressFuzz Rakudo Game.  All are welcome; just don't laugh too maniacally."
05:59 lue rakudo: my Any %.x=3; say %.x
05:59 p6eval rakudo 5e5969: OUTPUT«Odd number of elements found where hash expected␤current instr.: '&die' pc 16676 (src/builtins/Junction.pir:347)␤»
05:59 arlinius rakudo: my %x = 1,2,3,4; undefine %x;
05:59 p6eval rakudo 5e5969: OUTPUT«Odd number of elements found where hash expected␤current instr.: '&die' pc 16676 (src/builtins/Junction.pir:347)␤»
05:59 lue rakudo: my Mu $$omething = 3; say $$omething; # so many things wrong here :D
05:59 p6eval rakudo 5e5969: OUTPUT«In "my" declaration, typename Mu must be predeclared (or marked as declarative with :: prefix) at line 11, near " $$omethin"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
05:59 diakopter rakudo: my Any %.x=3,%.x; say %.x # masakbot
05:59 p6eval rakudo 5e5969: OUTPUT«Lexical 'self' not found␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
05:59 lue rakudo: my $$omething = 3; say $$omething; # so many things wrong here :D
05:59 p6eval rakudo 5e5969: OUTPUT«Malformed my at line 11, near "$$omething"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
06:00 lue rakudo: my $en$e$=3; say $en$e$
06:00 p6eval rakudo 5e5969: OUTPUT«Confused at line 11, near "my $en$e$="␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
06:00 arlinius rakudo: my Array $x; say $x.WHAT; undefine $x; say $x.WHAT
06:00 p6eval rakudo 5e5969: OUTPUT«Array()␤Type check failed for assignment␤current instr.: '&die' pc 16676 (src/builtins/Junction.pir:347)␤»
06:00 lue rakudo: my $.x=3; say $.x
06:00 p6eval rakudo 5e5969: OUTPUT«Lexical 'self' not found␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
06:01 diakopter yar
06:01 lue rakudo: my $!x=3; say $!x
06:01 p6eval rakudo 5e5969: OUTPUT«Lexical 'self' not found␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
06:01 diakopter eenteresting
06:01 lue rakudo: my .x=3; say .x
06:01 p6eval rakudo 5e5969: OUTPUT«Malformed my at line 11, near ".x=3; say "␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
06:01 lue rakudo: my eval('$hi') = 3; say eval('$hi');
06:01 p6eval rakudo 5e5969: OUTPUT«Malformed my at line 11, near "eval('$hi'"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
06:02 lue >:D *maniacal laugh*
06:02 diakopter well
06:02 hejki it seems getting working perl6 compiler might just take some months :)
06:03 diakopter erm
06:03 arlinius depends what you meant by 'working'
06:03 arlinius it's already taken years :P
06:03 hejki by working i mean something that's finished and does what the language whitepaper supposes it to do :)
06:03 diakopter oh, never
06:04 hejki woot
06:04 hejki :<
06:04 hejki don't be joking
06:04 hejki never would mean downfall for the king of languages :>
06:04 lue :O freenode doesn't allow 楽土 in my nick!
06:04 diakopter no
06:05 diakopter there will be releases
06:05 diakopter it's just too huge of a spec to ever match exactly
06:05 lue never is actually not that long. It's the length of Inf (∞) in NaNometers
06:05 diakopter or even to write a test suite to cover the whole language
06:05 diakopter heh
06:05 arlinius heh
06:06 lue :( I must tell freenode to upgrade their servers to allow Unicode in nicks
06:06 hejki diakopter: well that should make the compiler devs pretty depressed :)
06:06 arlinius rakudo: my Array $x; $x = ();
06:06 p6eval rakudo 5e5969: OUTPUT«Type check failed for assignment␤current instr.: '&die' pc 16676 (src/builtins/Junction.pir:347)␤»
06:06 arlinius rakudo: my Array $x; $x = Nil;
06:06 p6eval rakudo 5e5969: OUTPUT«Type check failed for assignment␤current instr.: '&die' pc 16676 (src/builtins/Junction.pir:347)␤»
06:06 arlinius rakudo: my Array $x; $x = [];
06:06 diakopter hejki: nah; that's been the state for years upon years
06:06 p6eval rakudo 5e5969:  ( no output )
06:07 diakopter hejki: if they weren't depressed by now, they never will be
06:07 diakopter (either way is fine)
06:07 hejki diakopter: sounds super frustrating :)
06:07 diakopter sometimes, to some people, yes
06:07 diakopter some are more patient than others.
06:07 TimToady the patient ones aren't the ones working on it :)
06:07 diakopter some have more of a vested interest in the expediency than others
06:08 lue everyone: imagine if a full implementation of Perl 6.1 ever came out.
06:08 hejki i'd so wet my patns
06:08 hejki pants*
06:08 TimToady that much better than 6.0, is it?
06:08 Sarten-X joined #perl6
06:09 lue .oO(stock up on Molybdenum, because that's the only way to save ourselves from the awesome power of the death star)
06:09 lue s/the death star/P6.1/
06:09 arlinius TimToady: hopefully not worse?
06:09 TimToady this language is fully operational
06:09 diakopter or operatoral, at least
06:10 TimToady the Fat Lady has already sung several times, but we're still going...
06:10 lue I believe rakudo's perl 6.1 should be named die*(Rakudo) [try to interpret that one]
06:10 lue or maybe [*] die(Rakudo)
06:11 TimToady maybe not
06:11 quester joined #perl6
06:13 lue Rakudo * implies the rebels have taken a page from the Empire's book
06:13 diakopter the death star spreads death; rakudo star spreads ... rakudo
06:15 * lue has the sudden urge to (horribly) draw the Rakudo * in the sky
06:17 lue "The Rakudo * is fully functional"    "What about fully OOP sir?"    "...Zark"
06:19 diakopter rakudo: say (1...4).iterator.^parents[1].new(3, 4, 5)
06:19 p6eval rakudo 5e5969: OUTPUT«Method 'iterator' not found for invocant of class 'Iterable'␤current instr.: 'perl6;List;get' pc 10869 (src/builtins/Role.pir:262)␤»
06:20 lue .oO(what would be a good name for a P6/R* based parody of Star Wars?)
06:22 diakopter rakudo: say 0.00000000000000000000
06:22 p6eval rakudo 5e5969: OUTPUT«No applicable candidates found to dispatch to for 'infix:<div>'␤current instr.: 'perl6;Rat;new' pc 317321 (src/gen/core.pir:37490)␤»
06:22 diakopter rakudo: say 0.0000000000000000000
06:22 p6eval rakudo 5e5969: OUTPUT«Nominal type check failed for parameter '$b'; expected Int but got Num instead␤current instr.: 'perl6;Rat;gcd' pc 316741 (src/gen/core.pir:37267)␤»
06:22 diakopter erm
06:22 diakopter masakbot: see the last two
06:23 lue rakudo: say 0.000000000000000000000000000000000000000000000000000000000000000000
06:23 p6eval rakudo 5e5969: OUTPUT«Divide by zero␤current instr.: 'infix:<div>' pc 253560 (src/gen/core.pir:12580)␤»
06:24 diakopter nice!  3 different bugs
06:24 lue the exact error changes with the number of extra 0's you have!
06:24 lue rakudo: say 0.000000000000000000000000000000000000000001000000000000000000000 # hee hee
06:24 p6eval rakudo 5e5969: OUTPUT«Nominal type check failed for parameter '$a'; expected Int but got Num instead␤current instr.: 'perl6;Rat;gcd' pc 316741 (src/gen/core.pir:37267)␤»
06:24 diakopter omg
06:24 lue first $b, now $a!
06:24 diakopter 4 different bugs
06:24 lue diakopter: want me to create four? >:)
06:25 lue s/four/more/
06:25 diakopter well, not in RT
06:25 wmiksss left #perl6
06:25 diakopter let masak add them if he thinks there aren't dupes
06:25 lue rakudo: say 1.0000000000000000000000000000000000000000000000000000000000000
06:25 p6eval rakudo 5e5969: OUTPUT«Nominal type check failed for parameter '$a'; expected Int but got Num instead␤current instr.: 'perl6;Rat;gcd' pc 316741 (src/gen/core.pir:37267)␤»
06:25 lue rakudo: say 00000000000000000000000000000000.000000000000000000000000000000
06:25 p6eval rakudo 5e5969: OUTPUT«No applicable candidates found to dispatch to for 'infix:<div>'␤current instr.: 'perl6;Rat;new' pc 317321 (src/gen/core.pir:37490)␤»
06:26 lue rakudo: say 0e-293
06:26 p6eval rakudo 5e5969: OUTPUT«0␤»
06:26 diakopter rakudo: say 0xFFFFFFFFFFFFFFFF # masakbot
06:26 p6eval rakudo 5e5969: OUTPUT«-1␤»
06:26 lue \o/
06:26 lue rakudo: say 0x16D.4
06:26 p6eval rakudo 5e5969: OUTPUT«Confused at line 11, near "say 0x16D."␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
06:26 arlinius rakudo: Mu.say
06:26 p6eval rakudo 5e5969: OUTPUT«Mu()␤»
06:26 arlinius rakudo: defined Mu
06:26 p6eval rakudo 5e5969:  ( no output )
06:26 arlinius rakudo: say Mu.defined
06:26 p6eval rakudo 5e5969: OUTPUT«0␤»
06:26 arlinius rakudo: say defined Mu
06:27 p6eval rakudo 5e5969: OUTPUT«0␤»
06:27 hejki rakudo: say Mu.HOW
06:28 p6eval rakudo 5e5969:  ( no output )
06:28 diakopter rakudo: say 0o7777777777777777777777
06:28 p6eval rakudo 5e5969: OUTPUT«-1␤»
06:28 arlinius rakudo: say Mu.HOW.WHAT
06:28 p6eval rakudo 5e5969: OUTPUT«Mu()␤»
06:28 lue rakudo: sub moo() {return Mu;}; say moo.WHAT
06:28 p6eval rakudo 5e5969: OUTPUT«Mu()␤»
06:29 cotto joined #perl6
06:30 lue rakudo: eval('alpha: say "hi";');
06:30 p6eval rakudo 5e5969:  ( no output )
06:30 diakopter heh
06:30 diakopter doesn't work that way ;)
06:30 lue std: say "I print things"
06:30 p6eval std 29912: OUTPUT«ok 00:01 107m␤»
06:30 lue std: say "I made it through STD's time barrier!"
06:30 p6eval std 29912: OUTPUT«ok 00:02 105m␤»
06:31 lue std: say that you hate letting things through your ok time barrier
06:31 p6eval std 29912: OUTPUT«Undeclared routines:␤  'barrier' used at line 1␤ 'hate' used at line 1␤    'letting' used at line 1␤ 'ok' used at line 1␤      'that' used at line 1␤    'things' used at line 1␤  'through' used at line 1␤ 'you' used at line 1␤     'your' used at line 1␤ok 00:01 106m␤»
06:31 lue :D
06:31 lue std: say "Proof of STD's iron curtain"
06:31 p6eval std 29912: OUTPUT«ok 00:01 105m␤»
06:34 lue This rakudo stressing has been fun. (If freenode would let me, I'd've changed my nick to 楽土StressTester)
06:36 arlinius rakudo: my @x; say @x.ACCEPTS();
06:36 p6eval rakudo 5e5969: OUTPUT«Method 'ACCEPTS' not found for invocant of class 'Array'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
06:36 arlinius rakudo: my @x; say @x.ACCEPTS(());
06:36 p6eval rakudo 5e5969: OUTPUT«Method 'ACCEPTS' not found for invocant of class 'Array'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
06:36 lue rakudo: my @x; say @x.ACCEPTS(((((((((((((((((((()))))))))))))))))))) # maybe if you put in enough ()
06:36 p6eval rakudo 5e5969: OUTPUT«Method 'ACCEPTS' not found for invocant of class 'Array'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
06:37 lue rakudo: my @x; say @x.ACCEPTS
06:37 p6eval rakudo 5e5969: OUTPUT«Method 'ACCEPTS' not found for invocant of class 'Array'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
06:38 arlinius rakudo: my @x; say @x ~~ Nil
06:38 p6eval rakudo 5e5969: OUTPUT«Method 'ACCEPTS' not found for invocant of class 'Parcel'␤current instr.: 'infix:<~~>' pc 214726 (src/gen/perl6-actions.pir:16060)␤»
06:38 arlinius rakudo: my $x; say $x ~~ Nil
06:38 p6eval rakudo 5e5969: OUTPUT«Method 'ACCEPTS' not found for invocant of class 'Parcel'␤current instr.: 'infix:<~~>' pc 214726 (src/gen/perl6-actions.pir:16060)␤»
06:38 arlinius Parcel hrm
06:39 arlinius rakudo: my $x; say $x ~~ ()
06:39 p6eval rakudo 5e5969: OUTPUT«Method 'ACCEPTS' not found for invocant of class 'Parcel'␤current instr.: 'infix:<~~>' pc 214726 (src/gen/perl6-actions.pir:16060)␤»
06:39 arlinius rakudo: my $x; say $x ~~ []
06:39 p6eval rakudo 5e5969: OUTPUT«Method 'ACCEPTS' not found for invocant of class 'Array'␤current instr.: 'infix:<~~>' pc 214726 (src/gen/perl6-actions.pir:16060)␤»
06:39 arlinius rakudo: my $x; say $x ~~ 3
06:39 lue I has a bed. See yall tomorrow for more stressing!
06:39 p6eval rakudo 5e5969: OUTPUT«Use of type object as value␤current instr.: 'perl6;Perl6Exception;throw' pc 14359 (src/builtins/Seq.pir:52)␤»
06:39 diakopter arlinius: you can also msg p6eval directly while experimenting
06:39 arlinius heh :P
06:40 lue left #perl6
06:44 diakopter rakudo: say |\/_\|/|\/_\|/|/_\|/|\/_\|/|/_\|/|\/_\|/|/_\|/|\/_\|/|/_\|/|\/_\|/|/_\|/|\/_\|/|/_\|/
06:44 p6eval rakudo 5e5969: OUTPUT«any(Capture.new(), Capture.new(), { ... }, Capture.new(), { ... }, Capture.new(), { ... }, Capture.new(), { ... }, Capture.new(), { ... }, Capture.new(), { ... })␤»
06:46 hejki rakudo: say _\|/_;
06:46 p6eval rakudo 5e5969: OUTPUT«Confused at line 11, near "say _\\|/_;"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
06:50 cognominal joined #perl6
06:55 arlinius rakudo: my &foo = { say 1 }; undefine &foo;
06:55 p6eval rakudo 5e5969:  ( no output )
06:58 kaare joined #perl6
07:02 vamped joined #perl6
07:03 quester diakopter: If Perl5 is accused of looking like line noise, what on Earth will people say about "say |\/_\|/|\/_\|/;"?
07:04 snarkyboojum looks like an upside down bridge to me
07:05 uniejo joined #perl6
07:05 quester snarkyboojum: Yes.  Given the output, you might say it's a row of Venus flytraps.  You know, Capture.new(fly), {eat(fly)}, ...
07:08 masak joined #perl6
07:08 masak good morning, #perl6!
07:09 uniejo Good morning, masak
07:09 snarkyboojum quester: I have no idea what it does other than -> any(Capture.new(), Capture.new()), so :)
07:09 masak joined #perl6
07:10 meppl joined #perl6
07:12 masak diakopter: [backlog] is that rod logic you're doing? :)
07:13 quester rakudo: say / foo / | /bar/;
07:13 p6eval rakudo 5e5969: OUTPUT«any({ ... }, { ... })␤»
07:13 quester rakudo: say \/ foo / | \/bar/;
07:13 p6eval rakudo 5e5969: OUTPUT«any(Capture.new(), Capture.new())␤»
07:15 quester diakopter:  Thank you, that was very educational.  Weird, but educational.
07:15 masak [WEIRD]
07:16 Su-Shee joined #perl6
07:16 pugssvn r29913 | plunix++ | Added tests for Nil, (), [], and {} definedness.
07:16 pugssvn r29913 | Added a few tests for @array-variable definedness.
07:17 Su-Shee good morning
07:18 masak Su-Shee: \o
07:23 gfx joined #perl6
07:33 cosimo joined #perl6
07:34 masak I think I fell off the Iron Man challenge as of yesterday. ah well, back up on the horse, I guess.
07:43 masak std: my @a[ %10_000 ]
07:43 p6eval std 29913: OUTPUT«[31m===[0mSORRY![31m===[0m␤Whitespace is required between alphanumeric tokens at /tmp/3g9Acr4WK7 line 1:␤------> [32mmy @a[ %10[33m⏏[31m_000 ][0m␤FAILED 00:01 107m␤»
07:43 mssm joined #perl6
07:53 pugssvn r29914 | colomon++ | [t/spec] Fix number of tests for defined.t.
07:55 colomon This test file now has tests saying both Nil is defined and Nil is undefined.
07:55 masak the mystery of emptiness...
07:57 pugssvn r29915 | colomon++ | [t/spec] Fudge new tests to defined.t passes again.
07:57 colomon So, that file definitely needs more work.  But I am up in the middle of the night, and not to be trusted to actually figure out the tricky bits.
08:02 masak from p3rl.org: "The use of *any* camel image with the topic of Perl is a trademark of an American media company. Fortunately, the image in the top right corner is just a photoshopped monkey. :-)" Juerd++
08:06 colomon http://justrakudoit.wordpress.com/2010/03/02/series-branch/
08:07 masak lolcolomonblogged!
08:07 colomon not a very big post, but see previous comments about the need for sleep.  :)
08:07 colomon in fact, I think I will wander that way now....
08:10 mathw Morning
08:11 masak mathw!
08:11 masak good morning!
08:14 iblechbot joined #perl6
08:17 mathw Hey masak
08:17 mathw Thanks for the Esperanto lesson at the weekend :)
08:18 masak Neniu problemo. :)
08:21 mathw Along with all the musical things I learned, I also learned that I still don't have a handle on how to use the accusative :)
08:22 masak mathw: they way you used it in http://twitter.com/MaW/status/9816053764 conveys direction.
08:22 masak generally, using it after a preposition conveys direction.
08:23 jonasbn joined #perl6
08:23 masak rakudo: say "foo" ~~ /foo/
08:23 p6eval rakudo 5e5969: OUTPUT«foo␤»
08:23 masak rakudo: say "foo" ~~ /foo ** 5/
08:23 p6eval rakudo 5e5969: OUTPUT«␤»
08:23 masak rakudo: say "foo" ~~ /foo ** {5}/
08:23 p6eval rakudo 5e5969: OUTPUT«foo␤»
08:24 * masak is mildly curious about that one
08:24 masak moritz_++
08:25 eternaleye joined #perl6
08:30 agentzh joined #perl6
08:34 [synth] joined #perl6
08:39 mathw masak: and since we went to the bar, and *then* played music, there is no direction involved
08:40 cosimo joined #perl6
08:40 masak mathw: well, the way it's written, it gives me the sense that music is flowing into the bar from outside. though the predicate is only implicit in that reading, so it's all a bit vague.
08:41 masak basically, it says 'music into the bar'.
08:41 quester I have a trivia question about submitting Rakudo patches... I posted a patch to http://rt.perl.org/rt3/Public/Bug/Display.html?id=73148 about three days ago.  Should I have notified someone, or jost continue waiting patiently for feedback, or...?
08:41 mathw which is entirely inappropriate, as the music was generated in the bar
08:41 quester s/jost/just/
08:42 masak quester: the 'patiently' option.
08:43 masak quester: I have the feeling patches are very much appreciated, but there's not a system of regularly applying them or anything. instead, there's a kind of squaks-loudest system in place. :)
08:43 quester masak:  Thanks... roughly how long does it take to get feedback, typically?
08:43 masak quester: keep squaking, and it won't be long :)
08:43 * masak reviews the patch
08:43 quester masak:  Okay.  Thank you very much.
08:49 cosimo joined #perl6
08:49 am0c joined #perl6
08:52 masak phenny: tell pmichaud that I reviewed quester++'s http://rt.perl.org/rt3/Public/Bug/Display.html?id=73148 and it looks good. before I introduce new files into the build, I just thought I'd clear it with you. also, you might want to have a say in the exact --version message.
08:52 phenny masak: I'll pass that on when pmichaud is around.
08:53 quester masak:  Thank you again.  (And yes, the exact --version message is an exercise in aesthetics.)
08:55 masak quester: "CAUTION: if you enable strict or warnings you might wind up with Perl 5 error messages in the output file, src/gen/compiler.pir." That sounds backwards to me for some reason. perhaps because winding up with error messages in src/gen/compiler.pir sounds like a lesser evil than leaving strict/warnings off.
08:59 quester masak:  It is a bit funky, but if the git commands fail, turning on warnings puts the warnings into the pir source code, when then fails to compile.  With warnings off, it fails silently.  Since the git commands are likely to fail for people installing Rakudo from tarballs, it seemed like the lesser of two evils.
09:00 masak ok. I think I see the reasoning. I guess that's yet another tradeoff I'm happy to leave to any of the more core developers. :)
09:01 quester There may be a much better way of handling that.  Normally I would try to redirect stderr but I'm not sure if there is a good way of doing that in a makefile without breaking the build process on non-*nix platforms, Windows in particular.
09:01 masak good point.
09:03 mathw bloody windows
09:03 mathw always making a mess
09:03 masak mathw: snow blowing in? :)
09:05 * masak .oO( why we find young Linux users in basements: because they dislike Windows )
09:06 quester mathw:  You just have to keep beating it until all the blood is gone.  Then it's no longer bloody.  (Oops, I think I'm channeling Wednesday Addams.)
09:06 pmichaud good morning, #perl6
09:06 phenny pmichaud: 08:52Z <masak> tell pmichaud that I reviewed quester++'s http://rt.perl.org/rt3/Public/Bug/Display.html?id=73148 and it looks good. before I introduce new files into the build, I just thought I'd clear it with you. also, you might want to have a say in the exact --version message.
09:06 masak pmichaud: wow, you're up early!
09:07 pmichaud really?  feels like I'm up late :-)
09:07 masak or that :)
09:07 mathw and isn't he nice, he adapts his greeting for our time zone
09:07 masak it's mostly just confusing. :)
09:07 pmichaud oh, believe me, it's definitely morning here.
09:09 pmichaud for rt #73148, I'd prefer that we not be modifying Compiler.pir
09:09 pmichaud (reading...)
09:10 pmichaud the .pl script ought to go into build/, along with the other scripts that generate code
09:10 quester pmichaud:  So, you would prefer to put the version method into a new something.pir file instead...?
09:10 pmichaud yes
09:11 pmichaud src/gen/version.pir would make sense
09:11 pmichaud (src/gen/ being the place where we put generated files)
09:11 pmichaud it only needs to contain the 'version' method
09:11 dakkar joined #perl6
09:12 masak perhaps that solves the strict/warnings conundurum, too?
09:12 pmichaud (not familiar with that conundrum :-)
09:13 quester Okay, would you be inclined to place the template into src/Perl6, or build, or just put it as a series of print statements into the .pl file?
09:13 pmichaud print in .pl file is fine
09:13 pmichaud I'm looking for an exmaple
09:13 quester ... of what the perl6 -v output looks like now?
09:14 masak pmichaud: oh, just something from the recent backlog. the .pl script didn't have strict/warnings turned on, because of a tradeoff.
09:14 pmichaud no, example of where we generate code
09:14 snarkyboojum joined #perl6
09:15 pmichaud anyway, for better our worse, we tend to create code-generating-scripts in build/*.pl
09:15 pmichaud those output files which are then placed in gen/
09:15 pmichaud and the files can then be easily grabbed using .include
09:16 pmichaud so in this case
09:16 pmichaud create src/gen/version.pir
09:17 pmichaud then maybe include it via the CHEATS_PIR macro in the makefile
09:18 pmichaud see build/gen_uprop.pl for an example of how the unicode property rules are generated, follow that model
09:19 quester pmichaud:  Okay, let me move the files and test and generate a new patch, probably in about a day or two.  Should I just post it to rt.perl.org again?
09:20 pmichaud yes, that'd be great.
09:20 pmichaud the features the patch adds are terrific
09:20 pmichaud I really like the new version information
09:21 quester pmichaud:  Thank you very much.  I'm all excited, this is my first contribution to an open-source project.
09:23 pmichaud I'm glad to hear that, and hope you can contribute more like this one :)(
09:23 pmichaud er, :-)
09:23 pmichaud (typo -- hard to type where I'm currently at)
09:27 quester pmichaud:  Yes, I hope so too.  Thanks again.  Actually, I do have a beard a little bit like :)(   ... how did you know?
09:28 pmichaud sometimes my fingers know more than my brane
09:28 masak rakudo: say '(foo' ~~ / '(' ~ ')' [foo] /
09:29 p6eval rakudo 5e5969: OUTPUT«Unable to parse _block48, couldn't find final ')' at line 1␤current instr.: 'perl6;Regex;Cursor;FAILGOAL' pc 1664 (ext/nqp-rx/src/stage0/Regex-s0.pir:907)␤»
09:29 masak why does everything in regexes indicate falure with a False-valued $/, except for goals, which indicate failure by throwing an exception?
09:30 quester Take care, everyone, and good {localtime}.  Off shopping and then sleep &
09:30 pmichaud maybe should return failure instead of throwing exception
09:30 masak yes, please.
09:31 pmichaud I'll have to think a bit about how to pull that off.  But feel free to file this as a ticket :)
09:31 masak my real-world situation to back this up is a test file with a grammar parse wrapped in a method call which checks whether the syntax of an expression is correct. I only expect the method call to return a Bool, not to blow up.
09:32 masak gladly.
09:32 * masak submits rakudobug
09:32 pmichaud well, I can certainly get it to fail the match.  I'm not sure where the message goes, though.
09:33 clintongormley joined #perl6
09:35 mberends joined #perl6
09:37 mberends good morning from Bratislava!  Hmm, that beer was good last night :-)
09:38 pmichaud good morning from Houston!  I haven't had a beer yet.
09:38 pmichaud bars are probably closed by now anyway :-(
09:39 am0c joined #perl6
09:40 sjohnson :(
09:40 masak mberends: are you perchance at jnthn's place? :)
09:41 mberends masak: indeed
09:41 masak woot!
09:42 masak and symmetric in some way. my two last hotel buddies under the same roof :)
09:43 sjohnson perlpals
09:43 mberends we'll be even togetherer soon :)
09:45 * mberends looks forward to a full time week of Perl 6
09:47 masak it'll be awesome.
09:47 * mathw sighs
09:47 * masak hugs mathw
09:47 jnthn oh hai
09:47 mathw This is what happens when I spend all my money on music holidays :)
09:47 mathw oh hai jnthn
09:47 masak lolitsjnthn!
09:47 pmichaud oh hai jnthn
09:48 jnthn wow, pmichaud awake at what time?!
09:48 jnthn .oO( how late did I sleep in? )
09:48 pmichaud currently 0345
09:48 * mathw thinks about a tune for Rakudo
09:49 pmichaud "Elephant Walk" by H. Mancini ?
09:50 jonasbn mberends: could you extend your talk to 40 minutes as you mention?
09:50 pmichaud jonasbn!
09:50 jonasbn mberends: we have the time in the schedule
09:50 mberends jonasbn: no problem
09:51 jonasbn super duper
09:51 jonasbn official schedule is online
09:51 masak I already found it :)
09:51 mathw pmichaud: actually I was considering writing one. I'll let you know if I come up with anything suitable
09:51 quester left #perl6
09:52 masak http://www.opensourcedays.org/2010/node/267
09:53 jnthn jonasbn: The sessions look to be for an hour...is that an invitation to fill it? :-)
09:55 kst` joined #perl6
09:57 jonasbn jnthn: they say 45 minutes + 10 minutes for questions etc.
09:58 jonasbn so... yes
09:58 vamped /exit
09:58 jnthn fail
09:58 jnthn jonasbn: OK, cool.
09:58 pmichaud hour, coolness
09:58 jonasbn hotel information will come today, just got a mail from the OSD coordinator
09:58 * pmichaud checks schedule
09:58 jnthn hehe
09:59 pmichaud it's always dangerous to give me more time :)
09:59 jnthn pmichaud: You're the Grand Finale
09:59 pmichaud Perhaps I should change my talk title
09:59 jonasbn my only worry with the lengthy schedule is that it takes time from the hackathon, since the audience is somewhat the same
10:00 jonasbn but we have the whole Sunday too
10:00 pmichaud it's okay
10:00 pmichaud if I'm grand finale, and we expect most attendees to be hackathon folks, I'll orient my talk towards hackathon activities
10:00 pmichaud and it looks like we're done by 15h00, so there's a bit of time after me
10:01 jaldhar joined #perl6
10:02 m-locks aye, talking about hacking makes people wanna hack
10:04 pmichaud mberends: are you going to be up for going first?  ;-)
10:04 mberends pmichaud: yes. I think my topic is good as an overview for the track.
10:04 masak he can give the talk and the go to sleep :)
10:04 pmichaud I agree -- just didn't know if you'd be well-enough-rested after traveling overnight :)
10:04 mberends :D
10:05 jonasbn and then wake up for the bar night
10:05 pmichaud oh, there is that.
10:05 pmichaud I like the "Too Cool for IE" marker at the bottom right of the OSD pages :)
10:05 jnthn pmichaud: You should see what happens in IE6. :-)
10:06 pmichaud I hope it's very apocalyptic.
10:08 jnthn Yes, it displays the plans for a new programming langauge.
10:09 pmichaud "We'll rid the world of IE6 about the same time that Perl 6 comes out.  Shortly after DNF is released."
10:11 jnthn It'll run on a Javascript backend that's incompatible with IE6?
10:12 kst`` joined #perl6
10:13 pmichaud something like that.
10:14 arnsholt jonasbn: You around?
10:14 jonasbn yes
10:15 arnsholt Ah, excellent
10:15 arnsholt Do you know of any decent places to stay near the hackathon venue, suitable for a student budget?
10:15 bacek joined #perl6
10:15 bacek o hai
10:16 bacek seen moritz_
10:17 jonasbn arnsholt: check http://www.opensourcedays.org/2010/node/283
10:17 jonasbn the hostels are cheap I guess
10:19 Su-Shee the entire perl schedule is perl6? :)
10:19 pmichaud it's a "Perl 6 Hackathon", so yes :)
10:19 Su-Shee denmark will be assimilated. ;)
10:20 arnsholt jonasbn: Thanks
10:22 riffraff joined #perl6
10:25 bacek pmichaud, aloha. Do you have time for couple of questions?
10:26 pmichaud yes, although I may have to disappear suddenly at any moment.
10:26 bacek ok
10:26 jonasbn arnsholt: looking forward to seeing you in Copenhagen
10:26 orafu joined #perl6
10:26 bacek 1. Can you quick review my fork of nqp-rx for Settings?
10:27 pmichaud not at the moment, I should be able to do so in the next ~12 hrs
10:27 bacek 2. What is best NQP/Perl6 replacement for  $absolute ||= $body =~ s/\bgoto\s+ADDRESS\((.*?)\)/{{=$1}}/mg;
10:28 pmichaud there's not a built-in for NQP to do that.
10:28 pmichaud one could do the match, get the match object details, and do the substitutions
10:28 pmichaud but one of the things japhb++ worked on was providing a .subst method for being able to do /g
10:28 bacek I know. But implementing it in function form looks awful.
10:29 bacek subst($body, /\b/, { eval('{{$0}}') } );
10:29 bacek something like this
10:29 pmichaud you want it to execute a goto?
10:29 bacek no
10:30 bacek I want replace "goto" with "{{=$1}}"
10:30 bacek ops2c actually want it.
10:30 bacek But nqp chokes on parsing {} inside strings. Or I totally misunderstand Perl6 string interpolations...
10:31 pmichaud {} inside double-quoted strings is a closure interpolation.
10:31 pmichaud nqp:  say("3 + 2 = {3 + 2}");
10:31 p6eval nqp: OUTPUT«3 + 2 = 5␤»
10:32 pmichaud so if you want braces in the output, you probably need to backwhack them
10:32 pmichaud nqp:  say("3 + 2 = \{3 + 2\}");
10:32 p6eval nqp: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 1␤current instr.: 'parrot;Regex;Cursor;FAILGOAL' pc 1664 (src/Regex/Cursor-builtins.pir:179)␤»
10:32 pmichaud ooops
10:32 * pmichaud files nqpbug
10:32 jnthn Well, it makes a change from masak...
10:32 jnthn ;-)
10:32 bacek Unable to parse blockoid, couldn't find final '}' at line 259
10:32 mberends (laughter)
10:33 pmichaud yeah, looks like an nqp bug
10:33 pmichaud nqp:  say("3 + 2 = \x[7c]3 + 2\}");
10:33 p6eval nqp: OUTPUT«3 + 2 = |3 + 2\}␤»
10:33 pmichaud nqp:  say("3 + 2 = \x[7c]3 + 2\}");
10:33 p6eval nqp: OUTPUT«3 + 2 = |3 + 2\}␤»
10:33 pmichaud .u {
10:33 phenny U+007B LEFT CURLY BRACKET ({)
10:33 pmichaud nqp:  say("3 + 2 = \x[7b]3 + 2}");
10:33 p6eval nqp: OUTPUT«3 + 2 = {3 + 2}␤»
10:34 masak wither are nqpbugs filed? just curious.
10:34 pmichaud (LTA workaround)
10:34 bacek nqp: subst($body, /\b/, '{{' ~ $0 ~ '}}' );
10:34 p6eval nqp: OUTPUT«Confused at line 1, near "subst($bod"␤current instr.: 'parrot;HLL;Grammar;panic' pc 500 (src/cheats/hll-grammar.pir:197)␤»
10:34 bacek nqp: my $body; subst($body, /\b/, '{{' ~ $0 ~ '}}' );
10:34 p6eval nqp: OUTPUT«Confused at line 1, near "subst($bod"␤current instr.: 'parrot;HLL;Grammar;panic' pc 500 (src/cheats/hll-grammar.pir:197)␤»
10:34 pmichaud nqpbugs can go in the issues queue on github or into the parrot trac tracker
10:35 pmichaud I don't think nqp knows $0
10:35 pmichaud although japhb's implementation of subst might be able to do it.  and I could perhaps add $0
10:35 bacek nqp: my $body; subst($body, /\b/, '{{' ~ $/[0] ~ '}}' );
10:35 p6eval nqp: OUTPUT«Symbol '$/' not predeclared in <anonymous>␤current instr.: 'parrot;PCT;HLLCompiler;panic' pc 137 (compilers/pct/src/PCT/HLLCompiler.pir:101)␤»
10:35 masak gotcha. thanks.
10:35 bacek Should $/ be always predefined?
10:36 pmichaud in Perl 6, yes, in NQP, we try not to have implicit vars
10:36 pmichaud (because they add a lot of overhead to every block)
10:37 pmichaud anyway, I suggest asking japhb++ how to do the subst
10:37 pmichaud he's done it a few times :)
10:37 pmichaud (I'm likely to disappear shortly)
10:37 bacek I already stole his code for subst :)
10:38 pmichaud ah
10:38 pmichaud then ask him how to make it work :)
10:38 bacek I just cant figure out easy way to present "{{$1}}" in left side :)
10:38 pmichaud I'll look at it a bit later when I review the lib stuff
10:38 bacek ok
10:39 bacek nqp: subst($body, /\b/, '{{' ~ $^match[0] ~ '}}' );
10:39 p6eval nqp: OUTPUT«Confused at line 1, near "subst($bod"␤current instr.: 'parrot;HLL;Grammar;panic' pc 500 (src/cheats/hll-grammar.pir:197)␤»
10:39 bacek sigh...
10:40 pmichaud yes, handling the $0 $1 is always a trick, even in full P6
10:40 bacek nqp: sub foo($body) { subst($body, /\b/, '{{' ~ $^match[0] ~ '}}' ); }
10:40 p6eval nqp: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 1␤current instr.: 'parrot;Regex;Cursor;FAILGOAL' pc 1664 (src/Regex/Cursor-builtins.pir:179)␤»
10:40 masak trick? how so?
10:40 bacek nqp: sub foo($body) { subst($body, /\b/, '[[' ~ $^match[0] ~ ']]' ); }
10:40 p6eval nqp: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 1␤current instr.: 'parrot;Regex;Cursor;FAILGOAL' pc 1664 (src/Regex/Cursor-builtins.pir:179)␤»
10:40 pmichaud (because it has to be encapsulated in a closure so you get the correct $/ and not the outer one to the subst)
10:40 masak what? no.
10:41 masak .subst isn't specially treated in any way.
10:41 masak the user has to manually provide the closure.
10:41 pmichaud right
10:41 pmichaud that's what I'm saying-- to use $0, you have to put it in a closure
10:41 pmichaud (not that .subst does it for you)
10:41 masak good. we're in violent agreement.
10:42 pmichaud (I'm a bit distracted atm, so my words are likely not precise)
10:42 masak same here.
10:42 masak I read 'trick' as 'a thing we need need to make sure to put into the implementation'.
10:43 pmichaud it's tricky for nqp because not all closures automatically get $/, and pattern matching doesn't automatically set $/
10:43 masak rakudo: use Opendir
10:43 p6eval rakudo 5e5969: OUTPUT«"load_bytecode" couldn't find file 'Opendir.pir'␤current instr.: '!use' pc 365776 (src/gen/core.pir:54663)␤»
10:43 masak alpha: use Opendir
10:44 p6eval alpha 30e0ed: OUTPUT«Can't find ./Opendir in @*INC␤in Main (file <unknown>, line <unknown>)␤»
10:44 masak Rakudo master only supports .pir module loading so far, yes?
10:44 pmichaud and even in rakudo/Perl 6, it's tricky because  with   .subst(/pattern/, { $0 } )   we have to intercept the $/ that the closure is using and put our own $/ into place
10:44 pmichaud i.e., the $/ acts more like a dynamic variable instead of a lexical one
10:48 masak ooh, http://cpan6.org/ has a new design. I really like it. too bad that the project, and the person behind it, are essentially disconnected from Perl 6 and the Perl 6 community.
10:48 masak too bad also that the page implies that Perl 6 isn't usable at the moment.
10:49 masak CPAN6 also has a release date of April 2010. wonder if that's a coincidence.
10:50 pmichaud depends on someone's definition of usable, as usual.
10:51 mberends afk & # Blava guided tour :-)
10:58 bacek rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $s ~~ /<?wb>goto\s+ADDRESS\((.*)\)/;
10:58 p6eval rakudo 5e5969: OUTPUT«Symbol '$s' not predeclared in <anonymous>␤current instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (compilers/pct/src/PCT/HLLCompiler.pir:101)␤»
10:58 snarkyboojum joined #perl6
10:58 bacek rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $str ~~ /<?wb>goto\s+ADDRESS\((.*)\)/;
10:58 p6eval rakudo 5e5969: OUTPUT«␤»
10:58 bacek rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $str ~~ /<?wb>goto/;
10:58 p6eval rakudo 5e5969: OUTPUT«goto␤»
10:58 bacek rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $str ~~ /<?wb>goto\s+ADDRESS/;
10:58 p6eval rakudo 5e5969: OUTPUT«goto ADDRESS␤»
10:59 bacek rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $str ~~ /<?wb>goto\s+ADDRESS\(.*\)/;
10:59 p6eval rakudo 5e5969: OUTPUT«goto ADDRESS(dest)␤»
10:59 pmichaud << goto \s+ ADDRESS '(' (.*?) ')' /
11:00 bacek pmichaud++ # thanks
11:00 pmichaud (backslashes should work also... but the failure of \{ earlier has me a bit skittish.  quotes are clearer anyway)
11:00 bacek rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $str ~~ /goto \s+ ADDRESS '(' (.*) ')'/;
11:00 p6eval rakudo 5e5969: OUTPUT«␤»
11:00 bacek bad luck...
11:00 pmichaud rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $str ~~ /goto \s+ ADDRESS '(' (.*) ')'/;
11:00 p6eval rakudo 5e5969: OUTPUT«␤»
11:00 pmichaud rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $str ~~ /goto \s+ ADDRESS '(' (.*?) ')'/;
11:00 p6eval rakudo 5e5969: OUTPUT«␤»
11:01 pmichaud rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $str ~~ /goto \s+ ADDRESS '(' /;
11:01 p6eval rakudo 5e5969: OUTPUT«goto ADDRESS(␤»
11:01 bacek rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $str ~~ /goto \s+ ADDRESS '(' .* ')'/;
11:01 p6eval rakudo 5e5969: OUTPUT«goto ADDRESS(dest)␤»
11:01 pmichaud looks like a problem with the subcapture?
11:01 pmichaud maybe:
11:01 pmichaud rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $str ~~ /goto \s+ ADDRESS '(' $<addr>=[.*?] ')'/;
11:01 p6eval rakudo 5e5969: OUTPUT«goto ADDRESS(dest)␤»
11:02 bacek O@
11:02 pmichaud rakudo: my $str = "yada yada yada goto ADDRESS(dest) foo bar baz"; say $str ~~ /goto \s+ ADDRESS '(' $<addr>=[.*?] ')'/;   say $<addr>;
11:02 bacek O!
11:02 p6eval rakudo 5e5969: OUTPUT«goto ADDRESS(dest)␤dest␤»
11:02 pmichaud (named captures are better documenting anyway :)
11:02 * bacek smells ignorance of bugs :)
11:02 pmichaud I'm surprised the parens don't work, though, I thought I had tested those.
11:03 pmichaud rakudo:  my $str = 'abc';  say $str ~~ / (...) /;
11:03 p6eval rakudo 5e5969: OUTPUT«abc␤»
11:03 barney joined #perl6
11:03 pmichaud rakudo:  my $str = 'abc';  say $str ~~ / a (.) /;
11:03 p6eval rakudo 5e5969: OUTPUT«ab␤»
11:03 bacek iiuc it should work in nqp?
11:03 pmichaud rakudo:  my $str = 'abc';  say $str ~~ / a (.*?) c/;
11:03 p6eval rakudo 5e5969: OUTPUT«␤»
11:03 pmichaud rakudo:  my $str = 'abc';  say $str ~~ / a (.*) c/;
11:03 p6eval rakudo 5e5969: OUTPUT«␤»
11:03 pmichaud looks like a backtracking issue.
11:04 pmichaud ...and yes, I think I know this bug.
11:04 pmichaud it's not backtracking properly into the subpattern.
11:05 pmichaud I better put that as a high-priority fix... that's likely to cause a lot of confusion.
11:05 pmichaud (I think moritz++ might've reported this bug already, too)
11:26 pmichaud afk, hoping to catch some sleep :-|
11:34 snarkyboojum joined #perl6
12:10 payload joined #perl6
12:12 snarkyboojum joined #perl6
12:22 bacek joined #perl6
12:27 ignacio_ joined #perl6
12:49 SmokeMachine joined #perl6
12:50 takadonet morning all
12:50 colomon mathw: Did I hear you say (a few days ago) that you have a wind synth?  Which one?
12:51 masak takadonet: \o
12:51 b_jonas joined #perl6
12:52 colomon o/
12:52 ignacio_ joined #perl6
12:56 bluescreen joined #perl6
13:03 masak are types automatically exported from an included module?
13:08 stepnem joined #perl6
13:10 masak rakudo: sub foo() { try { return 42 }; return 5 }; say foo
13:10 p6eval rakudo 5e5969: OUTPUT«5␤»
13:10 masak o.O
13:10 masak ok, so I know about the returns-are-exception idea, but surely... :/
13:10 masak s/ion/ions/
13:14 * masak submits rakudobug
13:15 b_jonas masak: maybe a bare try like that should only catch some exceptions, not all, like how in ruby a bare catch catches only instances of RuntimeError
13:16 b_jonas (thoguh the analogy is not really complete because ruby has like ten different kinds of non-local exits, only some of which are exceptions, and you can only catch exceptions with catch Object)
13:16 masak b_jonas: yes. I believe that's why CONTROL was invented, to enable catching of non-bad exceptions.
13:16 dual joined #perl6
13:21 daemon joined #perl6
13:24 b_jonas anyway, I think I had a revelation and started to understand why roles might make sense
13:24 b_jonas I'm still not sure, but I think I understand
13:25 masak b_jonas: here's my take on it, for what it's worth: http://use.perl.org/~masak/journal/40107
13:29 b_jonas thanks for the link
13:31 masak my pleasure.
13:31 masak the funny thing about those roles is that I had factored all of them away a few weeks later. doesn't necessarily disprove the points made in the post, though. :)
13:35 mathw colomon: I've got an Akai EWI4000s
13:39 b_jonas only eight, not ten
13:39 b_jonas not counting callcc which is implemented in a different way
13:39 b_jonas and threads and fibers
13:40 colomon mathw: I'm jealous.  :)
13:40 b_jonas so I guess that makes ten
13:40 mathw colomon: Oh really? I wasn't aware that they were a commonly desired instrument :)
13:41 IllvilJa masak: that time traveling debugger you mention (tardis), is it a debugger that allows you to study the state of the debugged program not only at current point of execution but also at any earlier point in time during that exec?
13:41 masak IllvilJa: that's what it is, yes.
13:42 IllvilJa masak++!
13:42 masak IllvilJa: I felt a pressing need for it when writing an operator precedence parser in Perl 6 last year :)
13:42 colomon mathw: well, it's mostly the wind controller idea.  I've wanted one for about fifteen years.  (Though apparently not enough to ever buy one for myself; these days I'm much more into very simple acoustic stuff.)
13:43 IllvilJa Would be wonderful for debugging... we all know how to use it: run the code ONCE until it breaks/crashes/barfs and from there, backtrack until one finds the root cause.
13:44 IllvilJa But does not that require a (potentially) quite large 'log' of all execution and all variable changes, or will it allow you to explicitly specify some variables to keep track of?
13:47 masak IllvilJa: there are all sorts of performance and memory problems involved in creating a time-travelling debugger. I guess that's why they're not extremely common.
13:47 masak IllvilJa: our goal right now is just to have fun until we hit an actual limit of some kind.
13:55 jnthn lol we're back!
13:59 masak \o/
14:02 IllvilJa masak: is 'hitting a limit of some kind' and 'having fun' really mutually exclusive? ;-)
14:07 masak IllvilJa: I wasn't implying we won't have fun after hitting the limit, or during :P
14:08 betterworld joined #perl6
14:10 pmurias joined #perl6
14:11 pugssvn r29916 | pmurias++ | [mildew] simple gtk based profiling
14:12 pugssvn r29917 | pmurias++ | [mildew] display the elapsed time on blocks
14:19 pmurias masak: re CPAN6 as it seems to be content independent it doesn't seem to be a big problem that the author is not closely involved in Perl6
14:23 masak pmurias: you might be right. on the other hand, I wouldn't mind seeing a CPAN-like solution which specifically took S11 into account.
14:23 masak CPAN6 seems to be going in the generalizing direction rather than specializing on Perl 6. I can see advantages of doing the latter, too.
14:24 IllvilJa joined #perl6
14:24 cognominal joined #perl6
14:25 BinGOs if perl6 was backwards compatible you could have just used CPAN
14:25 pmurias masak: Mark Overmeer is the person behing CPAN6?
14:25 masak pmurias: yes.
14:27 masak BinGOs: some people (moritz++, szabgab++) have been using CPAN for Perl 6 modules. there's not really any problem in doing that, it's just that we foresee that Perl 6 might have needs above and beyond CPAN.
14:27 pmurias masak: he takes part in p6l so he's involved to a certain degree
14:28 masak pmurias: that's true. he was involved in the Pod discussions.
14:29 masak what I mean is that not much of the CPAN6 development is visible to the Perl 6 community, on p6l or anywhere else.
14:32 PerlJam If CPAN grows enough to support Perl 6, it'll be able to support anything else.  No sense in mentioning the Perl specificity any more at that point.
14:34 BinGOs I think it is doable.
14:34 BinGOs I don't like the idea of having Perl6:: this and that.
14:35 BinGOs I think if the two toolchains are distinct it could work.
14:35 BinGOs Perl5 has Makefile.PL and Build.PL
14:35 BinGOs Perl6 has something shiny
14:35 masak also, the Perl6:: namespace is traditionally meant for Perl 5 modules emulating Perl 6 behaviour.
14:36 [particle] joined #perl6
14:36 PerlJam Is GGE in the Perl6:: namespace?
14:36 BinGOs the Perl5 toolchain doesn't find Makefile.PL/Build.PL but a Shiny.PL it knows to ignore that distribution
14:36 BinGOs and vice versa
14:37 masak PerlJam: not in any sense I can think of, no.
14:38 BinGOs Just my pennyworth.
14:42 rv2733 joined #perl6
14:55 snarkyboojum joined #perl6
14:55 jonasbn joined #perl6
14:57 nihiliad joined #perl6
15:06 jonasbn the hotel information is now available in the Wiki and I have sent a mail to the perl6-workshops listing
15:06 jonasbn let me know if you need anything else
15:06 jonasbn arnsholt: ping
15:09 PacoLinux joined #perl6
15:09 masak jonasbn++
15:11 ignacio_ joined #perl6
15:29 Tene ... rakudo doesn't support loading modules?  why didn't anyone tell me this?  It's now added to my task queue.
15:29 * Tene afk work.
15:31 iblechbot joined #perl6
15:33 colomon Tene: ... use Test works, right?
15:34 [particle] joined #perl6
15:34 kcwu joined #perl6
15:35 Tene colomon: yes, but it loads Test.pir
15:36 colomon I see.  Carry on.  :)
15:39 justatheory joined #perl6
15:40 Psyche^ joined #perl6
15:41 astrojp joined #perl6
15:41 rgrau joined #perl6
15:42 arnsholt jonasbn: pong?
15:43 jonasbn arnsholt, just for your information, all of the invited ppl are staying at the hotel listed in the wiki
15:44 arnsholt Ah, thanks
15:44 jonasbn I have only just received confirmation
15:45 arnsholt Hmm. It's actually a bit cheaper than a single room at the hostel nearby
15:45 jonasbn hehehe
15:46 jonasbn well I do not know if there is room, but you can always try, it is often nicer to tag along with other attendees
15:46 arnsholt Indeed
15:47 masak I totally dig that map. http://www.opensourcedays.org/2010/node/283 -- if this isn't living in the digital future, I don't know what is.
15:50 ignacio_ joined #perl6
15:51 eternaleye rakudo: class Fruit { method height() { (1..10).pick; }; }; my Fruit @problems .= map: *.new; my $low = 3; say +( @problems.grep( $low >= *.height ) ) ~ " low-hanging fruit picked!";
15:51 p6eval rakudo 5e5969: OUTPUT«No candidates found to invoke␤current instr.: '!dispatch_.=' pc 440 (src/glue/dispatch.pir:118)␤»
15:52 eternaleye alpha: class Fruit { method height() { (1..10).pick; }; }; my Fruit @problems .= map: *.new; my $low = 3; say +( @problems.grep( $low >= *.height ) ) ~ " low-hanging fruit picked!";
15:52 p6eval alpha 30e0ed: OUTPUT«Confused at line 10, near ": *.new; m"␤in Main (file <unknown>, line <unknown>)␤»
15:52 arnsholt masak: Definitely. Makes it that much easier to decide where to stay, instead of using street adresses, which are pretty much meaningless in an unfamiliar city
15:54 eternaleye Is what I'm inputting above sensible?
15:55 eternaleye Oh wait
15:55 eternaleye rakudo: class Fruit { method height() { (1..10).pick; }; }; my Fruit @problems[10] .= map: *.new; my $low = 3; say +( @problems.grep( $low >= *.height ) ) ~ " low-hanging fruit picked!";
15:55 p6eval rakudo 5e5969: OUTPUT«No candidates found to invoke␤current instr.: '!dispatch_.=' pc 440 (src/glue/dispatch.pir:118)␤»
15:56 eternaleye rakudo: class Fruit { method height() { (1..10).pick; }; }; my Fruit @problems = (1..10).map: Fruit.new; my $low = 3; say +( @problems.grep( $low >= *.height ) ) ~ " low-hanging fruit picked!";
15:56 p6eval rakudo 5e5969: OUTPUT«No candidates found to invoke␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
15:58 Tene height that varies each time you look at it, eh?  So if it's too high the first timy ou try, just try again.
16:00 [particle] joined #perl6
16:03 masak "No candidates found to invoke" feels like a last-resort error message to me. in many situations, one could probably give more clues than that.
16:07 jnthn That's an odd one.
16:07 jnthn I'm not sure where it's coming from.
16:07 jnthn ah, it is a Rakudo one, but should only show up in...unusual...circumstances. :-/
16:08 jnthn rakudo: say (*.height).WHAT
16:08 p6eval rakudo 5e5969: OUTPUT«Block()␤»
16:08 m-locks rakudo: (1..10).pick;
16:08 p6eval rakudo 5e5969:  ( no output )
16:08 m-locks rakudo: say (1..10).pick;
16:08 p6eval rakudo 5e5969: OUTPUT«10␤»
16:08 Trashlord joined #perl6
16:14 |newbie| joined #perl6
16:15 masak |newbie|: welcome :)
16:15 jaffa4 thanks.
16:15 masak oh, it's you :P
16:15 jaffa4 it s fun to be here under a different name
16:16 masak sure, if you have nothing better to do...
16:17 jaffa4 !seen diacopter
16:17 masak ENOPURL
16:17 jaffa4 !seen diakopter
16:18 masak jaffa4: diakopter was last seen on 06:44 UTC.
16:19 jaffa4 in the morning?
16:19 jaffa4 where is he?
16:20 vorner joined #perl6
16:20 masak he seems to inhabitate the Krupier belt, mostly. but he has been known to swing by the moons of Neptune.
16:20 kleanchap joined #perl6
16:21 jaffa4 what is his country?
16:21 masak are you from the FBI?
16:21 jaffa4 do you have something to hide?
16:21 masak I don't know; should I?
16:22 TimToady What is your Quest?
16:22 TimToady What is your favourite Colour?
16:23 masak I seek the Holy Parse. blue.
16:23 masak no wait.
16:23 * masak is catapulted down a ravine
16:23 jaffa4 Are you paranoid?
16:24 * masak hugs jaffa4
16:24 mberends joined #perl6
16:24 alester joined #perl6
16:24 jaffa4 I want to know his country so I can predict when he is going to visit this channel.
16:25 masak left #perl6
16:25 jaffa4 Probably when he is awake.
16:25 masak joined #perl6
16:25 masak jaffa4: yes, probably then.
16:26 TimToady diakopter's waking hours are not well correlated with his position, but he happens to be residing in California currently.
16:26 jaffa4 that means he can be awake soon
16:27 TimToady why can correlate and corollary spell themselves the same way on the front?
16:27 TimToady *can't
16:27 TimToady my n't key seems to be giving me trouble lately
16:28 masak you have an actual n't key?
16:28 masak that's a neat idea.
16:28 jaffa4 you could introduce a shortcut
16:28 jaffa4 eg, nt= n't
16:28 masak wouldn't want that.
16:28 masak but putting it on an unused key sounds like a nice idea.
16:28 jnthn That just isnt as cool.
16:29 masak hehe jn'thn :)
16:29 mberends you wouldn't wan't it all the time
16:29 jnthn You can stick an apostrophe in me, but I'll still be a valid Perl 6 identifier.
16:29 masak sometimes you don't in'tend to type n't.
16:30 masak jnthn: :D
16:30 meppl joined #perl6
16:30 jaffa4 do not abbreviate!
16:31 TimToady sez hoo?
16:31 masak is that you, Strunk and White?
16:31 jnthn I went in'to town in'terested in in'tercepting an in'telligent in'terior designer.
16:31 jnthn ...yeah, it'd suck sometimes.
16:31 jnthn :-)
16:32 mberends windows n't
16:34 masak an an't colony.
16:35 arnsholt TimToady: IIRC corollary and corellate are spelled differently because of ablaut
16:35 masak also, there are the few occasions when you actually want to write 'cant' or 'wont'.
16:35 arnsholt Quite possibly the funkiest part of Indo-European languages =D
16:35 * jnthn is wont to cant.
16:36 ^kleanchap joined #perl6
16:36 jaffa4 about should not?
16:36 masak arnsholt: I really like that explanation! is it related to 'correlate' having the stress on the first syllable?
16:37 arnsholt masak: A bit out of my depth, but AFAIK ablaut and stress are not strictly correlated
16:37 [particle] joined #perl6
16:37 masak arnsholt: ok. just checking.
16:37 arnsholt Although derivations with ablaut might sometimes have different stress as well
16:38 arnsholt Ablaut is just the vowel alternation, like deus (god) -> divinus (godlike)
16:38 masak nod.
16:38 jnthn sing/sang/sung, etc?
16:39 arnsholt jnthn: Indeed. The Germanic strong verbs are remnants of the ablaut system
16:42 masak I'm kinda fond of that. it's quirky but colourful.
16:42 arnsholt Ablaut is quite awesome
16:42 arnsholt Particularly when you get to the languages where it's more or less a productive phenomenon, like Sanskrit
16:43 arnsholt Almost as Semitic root structure ^^
16:43 arnsholt Almost as awesome, even
16:45 masak 'productive phenomenon'?
16:45 abra joined #perl6
16:46 arnsholt masak: Well, it's hypothesised that in the protolanguage, this was the normal way of deriving new words from other words
16:46 arnsholt And in Sanskrit, you can still do that to a certain extent
16:47 TimToady like certain prefixes/suffixes are productive in English
16:47 TimToady antidisestablishmentarianism
16:47 masak i.e. able to produce an open set of new words/meanings?
16:47 TimToady yes
16:47 masak got it.
16:47 TimToady yesish, anyway
16:47 masak :D
16:48 ignacio_ joined #perl6
16:48 TimToady its truthinesslessness is apparent
16:48 arnsholt masak: http://en.wikipedia.org/wiki/Productivity_(linguistics) for more gory details =)
16:49 masak arnsholt: thank you. added to the queue :)
16:49 pmichaud masak, jnthn, moritz, mberends:  see /invite
16:50 arnsholt Heh. I'm also available for monologuing in Copenhagen =)
16:53 silug joined #perl6
16:56 TimToady George might have done it, but I'd'ven't.
16:57 masak that took a while to parse.
16:57 masak is that a negated conjunctive?
16:58 dalek rakudo: e3f183e | jonathan++ | src/cheats/use.pir:
16:58 dalek rakudo: Don't crash in use if we don't find a namespace with a matching name.
16:58 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/e3f183e16dcb72c23c52616021341a4d7dd61507
16:58 dalek rakudo: 6867a56 | jonathan++ | src/Perl6/Actions.pm:
16:58 dalek rakudo: Try to do use actually at BEGIN-ish time, and fix up routine traits so they can see a block's signature.
16:58 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6867a569545c9723d38e2c135ee89d004ae225eb
17:01 athenot joined #perl6
17:02 uniejo joined #perl6
17:09 kcwu joined #perl6
17:17 masak wow, I'd'ven't actually gives a couple hundred Google hits!
17:17 masak "If they weren't real words, I'dn't've mentioned them!" :D
17:18 PerlJam Heh, I just got an email from the director of a place called "Plasma Engineering Research Lab (PERL)"  :-)
17:18 masak so that's what it stands for!
17:19 masak 'Is is now OK to say "I'd'ven't'd that extra piece of pie."?'
17:22 pyrimidine joined #perl6
17:22 Tene Re: recent discussions about time: http://news.yahoo.com/s/space/20100302/sc_space/chileearthquakemayhaveshorteneddaysonearth
17:22 Tene .title
17:22 phenny Tene: Chile Earthquake May Have Shortened Days on Earth - Yahoo! News
17:23 Tene ""... should have shortened the length of an Earth day by 1.26 milliseconds..."
17:23 masak now that you mention it, I did feel I haven't gotten a full night's sleep lately...
17:25 jnthn masak: Suggest going to bed 1.26 milliseconds earlier on a night to compensate.
17:25 masak jnthn: I'd have to revise my schedule...
17:26 Tene masak: are you: 1) woken by the sun instead of by an alarm clock, 2) woken by an alarm clock that measures time by detecting the rotation of the earth, or 3) have an alarm clock that's affected by quakes in the same was as the earth?
17:27 Tene ... or I guess it could affect the time you go to bed instead, I guess.
17:28 masak Tene: I really like the thought that you put into that. :)
17:29 Tene masak: I really like the blackberry pie I'm eating for a late breakfast.
17:30 * masak .oO( smartphone pie )
17:30 Tene masak: not the phone, these: http://en.wikipedia.org/wiki/File:Ripe,_ripening,_and_green_blackberries.jpg
17:30 Tene :P
17:30 * PerlJam tries to make sense of masak and fails
17:31 PerlJam :-)
17:31 masak I'm just in a silly mood, I think. :)
17:31 pmichaud hahahahahahaha   "blackberry pie"  ahahahahahahahahah
17:31 pmichaud L.O.L.
17:31 masak :)
17:31 PerlJam masak++  "a little nonsense now and then is relished by the wisest men"
17:31 pmichaud PerlJam: that's a wonky quote :)
17:32 diakopter masak: did you see my masakbot hilites the past 24 hours
17:32 masak well, if Tene relishes pie, I guess I'll have to make do with nonsense.
17:32 masak diakopter: no, but now that you've alerted me to them...
17:32 masak diakopter++
17:32 diakopter see the irclog...
17:32 diakopter some bugs and maybe-bugs
17:32 masak gotcha.
17:33 pmurias joined #perl6
17:33 masak diakopter: also, a secret agent disguised as jaffa4 was asking for you earlier.
17:33 diakopter yeah
17:34 Tene ew relish pie
17:34 pmurias diakopter: hi
17:34 cj diakopter: I'm thinking about gsoc and perl6 and the dlr
17:34 diakopter pmurias: hi
17:34 diakopter cj: gsoc?
17:35 pmurias google summer of code
17:35 cj diakopter: summer of code
17:35 diakopter cj: know any .NET students?
17:35 cj diakopter: what is a .NET student?
17:35 diakopter a student who uses .NET?
17:35 cj diakopter: sure, there are a few in my department.  why?
17:35 diakopter oh
17:36 cj diakopter: I'm a grad student now, so I think I qualify to apply ;)
17:36 diakopter ah
17:38 cj diakopter: you've put more time and energy into evaluating the dlr than I have... is it worth considering?
17:38 diakopter cj: I went back and forth on it for a year, and I'm currently at the "yes" point
17:38 diakopter tho I'm working on my own micro-dlr
17:38 diakopter based on runsharp
17:40 * cj looks up runsharp
17:40 pyrimidine left #perl6
17:41 pyrimidine joined #perl6
17:43 cj looks pretty flexible
17:43 diakopter I added named locals and named labels/gotos
17:45 ignacio_ joined #perl6
17:45 colomon joined #perl6
17:47 cj hmmm... should I propose the project to MS or TPF?  MS has offices and would probably have office space for me to work from.  But TPF is more involved in "teh community"
17:48 diakopter how would you propose the project to ms?
17:48 cj but the latter might be an argument for MS, since it would be nice to drag them kicking and screaming into participation ;)
17:48 diakopter through gsoc?
17:50 pmurias Microsoft takes part in gsoc?
17:50 cj diakopter: yeah... "Mentoring Organizations" need to apply to GSoC to list proposed "ideas"
17:50 diakopter oh; heh
17:50 cj pmurias: I could probably convince them to
17:50 * diakopter coughs
17:51 * diakopter IMs jschem
17:51 cj it would probably be CodePlex and not MS directly
17:51 cj diakopter: yeah, jimmy would be a good contact
17:51 cj diakopter: especially since I've worked with him on packing the dlr for debuntu
17:52 * cj has the distinction of having packaged for Debian the first piece of software with official upstream support from MS
17:54 diakopter and the rue of some portion of ubuntu community :P
17:55 cj diakopter: haters :)
17:56 pmurias cj: what do you intend your project to be?
17:57 cj pmurias: an implementation of perl6 using the dlr
17:57 pyrimidine rakudo: @*INC.push('./foo'); @*INC.join(':').say;
17:57 p6eval rakudo 6867a5: OUTPUT«/home/p6eval/.perl6/lib:/home/p6eval//p2/lib/parrot/2.1.0-devel/languages/perl6/lib:lib:.:./foo␤»
17:57 pmurias cj: that seems to be loads of work
17:57 diakopter cj: the biggest hump is the first one - the parser
17:57 cj pmurias: get a few tests to pass, put a repo up on github or something where development can be coordinated
17:58 pyrimidine rakudo:  BEGIN{ @*INC.push('./foo');}; @*INC.join(':').say;
17:58 p6eval rakudo 6867a5: OUTPUT«Confused at line 11, near "BEGIN{ @*I"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
17:58 cj I guess diakopter already started a github repo
17:58 diakopter cj: yes, you can use it
17:58 diakopter I'm using svn
17:58 diakopter on googlecode
17:58 pyrimidine rakudo: BEGIN{ @*INC.push('./foo'); }; @*INC.join(':').say;
17:58 p6eval rakudo 6867a5: OUTPUT«Confused at line 11, near "BEGIN{ @*I"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
17:59 diakopter rakudo: BEGIN { @*INC.push('./foo'); }; @*INC.join(':').say;
17:59 p6eval rakudo 6867a5: OUTPUT«/home/p6eval/.perl6/lib:/home/p6eval//p2/lib/parrot/2.1.0-devel/languages/perl6/lib:lib:.␤»
18:00 pyrimidine rakudo: BEGIN{ @*INC.push('./foo');}; @*INC.join(':').say;
18:00 p6eval rakudo 6867a5: OUTPUT«Confused at line 11, near "BEGIN{ @*I"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
18:00 pyrimidine ahh...
18:00 pyrimidine rakudo:  BEGIN { @*INC.push('./foo');}; @*INC.join(':').say;
18:00 p6eval rakudo 6867a5: OUTPUT«/home/p6eval/.perl6/lib:/home/p6eval//p2/lib/parrot/2.1.0-devel/languages/perl6/lib:lib:.␤»
18:01 pyrimidine BEGIN block isn't working yet, I'm guessing
18:03 kcwu joined #perl6
18:04 pmurias cj: it could make sense to do it with CodePlex with a DLR knowledgable mentor
18:04 ignacio_ joined #perl6
18:05 diakopter cj: since it would take years to get a working grammar engine, I recommend using Larry's standard parser in Perl 6 (transliterated to Perl 5) as the front-end
18:05 diakopter and of course not allowing dynamic grammars/slangs
18:07 colomon joined #perl6
18:07 TimToady despite the fact that Larry's standard parser does allow them? :)
18:08 TimToady you just don't want to implement BEGIN...  :)
18:08 diakopter yes, but not in user input
18:08 diakopter oh wait
18:08 diakopter yes, BEGIN; sry
18:08 diakopter and eval STRING
18:08 diakopter and such
18:08 pmurias eval string is a different beast
18:11 pmurias cj: if you want to add a .NET backend to mildew i could help with that
18:12 jaffa4 what is mildew?
18:13 pmurias a Perl 6 to js or C+smop compiler
18:14 jaffa4 smop?
18:14 pmurias http://www.perlfoundation.org/perl6/index.cgi?smop
18:17 stephenlb joined #perl6
18:20 jaffa4 and where is the project?
18:22 masak http://svn.pugscode.org/pugs/v6/mildew/
18:22 masak http://svn.pugscode.org/pugs/v6/smop/
18:23 colomon > (1, { 1 / ((1 / $_) + 1) } ... *).batch(10).perl.say
18:23 colomon (1, 1/2, 1/3, 1/4, 1/5, 1/6, 1/7, 1/8, 1/9, 1/10)
18:23 colomon Just wanted to share.  ;)
18:24 masak colomon++
18:24 colomon I really dig the new series syntax.  Just hope we can get it all actually implemented.
18:25 masak rakudo: my Hash $x; $x[1] # by diakopterbot
18:25 p6eval rakudo 6867a5: OUTPUT«No applicable candidates found to dispatch to for '_block12568'␤current instr.: 'perl6;Perl6Role;!select' pc 9770 (src/gen/RoleToClassApplier.pir:574)␤»
18:25 * masak submits rakudobug
18:25 masak alpha: my Hash $x; $x[1]
18:25 p6eval alpha 30e0ed:  ( no output )
18:25 masak o.O
18:26 pugssvn r29918 | colomon++ | [t/spec] Start of simple test file for arity-1 series.
18:26 masak locally, alpha says "Could not build C3 linearization: ambiguous hierarchy". I recognize that error. it's in some other bug ticket.
18:26 masak but this is a new issue, so new ticket it is.
18:27 pyrimidine masak: while digging through RT loking for BEGINS bugs, noticed rt#71096 appears to be fixed
18:27 masak pyrimidine: feel free to close it, then.
18:27 pyrimidine s/loking/looking/
18:27 pyrimidine ok
18:28 masak pyrimidine++
18:28 pyrimidine rakudo: my $a; BEGIN { $a = 42 };
18:28 p6eval rakudo 6867a5:  ( no output )
18:28 snarkyboojum joined #perl6
18:29 pyrimidine note that doesn't mean BEGIN works atm
18:29 pyrimidine rakudo: my $a; BEGIN { $a = 42 }; say $a;
18:29 p6eval rakudo 6867a5: OUTPUT«Any()␤»
18:30 masak rakudo: rakudo: my Hash $x
18:30 p6eval rakudo 6867a5: OUTPUT«Confused at line 11, near "rakudo: my"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
18:30 masak erm.
18:30 masak rakudo: my Hash $x
18:30 p6eval rakudo 6867a5:  ( no output )
18:30 masak rakudo: my %x; %x[1]
18:30 p6eval rakudo 6867a5: OUTPUT«Method 'postcircumfix:<[ ]>' not found for invocant of class ''␤current instr.: '!postcircumfix:<[ ]>' pc 10518 (src/builtins/Role.pir:45)␤»
18:31 snarkyboojum is there going to be vid of any of the copenhagen hackathon talks? :)
18:31 snarkyboojum the talks look very juicy
18:32 pyrimidine masak: getting a 'permission denied' on closing that ticket (#71096). :-(
18:32 masak snarkyboojum: haven't heard anything about vids. wouldn't rule it out, though. ask jonasbn++
18:32 colomon snarkyboojum: what's the link for the talk descriptions?
18:32 * snarkyboojum thinks there should be a crew of dedicated video guys doing vid of Perl 6 talks as a matter of course :)
18:33 masak pyrimidine: I'll do it. we should give you an account.
18:33 snarkyboojum masak: cheers
18:33 masak std: my Any %.x=3,%.x;
18:33 p6eval std 29917: OUTPUT«ok 00:01 109m␤»
18:33 masak rakudo: my Any %.x=3,%.x;
18:33 snarkyboojum colomon: I'm looking at http://www.opensourcedays.org/2010/node/267
18:33 p6eval rakudo 6867a5: OUTPUT«Lexical 'self' not found␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
18:33 * masak submits LTA rakudobug
18:34 snarkyboojum under the Perl column on the right :)
18:34 colomon snarkyboojum++ # and that does look like a sweet schedule.
18:34 masak colomon: http://www.opensourcedays.org/2010/node/267
18:34 masak oh. snarkyboojum++ beat me to it :)
18:34 * snarkyboojum curses being in the southern hemisphere (at least momentarily)
18:34 snarkyboojum :)
18:34 colomon masak++ # even if he is slow.  ;)
18:34 masak the "Perl" is in fact _only_ Perl 6 :)
18:35 colomon I loved that.
18:35 snarkyboojum hehe.. I like that
18:35 colomon rakudo: say Block ~~ Code
18:35 p6eval rakudo 6867a5: OUTPUT«1␤»
18:35 masak rakudo: Block()
18:35 p6eval rakudo 6867a5: OUTPUT«Could not find non-existent sub &Block␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
18:35 pyrimidine masak: np, let me know re: account
18:35 masak rakudo: Block.()
18:35 p6eval rakudo 6867a5: OUTPUT«Null PMC access in invoke()␤current instr.: 'perl6;Code;callwith' pc 12703 (src/builtins/Str.pir:23)␤»
18:35 * masak submits rakudobug
18:36 masak rakudo: Code.()
18:36 p6eval rakudo 6867a5: OUTPUT«Null PMC access in invoke()␤current instr.: 'perl6;Code;callwith' pc 12703 (src/builtins/Str.pir:23)␤»
18:36 masak pyrimidine: I actually don't really know who to ask. I forgot.
18:36 masak pyrimidine: moritz_++ would know.
18:37 cj snarkyboojum: hi!  ltns ;)
18:38 ignacio_ joined #perl6
18:39 masak rakudo: Sub.()
18:39 p6eval rakudo 6867a5: OUTPUT«Null PMC access in invoke()␤current instr.: 'perl6;Code;callwith' pc 12703 (src/builtins/Str.pir:23)␤»
18:39 masak rakudo: Method.()
18:39 p6eval rakudo 6867a5: OUTPUT«Null PMC access in invoke()␤current instr.: 'perl6;Code;callwith' pc 12703 (src/builtins/Str.pir:23)␤»
18:39 masak rakudo: Class.()
18:39 p6eval rakudo 6867a5: OUTPUT«Could not find non-existent sub &Class␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
18:39 masak oh, right.
18:39 masak rakudo: Any.()
18:39 p6eval rakudo 6867a5: OUTPUT«invoke() not implemented in class 'Any'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
18:40 masak rakudo: Multi.()
18:40 p6eval rakudo 6867a5: OUTPUT«Null PMC access in invoke()␤current instr.: 'perl6;Code;callwith' pc 12703 (src/builtins/Str.pir:23)␤»
18:40 masak rakudo: Routine.()
18:40 p6eval rakudo 6867a5: OUTPUT«Null PMC access in invoke()␤current instr.: 'perl6;Code;callwith' pc 12703 (src/builtins/Str.pir:23)␤»
18:40 masak rakudo: Callable.()
18:40 p6eval rakudo 6867a5: OUTPUT«invoke() not implemented in class 'Perl6Role'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
18:40 am0c joined #perl6
18:42 masak rakudo: say 0.00000000000000000000 # also by diakopterbot
18:42 p6eval rakudo 6867a5: OUTPUT«No applicable candidates found to dispatch to for 'infix:<div>'␤current instr.: 'perl6;Rat;new' pc 317386 (src/gen/core.pir:37507)␤»
18:42 masak rakudo: say 0.0000000000000000000
18:42 p6eval rakudo 6867a5: OUTPUT«Nominal type check failed for parameter '$b'; expected Int but got Num instead␤current instr.: 'perl6;Rat;gcd' pc 316806 (src/gen/core.pir:37282)␤»
18:42 * masak submits rakudobug
18:43 masak this one is very close to getting a [WEIRD] label, but I think it might actually occur in someone's code, so...
18:45 jaffa4 rakudo is the most complete implementtation now
18:45 jaffa4 , is it not?
18:45 masak I would say so, yes. but Pugs still has some things Rakudo doesn't, I believe.
18:46 masak but in terms of raw test-passing numbers, sure.
18:46 jaffa4 I could not compile pugs
18:46 jaffa4 pugs is dead.
18:46 jaffa4 If I know it correctly
18:46 masak it's hibernating.
18:47 jaffa4 vapourware?
18:47 masak the attention it gets is in the form of updates to the newest GHC compiler, IIUC.
18:47 masak jaffa4: no, vapourware is a product with no releases and a lot of hype.
18:47 masak Pugs had a number of releases in its time.
18:47 diakopter jaffa4: pugs is obtained from hackage
18:47 pyrimidine Duke Nukem Forever
18:47 diakopter not from pugscode
18:48 diakopter it's still maintained
18:48 pyrimidine diakopter: by audreyt?
18:50 masak rakudo: say 0xFFFFFFFFFFFFFFFF # diakopterbot
18:50 p6eval rakudo 6867a5: OUTPUT«-1␤»
18:50 jaffa4 ok
18:50 * masak submits rakudobug
18:51 masak rakudo: say 0o7777777777777777777777
18:51 p6eval rakudo 6867a5: OUTPUT«-1␤»
18:51 diakopter pyrimidine: yes
18:51 pyrimidine ok, nice to know!
18:51 diakopter jaffa4: http://hackage.haskell.org/package/Pugs  last release 2009-12-16
18:52 diakopter for GHC 6.10
18:53 jonasbn joined #perl6
18:54 jonasbn good evening ppl
18:54 diakopter it's broken up into a couple others: http://hackage.haskell.org/package/pugs-DrIFT http://hackage.haskell.org/package/pugs-compat http://hackage.haskell.org/package/MetaObject http://hackage.haskell.org/package/HsParrot
18:54 masak jonasbn: \o
18:54 diakopter and http://hackage.haskell.org/package/HsSyck
18:54 masak I'm hungry now. time to care about nom.
19:02 aesop left #perl6
19:08 meppl joined #perl6
19:10 xomas joined #perl6
19:10 xomas joined #perl6
19:11 colomon joined #perl6
19:13 kcwu joined #perl6
19:16 pugssvn r29919 | colomon++ | [t/spec] Arity-0 test added.
19:22 kcwu joined #perl6
19:23 cotto_work joined #perl6
19:23 Chillance joined #perl6
19:24 ignacio_ joined #perl6
19:36 aesop joined #perl6
19:47 cotto_work joined #perl6
20:09 bacek joined #perl6
20:11 cotto_work joined #perl6
20:12 kst joined #perl6
20:17 lichtkind joined #perl6
20:19 cotto_w0rk joined #perl6
20:21 lichtkind hello p6 people i have a very broad question, what events where important to perl 6 beside the obvious 4 (announcement, birth of pugs, birth of Rakudo and rakudo star)
20:22 Su-Shee monthly release date since xy.
20:22 TimToady um, birth of parrot?
20:22 TimToady smop?
20:23 lichtkind TimToady: when was that?
20:23 lichtkind Su-Shee: good idea
20:23 TimToady you could get that from svn logs, I expect
20:23 lichtkind TimToady: that would be great i write it into wiki so nobody has to ask this again
20:23 TimToady or search for smop in the irc logs
20:24 lichtkind in fact im currently writing the perl 6 timeline
20:24 bkeeler Don't forget the apocalypses, and before that the RFC phase
20:26 TimToady and the part where I was sitting there in complete paralysis for six months after the RFCs came out...
20:26 Su-Shee call it a "phase of intense meditation".
20:27 bkeeler For giggles you could even dig up Chip's Topaz effort
20:27 b_jonas joined #perl6
20:29 TimToady then there was 2003 wherein I had stomach cancer, almost bled to death after the Perl Whirl in Hawaii, avoided becoming uninsurable by a mere two days, had two stomach surgeries after OSCON.
20:29 TimToady and was basically out of it for the next year, mentally speaking.
20:30 TimToady (and was unemployed for four years)
20:31 lichtkind bkeeler: its already mentioned in historic implementations page
20:32 bkeeler Topaz?  Yeah, it was kinda neat in its way.  He did things with C++ templates that I'd never seen at any rate
20:32 lichtkind TimToady: want we really put that into the timeline ... (larry had personal struggles)
20:33 TimToady r15172 | lwall | 2007-02-03 16:06:55 -0800 (Sat, 03 Feb 2007) | 2 lines
20:33 TimToady First snapshot of proposed standard Perl 6 grammar in standard Perl 6.
20:33 Su-Shee why not? open source developers aren't machines churning out projects on a deadline.
20:34 TimToady lichtkind: in my culture, vulnerability is considered a strength, not a weakness.
20:34 cotto_work joined #perl6
20:34 lichtkind TimToady: in my too :)
20:34 lichtkind TimToady: i just ask before it goes online
20:35 TimToady Perhaps it's a bit selfish of me to want people to know I wasn't slacking off *all* the time...  :)
20:35 lichtkind TimToady: that one is great thanks
20:36 lichtkind i mean the STD.pm info
20:39 lichtkind bkeeler: do you know when first apocalypses came out?
20:40 TimToady it says there right in the document, 2 April 2001
20:42 Tene Author: ask <ask@d31e2699-5ff4-0310-a27c-f18f2fbe73fe>
20:42 Tene Date:   Wed Aug 29 11:36:49 2001 +0000
20:42 Tene first readme.
20:42 Tene first commit in the parrot repo
20:43 bkeeler pmichaud: around perchance?
20:43 lichtkind TimToady: thanks excuse my i was still busy typing
20:43 astrojp left #perl6
20:43 Tene in my culture slacking off is occasionally a virtue.
20:44 lichtkind Tene: :)
20:44 rgrau joined #perl6
20:45 snarkyboojum joined #perl6
20:46 payload joined #perl6
20:46 pyrimidine Is there anything GSoC-related going on with perl6 this year?
20:47 pyrimidine I think proposals are due next week...
20:47 cj pyrimidine: I'm thinking about it
20:47 pyrimidine what organisation?
20:47 cj pyrimidine: I just sent mail to TPF, CodePlex.org & MS about potentially doing perl6 on the dlr
20:48 pyrimidine okay, that makes sense
20:49 alester joined #perl6
20:49 cj insomuch as allison is TPF, Sam is CodePlex.org and Jimmy is MS, anyway
20:49 cj s/al/Al/
20:50 bluescreen joined #perl6
20:55 lichtkind thanks hackers : http://www.perlfoundation.org/perl6/index.cgi?timeline
20:55 lichtkind thats just a start
21:00 Exodist joined #perl6
21:02 root___ joined #perl6
21:14 cotto_w0rk joined #perl6
21:23 colomon what is the dlr? (he said, backlogging)
21:23 cj colomon: the dynamic language runtime ;)
21:23 arnsholt Dynamic Language Runtime (or somesuch)
21:23 cj http://wp.colliertech.org/cj/?p=175
21:23 arnsholt The VM used by .Net
21:24 cj arnsholt: almost ;)
21:24 cj the CLR is the VM used by .NET
21:24 colomon but it's a funky interface to the CLR?  sweet!
21:24 cj the DLR is infrastructure on top of that to ease implementation of dynamic languages on the CLR
21:25 colomon Having perl 6 running on the CLR would be a huge plus for my $work...
21:25 stephenlb joined #perl6
21:26 colomon cj++, arnsholt++
21:27 bkeeler Agreed, perl6 on the DLR would be teh w00t!
21:28 eternaleye rakudo: sub fisher-yates( @input ) { my $output; while +@input { my $rnd = ( ^+@input ).pick; @input.=rotate( $rnd ); @output.push( @input.shift ); @input.=rotate( -$rnd ); }; return( @output ); }; fisher-yates( ^10 ); #Is this how .pick( * ) is implemented under the hood?
21:28 p6eval rakudo 6867a5: OUTPUT«Symbol '@output' not predeclared in fisher-yates␤current instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (compilers/pct/src/PCT/HLLCompiler.pir:101)␤»
21:29 eternaleye Grr, sigil mistype
21:29 eternaleye rakudo: sub fisher-yates( @input ) { my @output; while +@input { my $rnd = ( ^+@input ).pick; @input.=rotate( $rnd ); @output.push( @input.shift ); @input.=rotate( -$rnd ); }; return( @output ); }; fisher-yates( ^10 ); #Is this how .pick( * ) is implemented under the hood?
21:29 p6eval rakudo 6867a5: OUTPUT«Nominal type check failed for parameter '@input'; expected Positional but got Range instead␤current instr.: 'fisher-yates' pc 191 (EVAL_1:78)␤»
21:29 eternaleye alpha: sub fisher-yates( @input ) { my @output; while +@input { my $rnd = ( ^+@input ).pick; @input.=rotate( $rnd ); @output.push( @input.shift ); @input.=rotate( -$rnd ); }; return( @output ); }; fisher-yates( ^10 ); #Is this how .pick( * ) is implemented under the hood?
21:29 p6eval alpha 30e0ed:  ( no output )
21:29 eternaleye alpha: sub fisher-yates( @input ) { my @output; while +@input { my $rnd = ( ^+@input ).pick; @input.=rotate( $rnd ); @output.push( @input.shift ); @input.=rotate( -$rnd ); }; return( @output ); }; say fisher-yates( ^10 ); #Is this how .pick( * ) is implemented under the hood?
21:29 p6eval alpha 30e0ed: OUTPUT«1605974328␤»
21:30 cj TimToady: looks like Mono's got continuations now: http://www.mono-project.com/Continuations
21:30 eternaleye alpha: sub fisher-yates( @input ) { my @output; while +@input { my $rnd = ( ^+@input ).pick; @input.=rotate( $rnd ); @output.push( @input.shift ); @input.=rotate( -$rnd ); }; return( @output ); }; say ~fisher-yates( ^10 ); #Is this how .pick( * ) is implemented under the hood?
21:30 p6eval alpha 30e0ed: OUTPUT«2 3 4 6 5 7 9 1 8 0␤»
21:31 eternaleye Well, without the infinite recursion
21:31 colomon eternaleye: no, I'm pretty sure it's not how pick is implemented under the hood.
21:31 lichtkind mberends: haj
21:31 eternaleye colomon: Not .pick, .pick( * )
21:31 eternaleye Different algorithms
21:31 pmichaud bkeeler: around, for a very short bit
21:31 colomon well, to be more precise, I know that's not how it works in alpha, and ....
21:32 colomon no, exact same algorithms
21:32 eternaleye Fisher-yates is the generally accepted random-ordering of a set
21:32 cj however, if I want to woo MS into mentoring the project, I probably shouldn't use features that aren't available on their platform ;)
21:32 bkeeler pmichaud: heyas.  I've got that grammar patch pretty much ready to go I think
21:32 eternaleye O( N ) as opposed to O( NlogN ) for tagging and sorting
21:32 bkeeler pmichaud: Think there's time to get it in before the conference?
21:32 pmichaud bkeeler: cool -- send it to me in email, or in an rt ticket?  I'll review it (but probably not before tomorrow)
21:33 pmichaud bkeeler: sure, I think it's very likely to go in before the conference
21:33 colomon eternaleye: I ported alpha's pick to master, so I probably count as an authority on the subject.  :)
21:33 bkeeler pmichaud: will do.  That's great
21:33 eternaleye Okay, cool
21:33 riffraff joined #perl6
21:33 colomon I've been meaning to switch pick to using something more like f-y, but haven't gotten around to it.
21:34 colomon not least because I'm not sure we've got enough pick tests to verify that the new version actually works.  :(
21:34 eternaleye What algorithm does it use? Iterate and select maintaining an already-picked list, or tag-and-sort?
21:34 colomon it actually copies the source list and deletes elements off it as it is picked.
21:34 eternaleye ( just came from reading http://www.robweir.com/blog/2010/02/microsoft-random-browser-ballot.html )
21:35 eternaleye Ah, .delete($num) aka :delete
21:35 eternaleye Still fisher yates, just a slightly different implementation
21:35 eternaleye http://en.wikipedia.org/wiki/Fisher–Yates_shuffle
21:35 colomon but swapping must be drastically more effiicient
21:36 lichtkind masak for the name GGE :)
21:36 colomon ours is O(N^2), I fear, unless delete's doing something magical I don't know about.
21:36 lichtkind masak++
21:36 eternaleye No idea; it depends on the internals of the picked class. If rotating is more efficient than an inplace delete (ring-buffer style), then my style might be faster. For a linked list, master's way would be faster
21:37 colomon good point, I guess I don't actually know how array is implemented internally.  I've always assumed it is a flat array rather than a linked list.
21:38 eternaleye For a static array, it would be easier to set deleted ones to a flag value and just skip over those and pretend they aren't there
21:38 cotto_work joined #perl6
21:38 colomon eternaleye: oooo, I'm pretty sure that is much harder to get correct.
21:39 colomon afk for a bit....
21:39 eternaleye colomon: Maybe an ImplementationMu, that should never be seen by the user and implementations consider a 'nothing to see here, move along' sign?
21:41 eternaleye OTOH, PMCNULL might be considered as filling that roll
21:41 eternaleye *role
21:45 elmex joined #perl6
21:51 pyrimidine left #perl6
22:01 bacek joined #perl6
22:22 riffraff joined #perl6
22:36 pmurias cj: does p5 have .NET interop?
22:36 pmurias cj: that is, is it possible to use .NET libraries from p5?
22:40 jaffa4 activestate have such options
22:40 jaffa4 it is commerical
22:40 jaffa4 pmurias: activestate
22:43 cj pmurias: nope, not unless you count libmono
22:44 pmurias cj: C# has an FFI?
22:45 cj pmurias: I don't think so... it goes the other way, though:
22:45 cj The term foreign function interface is generally not used to describe multi-lingual runtimes such as the Microsoft Common Language Runtime, where a common "substrate" is provided which enables any CLR-compliant language to use services defined in any other. (However, in this case the CLR does include an FFI, P/Invoke, to call outside the runtime.)
22:46 cj (perl is not a CLR-compliant language :) )
22:46 cj using libmono from XS to spin up a VM will get you in the door, though
22:47 cj http://www.mono-project.com/Embedding_Mono
22:53 astrojp joined #perl6
23:02 rv2733 joined #perl6
23:03 lichtkind further hints for http://www.perlfoundation.org/perl6/index.cgi?timeline ?
23:15 pmurias a variable can't be rebound from within a subroutine?
23:20 xabbu42 joined #perl6
23:20 colomon http://justrakudoit.wordpress.com/2010/03/02/simple-series/
23:28 wknight8111 joined #perl6
23:31 [particle]1 joined #perl6
23:32 diakopter rakudo: 5.=()
23:32 p6eval rakudo 6867a5: OUTPUT«src/oo.c:911: failed assertion 'method_name'␤Backtrace - Obtained 14 stack frames (max trace depth is 32).␤/home/p6eval//p1/lib/libparrot.so.2.1.0 [0x2b17fc69fd03]␤/home/p6eval//p1/lib/libparrot.so.2.1.0(Parrot_confess+0x87)
23:32 p6eval ..[0x2b17fc69fe37]␤/home/p6eval//p1/lib/libparrot.so.2.1.0(…
23:32 diakopter rakudo: 5.+()
23:32 p6eval rakudo 6867a5: OUTPUT«src/oo.c:911: failed assertion 'method_name'␤Backtrace - Obtained 14 stack frames (max trace depth is 32).␤/home/p6eval//p1/lib/libparrot.so.2.1.0 [0x2b2d6a0ecd03]␤/home/p6eval//p1/lib/libparrot.so.2.1.0(Parrot_confess+0x87)
23:32 p6eval ..[0x2b2d6a0ece37]␤/home/p6eval//p1/lib/libparrot.so.2.1.0(…
23:32 diakopter oh, hm
23:32 diakopter there was another...
23:32 diakopter oh yeah
23:32 diakopter rakudo: .=()
23:32 p6eval rakudo 6867a5: OUTPUT«src/hash.c:144: failed assertion 's'␤Backtrace - Obtained 17 stack frames (max trace depth is 32).␤/home/p6eval//p1/lib/libparrot.so.2.1.0 [0x2b1bc452ad03]␤/home/p6eval//p1/lib/libparrot.so.2.1.0(Parrot_confess+0x87) [0x2b1bc452ae37]␤/home/p6eval//p1/lib/libparrot.so.2.1.0
23:32 p6eval ..[0x2b1bc…
23:41 wknight8111 rakudo: 4.+()
23:41 p6eval rakudo 6867a5: OUTPUT«src/oo.c:911: failed assertion 'method_name'␤Backtrace - Obtained 14 stack frames (max trace depth is 32).␤/home/p6eval//p1/lib/libparrot.so.2.1.0 [0x2b1691b3cd03]␤/home/p6eval//p1/lib/libparrot.so.2.1.0(Parrot_confess+0x87)
23:41 p6eval ..[0x2b1691b3ce37]␤/home/p6eval//p1/lib/libparrot.so.2.1.0(…
23:41 wknight8111 oi
23:42 wknight8111 4.=()
23:42 wknight8111 rakudo: 4.=()
23:42 p6eval rakudo 6867a5: OUTPUT«src/oo.c:911: failed assertion 'method_name'␤Backtrace - Obtained 14 stack frames (max trace depth is 32).␤/home/p6eval//p1/lib/libparrot.so.2.1.0 [0x2b4a4a9c3d03]␤/home/p6eval//p1/lib/libparrot.so.2.1.0(Parrot_confess+0x87)
23:42 p6eval ..[0x2b4a4a9c3e37]␤/home/p6eval//p1/lib/libparrot.so.2.1.0(…
23:50 mberends joined #perl6
23:53 diakopter wknight8111: sorry, the other one was .=()
23:53 diakopter hash.c
23:55 dalek rakudo: 9921175 | jonathan++ |  (3 files):
23:55 dalek rakudo: Start to tease apart abstract roles (the name for the whole set of possible parameterizations) and concrete roles (a particular variant) in the type system, and tweak infix:<does> to take advantage of it. Probably more to come on this, but it's a start.
23:55 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/9921175cc4b7a7560fe075bf198633743b6fe22c
23:55 dalek rakudo: 32a9461 | jonathan++ | src/core/traits.pm:
23:55 dalek rakudo: Start to put back of and returns traits a bit more. We don't enforce return type constraints yet, however.
23:55 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/32a94612620d920d6bcdb1d6f7fd1a2e364ebbb8

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

Perl 6 | Reference Documentation | Rakudo