»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
diakopter oh wait... 00:03
speaking of curry, nom beckoneth 00:05
00:16 bbkr1 joined 00:19 Sarten-X left, maja_ joined, kshannon_ joined, frettled_ joined, jnthn_ joined, stepnem_ joined 00:20 itz_ joined, kthakore_ joined, avarab joined 00:22 stepnem left, bbkr left, kshannon left, maja left, buubot_backup left, frettled left, takesako left, jnthn left, itz left, p6eval left, avar left, stepnem_ is now known as stepnem 00:24 p6eval joined, ChanServ sets mode: +v p6eval 00:25 takesako joined 00:28 Holy_Cow joined, Holy_Cow left 00:29 Holy_Cow joined 00:30 jevin left 00:31 jevin joined
dalek kudo/nom: b0d942e | Coke++ | t/spectest.data:
track failure mode
00:33
00:34 Holy_Cow left, Holy_Cow joined
jlaire .u ł 00:37
phenny U+0142 LATIN SMALL LETTER L WITH STROKE (ł)
00:37 buubot_backup joined, f00li5h joined
jlaire .u † 00:40
phenny U+2020 DAGGER (†)
00:44 Sarten-X joined 00:45 dayangkun joined 00:46 fbass joined 00:47 uasi joined
fbass where can I fetch official perl6 git repositories? 00:54
00:55 rnddim is now known as lue 01:03 nightlord joined 01:04 Helios left 01:05 Helios joined 01:09 fbass left
[Coke] "which one" ? 01:11
are you looking for the spec, or one of the implementations?
Can't hurt to start at perl6.org/
here's a pointer to the latest rakudo: rakudo.org/how-to-get-rakudo-nom/ 01:12
and niecza is at: github.com/sorear/niecza
01:15 tokuhirom left 01:27 uasi left 01:30 uasi joined, soh_cah_toa joined 01:35 Helios left 01:36 Helios joined
soh_cah_toa nom: goto FOO; say "a'; FOO: say 'b'; 01:39
p6eval nom: OUTPUT«===SORRY!===␤Confused at line 1, near "say \"a'; F"␤»
soh_cah_toa nom: goto FOO; say 'a'; FOO: say 'b';
p6eval nom: OUTPUT«===SORRY!===␤Confused at line 1, near "FOO: say '"␤» 01:40
soh_cah_toa does 'goto' really not work on 2011.07 or am i not doing something right?
diakopter last I knew, goto/labels weren't implemented 01:41
soh_cah_toa agh
diakopter niecza: goto FOO; say 'a'; FOO: say 'b';
p6eval niecza v8-54-g5b8523c: OUTPUT«===SORRY!===␤␤Illegally post-declared type:␤ 'FOO' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 685 (CORE die @ 2) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1136 (STD P6.comp_unit …
diakopter niecza: goto foo; say 'a'; foo: say 'b';
p6eval niecza v8-54-g5b8523c: OUTPUT«===SORRY!===␤␤Illegally post-declared type:␤ 'foo' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 685 (CORE die @ 2) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1136 (STD P6.comp_unit …
soh_cah_toa somehow i keep running into every unimplemented feature. it's really annoying 01:42
01:43 dayangkun_ joined 01:46 dayangkun left 01:54 whiteknight left
lue is 2011.07 the nom branch? 01:57
soh_cah_toa no, that was the most recent release
i believe nom came afterwards 01:58
lue rakudo: goto FOO; say 'a'; FOO: say 'b'; 02:00
p6eval rakudo a55346: OUTPUT«===SORRY!===␤Confused at line 22, near "FOO: say '"␤»
soh_cah_toa ironically, the only reason i want 'goto' is for a totally hacky work around another unimplemented feature in rakudo: escape sequences in character classes :\ 02:03
also, i can't interpolate an array index in a character class b/c the brackets get confusing
02:04 colomon joined 02:13 jaldhar joined
sorear diakopter: forward gotos require quotes 02:20
benabik niecza: goto "foo"; say 'a'; foo: say 'b';
p6eval niecza v8-54-g5b8523c: OUTPUT«b␤»
benabik sorear++
soh_cah_toa rakudo: goto "FOO"; say 'a'; FOO: say 'b'; 02:21
p6eval rakudo a55346: OUTPUT«===SORRY!===␤Confused at line 22, near "FOO: say '"␤»
soh_cah_toa nom: goto "FOO"; say 'a'; FOO: say 'b';
p6eval nom: OUTPUT«===SORRY!===␤Confused at line 1, near "FOO: say '"␤»
soh_cah_toa wouldn't need stupid goto if i could just interpolate an array index in a character class... :( 02:23
soh_cah_toa huffs and puffs
sorear um, what. 02:29
you can't interpolate anything in character classes, that's not how they work :|
what are you trying to do? 02:30
02:36 s1n left
soh_cah_toa i have an array @foo = <abc def ghi> and i want to check if some scalar contains any of the characters in the first element @foo[0]. however, i can't do `$something ~~ /<[@foo[0]]>/`. actually, i want to do this for @foo[0] and @foo[1] and another scalar string all in one character class 02:38
so like $something ~~ /<[$value @foo[0] @foo[1]]>/ 02:39
except that's illegal obviously
not in p5 though
02:41 beekor left 02:42 odoacre joined 02:44 ponbiki left
soh_cah_toa not sure why this would be illegal in p6. i can do what i want just fine in p5 :\ 02:47
lue nom: my @a = <abc def ghi>; say [|] @a; # I would assume this is the expected result, but just making sure 02:48
p6eval nom: OUTPUT«any(any("abc", "def"), "ghi")␤»
soh_cah_toa well, i want it to match *any* of the characters in the string (in one of the array elements). not the entire string itself 02:50
02:51 s1n joined
soh_cah_toa except it has to be any of the characters in $value OR any of the characters in @foo[0] OR any of the characters in @foo[1]. thus, a character class should perform exactly that task 02:53
02:54 nightlord left
lue nom: my $a = 'z'; my @b = <abc def ghi>; @b = @b.join('').comb; say "i" ~~ ($a | [|] @b); 02:59
p6eval nom: OUTPUT«Bool::True␤»
lue Not pretty, but perhaps it'll do? [Unless you *need* to use a regex, that is]
afk
soh_cah_toa i think i get what you're doing but $a should be a string like 'abc' and see if any of them are a match 03:00
what does .comb() split on by default? <alpha>? 03:02
03:10 xinming left 03:12 xinming joined
soh_cah_toa lue: agh, so close. doesn't work when $a is longer than one character which is what i need 03:12
lue nom: say "L337 teχtors!".comb.perl
p6eval nom: OUTPUT«("L", "3", "3", "7", " ", "t", "e", "χ", "t", "o", "r", "s", "!").list␤»
lue nom: my $a = 'xyz'; $a = $a.comb; my @b = <abc def ghi>; @b = @b.join('').comb; say "y" ~~ ($a | [|] @b); 03:13
p6eval nom: OUTPUT«Bool::False␤»
soh_cah_toa oh yeah, looks like if i make it $a.comb in the match it works
lue nom: my $a = 'xyz'; my @b = <abc def ghi>; @b = @b.join('').comb; say "y" ~~ ([|] $a.comb | [|] @b);
p6eval nom: OUTPUT«Bool::True␤»
soh_cah_toa lue: you
lue: rock
lue++ 03:14
03:14 donri left
soh_cah_toa discovers the ultimate power of reductions and .comb() 03:15
03:17 Sarten-X left
uasi maybe @b = @b>>.comb; ? 03:17
soh_cah_toa that code may be incredibly cryptic but it's also incredibly awesome
03:19 JimmyZ_ joined 03:27 Su-Shee left
abercrombie Hi, could anyone tell me the syntax that make an assignment to a Buf obj? i.e. my Buf $a=? 03:28
03:28 Su-Shee joined 03:29 ponbiki joined 03:32 ponbiki left
lue rakudo: my $a = Buf.new([1,2,3]); say $a.perl; 03:34
p6eval rakudo a55346: OUTPUT«Buf.new(1 2 3)␤»
lue [last I recall, you can't do my Buf $a; ] 03:35
benabik nom: my Buf $a
p6eval nom: ( no output )
benabik nom: my Buf $a; say 'alive'
p6eval nom: OUTPUT«alive␤»
benabik nom: say (:16{dead_beef}).perl 03:36
p6eval nom: OUTPUT«===SORRY!===␤Malformed radix number at line 1, near "{dead_beef"␤»
lue nom: say (:16{0xdead_beef}).perl 03:39
p6eval nom: OUTPUT«===SORRY!===␤Malformed radix number at line 1, near "{0xdead_be"␤»
lue nom: say (:16(0xdead_beef)).perl
p6eval nom: OUTPUT«Nominal type check failed for parameter '&call'; expected Callable but got Sub instead␤ in sub AUTOTHREAD at src/gen/CORE.setting:1259␤ in sub unbase at src/gen/CORE.setting:3088␤ in mu <anon> at /tmp/8geCbvTErj:1␤ in mu <anon> at /tmp/8geCbvTErj:1␤␤»
lue nom: say (:16<0xdead_beef>).perl
03:39 Sarten-X joined
p6eval nom: OUTPUT«3735928559␤» 03:39
benabik lue: I think the Blob literal syntax is NYI
03:40 wooden joined 03:43 obr2 joined, obr2 left
abercrombie my $a = Buf.new([1,2,3]); doesn't work for nom? 03:43
JimmyZ_ yeah 03:44
sorear don't use [|] 03:45
the interaction between junctions and &reduce is going to be very fragile
use &any instead
soh_cah_toa well, looks like it still works w/ any() anyway. what do you means it's fragile though? 03:47
03:50 ponbiki joined 03:55 birdwindupbird joined
TimToady nom: my @x = <a b c>; say "cab" ~~ /@x/ 03:57
p6eval nom: OUTPUT«===SORRY!===␤Method 'rxtype' not found for invocant of class 'PAST;Regex'␤»
TimToady rakudo: my @x = <a b c>; say "cab" ~~ /@x/
p6eval rakudo a55346: OUTPUT«␤»
TimToady nom: my @x = <a b c>; say "cab" ~~ /|@x/ 03:58
p6eval nom: OUTPUT«===SORRY!===␤Method 'rxtype' not found for invocant of class 'PAST;Regex'␤»
TimToady arrays in regex are supposed to have "any" semantics too
niecza: my @x = <a b c>; say "cab" ~~ /|@x/ 03:59
p6eval niecza v8-54-g5b8523c: OUTPUT«Match()␤»
TimToady niecza: my @x = <a b c>; say ("cab" ~~ /|@x/).perl
p6eval niecza v8-54-g5b8523c: OUTPUT«Match␤»
TimToady niecza: my @x = <a b c>; say ("cab" ~~ /@x/).perl 04:00
p6eval niecza v8-54-g5b8523c: OUTPUT«Match␤»
TimToady nom: my @x = <a b c>; say "cab" ~~ /<@x>/
p6eval nom: OUTPUT«===SORRY!===␤Method 'rxtype' not found for invocant of class 'PAST;Regex'␤»
TimToady rakudo: my @x = <a b c>; say "cab" ~~ /<@x>/
p6eval rakudo a55346: OUTPUT«c␤»
TimToady that one works 04:01
rakudo: my @x = <a b c>; say "cab" ~~ /<@x>*/
p6eval rakudo a55346: OUTPUT«cab␤»
TimToady rakudo: my @x = <a ab c>; say "cab" ~~ /<@x>*/
p6eval rakudo a55346: OUTPUT«cab␤»
soh_cah_toa odd, i thought the <> was reserved for named regexes? how does it behave w/ an array? 04:02
TimToady ooh, even does ltm
there are many, many things that can go inside <> 04:03
sorear yikes, rakudo is ahead of niecza at something, need to fix 04:04
TimToady soh_cah_toa: see perlcabal.org/syn/S05.html#Extensib...%3C...%3E) 04:05
sorear TimToady: do you think it makes any sense to allow variables in character classes?
I'm on the fence
character classes feel very literal-y to me
04:05 dark_x joined
sorear niecza has a lovely O(log n) implementation of character classes that requires pre-analysis 04:05
TimToady rakudo: my @x = <a ab c>; say "cab" ~~ /<{@x.join('|')}>*/ 04:06
p6eval rakudo a55346: OUTPUT«ca␤»
TimToady hmm, that seems to have foiled the LTM
04:07 satyavvd joined
TimToady rakudo: my @x = <a b c>; say "cab" ~~ /<{ "<[@x]>" }>*/ 04:07
p6eval rakudo a55346: OUTPUT«␤»
TimToady rakudo: my @x = <a b c>; say "cab" ~~ /<{ "<[@x[]]>" }>*/ 04:08
p6eval rakudo a55346: OUTPUT«cab␤»
soh_cah_toa i don't see why it shouldn't. whatever the variable holds would be interpreted as literal characters
TimToady there's another way
soh_cah_toa my $foo = 'abc'; /<[$foo]>/; would be the same as /<[a b c]>/
TimToady I think if there are so many ways to generate an any match already without resorting to eval, we should probably keep the char classes literal 04:10
there's also defining your own character properties 04:11
then it's just <+myprop>
I don't think we need to retreat to P5's confusion of regexes with strings
soh_cah_toa a valid point 04:12
TimToady a lot of this redesign is just gut feelings
but I can come up with lots of rationalizations for my gut feelings :) 04:13
soh_cah_toa :)
TimToady 'course, it's not exactly specced yet how to make your own character properties... 04:14
"a topic of ongoing research" :)
this may fall out of actually implementing Unicode properties natively, though
soh_cah_toa i was just gonna ask that. what's a character property? never heard of that 04:15
TimToady well, something like <alpha> 04:16
or that's supposed to be <:alpha> now, actually
Unicode defines skadillions of character properties
things you get at with \p and \P in p5 04:17
soh_cah_toa oh, i thought <alpha> was just a character class 04:20
TimToady a great deal of Unicode is "just character classes" 04:21
but p5 is still rather far ahead of p6 on Unicode classes 04:22
anyway, S05 is well worth a gander, since regexen are the parts of perl that are most heavily redesigned in p6 04:24
and the whole p6 grammar is basically a set of fancy regexes
soh_cah_toa yeah, i've yet to get through the whole thing. it's the size of an encyclopedia
TimToady you can stop when it starts enumerating all the different capture cases, unless you're interested 04:25
04:26 daniel-s joined
TimToady well, usually listing the differences from p5 makes a shorter document, but in this case, it's probably longer that way :) 04:26
the grammar is a good example to learn from, if you learn from examples, but it won't tell you much about the bits that haven't been implemented yet, which haven't been because the parser doesn't need them yet :) 04:28
soh_cah_toa indeed
TimToady there are things like hard-wired lists of brackets that should be using Unicode properties 04:29
soh_cah_toa well, time to call it a night 04:32
TimToady: thanks a bunch :) 04:33
04:33 soh_cah_toa left 04:47 wolfman2000 left 04:59 abercrombie left 05:07 SHODAN joined 06:02 ponbiki left 06:09 am0c joined 06:13 wtw joined, ponbiki joined 06:14 JimmyZ_ left 06:35 mj41 joined 06:44 ponbiki left 06:45 ponbiki joined 06:49 mj41 left 07:06 dayangkun_ left
lue Hm. I can't seem to find where := and ::= are currently implemented in Rakudo. (according to NOMMAP it could use some fixing, and I'd like to see if I could do it.) 07:07
nevermind, I think I found it (Actions.pm, right?) 07:12
moritz right
sorear try to do it even better than the last time you did it 07:13
moritz sorear: in rakudo I'm now using a trait (is hidden_from_backtrace) to hide certain routines from backtraces (notably &die for now) 07:17
sorear: have you spent any thoughts on how you want to do that in niecza?
sorear moritz: no, but I like that one
moritz sorear: background of the question is that I want to know if you think it's sensible to spec that
sorear moritz: niecza already uses something similar for test failures 07:18
moritz sorear: care to explain a bit more?
sorear it prints something like (callframe(), *.caller ... *).first(!*.hints('$?TRANSPARENT')).line
moritz ah, ok 07:19
sorear the top of Test.pm6 has my constant $?TRANSPARENT = True; so not ok skips all Test lines 07:20
07:23 wk joined 07:24 mj41 joined
moritz sorear: are you OK with speccing the 'hidden_from_backtrace' trait, or do you want rather want to leave it open to the implementation how to achieve it? 07:24
07:25 SHODAN left 07:29 xinming left 07:31 xinming joined
sorear moritz: this is the kind of thing that we can easily emulate later if we change our minds, +1 to speccing 07:35
07:35 im2ee joined
moritz sorear: ok, thanks for your opinion 07:36
07:41 Sarten-X left, wk left
cognominal jnthn, we need a perl 6 talker for osdcfr and the talk submission closes in two days, We are part of a larger event and we can't accept talkers at very short notice. 07:45
dalek ast: f444b83 | lue++ | S03-operators/binding-attributes.t:
Added missing semicolon to line 36 of S03-operators/binding-attributes.t
07:56
eiro cognominal, i think the schedule is overbooked 08:03
08:03 Sarten-X joined 08:07 masak joined
masak morning, #perl6 08:07
felher o/
lue good day sir o/ 08:08
08:08 jnthn_ is now known as jnthn
dalek ecs: a7cfe02 | moritz++ | S32-setting-library/Exception.pod:
[S32] backtraces overhaul

spec hidden_from_backtrace trait, be more verbose on backtrace stringification, and introduce separate BackTraceLine class
08:21
08:29 wamba joined
masak moritz: maybe BackTrace::Line? 08:37
08:38 daxim joined
moritz masak: maybe. But even the 'Line' part isn't quite correct 08:38
pmichaud good morning, #perl6 08:42
lue good morning pmichaud o/
jnthn o/, pmichaud
Hope journey home worked out fine. 08:43
moritz seems like pmichaud's uptime is still synchronized with Europe, at least partially
pmichaud journey was excellent, actually. flights were all early, in fact. 08:44
08:44 dakkar joined, orafu left
jnthn Wow. :) 08:44
08:44 orafu joined
pmichaud I even managed to zoom through immigration+customs in the U.S. -- they opened a whole new section just as I arrived. and since I didn't have any checked baggage, I whizzed past all of the people waiting at baggage claim :) 08:45
so, nice return trip overall
my uptime is completely hosed at the moment
I think I'm closer to far east (japan/china) time than europe time at the moment 08:46
moritz then your flight went into the wrong direction :-)
pmichaud maybe so. :)
I'm just getting ready to head to sleep (for <3 hrs), thought I'd pop in real quick to see what's up :) 08:47
satyavvd ['1 2','3 4']>>.words.perl 08:48
why this is not working ? ['1 2','3 4']>>.words>>.[1] 08:49
pmichaud suggests a "nom: " and a "say"
nom: ['1 2', '3 4']>>words.perl.say
p6eval nom: OUTPUT«===SORRY!===␤Confused at line 1, near "['1 2', '3"␤»
satyavvd nom: say ['1 2','3 4']>>.words.perl
p6eval nom: OUTPUT«(("1", "2").list, ("3", "4").list)␤»
moritz satyavvd: >> recurses into data structures
satyavvd nom: say ['1 2','3 4']>>.words>>.[1] 08:50
p6eval nom: OUTPUT«.[1] out of range for type "1"␤ in method at_pos at src/gen/CORE.setting:913␤ in method postcircumfix:<[ ]> at src/gen/CORE.setting:895␤ in method reify at src/gen/CORE.setting:3596␤ in method reify at src/gen/CORE.setting:3501␤ in method reify at src/gen/CORE.setting:3…
moritz satyavvd: so >>.[1] never does what you want, since it's not called on the inner list, but on each result string
use .map instead
pmichaud nom: ['1 2', '3 4']>>words.[1].say
p6eval nom: OUTPUT«===SORRY!===␤Confused at line 1, near "['1 2', '3"␤»
pmichaud nom: ['1 2', '3 4']>>.words.[1].say
p6eval nom: OUTPUT«2␤»
lue goodnight all o/ 08:51
moritz .u - 08:52
phenny U+002D HYPHEN-MINUS (-)
pmichaud nom: say ['1 2', '3 4'].map: { .words.[1] }
p6eval nom: OUTPUT«2 4␤»
satyavvd ok got it.. Thanks
pmichaud anyway, time for sleep for me 08:54
masak moritz: Backtrace::Element?
pmichaud Element +1 Line -1
jnthn Backtrace::Frame
masak moritz: IMO the 't' in Backtrace should be a small letter.
moritz masak: better, though 'Element' usually frings the 'too general' bell
jnthn nap well, pmichaud
moritz +1 to Backtrace::Frame from me
masak 'Backtrace' is one concept
pmichaud backtrace seems to be a single word in most usages I've found
so Backtrace +1 BackTrace -1
moritz ok 08:55
masak yes, +1 to Backtrace::Frame
very honest and perly.
pmichaud Backtrace::Frame sounds very nice
+2
satyavvd jnthn: I have seen this in your slides : cat data.txt | perl6 -e "say [+] $*IN.lines>>.words>>.[2]"
does it works?
pmichaud satyavvd: might be from an older version of the spec
satyavvd ok 08:56
pmichaud the hyper recursion into Iterables is somewhat recent.
TimToady not that recent
pmichaud well, for >>.method it is, at least in implementation
TimToady is taking an anti-nap :) 08:57
glad pmichaud++ got home safely
pmichaud TimToady: yeah, it's odder to see you here at this time than it is to see me at this time :)
TimToady: likewise (glad you arrived home safely as well)
dalek ecs: d91760b | moritz++ | S32-setting-library/Exception.pod:
[S32] backtrace renames, as suggested by masak++, jnthn++ and pmichaud++
08:58
masak moritz: re Damian's "And why is this entire message written in questions?" -- he was talking about his own message. he was trying to be humourous.
moritz masak: ah :-)
moritz needs more sleep
pmichaud my p6-tuits may be in very limited supply for the next 24-48 hrs, but after that I expect to be around again
jnthn satyavvd: I'm quite sure it worked at the time I wrote the slides. :) 08:59
pmichaud okay, naptime. bbl. 09:01
satyavvd :) 09:04
moritz satyavvd: fwiw I recently stumbled over the same problem
09:04 drbean left 09:07 koban joined, koban left
tadzik good morning 09:09
masak dzień dobry, tadzik 09:11
09:18 coregateFX left, coregateFX joined
masak TimToady++ # the 'rename' command 09:30
dalek kudo/nom: 89e9ef2 | tadzik++ | src/ (2 files):
Make --doc take optional value, defaulting to 'text'
09:32
09:39 JimmyZ joined
masak "In good OO programming, we don’t make class hierarchies in order to satisfy our inner Linnaeus." -- lists.canonical.org/pipermail/krage...00937.html -- via Su-Shee++ 09:41
Su-Shee I liked the "inner Linneus" :) 09:42
sjn Yeah, that was a good one :) 09:44
Su-Shee (and yes, I agree. I hate those examples dearly..) 09:45
moritz Su-Shee: I immediately thought of you when reading that 09:46
09:47 SHODAN joined
moritz LHF: write a README for the perl6/specs repo 09:55
masak the problem with "Car extends Vehicle" and similar examples is that they are rooted in the idea that there is One True Model, namely what you arrive at by thinking about modeling for five seconds. 09:59
moritz and the model depends on what operations you want need to perform 10:04
(which I hate about our current src/classes-and-objects.pod in the book) 10:05
masak add a comment in a TODO file somewhere. 10:06
otherwise we'll forget.
moritz (the Inheritance example, the first one (Task) is fine)
I'll open a github issue
it has Employee, Programmer, Cook, Baker, GeekCook etc. 10:07
10:09 im2ee_ joined
daxim print "a Sheep goes baaaah!\n"; 10:09
10:11 perlhack joined 10:12 im2ee left
moritz github.com/perl6/book/issues/58 10:12
colomon moritz: reading hacker news this morning, are we? (or is it on reddit too?) ;) 10:14
moritz colomon: it was on hacker news yesterday night (in my time zone) already :-)
jnthn is getting a new main dev machine next week o/ 10:15
colomon \o
\o/
jnthn Quad core i7, 16 GB of RAM, etc. :)
dalek ok: 6816148 | moritz++ | src/classes-and-objects.pod:
add a TODO note for the inheritance example
10:16
flussence got a 6-core AMD with 4GB at $dayjob a few weeks ago... (but with what I had before, I'll take anything) 10:17
10:21 satyavvd left 10:25 perlhack left
tadzik hrm, lots of spectest failing 10:26
aah, HoMM VI will have battles on squares, not hexes. What has this world come to! 10:27
masak it makes perfect sense. squares have 8 neighbours, hexes only 6 :P
10:34 Species8472 joined 10:35 dark_x left 10:36 dark_x joined, dual left 10:41 im2ee_ left, im2ee joined 10:43 dual joined 10:45 coregateFX left, avarab is now known as avar
tadzik yeah, next time they'll pick circles. Oh, wait... 10:46
erm, do only I have so many spectest failures? 10:50
10:54 pernatiy left
im2ee Hello, are there any Plug-ins for Eclipse? 10:58
tadzik Nominal type check failed for parameter '&x'; expected Callable but got Sub instead. Wow
im2ee Perl6 plug-ins ofcourse.
tadzik nom: say so Sub ~~ Callable
p6eval nom: OUTPUT«Bool::False␤»
tadzik moritz: you've been moving stuff around in the setting recently? 10:59
im2ee: I'm not aware of any
not ok 23 - a multi does Callable
yeah, stuff's broken
flussence nom: say Sub ~~ not so Callable # :) 11:00
p6eval nom: OUTPUT«Bool::True␤»
tadzik im2ee: perl6.org/whatever/ this lists known editor plugins
im2ee tadzik, thank You. :)
11:00 drbean joined
tadzik im2ee: you're welcome :) 11:00
jnthn Makefile.in change in github.com/rakudo/rakudo/commit/19...643b16d789 will have done it. 11:01
tadzik I think so, yes
but I'm not bisecting again. You have 42 core machines, you do it ;) 11:02
11:04 Trashlord left
tadzik I has weird nom bug 11:10
nom: raw.github.com/gist/1164867/ce4d8e...tfile1.txt
p6eval nom: OUTPUT«===SORRY!===␤Confused at line 1, near "ra"␤»
tadzik nom: gist.github.com/1164867 11:11
p6eval nom: OUTPUT«===SORRY!===␤Invalid typename in parameter declaration at line 7, near " $s) { !!!"␤»
tadzik if we move subset declaration after a class declaration, it works
masak sounds like possibly a role lexpad issue. 11:12
tadzik jnthn will be happy
nom: class Pies::Fetcher {}; class Pies { has Pies::Fetcher $!fetcher } #another 11:14
p6eval nom: OUTPUT«===SORRY!===␤In "has" declaration, typename Pies::Fetcher must be predeclared (or marked as declarative with :: prefix) at line 1, near " $!fetcher"␤»
flussence nom: class A::B::C {}; class A::B {}; class A {};
p6eval nom: OUTPUT«===SORRY!===␤error:imcc:Multiple declarations of lexical 'A'␤␤ in file '(file unknown)' line 27070149␤»
jnthn No, it's not a role lexpad issue, it's just unfinished package munging. 11:15
tadzik looks like Pies does to much magic to be nom-runnable at the moment
jnthn Here, class Pies has to steal the WHO of the package Pies that we stubbed when declaring Pies::Fletcher
tadzik . o O ( class Pies { has $!fleas } 11:16
)
can I somehow reuse a grammar token, but with a different action method? I'd like to handle colonpair a bit differently in Pod blocks configuration 11:21
11:22 pernatiy joined
moritz well, you can do 11:23
token my_colonpair { <colonpair }
and then do another action in the my_colonpair action method
tadzik but the colonpair() action method will still be called, and I'll only have access to what it returns, not to colonpair internals like $<key>, $<value> or so 11:25
jnthn $<colonpair><key> would work
tadzik oh, ok 11:26
11:32 MayDaniel joined 11:40 Bucciarati left 11:41 Bucciarati joined 11:49 donri joined 11:55 ab5tract joined 11:58 Bucciarati left, Bucciarati joined 12:03 im2ee left 12:08 daniel-s left 12:12 daniel-s joined 12:14 Bucciarati left 12:19 im2ee joined 12:25 Bucciarati joined 12:29 ab5tract left, dark_x left 12:32 Holy_Cow left 12:34 dark_x joined, agentzh joined 12:37 thou left 12:38 bluescreen10 joined 12:43 SHODAN left 12:47 MayDaniel left
tadzik damn I'm doing evil stuff 12:47
$val<quote_EXPR><quote_delimited><quote_atom>.Str
12:51 donri left, donri joined, dark_x left 12:53 awoodland joined 12:54 awoodland left 12:58 drbean left 13:02 Trashlord joined 13:03 tokuhirom joined 13:10 Trashlord left 13:23 Trashlord joined 13:25 Aridai joined
dalek kudo/nom: 4f6018b | tadzik++ | src/Perl6/Grammar.pm:
Allow any number of colonpairs in Pod block configuration
13:32
kudo/nom: 380494c | tadzik++ | / (3 files):
Parse Pod block configuration and store it in Pod::Block.config. Add tests.
13:33 uasi left 13:35 bluescreen10 left
daxim how do I run roast? should I just prove … */*.t? 13:42
JimmyZ make spectest 13:43
tadzik in Rakudo/niecza, that is
moritz in niecza you do t/run_spectests 13:44
daxim alright, I'll see what spectest calls
tadzik it just does prove, yes
prove -e 'perl6' t/spec/ or so
or maybe something s/spectest.data related 13:45
moritz well, module the fudging, and reading file list from t/spectest.data
actually rakudo's t/harness calls Test::Harness directly, without the route through prove
13:49 TiMBuS left 13:50 TiMBuS joined 13:59 uasi joined 14:00 uasi left, uasi joined 14:09 wtw left
dalek kudo/nom: 276bfeb | tadzik++ | / (5 files):
Parse =config directives properly
14:14
14:14 cosimo left, Trashlord left 14:15 abercrombie joined 14:20 Trashlord joined
daxim fyi, roasting a pug 6.2.13.20110519/ghc 6.12.3 smells like: 791 files 7471 tests, 4795 ok, 2676 failed, 14 todo, 9 skipped, 587 parse errors 14:21
also, the ghc toolchain become better and better
moritz well, pugs is getting out of date rather quickly 14:23
daxim you never cease mentioning that ;)
14:23 cogno_ left, cognominal left
tadzik oopsie, broke S26 14:24
14:27 cognominal joined
tadzik nom: say so 'C<>' ~~ /<identifier>/ 14:31
p6eval nom: OUTPUT«Method 'identifier' not found for invocant of class 'Cursor'␤ in regex <anon> at /tmp/G6ChgiFA1Z:1␤ in method ACCEPTS at src/gen/CORE.setting:5805␤ in mu <anon> at /tmp/G6ChgiFA1Z:1␤ in mu <anon> at /tmp/G6ChgiFA1Z:1␤␤»
tadzik meh
nom: grammar a { token TOP { <identifier> } }; say so a.parse('C<>')
p6eval nom: OUTPUT«Method 'identifier' not found for invocant of class 'a'␤ in regex TOP at /tmp/2mcVsQObQv:1␤ in method parse at src/gen/CORE.setting:5797␤ in mu <anon> at /tmp/2mcVsQObQv:1␤ in mu <anon> at /tmp/2mcVsQObQv:1␤␤»
14:32 Holy_Cow joined
tadzik I'll just assume this is it 14:32
14:32 Aridai left
jnthn nom: grammar a { token TOP { <ident> } }; say so a.parse('C<>') 14:32
p6eval nom: OUTPUT«Bool::True␤»
tadzik oh
14:36 PacoLinux joined
tadzik yeah, <identifier> doesn't like C<>. It matches only 'C' 14:38
moritz nom: grammar a { token TOP { <ident> } }; say a.parse('C<>')
p6eval nom: OUTPUT«C␤»
tadzik \S+ shall it be, then 14:40
pmichaud re-good morning, #perl6 14:42
moritz good am, pm
colomon \o
tadzik hello pmichaud 14:43
dalek kudo/nom: df376ba | tadzik++ | src/Perl6/Grammar.pm:
Allow any non-whitespace string as a =config type identifier. Fixes S26 parsing
14:44 PacoLinux left, PacoLinux joined 14:51 tokuhirom left
pmichaud considers having failed matches actually dump "NO!" to the standard output. :-) 14:55
(c.f. jnthn++'s talk at ye2011 14:56
arnsholt Just like Prolog! =)
moritz pmichaud: pleae make that 'OH NOEZ' 14:57
tadzik that would look funny in the Perl 6 parser. Maybe it could yell "NO NO PLEASE NO" instead :)
pmichaud "NO!" (in jnthn++'s presentation, "OH NOEZ" is what the person said after receiving the "NO!" :)
tadzik can I use stuff like $<spaces> inside <!before>? 14:58
moritz I think so
14:59 ab5tract joined
pmichaud tadzik: I'm not sure. might not work because <!before> might impose a separate lexical scope on $/. 14:59
tadzik hmm
moritz nom: say 'a a' ~~ m:s/<alpha> <!before $<alpha>/
p6eval nom: OUTPUT«===SORRY!===␤regex assertion not terminated by angle bracket at line 1, near "/"␤»
moritz nom: say 'a a' ~~ m:s/<alpha> <!before $<alpha> >/
p6eval nom: OUTPUT«Method 'before' not found for invocant of class 'Cursor'␤ in regex <anon> at /tmp/7i72Lz3WHx:1␤ in method ll-match at src/gen/CORE.setting:2826␤ in method match at src/gen/CORE.setting:2870␤ in mu <anon> at /tmp/7i72Lz3WHx:1␤ in mu <anon> at /tmp/7i72Lz3WHx:1␤␤»…
pmichaud enobefore? 15:00
hmmmm
moritz not in nom/qregex
pmichaud need to add that to the punch list..... /me adds
moritz nqp: say('a a' ~~ m:s/<alpha> <!before $<alpha> >/)
p6eval nqp: OUTPUT«Confused at line 1, near "say('a a' "␤»
tadzik I'll try with storing those in some :my'
s
pmichaud nqp doesn't have m:
moritz nqp: say('a a' ~~ /<alpha> \s <!before $<alpha> >/)
p6eval nqp: OUTPUT«␤»
moritz pmichaud: just noticed, yes
nqp: say('a ' ~~ /<alpha> \s <!before $<alpha> >/)
p6eval nqp: OUTPUT«␤» 15:01
15:01 ab5tract left
moritz nqp: say('a b' ~~ /<alpha> \s <!before $<alpha> >/) 15:01
p6eval nqp: OUTPUT«␤»
moritz it seems to never match regardless
tadzik now '<!before $spaces =end \h+ $type >' dies with regex assertion not terminated by angle bracket, can I only use dynamic variables in those? 15:02
pmichaud yes, I think that <!before ...> ends up with its own $! for the subpattern
quote the = ?
tadzik oh, sure
oh, that might have been this entire problem
how big is my vim undo buffer again... 15:03
15:03 birdwindupbird left
sorear moritz: make spectest works too 15:04
tadzik apparently $<spaces> works well enough :0 15:06
:)
dalek kudo/nom: 8336468 | pmichaud++ | NOMMAP.markdown:
Add <!before> to NOMMAP.
15:07
tadzik and non-greedy match is smart enough not to backtrack 15:08
sorear rakudo: say "a'b" ~~ /<ident>/ 15:09
p6eval rakudo a55346: OUTPUT«a␤»
masak well, there's non-greedy and non-greedy.
tadzik: if it's frugal (.*?), it will backtrack, but forwards.
tadzik: if it's ratchet (.*:), it won't backtrack at all. 15:10
15:10 daniel-s left, kaare__ joined
tadzik masak: I changed .*? to [ <!before bla bla> \N* \n ]* and it takes it exactly the same time to parse S26 15:11
well, maybe half a second faster
moritz perl6: say Q'\\' 15:14
p6eval pugs: OUTPUT«*** ␤ Unexpected "'\\\\'"␤ expecting "::", dot, ":", "(", term postfix, operator or ","␤ at /tmp/WvnM6eN8XL line 1, column 6␤»
..rakudo a55346, niecza v8-54-g5b8523c: OUTPUT«\\␤»
sorear rakudo: my $x = 'aaaaaa'; $x ~~ s:7x/a/b/; say $x
p6eval rakudo a55346: OUTPUT«aaaaaa␤» 15:15
moritz rakudo: my $x = 'aaaaaa'; $x ~~ s:x(1..7)/a/b/; say $x 15:16
p6eval rakudo a55346: OUTPUT«bbbbbb␤»
masak tadzik: if you know it won't/shouldn't backtrack, you should mark it as ratchet somehow.
tadzik masak: it should, probably 15:17
it's the =begin code\n.*=end code case
moritz and it needs to be ['=end' | <.panic('unterminated =begin code') ] 15:18
otherwise you'll have trouble finding the error 15:19
pmichaud note that token+rule imply ratchet already (just in case those are involved)
tadzik it is 15:20
dalek ecza: 0db7bb8 | sorear++ | / (3 files):
Add properly speccy :nth, Cursor.ident, other tweaks and bugfixes
15:21
ast: 0df1205 | sorear++ | S05-modifier/counted.t:
[S05-modifier/counted] Remove oldspec :nth:g tests, fix up a few results, fudge for niecza
sorear Does :nth really imply :global? 15:22
:nth(List)
sorear leaves 15:25
abercrombie Hi, adverbs on quotes hasn't been implemented yet right? 15:28
15:29 mberends joined
flussence nom: my $x = 1; say q:qq("123b$x") 15:29
p6eval nom: OUTPUT«===SORRY!===␤Colons may not be used to delimit quoting constructs at line 1, near ":qq(\"123b$"␤»
flussence nom: my $x = 1; say Q:qq("123b$x")
p6eval nom: OUTPUT«===SORRY!===␤Colons may not be used to delimit quoting constructs at line 1, near ":qq(\"123b$"␤»
masak might need a space or so.
flussence std: q:qq() 15:30
p6eval std 516268a: OUTPUT«===SORRY!===␤Too late for :qq at /tmp/uy5AaI4UoG line 1:␤------> q:qq()⏏<EOL>␤ expecting any of:␤ circumfix␤ semicolon list␤Parse failed␤FAILED 00:01 118m␤»
flussence std: Q:qq()
p6eval std 516268a: OUTPUT«Invalid class name (STD::stop::) at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 88␤ Class::MOP::load_first_existing_class('STD::stop::') called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 136␤ Class::MOP::load_class('STD::stop::', undef) called at
../usr/local/lib…
flussence uh oh
flussence runs away from the burning wreckage before someone notices
moritz is quite sure that STD will recover 15:31
std: 'are you OK?'
p6eval std 516268a: OUTPUT«ok 00:01 118m␤»
mberends phew, it's ok :)
abercrombie nom: my $a='b'; say Q:w /a $a c/ 15:33
p6eval nom: OUTPUT«===SORRY!===␤Colons may not be used to delimit quoting constructs at line 1, near ":w /a $a c"␤»
abercrombie Am I typing the correct thing?
moritz std: my $a='b'; say Q:w /a $a c/ 15:34
p6eval std 516268a: OUTPUT«ok 00:01 122m␤»
flussence perl6: say (Q:w /x y z/).perl
p6eval pugs: OUTPUT«*** ␤ Unexpected "."␤ at /tmp/ks5MBWfVCK line 1, column 18␤»
..rakudo a55346: OUTPUT«===SORRY!===␤Colons may not be used to delimit quoting constructs at line 22, near ":w /x y z/"␤»
..niecza v8-55-g0db7bb8: OUTPUT«("x", "y", "z")␤»
moritz abercrombie: you are, but it's NYI in rakudo and nom
flussence niecza++
moritz niecza: my $a='b'; say Q:w /a $a c/ # I hope this is a $a c 15:35
15:35 pochi left
p6eval niecza v8-55-g0db7bb8: OUTPUT«Potential difficulties:␤ $a is declared but not used at /tmp/VtOcdk7PBJ line 1:␤------> my ⏏$a='b'; say Q:w /a $a c/ # I hope this i␤␤a $a c␤» 15:35
moritz niecza++ # again
flussence so what'd be interpolating there? Q:w:qq? 15:36
moritz q:w
or qw for short
or q:s:w (where :s stands for 'scalar', iirc)
abercrombie why cannot be Q:w? It seems q is just Q:q which only interpoltes \\, \q and \' 15:37
moritz why can't what be Q:w?
abercrombie Q:w /a $a c/ let $a get interpolated 15:38
moritz because that's not consistent, and not what you asked perl to do
I mean, why must it be Q:w when qq:w does it, and is consistent with all other uses? 15:39
abercrombie I read that :w is for "Split result on words (no quote protection)"
moritz yes, and it's not "interpolate scalars"
that's what :s gives your 15:40
abercrombie Oh, I thought "no quote protection" means it will interpolate variables
moritz no, it means that it's split on quoted whitespaces too
'a b "c d" e' -> 'a', 'b', 'c d', 'e' would be with quote protection 15:41
and without it: 'a', 'b', '"c', 'd"', 'e'
moritz -> decommute
abercrombie Oh, I see. So does q:w work really because the effect of :q ? 15:42
Since q:w is Q:q:w 15:43
perl6: my $a='b'; say Q:qq/a $a c/ 15:47
p6eval pugs: OUTPUT«*** ␤ Unexpected "c"␤ expecting operator, ":" or ","␤ at /tmp/2mORBMAwfe line 1, column 26␤»
..rakudo a55346: OUTPUT«===SORRY!===␤Colons may not be used to delimit quoting constructs at line 22, near ":qq/a $a c"␤»
..niecza v8-55-g0db7bb8: OUTPUT«a b c␤»
abercrombie yep 15:48
dalek kudo/nom: 3f57585 | jonathan++ | src/Perl6/Actions.pm:
Be sure to apply traits for regexes with the same ordering we do methods.
15:49
kudo/nom: 0999de1 | jonathan++ | src/Perl6/Actions.pm:
Action method for trait_mod:<will>.
abercrombie perl6: my $a='b'; say Q:s/a $a c/ 15:50
p6eval rakudo a55346: OUTPUT«===SORRY!===␤Colons may not be used to delimit quoting constructs at line 22, near ":s/a $a c/"␤»
..niecza v8-55-g0db7bb8: OUTPUT«a b c␤»
..pugs: OUTPUT«*** ␤ Unexpected "c"␤ expecting operator, ":" or ","␤ at /tmp/TweJZhbQ4D line 1, column 25␤»
abercrombie So :s is the minimum set one should use to get scalar interpolated 15:51
15:51 nebuchadnezzar left 15:52 nebuchadnezzar joined
pmichaud afk for a while 15:59
16:01 uasi left 16:05 simcop2387 left 16:07 simcop2387 joined 16:15 Trashlord left 16:16 Trashlord joined 16:25 Holy_Cow left 16:32 masak left 16:34 wamba left 16:35 MayDaniel joined, JimmyZ left 16:42 donri left 16:43 donri joined, kthakore_ left, kthakore joined 16:44 daxim left 16:46 pernatiy left 16:49 MayDaniel left 16:50 donri_ joined 16:51 donri left 16:52 uvtc joined
uvtc Were any videos made of the YAPC::EU Perl 6 -related talks? 16:53
16:53 szbalint_ joined
uvtc I saw the one with Larry, Pm, and Masak. The welcome to Riga talk. 16:53
Which was great. 16:54
tadzik that was from the hackathon
jnthn uvtc: Many things were recorded.
tadzik I haven't seen anything released yet
16:55 Sarten-X2 joined
jnthn Right, me either. 16:55
It'll probably take a bit.
abercrombie Hope I can see the video @ yapc.tv soon
jnthn It's a serious amount of work to do 4 tracks x 3 days worth of video :)
uvtc I could imagine. Thanks. Looking forward to them. 16:56
16:56 Sarten-X left, itz_ left, itz joined 16:58 dakkar left 16:59 uvtc left 17:05 agentzh left
[Coke] is out of work until power at his office is restored. perhaps some perl to take the edge off. 17:16
PerlJam There are Riga videos available already? 17:18
17:19 mj41 left
tadzik not really 17:19
there's one from the hackathon, and one from the closing ceremotny
PerlJam ah
colomon the hackathon one is quite nifty, if short
PerlJam watching it now :)
pm let his hair grow :) 17:20
17:21 cggoebel joined
PerlJam yeah, that's a nice video 17:21
17:21 Species8472 left
PerlJam Was ash in charge of the video stuff too? 17:22
tadzik dunno
17:26 ggoebel left 17:29 wamba joined 17:30 mj41 joined 17:32 mj41 left 17:33 pochi joined, mj41 joined 17:34 wamba left 17:36 PacoLinux left 17:37 wamba joined
tadzik oh, oh, I think I know how to handle this --doc=foo issue 17:38
or maybe not 17:39
hmm. something could be magified in a module's import() sub
17:44 Alias left 17:59 masak joined
masak \o/ 17:59
mberends o/ 18:00
tadzik \o
masak builds nom 18:01
dinner, that is. not the branch.
dalek kudo/nom: c8be361 | tadzik++ | src/Perl6/Pod.pm:
Fix Pod::Config regression
kudo/nom: 16bad5c | tadzik++ | / (2 files):
Allow multi-line Pod block configuration
tadzik wait
oh, ok :)
masak :)
tadzik karma tadzik
aloha tadzik has karma of 667.
tadzik uff, not evil anymore
masak karma nom
aloha nom has karma of 7.
masak nom++ # so awesome 18:02
the branch, that is.
well, food isn't too bad either.
tadzik food is faster to cook
moritz is anybody working on the inferior runloop problem that causes those huge memory leaks?
jnthn moritz: It's on my todo list. I hope to make some progress on it this evening. 18:03
But more help is always welcome :) 18:04
tadzik ronaldxs++ 18:05
gah, my colonpair magic is less than awesome :/ 18:09
masak ronaldxs?
tadzik the URI contributor, he just made LWP::Simple use URI and added some Jsonrpc capabilities 18:10
github.com/cosimo/perl6-lwp-simple/pull/6
moritz on the one hand, +1 to extra funcitonality
otoh, -0.5 for a dependency 18:11
since it's cosimo++'s project, I want him to decide on acceptance of the patch
18:11 Alias joined
tadzik I don't think adding a dependency is a bad idea. It's not that we don't have a working module installer resolving dependencies, and reimplementing URI parsing is not awesome if we have a proper module for that. +1 on waiting for cosimo though 18:12
moritz nom: say Sub ~~ Callable 18:13
p6eval nom: OUTPUT«Bool::False␤»
moritz that's... wrong.
it makes t/spec/S02-builtin_data_types/anon_block.rakudo fail
and other tests too
masak nom: say Method ~~ Callable
p6eval nom: OUTPUT«Bool::True␤»
tadzik moritz: that's probably due to your Sub.pm in Makefile.in mangling I'm afraid :/ 18:14
moritz ouch
I was pretty sure I had spectested
tadzik I wasn't bisecting, but it seems that it was it
moritz would make sense, kindof
jnthn moritz: I think Sub.pm appears before Code.pm/Block.pm/Routine.pm 18:15
moritz or not, given that I haven't actually changed the file
jnthn That is, appears in Makefile.in.
moritz it appears after Code, Block and Routine 18:16
tadzik jnthn: given (:pasttype('callmethod'), :name('new'), :returns('Pair')), can I easily serialize it, using simple_code_block() or so? 18:17
moritz but why would the order in which they appear in the setting matter at all? 18:20
18:21 wolfman2000 joined
jnthn moritz: It matters. 18:21
And it doesn't appear afterwards in the Makefile.in I'm looking at here (jsut pulled to be sure I have latest)
src/core/natives.pm \
then later
src/core/Sub.pm \
src/core/control.pm \
src/core/Any.pm \
src/core/Code.pm \
src/core/WhateverCode.pm \
src/core/Block.pm \
src/core/Routine.pm \
moritz oh 18:22
moritz looked at the wrong version
jnthn It matters because in Code.pm it "does Callable"
And if Sub.pm comes earlier, then it computes its type cache without Callable in it.
moritz so I need to try to shuffle it around enough to make it work :/ 18:23
18:25 mikehh joined 18:26 Trashlord left 18:28 Trashlord joined
TimToady perhaps caches need to be recomputable; most caches these days allow write-through :) 18:30
jnthn TimToady: Already on the todo list. :) 18:32
Plus you can already force a re-computation at any point you like, but I don't want anybody in user space to ever need to do that. 18:33
dalek kudo/nom: 6ad7834 | moritz++ | tools/build/Makefile.in:
fix bug from 19cfd13 that made Sub !~~ Callable
18:37
moritz jnthn++ and tadzik++ for helping me with this one
jnthn moritz++ for fixing it
18:37 jevin left 18:38 jevin joined
tadzik meh, I suppose proper colonpairs in Pod would have to wait for full-blown serialization 18:40
perl6: "foo".isupper 18:44
p6eval niecza v8-55-g0db7bb8: OUTPUT«Unhandled exception: Unable to resolve method isupper in class Str␤ at /tmp/Ehvvy4JZHI line 1 (MAIN mainline @ 1) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2047 (CORE C953_ANON @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2048 (CORE module-CO…
..rakudo a55346: OUTPUT«Method 'isupper' not found for invocant of class 'Str'␤ in main program body at line 22:/tmp/7GddW3My9L␤»
..pugs: OUTPUT«*** No such method in class Str: "&isupper"␤ at /tmp/4NVNVW_Pyk line 1, column 1 - line 2, column 1␤»
tadzik do we have an idiom for $foo eq $foo.uc?
flussence don't think there's a shorter way to write it than that... 18:45
18:46 birdwindupbird joined
TimToady we need reliable Unicode tables to do it any better; in the long run ICU is not always going to be a good dependency 18:46
18:48 wolfman2000 left
tadzik #phasers in 10? 18:50
mberends +10
sjohnson we need more codepage 437's 18:58
moritz #phasers NOW! 19:00
tadzik yessir! /o
19:03 Trashlord left 19:06 Trashlord joined 19:09 saaki left 19:11 Trashlord left 19:14 Trashlord joined 19:15 skangas left 19:16 soh_cah_toa joined 19:20 dakkar joined 19:26 PacoLinux joined 19:42 M_o_C joined 19:43 saaki joined 19:46 M_o_C left
tadzik jnthn: re blizkost, as I see in p5sv and p5scalar, the point is to write a p5array or so, implementing Parrot's array vtables? 19:49
19:50 birdwindupbird left 19:51 fbass joined 19:53 fbass left 19:55 mkramer joined
tadzik jnthn: ok, I found some design docs 19:55
19:59 Trashlord left 20:01 pernatiy joined 20:05 envi left 20:07 jevin left
diakopter seems I missed an interesting #phasers 20:08
masak we're not at END yet. 20:09
moritz not over yet, it seems
diakopter oh!
soh_cah_toa pmichaud: ping
20:10 jevin joined
Su-Shee popcorn! mst and chromatic fighting over rakudo on twitter! 20:11
20:12 Trashlord joined
tadzik link! 20:12
Su-Shee www.twitter.com? ;)
masak :P
tadzik gah
masak Su-Shee++
Su-Shee tadzik: twitter.com/chromatic_x twitter.com/shadowcat_mst
dakkar can we raise some funds to have them both in the same room and film them while they argue?
tadzik and plush cthulus 20:13
Su-Shee: thanks, that's funny :) 20:14
Su-Shee "hm. hm." 20:15
tadzik can I .flat those tweets somehow?
Su-Shee uff. now I have my observer in Moose. next, I will have one in rakudo. 20:16
dakkar tadzik: not easily, there's no Twitter API call for "give me a conversation" 20:17
tadzik shame
diakopter tadzik: click the arrow on the upper left of chromatic's top post
moritz tadzik: I've opened twitter.com/#!/chromatic_x and twitter.com/#!/shadowcat_mst in separate tabs
diakopter tadzik: upper right I meant
masak also, chromatic doesn't seem to use the "reply" function when he has conversations :(
tadzik diakopter: I did that, thanks 20:18
masak gaaargh New Twitter, you big piece of fail... 20:19
moritz masak: not surprising, since there's hidden meta data involved, which is very easy to miss
TimToady pray don't mind the missiles flying overhead; none of them is really aimed at us :)
jnthn :)
tadzik I have a feeling that chromatic++ still has mixed feelings about Rakudo targeting different VMs, and mst++ is defending the idea 20:20
masak tadzik: "mixed feelings"? :)
not very mixed, IMO.
tadzik masak: yeah, I remember that #parrotsketch too 20:21
masak "we'd like to make Rakudo more platform-independent" -- "NOOOOOO!"
20:21 molaf_ left
masak obviously I'm paraphrasing here. 20:21
moritz well, mst++'s "defense" doesn't seem to work for chromatic, it seems 20:22
Su-Shee I shall make popcorn.. ;)
20:22 bbkr1 left
[Coke] It is hard not to that as a failure of parrot. 20:22
masak [Coke]: accidentally? :) 20:23
[Coke] The whole situation is... convoluted.
masak: *take that!
masak :)
moritz [Coke]: agreed. But the wish for Perl on other platforms than C/Parrot is much older than that decision
20:24 bbkr joined, donri_ is now known as donri 20:25 PacoLinux left 20:27 PacoLinux joined
[Coke] Yup. It's hard to fault teamRakudo for pursuing it. 20:28
I do find the whole perl6/parrot thing confusing, myself. far too organic, not enough BDFL.
Su-Shee "BDFL"? 20:29
PerlJam Su-Shee: pythonism -- Benevolent Dictator for Life
masak well, Parrot is a foundering project on top of a wonderful vision. meaning, it could still be great if it gets its act together. M0 could be that, who knows? 20:30
PerlJam [Coke]: the problem with that is that the BDFL is driving blind too :)
diakopter PerlJam: curious who's the BDFL
masak .oO( Oracle seems to be finding their niche as a MDFL... ) 20:31
PerlJam masak: whiteknight is fixing things. He seems to be pointing Parrot in the right direction. Let's hope he never tires of it until Parrot is "finished" :)
tadzik this twitter thing is weird. It's smart enough to display "2 new tweets", but not smart enough to just display the tweets 20:33
[Coke] I dislike the default web app. :|
PerlJam tadzik: I've thought that forever. 20:34
[Coke] I would prefer a model where they were automatically added, but scroll locked at the last one until you moved it. 20:35
dakkar tadzik: twitter.trauma2u.com/pbtweet/ makes the web interface usable
Su-Shee stop playing with the clients, it's 40-love chromatic, next serve mst. ;) (no, I have no clue of tennis ;) 20:41
masak Su-Shee: chromatic is winning the flame war? I couldn't tell. 20:45
Su-Shee masak: do you know the german word "nebenkriegsschauplatz" by any chance? ;)
masak no. 20:46
phenny: "nebenkriegsschauplatz"? 20:47
phenny masak: Language guessing failed, so try suggesting one!
masak phenny: de "nebenkriegsschauplatz"?
phenny masak: "sideshow" (de to en, translate.google.com)
20:48 wk joined
mberends
.oO( ringside seats ? )
20:49
20:50 lichtkind joined, Reaganomicon joined
mberends o/ kind von licht! 20:51
lichtkind cheers
tadzik hello lichtkind 20:52
lichtkind tadzik: greetings
tadzik: will be around next days just came vom riga
masak hail, oh kind of licht. 20:53
20:53 Trashlord left
lichtkind masak: we need to talk :) 20:53
20:53 daniel-s joined
Su-Shee that never means something good ;) 20:56
jnthn hehe :)
masak and lichtkind privmsg 20:58
Su-Shee *sniff* surely one leaves the other and moves out and takes the cat with him and...
20:59 skangas joined
lichtkind life is good :) 20:59
21:00 mattp_ joined
masak yeah, don't worry Su-Shee. lichtkind and I are still pals. the cat is fine, too. 21:01
perl6: my @a = 1, [2, 3, 4], 5; my @b = @a; @a[1][1] = 42; say @b.perl 21:05
p6eval niecza v8-55-g0db7bb8: OUTPUT«[1, [2, 42, 4], 5].list␤»
..pugs, rakudo a55346: OUTPUT«[1, [2, 42, 4], 5]␤»
21:11 jedai_ joined 21:13 dakkar left
masak 'night, channel. 21:13
diakopter n :)
21:13 masak left 21:14 jedai left 21:15 kaare__ left
mberends d: are you into extreme abbreviation nowadays? keyboard battery low? ;) 21:15
lichtkind TimToady: what is the correct way to get a deep copy of a AoA structure in perl 6? 21:16
21:19 mkramer left 21:27 drbean joined
TimToady nom: my @a = 1, [2, 3, 4], 5; my @b = @a».clone; @a[1][1] = 42; say @b.perl 21:36
p6eval nom: OUTPUT«Array.new(1, [2, 3, 4], 5)␤»
21:37 Trashlord joined
TimToady though I wouldn't necessarily call it *the* correct way 21:37
lichtkind TimToady: sound good enough for me now, thank you 21:38
TimToady it might not even be a correct way, since it probably doesn't handle anything but trees currently 21:43
21:43 bbkr left
diakopter nom: my @a = 1, [2, 3, 4], 5; @a[0][0] = @a; my @b = @a».clone; @a[1][1] = 42; say @b.perl 21:44
p6eval nom: OUTPUT«Cannot assign to a non-container␤ in mu <anon> at /tmp/CNg7KFnQhm:1␤ in mu <anon> at /tmp/CNg7KFnQhm:1␤␤»
lichtkind TimToady: you mean hashes yes but nothing cyclic? 21:45
TimToady unlikely even to handle DAGs correctly
tadzik The videos recorded during the conference will be incrementally
diakopter see ^^
tadzik appearing on the yapc.tv website in the following weeks.
TimToady unless we spec hypers to do that a little better than we do now 21:46
lichtkind TimToady: dont understand DAG?
TimToady directed acyclic graph
diakopter nom: my @a = @a, [2, 3, 4]
p6eval nom: OUTPUT«splice() not implemented in class 'Mu'␤ in method reify at src/gen/CORE.setting:3502␤ in method gimme at src/gen/CORE.setting:3839␤ in method eager at src/gen/CORE.setting:3815␤ in method STORE at src/gen/CORE.setting:4219␤ in mu <anon> at /tmp/YEroFNueMn:1␤ in mu <ano…
jnthn sleep & 21:47
TimToady diakopter: that would not be cyclic
lichtkind jnthn: good night
21:47 am0c left
diakopter niecza: my @a = @a, [2, 3, 4] 21:48
p6eval niecza v8-55-g0db7bb8: ( no output )
diakopter niecza: my @a = @a, [2, 3, 4]; say @a.perl
p6eval niecza v8-55-g0db7bb8: OUTPUT«[[2, 3, 4]].list␤»
lichtkind TimToady: thanks, randal used that in his git talk but its no common shortcut for me
diakopter std: Q :regex /a/ # TimToady did you see this 21:49
p6eval std 516268a: OUTPUT«Can't use string ("STD::Regex") as a HASH ref while "strict refs" in use at /usr/local/share/perl/5.10.1/CursorBase.pm line 549.␤FAILED 00:01 117m␤»
lichtkind rakudo: my @a = 1, [2, 3, 4], 5; my @b = @a».clone; @a[1][1] = 42; say @b.perl 21:50
p6eval rakudo a55346: OUTPUT«[1, 2, 3, 4, 5]␤»
TimToady yes, but I don't actually have time to maintain the fiddly bits of STD at the moment 21:52
21:52 am0c joined
TimToady and the current implementation of STD has largely fulfilled its goal of being a prototype 21:53
in many ways niecza is a more solid example of STD 21:54
diakopter niecza: Q :regex /a/
p6eval niecza v8-55-g0db7bb8: OUTPUT«===SORRY!===␤␤Unrecognized adverb :regex(1) at /tmp/cFCiq6R0y4 line 1:␤------> Q ⏏:regex /a/␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 685 (CORE die @ 2) ␤ at /home/p6eval/n…
diakopter oh
TimToady I didn't say "in all ways" :P 21:55
in particular, this particular bug is aimed at the underlying Moose/6model stuffings, so I'm not surprised it has problems 21:56
that being said, it *might* be an easy bug to hunt down; it's just not high on my priority list right now 21:57
in fact, right now a nap is on the top of my list 21:58
zzz &
diakopter std: :2{0010_1110_1000_10}
p6eval std 516268a: OUTPUT«===SORRY!===␤Malformed radix number at /tmp/tkevzkowXK line 1:␤------> :2⏏{0010_1110_1000_10}␤Parse failed␤FAILED 00:01 117m␤»
diakopter blob literals too
tadzik what should happen if we have both a .pm and a .pm6 file and we try to use the module? 21:59
die?
TimToady I would assume the .pm is really Perl 5 22:01
tadzik and use pm6 instead?
sounds sane
diakopter TimToady: before you zzz, are forward gotos spec'd? 22:02
22:02 mj41_nb joined
diakopter I was thinking of adding gotos to the features matrix 22:02
niecza: say :2{0010_1110_1000_10} 22:08
p6eval niecza v8-55-g0db7bb8: OUTPUT«===SORRY!===␤␤Malformed radix number at /tmp/V46RMjLBhd line 1:␤------> say :2⏏{0010_1110_1000_10}␤␤Parse failed␤␤»
22:08 mj41 left
TimToady diakopter: apparently not well enough, since I couldn't find it 22:09
but they've been specced several times on IRC :)
or at least the fact that forward goto requires a quoted label
renap & 22:10
lichtkind bye tim 22:16
tadzik hmm 22:22
22:22 drbean left
tadzik nom: role A { has $!a }; class B does A { method foo { $!a } } 22:23
p6eval nom: OUTPUT«===SORRY!===␤Attribute $!a not declared in class B at line 1, near " } }"␤»
tadzik rakudo: role A { has $!a }; class B does A { method foo { $!a } }
p6eval rakudo a55346: ( no output )
tadzik is that a nom feature, and a rakudobug?
jasonmay: ping 22:28
22:32 drbean joined, wamba left, wamba joined
mberends tadzik: yes, as you say, same private attribute discussion: irclog.perlgeek.de/perl6/2011-06-27#i_4013339 22:33
tadzik mberends: yes, checked in synopsis too :)
22:34 mj41_nb left
tadzik seen jasonmay 22:34
aloha jasonmay was last seen in #perl6 17 days 18 hours ago saying "boston".
22:34 jevin left
jasonmay tadzik: hey 22:34
tadzik oh hi
I just patched IoC to compile on nom
jasonmay awesome!
tadzik it still fails tests, I haven't got to that yet
will send a pull request in a second
jasonmay: github.com/jasonmay/perl6-ioc/pull/1 22:36
if you're curious about either, I consulted the spec and nom is right in both cases :)
jasonmay I wonder if that explains some weird stuff I was running into when writing more 22:37
they both look good to me; merging
tadzik oh, stop
I also introduced a bug
22:37 im2ee left
tadzik since $.foo attrs are not writable now 22:37
jasonmay oops :) 22:38
tadzik the only way to avoid this, which comes to my mind, is the setter method in a role
not sure how this should be handled
22:39 jevin joined
tadzik there or another way we expose the atribute writeness to the outside world, which we don't neceserilly want 22:39
jasonmay if there is code smell in my module let me know, I'm open to implementations
tadzik not sure 22:40
jasonmay I based it off my perl5/moose fu :)
& for an hour or so
tadzik I guess we could have an initialize() method in a role, which will die if we initialize an already initialized attribute
will hack on that and add it to the pull request
mberends nom: role A { has $.a }; class B does A { method foo { $.a } }; my $x = B.new(:a(7)); say $x.foo 22:43
p6eval nom: OUTPUT«7␤»
tadzik okay, I got a running test, 10 more to go :) 22:44
22:55 wolfman2000 joined
tadzik nom: class Foo {}; say eval("Foo.new").perl 23:05
p6eval nom: OUTPUT«Foo<60745960>␤»
tadzik nom: class Foo {}; say ::("Foo").new.perl
p6eval nom: OUTPUT«Foo<52658000>␤»
tadzik nom: my $a = "Foo"; class Foo {}; say ::($a).new.perl 23:06
p6eval nom: OUTPUT«Foo<35584400>␤»
tadzik yay, passes! 23:08
rakudo: say so Sub ~~ Block 23:12
p6eval rakudo a55346: OUTPUT«Bool::True␤»
tadzik nom: say so Sub ~~ Block
p6eval nom: OUTPUT«Bool::True␤»
tadzik hm
rakudo: say so Sub.^isa(Block)
p6eval rakudo a55346: OUTPUT«Bool::True␤»
tadzik nom: say so Sub.^isa(Block)
p6eval nom: OUTPUT«Bool::True␤»
tadzik nom: say so Sub.^isa('Block')
p6eval nom: OUTPUT«Bool::False␤»
tadzik rakudo: say so Sub.^isa('Block')
p6eval rakudo a55346: OUTPUT«Bool::True␤»
tadzik gotcha
23:13 wolfman2_ joined
dalek kudo/nom: 54e85a2 | tadzik++ | src/Perl6/ModuleLoader.pm:
Accept .pm6 as a module file extensions, prefer it to .pm if both are present
23:13
23:15 envi joined, wolfman2000 left
tadzik nom: say so "foo".^isa('Str') 23:16
p6eval nom: OUTPUT«Bool::False␤»
tadzik niecza: say so "foo".^isa('Str')
p6eval niecza v8-55-g0db7bb8: OUTPUT«Bool::True␤»
lichtkind good night 23:17
23:17 lichtkind left 23:19 Slot|processor joined
tadzik jasonmay: all tests pass, pull request sent 23:22
I really like the module, I wonder if I could use it in panda
23:24 REPLeffect joined 23:28 wolfman2_ left
lue hello planet o 23:32
* o/
23:34 Psyche^ joined 23:37 Patterner left 23:38 Psyche^ is now known as Patterner
dalek ast: 75bf7cb | diakopter++ | S (19 files):
fix all the remaining S02/Literals smartlinks I broke by adding headings.
23:38
ast: bd9cbd8 | diakopter++ | / (18 files):
Merge branch 'master' of github.com:perl6/roast
tadzik hello lue 23:41
23:45 Sarten-X2 left
tadzik lue: how about some module fixing? 23:49
lue which ones?
[updating nom right now]
jasonmay tadzik: I'm glad you like it :) I want to add more sugar to it, something like metacpan.org/module/Bread::Board::Declare syntax 23:50
involving parameterized traits probably, but not sure
tadzik hmm, I wonder if you could do that now 23:51
23:53 wamba left, Sarten-X joined, wamba joined
tadzik github.com/perl6/ecosystem/wiki/St...les-on-nom 23:54
lue I should start by fixing my own module (Numbers::Ordinal) 23:56
tadzik lue: that's what I wanted to suggest :)
I'm tired for now, time to sleep probably 23:57
soh_cah_toa uh oh, got some tests to fix
also gotta get my new module IRC::Utils up there :) 23:58
tadzik \o/
jasonmay so, I'm out of the loop on this nom stuff 23:59
I know it's a reimplementation, but not sure how to develop with it
just origin/nom on the rakudo repo?
tadzik yes
jasonmay cool