»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
ren1us anyone feel like helping me golf down a segfault? i found the line that pitches a fit, but it just makes no sense that it would be causing a problem (line: $.age++;) 00:01
segfault in parrot* 00:02
00:09 hoverboard left, hoverboard joined
timotimo ren1us: can you try --optimize=off? 00:12
00:17 atroxaper joined
carlin m: use Test;loop {my @a=1;@a=?(@a.pick eq any 1);my $x=().pick;my @b=@a;@b.pick(2);@b.pick(4);@a.pick(*).sort.Str;@a=1..9;my @v;push @v,@a.pick(*) for ^9;@a xx 9;ok ?(~[1].pick eq any(*));ok ?(~[9].pick eq '1'|'4');@a=1..100;@b=pick(*,@a);is @b.elems,100;is ~@b.sort, ~(1..100);is ~@b.grep(Int).elems,100;sub w($f){my %s;%s{$_}=1 for (1..$f*100).pick(50);is %s.keys.elems,50,$f;ok (so 1 <= all(%s.keys) <= 100),'';};w(1);w(3);w(1);w(1000)} 00:18
camelia rakudo-moar 41574a: OUTPUT«(signal )not ok 1 - ␤not ok 2 - ␤ok 3 - ␤ok 4 - ␤ok 5 - ␤ok 6 - 1␤ok 7 - ␤ok 8 - 3␤not ok 9 - ␤ok 10 - 1␤ok 11 - ␤ok 12 - 1000␤not ok 13 - ␤»
carlin that's a golf of the S32-list/pick.t explosion 00:19
Mouq carlin++
ren1us timotimo: still segfaults 00:20
00:21 atroxaper left
timotimo i'm not to blame in that case :3 00:22
ren1us lol.
i want to report it but i feel like i need something a little more specific than a project a few hundred lines long that takes 3 minutes just to get to the segfault 00:23
timotimo golfing is a high art :( 00:24
ren1us and i'm no tiger woods
nor have i had as much success with girls as tiger woods, but that's a different problem
00:26 BenGoldberg joined
Mouq lue: github.com/perl6/Pod-To-HTML/commit/e6549f616 00:27
ren1us: Success with girls is a higher art :P 00:28
depending on how you go about it.. 00:29
..or rather, one's definition of 'success' :P 00:30
00:30 jack_rabbit joined 00:31 carlin left
ren1us Mouq: I define success as falling for someone who doesn't look at me as 'just friends' 00:32
at this point i'd be thrilled to fall for one who hates me, the whole 'just friends' thing is getting kinda boring
and any pointers on golfing? i actually keep bumping into things that i try to pinpoint the problem in, but can't. memory leaks in moar, segfaults in parrot, etc etc 00:33
Mouq ren1us: I'm sorry, been there many times :/ 00:36
hugme hug ren1us
hugme hugs ren1us
ren1us ._. thanks hugme. not gonna question it. 00:37
Mouq
.oO( Actually, every time except twice, and one she said she just wated to be friends but stopped talking to me once she got back with her ex 9_9 )
00:38
Aaanyway, I'm going to try torturing my Pod::To::HTML refactor until it works 00:40
00:41 dayangkun joined 00:43 SevenWolf left 00:45 _slade joined
ren1us actually, someone tell me i'm not crazy: for %.hash.keys { # stuff # }; <--- once this loop completes an iteration, assuming no variables outside the loop are changed, all objects defined inside the loop should be garbage collected, right? 00:45
gtodd "completes an iteration" or "completes" ... 00:50
ren1us completes an iteration 00:51
so if i did something like for 0..9 { my $a = A.new; doSomething(); }; where doSomething defines a gazillion objects and such, it's not going to wait until the entire loop is finished before garbage collecting $a and everything created by doSomething() 00:54
00:54 Akagi201 joined 00:59 Akagi201 left 01:05 jnap1 left, ren1us left
Mouq std: class :: { has $.foo }.new 01:12
camelia std 0f2049c: OUTPUT«ok 00:01 124m␤»
Mouq m: class :: { has $.foo }.new
camelia rakudo-moar 41574a: OUTPUT«===SORRY!=== Error while compiling /tmp/VE6vnpQXbW␤Two terms in a row␤at /tmp/VE6vnpQXbW:1␤------> class :: { has $.foo }⏏.new␤ expecting any of:␤ scoped declarator␤ constraint␤ p…»
Mouq Hmm
01:19 grondilu left 01:20 BenGoldberg is now known as Botje-- 01:21 Botje-- is now known as BenGoldberg 01:27 wamiks left 01:45 klapperl joined, FROGGS left 01:48 klapperl_ left 01:49 _slade left 01:50 kurahaupo left 01:52 chenryn joined 01:55 Akagi201 joined, Akagi201 left, Akagi201 joined 01:56 Akagi201 left 01:58 FROGGS joined 02:01 Akagi201 joined
dalek ast/S26-WHY: 1a417fe | (Rob Hoelz)++ | S26-documentation/why- (2 files):
Stop skipping test that now no longer segfaults
02:05
ast/S26-WHY: 87aa7e3 | (Rob Hoelz)++ | S26-TODO:
More things TODO for S26...
lue Mouq: cool, just know that instead of "does Pod::Walker", it should really be "is Walker::Callees" :) 02:12
lue decides to finally add Pod::Walker to ecosystem 02:15
02:15 noganex_ joined
dalek osystem: 8a01b34 | lue++ | META.list:
Add Pod::Walker
02:17
02:18 noganex left
Mouq lue: github.com/Mouq/pod-walker/commit/...4b06f4b112 02:18
lue: I wouldn't be surprised if that's the completely wrong approach 02:20
lue: But I'm close to having a copy of Pod::To::HTML that runs locally with that, even if incorrectly in many places
s/runs/compiles :P 02:21
lue Any particular reason you want to stuff the subs in the role too, ooc? 02:22
Mouq Mmm, no reason in particular, though I want to be able to add a multi-candidate to pw-recurse in PTH and I guess putting them in the role made me feel that it was more likely to work :P 02:23
lue Are classes a necessity for a Pod::To:: module anyway, or would your role-based solution suddenly force its user to make a class? :) 02:24
Mouq They're not necessary but it sure cleans things up. Right now my hackity solution is to have method render (PTH :U: |a) call self.new.render(|a) 02:26
Which means that leakage between documents shouldn't be the problem it has been in the past 02:27
But perhaps a class is needed for the documents, and PTH should really just be a collection of subs 02:28
Or maybe it'll just die with "Bytecode validation error at offset 136, instruction 23: truncated stream" 02:30
lue My idea is that you'd have an object to hold all of your functions in, and then a collection of multi subs in the module to help you use it. Still feels more classy than roley to me, but I can't say I know for sure what's best :) 02:31
Mouq lue: Classy would work too :) The main issue I'm haven't gotten around to addressing is that P2H switches between an 'html', 'inline', and 'raw or html-escaped text' mode 02:33
The only difference I can see about inline, though, is that Paras aren't rendered with <p>s 02:34
(Note that this is an issue regardless or sub/role/class structure of Pod::Walker) 02:35
*of
lue wonders if he should put everything under module Pod::Walker; so Pod::Walker::Callees.new(), Pod::Walker::pod-walk() ... 02:36
02:36 BenGoldberg left
lue Mouq: yeah, that sounds like you need a ~slightly~ more structured object than a plain string; something like class PodString { Str $.text; EnumTypeThing $.txtstate }, where $.txtstate lets you know whether its "html" or "inline" or... 02:37
Mouq lue: The issue is that the things that need to be processed as 'inline' are processed before they're known to need to be processed as inline. And sometimes a single function needs to process them as 'inline' or 'rawtext' 02:39
02:40 xenoterracide__ joined
lue How's that able to work at all? O_o 02:40
Mouq lue: Well, that's what'll need to be resolved once I get it running. The way it used to work was because you manually called node2inline or whatever, but here the preprocessed text is handed to you. Which I still think is a good idea 02:41
02:43 ren1us joined
lue Mouq++ for working on it (and make sure to "lose" the enforced stylesheet while you're in there, eh? :P) 02:43
02:44 isBEKaml joined
Mouq lue: Haha, what stylesheet? I have no clue what you're talking about 02:44
02:44 xenoterracide__ left
lue Yeah, sorry. Don't know what I was thinking there. :) 02:44
02:46 xenoterracide__ joined
Mouq I really hate that the 'Cannot call X, none of these signatures match:' doesn't show the capture its matching against 02:48
At the same time, a .perl of an arbitrary call can be crazy verbose, so.. 02:49
lue I also don't like how warning messages won't show a backtrace on -j and -m like it does on -p, meaning every UVOTA just stands to infuriate you. I looked at it earlier, and I don't immediately see how to change that, though :/
Mouq That too :|
02:50 cooper left, cooper_ left
Mouq Ahh, I see 02:52
02:52 cooper joined, cooper left, cooper joined
Mouq The problem is that my multi sub pw-recurse isn't getting called. Which is kind of expected 02:52
02:53 Akagi201_ joined
hoelzro so I'm working on getting S26 working correctly with Rakudo, and I came across this: 02:53
github.com/rakudo/rakudo/blob/nom/....nqp#L2302
does anyone know why var traits are NYI?
02:53 rGeoffrey joined 02:56 Akagi201 left
Mouq m: my $x is docs("abcd"); 02:56
camelia rakudo-moar 41574a: OUTPUT«===SORRY!=== Error while compiling /tmp/llQmo5kGXq␤Can't use unknown trait 'is docs' in a variable declaration.␤at /tmp/llQmo5kGXq:1␤------> my $x is docs("abcd")⏏;␤ expecting any of:␤ TypeObject…»
02:56 Akagi201 joined, Akagi201_ left
lue hoelzro: what do you mean by "getting S26 working correctly"? Just making the parsing more correct, I assume? 02:57
Mouq m: my $x; trait_mod:<is>($x, :docs<xyz>)
camelia rakudo-moar 41574a: OUTPUT«No such method 'set_docee' for invocant of type 'Str'␤ in sub trait_mod:<is> at src/gen/m-CORE.setting:275␤ in block at /tmp/TUc9ZSHTei:1␤␤»
hoelzro well, for example, the current impl uses #= for leading comments, rather than the correct #|
lue hoelzro: aren't they both valid forms though? 02:58
hoelzro trailing comments are NYI
they are
but #| is leading
and #= is trailing
Mouq hoelzro++
hoelzro #= is currently treated as leading
lue Oh, didn't know there was a distinction. Glad to hear that some better sense has been made there then :)
Mouq Should we deprecation cycle that? I know there's a lot of code that wrongly uses #= 02:59
.oO( Does a deprecation cycle even make sense here? )
02:59 btyler joined
lue could see #^ for leading and #$ for trailing instead of the current ones :P 02:59
isBEKaml hoelzro: maybe I'm missing something here. What's the distinction between leading and trailing comments?
02:59 btyler left
isBEKaml Are they separated by where they are placed? That is, above or below a sub/method? 03:00
hoelzro someone thought of #< and #>
isBEKaml: correct
hang on
03:00 Akagi201 left
hoelzro isBEKaml: github.com/perl6/roast/blob/S26-WH...why-both.t 03:00
03:01 Akagi201 joined
hoelzro I wish it would be #< and #>, or even #↑ and #↓ 03:02
I've been working on this for nearly a week and I still get them mixed up =/
lue hoelzro: #^ and #$ would offer some correlation with regexes :)
hoelzro lue: oh, true
Mouq: I would be happy to start filing PRs against "broken" modules
at least this change shouldn't alter behavior (unless someone's depending on WHY) 03:03
lue hoelzro: different symbols would make "deprecating" sooo much easier too. How do you know when #= is being deprecatingly used as a leading comment, anyway?
isBEKaml hoelzro: I can understand #| as a leading comment. Other languages such as Scala and Haskell use it for setting fixed spacing in doc strings.
hoelzro interesting, I didn't know that
isBEKaml hoelzro: I believe it's similar to python's """
03:04 Akagi201 left
lue r: my $a = #`"""testing embedded""" 5; say $a; 03:04
camelia rakudo-jvm 41574a: OUTPUT«(timeout)»
..rakudo-{parrot,moar} 41574a: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Malformed initializer␤at /tmp/tmpfile:1␤------> $a = #`"""testing embedded""" 5; say $a;⏏<EOL>␤ expecting any of:␤ scoped declarator␤ …»
03:04 Akagi201 joined
lue boo. 03:04
isBEKaml hoelzro: though not the exact #|, the | is used for setting fixed spacing. Haskell uses "--|", scala "/**" and pipes in every subsequent line. 03:05
Mouq It ran! Woo!
lue I personally think we're but a few steps away from a "comment" sublanguage by this point :P
03:06 cooper_ joined
hoelzro lue: isn't that POD? =P 03:06
isBEKaml: I never knew about --|
isBEKaml lue: too bad we can't turn into .lp6. :D
hoelzro that's not new, is it?
isBEKaml: hmm...a custom grammar for literate Perl 6? 03:07
lue hoelzro: no silly, that's the Pod sublanguage, not the comment sublanguage :)
hoelzro interesting idea
lue: heh
isBEKaml hoelzro: yep, haddock does it.
hoelzro: I'm not sure how far we can push .lp6. With separate comment formats like this one, I don't think we can see any literate forms - like lue said, at best it's a comment sublanguage. :D 03:09
hoelzro I suppose
still, it's an interesting idea 03:10
lue isBEKaml: not that you couldn't write a Literate slang to do that (once we know what it would look like to work in that realm of madness, that is ☺)
isBEKaml Currently, comments are read in tandem with code. With these forms, it'll feel like reading two books at once. :P 03:11
03:11 _slade joined
isBEKaml lue: exactly - let's see where that descends into madness. :-) 03:11
Frankly speaking, a lot of ideas in Perl6 spec feel like moonshots. 03:12
lue I think it's called "extensible programming", though I don't much like that name, particularly considering how much of P6 you can extend already. The ultimate goal is to change what the compiler is doing. Perhaps "cooperative programming"? :P
isBEKaml lue: hmm, isn't that what "extensible" stands for? 03:15
isBEKaml doesn't like to see it in non-lisp languages *ducks*
lue Yeah, though I really think manipulating the grammar and ASTs and whatnot of the language is far different from the *other* extensible aspects of Perl 6 that are implemented already, hence the desire for a distinct name :) 03:16
isBEKaml: the nice thing about a non-Lisp language is that it should be easier to tell what stuff is modifying the compiler's behavior :) 03:18
Mouq lue: Lookie what I made gist.github.com/Mouq/b04e9408cd0e83cf62bc 03:19
lue Lisp's macros and such have a nasty habit of not looking different, which on the one hand is the point of Lisp's syntax, and on the other hand makes it bleeding impossible to know what the distinction of a macro is.
Mouq (some obvious bugs)
Mouq really likes Rust's macros
lue Mouq++
isBEKaml lue: Right, it stands out in non-lisp languages. But if you read through a wide swath, it's easy to pick macros in lisp too. I just count defmacros, progns and some quirky naming conventions for macros in lisp. 03:20
lue Mouq: yes, I remember finding a (I think) Rust doc on macros that was quite interesting. Need to look at them more, 'cos they are quite possibly the only non-lisp language to have done Proper Macros™ thus far.
isBEKaml: my point is that it's kinda hard to tell what a (defmacro) does different from a (defun), because the code tends to look really similar. I remember reading some elisp documentation on it once, and although it did explain the difference, it was hard to believe that it's a necessary one. 03:21
Mouq doc.rust-lang.org/guide-macros.html
isBEKaml lue: I should have added this: Otherwise, I agree. :D 03:22
03:22 atroxaper joined 03:27 rurban1 left
lue Mouq: looks nice, makes me think our macros should really be some sort of grammar/action rule pair that gets injected into the current language. Still needs some sort of ast manipulation thing though. 03:30
03:31 kaleem joined 03:40 xenoterracide__ left
zengargoyle hrm, #| comments the thing below and #= comments the thing the left made perfect sense to me... 03:44
#^ seems like it should comment the thing above.
03:45 ggoebel111117 left
zengargoyle what i'm not sure i get is how documents like MyModule::Cookbook.pod would work out 03:46
is there supposed to be an empty CompilationUnit holding nothing but doc? 03:47
Mouq zengargoyle: p6doc is currently just searches through @*INC. It's not particularly sophisticated 03:53
zengargoyle: github.com/perl6/doc/blob/master/bin/p6doc
zengargoyle maybe it's changed by now. i thought @*INC was moving to using CompUnitRepoLocal things. 03:55
Mouq zengargoyle: It is, but it can (apparently) still be used the old fashioned way
03:56 Akagi201_ joined
zengargoyle which does more of looking up and loading modules rather than just a list of paths things. (at least last i looked CURL didn't have a .path type method.) 03:56
Mouq m: say @*INC[0].WHAT 03:57
camelia rakudo-moar 41574a: OUTPUT«CompUnitRepo::Local::File␤»
Mouq m: say @*INC[0].WHAT.Str
camelia rakudo-moar 41574a: OUTPUT«Nil␤»
Mouq m: use lib <abcd>; say @*INC[0].WHAT.Str
camelia rakudo-moar 41574a: OUTPUT«Nil␤»
Mouq Huh
zengargoyle with the idea that maybe eventually the modules would be stored in a db or zip or such rather than files on the filesytem
Mouq m: say @*INC.WHAT 03:58
camelia rakudo-moar 41574a: OUTPUT«(Array)␤»
zengargoyle due to all of the use Module:ver<x.y.z>:author<zengargoyle> type of capabilities
Mouq zengargoyle: I no very little about this :)
*know
03:59 hoverboard left
Mouq
.oO( I also no vary litle abot speling )
03:59
03:59 Akagi201 left
zengargoyle me neither. just remembering when CURL came about and made p6doc not work for a while because @*INC entries no longer strinified to paths... 04:00
04:01 anaeem1 joined
zengargoyle and if there's a MyModule:ver<1> and MyModule:ver<2> then the cookbook type pod needs the same sort of versioning info.. MyModule::Cookbook:ver<1> MyModuleCookbook:ver<2> 04:04
and i'm all fuzzy on how that's eventually supposed to work. :)
R0b0t1 Are there any plans for perl6 to support sentience?
Mouq R0b0t1: There's no date set but I believe it's in the spec somewhere 04:05
04:05 anaeem1 left
zengargoyle probably NYI like all the other good parts. 04:06
R0b0t1 :D 04:07
hoelzro the amount of Perl 6 that's NYI is getting pretty low
at least for the stuff I care about
=
=)
isBEKaml Funny, the guy was looking for himself in asking for sentient support in Perl6. :-) 04:09
04:12 kaare_ joined 04:14 Akagi201_ left 04:15 Akagi201 joined
hoelzro bed time for me 04:20
'night #perl6 04:21
04:25 xenoterracide__ joined 04:28 chenryn left 04:32 robinsmidsrod left 04:33 robinsmidsrod joined, thou left 04:34 xenoterracide__ left 04:37 thou joined
dalek ast/S26-WHY: 202f49a | (Rob Hoelz)++ | S26-documentation/why-preceding.t:
Fix attribute lookup test
04:39
04:43 isBEKaml left 04:48 gfldex joined 04:59 chenryn joined 05:04 chenryn left 05:10 _slade left 05:18 hoverboard joined 05:34 hoverboard left 05:36 chenryn joined 05:41 dayangkun left, dayangkun joined 05:42 sqirrel joined 05:43 sqirrel left 05:55 uniejo joined 05:56 ivanshmakov left 05:58 uniejo left 05:59 dayangkun_ joined 06:00 kaleem left 06:02 dayangkun left 06:07 ivanshmakov joined 06:09 bcode_ joined, bcode is now known as Guest98957, Guest98957 left, bcode_ is now known as bcode 06:10 flussence left, flussence joined 06:13 [Sno] left 06:18 dayangkun joined 06:19 FROGGS left 06:21 dayangkun_ left 06:29 ivanshmakov left, ivanshmakov joined
sergot morning o/ 06:31
06:33 rurban1 joined 06:37 rurban1 left 06:41 Bucciarati left, mtj_ left 06:42 ilogger2 joined, ChanServ sets mode: +v ilogger2
atroxaper sergot: morning o/ 06:48
yoleaux 8 Jul 2014 19:23Z <lue> atroxaper: just so you know, I've already followed that hint in Pod::To::HTML (here it is: github.com/lue/pod-walker), and AFAIK Mouq is using it to reimplement Pod::To::HTML too. I'll be interested in seeing what your solution to that hint is! :)
06:48 nhayashi joined, mtj_ joined 06:49 anaeem1 joined 06:50 mtj joined, telex joined 06:51 anaeem1 left 06:56 dayangkun joined 06:57 anaeem1 joined, anaeem1 left 06:58 anaeem1 joined, anaeem1 left 06:59 anaeem1_ joined 07:05 igorsutton joined 07:07 darutoko joined 07:10 [particle] joined 07:11 SamuraiJack_ joined 07:14 kaleem joined 07:22 vinian joined, vinian left 07:23 vinian joined 07:25 Alina-malina joined 07:28 FROGGS joined 07:32 chenryn joined, chenryn left 07:33 dmol joined 07:34 rurban1 joined 07:36 chenryn_ joined 07:38 rurban1 left 07:44 Akagi201 joined 07:50 Akagi201_ joined, Akagi201 left 07:53 dayangkun_ joined 07:55 Akagi201_ left 07:56 Akagi201 joined 07:57 dayangkun left 08:00 Akagi201 left
atroxaper lue: ping 08:02
How can I live a message for lue? I mean witch command for yoleaux? 08:03
moritz .tell atroxaper like this
yoleaux moritz: I'll pass your message to atroxaper.
atroxaper moritz: Thanks!
yoleaux 08:03Z <moritz> atroxaper: like this 08:04
atroxaper Works))
.tell lue hello, my not finished yet solution is github.com/atroxaper/Pod-SAX. You can see Pod::SAX::Reformer class and its test. Main feature that my Callees makes a calls for start of Pod object, end of Pod object, and 'in' Pod object that trigger if .content has not Pod object like String. And for each Pod type we can make many callbacks for many cases. Like only for L<> but not for C<>, I think it is more flexible and maintenanc[fu
l] :) And you can share some storage with data between callbacks. And when we have start, in, and stop calls then we have something like Automata (en.wikipedia.org/wiki/Automata_theory) with states. And one more think. System of Anchors (i'm not sure with name yet) that objects contains a code that should be executed after all work and push its result to result represenation (like HTML). It can be used for crossrefs of many other things
.
yoleaux atroxaper: I'll pass your message to lue.
jack_rabbit I have my $arr = (1,2,3,4). How do I get that interpreted as an array rather than a scalar, say, in for $arr -> $x { say "hello, ", $x; } 08:05
Obviously I could just declare my @arr = ..., but that's not the point.
atroxaper r: my @arr = (1,2,3,4); say $_ for $arr.list 08:06
camelia rakudo-{parrot,jvm,moar} 41574a: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Variable '$arr' is not declared. Did you mean '@arr'?␤at /tmp/tmpfile:1␤------> y @arr = (1,2,3,4); say $_ for $arr.list⏏<EOL>␤ expecting any of:…» 08:07
atroxaper r: my $arr = (1,2,3,4); say $_ for $arr.list
camelia rakudo-{parrot,jvm,moar} 41574a: OUTPUT«1␤2␤3␤4␤»
jack_rabbit r: my $arr = (1,2,3,4); for $arr.list -> $x { say "hello, ", $x; };
camelia rakudo-{parrot,jvm,moar} 41574a: OUTPUT«hello, 1␤hello, 2␤hello, 3␤hello, 4␤» 08:08
jack_rabbit thanks.
08:08 chenryn_ left
atroxaper Wow, it is my first contributed answer on #perl6 ! 08:08
jack_rabbit: wellcome! 08:09
jack_rabbit $atroxaper++;
moritz also
m: my $arr = [1..4]; .say for @$arr
camelia rakudo-moar 41574a: OUTPUT«1␤2␤3␤4␤»
jack_rabbit ooh, very nice. 08:10
atroxaper moritz: because [1..4] is Array and (,) is a Parcel? 08:11
r: my $arr = (1,2,3,4); say $_ for @$arr # it works to... 08:12
08:12 chenryn_ joined
camelia rakudo-{parrot,jvm,moar} 41574a: OUTPUT«1␤2␤3␤4␤» 08:12
Timbus @$ would work on both, it's just @() is shorthand for .list
the sigils provide context 08:13
atroxaper Timbus: yes. I see already :)
08:13 chenryn_ left 08:14 brrt joined
jack_rabbit I'm reading docs that say parcels are immutable, but can contain mutable containers, so my $x = 1; my $parc = (0, $x, 2); $parc[1] = 3; works, but $parc[0] is immutable. 08:17
How can I put the *value* of $x into the parcel to make the second element immutable, rather than putting the container itself? 08:18
moritz jack_rabbit: with binding
wait 08:19
uhm
08:19 chenryn_ joined
moritz m: my $x = 42; my $p = (0, $x, 2); $p[1] := $x; $p[1] = 23; say $p 08:19
camelia rakudo-moar 41574a: OUTPUT«No such method 'bind_pos' for invocant of type 'Parcel'␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2469␤ in block at /tmp/5bNDxercIn:1␤␤»
FROGGS m: my $arr = [1..4]; .say for $arr[] 08:20
moritz m: my $x = 42; my $p = (0, nqp::decont($x), 42); $p[1] = 23; say $p
camelia rakudo-moar 41574a: OUTPUT«1␤2␤3␤4␤»
rakudo-moar 41574a: OUTPUT«Cannot modify an immutable Int␤ in method assign_pos at src/gen/m-CORE.setting:1772␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2465␤ in block at /tmp/wTj7zUmDLI:1␤␤»
moritz jack_rabbit: I don't think there's a perl 6 level primitive for decontainering :(
jack_rabbit :/ disappointing. 08:21
my first disappointment. Perl 6 has otherwise been pretty impressive.
moritz well
FROGGS m: my $x = 42; my $p = (0, $x.VAR, 42); $p[1] = 23; say $p 08:22
camelia rakudo-moar 41574a: OUTPUT«Cannot assign to a readonly variable or a value␤ in method assign_pos at src/gen/m-CORE.setting:1772␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2465␤ in block at /tmp/cX4zKEfCmw:1␤␤»
FROGGS m: my $x = 42; say $x.VAR
camelia rakudo-moar 41574a: OUTPUT«42␤»
FROGGS is that what I think it is?
moritz m: my $x := 42; my $p = (0, $x); $p[0] = 42
camelia rakudo-moar 41574a: OUTPUT«Cannot modify an immutable Int␤ in method assign_pos at src/gen/m-CORE.setting:1772␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2465␤ in block at /tmp/05_lBSdIVu:1␤␤»
moritz m: my $x = 42; say $x.VAR.^name
jack_rabbit r: my $x = 42; my $p = (0, $x.VAR, 43); say $p;
camelia rakudo-moar 41574a: OUTPUT«Int␤»
rakudo-{parrot,jvm,moar} 41574a: OUTPUT«0 42 43␤»
jack_rabbit Cool, that seems to work. 08:23
moritz FROGGS: if it is, it's totally uninituitive
m: my $x = 42; say $x.VAR.name
camelia rakudo-moar 41574a: OUTPUT«$x␤»
moritz because .VAR returns the variable object :-)
m: my $x = 42; say $x.VAR.^name
camelia rakudo-moar 41574a: OUTPUT«Int␤»
moritz eeks
sergot m: class A { method new(Int $sth?, Bool :$a = False) { say $a; self.bless } }; A.new(:a);
camelia rakudo-moar 41574a: OUTPUT«True␤»
jack_rabbit So what exactly is the variable object? 08:24
similar to .HOW?
08:25 [Sno] joined
moritz jack_rabbit: it's an object that lets you introspect the variable; but it also behaves transparently in most cases, and acts as if it were the value inside the variable 08:25
jack_rabbit well that sounds like exactly what I want. It looks like it's immutable, though, right?
r: my $x = 2; my $y = $x.VAR; say $x, " ", $y; 08:26
camelia rakudo-{parrot,jvm,moar} 41574a: OUTPUT«2 2␤»
jack_rabbit r: my $x = 2; $x.VAR = 4; say $x;
camelia rakudo-{parrot,jvm,moar} 41574a: OUTPUT«Cannot assign to a readonly variable or a value␤ in block at /tmp/tmpfile:1␤␤»
FROGGS I grepped in rakudo/src... the is nothing Perl 6ish that provides nqp::decont 08:27
jack_rabbit bummer. I would think that'll be added eventually? 08:28
moritz maybe we need an unitem() function 08:32
oh
m: my $x = 42; my $p = (0, $x.list, 43); say $p; $p[1] = 23;
camelia rakudo-moar 41574a: OUTPUT«0 42 43␤Cannot modify an immutable Int␤ in method assign_pos at src/gen/m-CORE.setting:1772␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2465␤ in block at /tmp/BOT6rxSe97:1␤␤»
moritz jack_rabbit: .list is what you want
jack_rabbit: a bit unintuitive at first, but it does remove scalar containers 08:33
jack_rabbit interesting.
would .VAR be bad practice? Are there implications of using that method?
08:34 rurban1 joined
moritz IMHO .VAR is just wrong for that use case 08:34
I don't understand why it works, so I wouldn't use it 08:35
jack_rabbit sure.
08:35 chenryn_ left
jack_rabbit m: my $x = 2; say $x.VAR.^name; 08:36
camelia rakudo-moar 41574a: OUTPUT«Int␤»
jack_rabbit m: my $x = 2; say $x.VAR.^mro;
camelia rakudo-moar 41574a: OUTPUT«(Int) (Cool) (Any) (Mu)␤»
08:39 rurban1 left 08:42 Alina-malina left 08:43 Alina-malina joined 08:44 [Sno] left 08:47 chenryn_ joined 08:49 rindolf joined
jack_rabbit Also, what is this thing: ␤ 08:49
I think it might not be showing right (probably bad encoding on my end) 08:50
atroxaper new line.
jack_rabbit ahh
atroxaper Is I understand it is for better visibility for irc 08:51
jack_rabbit makes sense.
FROGGS perl6-m -e 'say uniname("␤")' 08:52
SYMBOL FOR NEWLINE
08:52 dakkar joined
FROGGS and the perl6 bot here converts it to proper newlines 08:52
08:52 mr-foobar joined
FROGGS so you can feed it multi line code in a single line :o) 08:52
m: say uniname("␤")
camelia rakudo-moar 41574a: OUTPUT«LINE FEED (LF)␤»
jack_rabbit ho ho! fancy. 08:53
FROGGS m: my %a = a => 1; my %b = b => 2; %a<b> = %b; %b = %a<b> 08:55
camelia rakudo-moar 41574a: OUTPUT«Saw 1 call to deprecated code during execution.␤================================================================================␤%b = { ... } called at:␤ /tmp/MhDSfkwxKc, line 1␤Please use %b = ... instead.␤--------------------------------------…»
atroxaper FROGGS: btw, I read some first Perl6 Advent and saw >> operator by in one symbol. And author said that it better for him. How can i write that symbols as fast as just >> ? :)
FROGGS .tell lizmat that feels weird: m: my %a = a => 1; my %b = b => 2; %a<b> = %b; %b = %a<b>
yoleaux FROGGS: I'll pass your message to lizmat.
FROGGS it is right alt + y on my keyboard 08:56
atroxaper FROGGS: is it comfortable?)) 08:57
FROGGS atroxaper: maybe it is equally comfortable, but » looks nicer :o)
atroxaper FROGGS: I've tried to find exactly that sybbol, but there are about 5 >> with different names. Which of that versions is >> 08:58
FROGGS m: say uniname('»')
camelia rakudo-moar 41574a: OUTPUT«RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK␤»
FROGGS m: say '»'.ord 08:59
camelia rakudo-moar 41574a: OUTPUT«187␤»
FROGGS m: say '»'.ord.fmt('%#x')
camelia rakudo-moar 41574a: OUTPUT«0xbb␤»
atroxaper FROGGS: nice!
FROGGS :o)
atroxaper FROGGS: my wife likes runes. I'm going to write some program for her mostly consisting of Runes :-) 09:01
FROGGS atroxaper: ohh, that sounds very nice indeed :o) 09:02
09:02 [Sno] joined
FROGGS I dunno why but that makes me think of rosettacode.org/wiki/Draw_a_clock#Perl_6 09:02
nwc10 .tell jnthn I made you a test case (slightly smaller): paste.scsys.co.uk/407345 09:03
yoleaux nwc10: I'll pass your message to jnthn.
atroxaper FROGGS: Cool! Nice clock! 09:04
FROGGS TimToady++ for that
09:08 PotatoGim joined
lizmat good *, #perl6 09:19
yoleaux 08:55Z <FROGGS> lizmat: that feels weird: m: my %a = a => 1; my %b = b => 2; %a<b> = %b; %b = %a<b>
lizmat FROGGS: weird because it generates a deprecated warning? 09:20
the alternative would be fail (as we decided to not allow %h = {}
)
09:23 denis_boyun_ joined 09:25 denis_boyun_ left 09:27 denis_boyun_ joined
jack_rabbit What is the function of 'X-' here: my @x = DateTime.now.Str.substr(11,8).ords X- ord('0'); 09:28
09:31 broquaint joined
atroxaper jack_rabbit: I think perlcabal.org/syn/S03.html#List_infix_precedence infix:<X> 09:35
09:35 rurban1 joined
jack_rabbit weird. That looks like what it's doing. 09:37
r: my @x = DateTime.now.Str.substr(11,8).ords X- ord('0'); 09:38
camelia ( no output )
jack_rabbit m: my @x = map { $_ - ord('0') }, DateTime.now.Str.substr(11,8).ords; say $x; 09:39
camelia rakudo-moar 41574a: OUTPUT«===SORRY!=== Error while compiling /tmp/R_XHeIxnAf␤Variable '$x' is not declared. Did you mean '@x'?␤at /tmp/R_XHeIxnAf:1␤------> teTime.now.Str.substr(11,8).ords; say $x⏏;␤ expecting any of:␤ post…»
09:39 spider-mario joined
jack_rabbit m: my @x = map { $_ - ord('0') }, DateTime.now.Str.substr(11,8).ords; say @x; 09:39
camelia rakudo-moar 41574a: OUTPUT«0 9 10 3 9 10 2 5␤»
09:39 rurban1 left
FROGGS lizmat: yes, feels weird because of that message, but I guess one must get used to it 09:40
and I guess this behaviour was the reason to explicitly allow %h = {} 09:41
lizmat I'm open to suggestions to improve the message :-)
you could argue that %a<b> = %b should also be disallowed 09:42
it should be %a<b> = $%b
it's the automatic itemizing that's making it a unclear 09:43
jnthn It's not surprising if you stop to think for a moment
yoleaux 09:03Z <nwc10> jnthn: I made you a test case (slightly smaller): paste.scsys.co.uk/407345
jnthn %h<a> is clearly a scalar
And so provided you know what $s = %h does, %h<a> = %h2 follows fairly natural 09:44
lizmat ok, so from wider to narrower, we will allow transparently ($ = %), but narrower to wider is / will be an error (% = $) 09:45
is that something we can put in the spec ?
jnthn Doesn't hold up for @a = $b though 09:46
lizmat indeed
:-(
jnthn I think this particular case just has to be understood in terms of hashes
lizmat yup, indeed 09:47
regarding a shortcut / sugar for nqp::decont, I was playing with: 09:48
m: sub prefix:<=>(\x) { x.VAR }; my $x = 42; =$x = 43
camelia rakudo-moar 41574a: OUTPUT«Cannot assign to a readonly variable or a value␤ in block at /tmp/MK6ifdXLUe:1␤␤»
jnthn x.VAR doesn't decont, it returns a Scalar...
m: my $a; say $a.VAR.WHAT 09:49
camelia rakudo-moar 41574a: OUTPUT«(Scalar)␤»
lizmat m: sub prefix:<=>(\x) { nqp::decont(x) }; my $x = 42; (1,2,=$x,4).say # improved?
camelia rakudo-moar 41574a: OUTPUT«Cannot modify an immutable Int␤ in block at src/gen/m-CORE.setting:17319␤ in block at /tmp/wG4gcS070I:1␤␤»
lizmat but with using decont this way, why doesn't this work? 09:50
jnthn ,= is a longer token? 09:51
lizmat std: sub prefix:<=>(\x) { nqp::decont(x) }; my $x = 42; (1,2,=$x,4).say # improved?
camelia std 0f2049c: OUTPUT«===SORRY!===␤Undeclared routine:␤ 'nqp::decont' used at line 1␤Check failed␤FAILED 00:01 138m␤»
lizmat yup, that's it
m: sub prefix:<=>(\x) { nqp::decont(x) }; my $x = 42; (1,2, =$x,4).say # improved?
camelia rakudo-moar 41574a: OUTPUT«1 2 42 4␤»
jnthn We had a prefix:<=> for something else entirely once. I was in the meeting where we killed it. :) 09:52
masak good noon, #perl6 09:53
09:53 fhelmberger joined
lizmat r: 'sub prefix:<±>(\x) { nqp::decont(x) }; my $x = 42;my $p = (1,2,±$x,4); say $p; $p[2] = 23 09:54
camelia rakudo-{parrot,jvm,moar} 41574a: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Unable to parse expression in single quotes; couldn't find final "'" ␤at /tmp/tmpfile:1␤------> ;my $p = (1,2,±$x,4); say $p; $p[2] = 23⏏<EOL>␤ …»
lizmat r: sub prefix:<±>(\x) { nqp::decont(x) }; my $x = 42;my $p = (1,2,±$x,4); say $p; $p[2] = 23
camelia rakudo-jvm 41574a: OUTPUT«1 2 42 4␤Cannot modify an immutable value␤ in method assign_pos at gen/jvm/CORE.setting:1772␤ in sub postcircumfix:<[ ]> at gen/jvm/CORE.setting:2465␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-moar 41574a: OUTPUT«1 2 42 4␤Cannot modify an immutable Int␤ in method assign_pos at src/gen/m-CORE.setting:1772␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2465␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-parrot 41574a: OUTPUT«1 2 42 4␤Cannot modify an immutable value␤ in method assign_pos at gen/parrot/CORE.setting:1776␤ in method assign_pos at gen/parrot/CORE.setting:1774␤ in sub postcircumfix:<[ ]> at gen/parrot/CORE.setting:2469␤ in sub postcircumfix:<[ ]> at…»
jnthn Also, I think a method or sub would fit better than an operator 09:56
Dunno what to call it, though :)
lizmat im() ? 09:57
short for immutable?
or maybe Parcel creation should decont automatically ? 09:58
I guess not: S07:56 09:59
synopsebot Link: perlcabal.org/syn/S07.html#line_56
jnthn oh, no, then you could never write a list assignment :P
lizmat indeed.. 10:00
lizmat headdesks
jnthn What was the actual use case? 10:01
lizmat well, making sure that a Parcel only contained immutables
while initializing it from variables
10:03 brrt left, donghongbo joined 10:04 cognominal joined
lizmat re deprecation message for %h = {}: 10:08
FROGGS, jnthn: is this better:
$ 6 'my %h = {}'
Saw 1 call to deprecated code during execution.
================================================================================
%h = itemized hash called at:
-e, line 1
Please use %h = %(itemized hash) instead.
10:09 xinming_ joined 10:10 sjn_ joined
timotimo whoa, so much backscroll 10:11
jnthn lizmat: Seems OK 10:12
dalek kudo/nom: 9a8470c | (Elizabeth Mattijsen)++ | src/core/Hash.pm:
Alter %h = {} deprecation message
10:13
ast: 32730f7 | (Elizabeth Mattijsen)++ | S02-types/deprecations.t:
Adapt test for %h = {} deprecation message
10:17
10:19 sjn_ left, sjn_ joined 10:24 sjn_ is now known as sjn_roadie
atroxaper How can I describe a regex 'any but not a something' ? like any but not ':' I need to get scheme of url :) 10:25
jnthn <-[:]> 10:26
lizmat re: immutability in parcels:
jnthn <-[:]>+ for many
lizmat m: my $x = 42; my $p = (1,2,+"$x",4); say $p; say $p[2].WHAT; $p[2] = 43
camelia rakudo-moar 41574a: OUTPUT«1 2 42 4␤(Int)␤Cannot modify an immutable Int␤ in method assign_pos at src/gen/m-CORE.setting:1772␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2465␤ in block at /tmp/7njPnv8eJ3:1␤␤»
lizmat so +"$x"
if it is a Num, just "$x" if it is a Str
atroxaper jnthn: yes! Thanks. I forgot about it again :-) 10:27
timotimo FROGGS: are you here right now? 10:31
what's the status regarding NativeCast and function pointers?
is it in our reach now or can it actually already be done?
atroxaper timotimo: there is like weekly scram :)
timotimo: btw many Thanks for your weekly post about current status of Perl 6. I read it every time. 10:32
timotimo thank you! :) 10:33
10:34 kurahaupo joined 10:36 rurban1 joined 10:40 sjn_ joined, rurban1 left 10:41 kurahaupo left 10:42 sjn_roadie left 10:44 sjn_ left 10:45 sjn_ joined, donghongbo left
FROGGS timotimo: I am 10:46
timotimo hey :)
FROGGS timotimo: NativeCall exports a sub nativecast which works on all backends 10:47
timotimo Mouq, atroxaper: which of you is working on which part of the Pod::Walker and Pod::To::HTML based on the walker?
10:47 teodozjan joined
timotimo FROGGS: i got that much 10:47
FROGGS and also OpaquePointer is extended to let you do math
timotimo i've got that, too
FROGGS okay
timotimo i'm only missing information about the state of function pointers
FROGGS ahh, sorry
10:48 sjn_ left, sjn_ joined, sjn_ left
FROGGS we need to fix 'has &.bar:(Int)' in Perl 6 actions, it already is parsed correctly 10:48
then we can hook it up
timotimo ah, good
FROGGS but I guess it will take like three weeks or more until we have i
t
timotimo will the return type be put inside the (..) with a -->? 10:49
FROGGS I think so 10:50
timotimo OK
FROGGS errm, we could also allow trait 'returns' on methods without much fuzz I guess
err attributes
timotimo all right 10:51
10:57 rGeoffrey_ joined 10:58 rGeoffrey_ is now known as rGeoffrey 10:59 chenryn_ left
atroxaper timotimo: Mouq works on Pod::Walker and Pod::To::HTML as I understand. 10:59
timotimo OK 11:00
raiph wrote that you're working on the walker, that's probably just read from the wrong row in the irclog or something?
atroxaper timotimo: yes, I think so. I'm working on 'another' walker for Pod. [Coke] proposed Pod::SAX name :) 11:02
11:02 chenryn_ joined, chenryn_ left
timotimo ah! 11:03
thanks
atroxaper timotimo: ;)
11:07 atroxaper joined 11:12 atroxaper left
timotimo wp.me/p4kqoE-35 11:13
lizmat timotimo: I actually reverted the method is cached 11:15
because it was unclear what semantics to be used for self
otherwise timotimo++ 11:17
FROGGS timotimo: perhaps you can state that rakudo@parrot is finally in a good shape again (due to jnthn and me), it failed 1800 spectests until recently 11:18
jnthn "jnthn has started working on making MoarVM’s bytecode specializer throw away guards" - it actually does this by now :) 11:19
FROGGS wow, how time flies :P 11:22
m: say DateTime:FormatMySQL("2014-07-09T13:24:00") # sport the error 11:24
camelia rakudo-moar 41574a: OUTPUT«(DateTime)␤»
FROGGS that's horrible 11:25
lizmat :++ ?
FROGGS sergot had that also (he found it already), here: github.com/sergot/openssl/blob/mas...SL.pm6#L43
lizmat: yeah
hard to spot 11:26
lizmat I think this is one more reason not to be silent about eating named params that we don't know what to do with
FROGGS good that this only can be caused by our scoped subs
lizmat: +1
at least a type object should not eat them 11:27
lizmat hmmm.... isn't it the say that eats them?
FROGGS m: Int:blarg(1)
camelia ( no output )
FROGGS I dunno 11:28
m: sub foo(*@p, *%h) { say %h }; foo Int:blarg(1) 11:29
camelia rakudo-moar 41574a: OUTPUT«().hash␤»
FROGGS so the type gets it 11:30
11:30 Ven joined
FROGGS m: sub foo(*@p, *%h) { say @p }; foo Int:blarg(1) 11:30
camelia rakudo-moar 41574a: OUTPUT«(Int)␤»
FROGGS yeah
Ven gist.github.com/Nami-Doc/f45190f52fcbbb183fd6 < C++ is the next Perl 6, y'know 11:31
11:31 donghongbo joined
FROGGS Ven: :P 11:31
Ven (text macros :'(.) 11:32
lizmat m: class A { has $.a = "a"; method b { "aaa".subst(/$!a/,"b") }}; say A.new.a; say A.new.b # why isn't the .subst working ? 11:33
camelia rakudo-moar 41574a: OUTPUT«a␤aaa␤»
lizmat m: class A { has $.a = "a"; method b { my $x = $!a; "aaa".subst(/$x/,"b") }}; say A.new.b # putting it into a lexical first works 11:34
camelia rakudo-moar 41574a: OUTPUT«baa␤»
lizmat rakudobug?
11:35 donghongbo left
lizmat FROGGS, jnthn: ^^^ 11:35
jnthn m: /$!foo/ 11:36
camelia rakudo-moar 41574a: OUTPUT«===SORRY!=== Error while compiling /tmp/GrGGxT5ir_␤Variable $!foo used where no 'self' is available␤at /tmp/GrGGxT5ir_:1␤------> /$!foo⏏/␤»
FROGGS m: class A { has $.a = "a"; method b { "aaa".subst(/"$!a"/,"b") }}; say A.new.a; say A.new.b
camelia rakudo-moar 41574a: OUTPUT«a␤use of uninitialized value of type Any in string context␤baaa␤»
FROGGS that seems to be the runtime lexpad problem thingy masak++ had described in his blög 11:37
jnthn Um
Ven class variables are in lexpads ?
jnthn Wait...a regex is method-ish, and has its own self...
11:37 rurban1 joined
FROGGS eww 11:37
m: class A { has $.a = "a"; method b { "aaa".subst($!a,"b") }}; say A.new.a; say A.new.b 11:38
lizmat aha... the plot thickens... rakudobug it ?
camelia rakudo-moar 41574a: OUTPUT«a␤baa␤»
FROGGS yeah
jnthn: is right
jnthn lizmat: Um, at this point all we have is "it looks odd" rather than "it should do X"
FROGGS m: class A { has $.a = "a"; method b { "aaa".subst(/{say self}/,"b") }}; say A.new.a; say A.new.b
camelia rakudo-moar 41574a: OUTPUT«a␤A.new(a => "a")␤baaa␤» 11:39
FROGGS I have no idea
m: class A { has $.a = "a"; method b { "aaa".subst(/"{say self}"/,"b") }}; say A.new.a; say A.new.b
camelia rakudo-moar 41574a: OUTPUT«a␤A.new(a => "a")␤A.new(a => "a")␤A.new(a => "a")␤A.new(a => "a")␤aaa␤»
jnthn m: class A { has $.a = "a"; method b { "aaa".subst(/:my $ = say $!a; ./, b') } }; A.new.b 11:40
camelia rakudo-moar 41574a: OUTPUT«===SORRY!=== Error while compiling /tmp/TCkwyckpg_␤Unable to parse expression in argument list; couldn't find final ')' ␤at /tmp/TCkwyckpg_:1␤------> b { "aaa".subst(/:my $ = say $!a; ./, b⏏') } }; A.new.b␤ …»
jnthn m: class A { has $.a = "a"; method b { "aaa".subst(/:my $ = say $!a; ./, 'b') } }; A.new.b
camelia rakudo-moar 41574a: OUTPUT«(Any)␤»
lizmat m: say "aaa".subst(/a$/,"b") # the reason I ran into this
camelia rakudo-moar 41574a: OUTPUT«aab␤»
jnthn m: class A { has $.a = "a"; method b { "aaa".subst(/:my $ = say self.WHICH; ./, 'b') } }; A.new.b
camelia rakudo-moar 41574a: OUTPUT«Cursor|139834212483800␤»
11:41 rurban1 left
jnthn m: class A { has $.a = "a"; method b { "aaa".subst(/:my $ = say self.WHICH, $!a; ./, 'b') } }; A.new.b 11:42
camelia rakudo-moar 41574a: OUTPUT«Cursor|139900812459976(Any)␤»
jnthn m: class A { has $.a = "a"; method b { "aaa".subst(/:my $ = say self.WHICH, $!pos; ./, 'b') } }; A.new.b
camelia rakudo-moar 41574a: OUTPUT«===SORRY!=== Error while compiling /tmp/DBWEyB7Zo2␤Attribute $!pos not declared in class A␤at /tmp/DBWEyB7Zo2:1␤------> $ = say self.WHICH, $!pos; ./, 'b') } }⏏; A.new.b␤ expecting any of:␤ postfi…»
11:42 molaf joined
jnthn m: class A { has $!dummy; has $.a = "a"; method b { "aaa".subst(/:my $ = say self.WHICH, $!a; ./, 'b') } }; A.new.b 11:42
camelia rakudo-moar 41574a: OUTPUT«Cursor|140307760568368Cursor|140307760671904No such method 'gist' for invocant of type 'ParseShared'␤ in sub say at src/gen/m-CORE.setting:13805␤ in method match at src/gen/m-CORE.setting:6280␤ in method subst at src/gen/m-CORE.setting:6355␤ in…»
jnthn Wow.
Yes, that's quite a mis-compile. 11:43
I know what it's doing.
11:43 donghongbo joined
jnthn I don't know we can make it DWLM though... 11:43
Because self in a /.../ thing really is Cursor
FROGGS L is for lizmat? :o) 11:44
jnthn Yes.
FROGGS true... and in a code somebody might really want the Cursor
jnthn Right
lizmat ok
jnthn Well, it's clearer with tokens and so forth.
All the same, we shouldn't compile it to stuff that looks up a random attribute on the wrong object. :)
lizmat I guess it should at least complain about it being an attribute that doesn't exist on the Regex ? 11:45
jnthn lizmat: Yeah.
lizmat so rakudobug it ?
jnthn Should just not compile
Yes, now we know the expected behavior, it's a resolvable ticket :) 11:46
So go for it :)
lizmat m: class A { has $.a = "a"; method b { "aaa".subst(/$.a/,"b") }}; say A.new.b # using the $.a form is much clearer 11:49
camelia rakudo-moar 41574a: OUTPUT«No such method 'a' for invocant of type 'Cursor'␤ in method match at src/gen/m-CORE.setting:6280␤ in method subst at src/gen/m-CORE.setting:6355␤ in method subst at src/gen/m-CORE.setting:3713␤ in method b at /tmp/NMYRHZsulC:1␤ in block at …»
hoelzro morning #perl6
lizmat hoelzro o/
anyway: #122253
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122253
lizmat still it feels wrong: I mean, you can interpolate attributes in strings, and those are Str objects 11:51
(yes, I know it works differently underneath, but from a language point of view it feels weird) 11:52
I guess it is just another way of finding out that regexen are code, and not strings
hoelzro I've been working on improving declarator docs, so I've been doing some digging around in src/core/traits.pm. It made me wonder: why are docs implemented by applying an anonymous role against the object? 11:54
Not trying to be critical, just curious =)
also I want to know if I should preserve that or if I can change it if I feel I have a better solution 11:55
11:55 anaeem1_ left 11:56 igorsutton_ joined 11:58 igorsutton left 12:00 cognominal left
lizmat hoelzro: I see what you mean: especially since the mixing roles for Routine and Mu are the same ? 12:01
hoelzro right, that's part of it
the other part is with what I'm working on, where a docee can have either leading or trailing docs, or both
also, a docee can have *multiple* leading/trailing docs, which should be concatenated 12:02
timotimo jnthn: does throwing away guards cause great improvements yet? :)
lizmat well, git blame points to me for the Routine version, but I'm pretty sure that I didn't think up that :-)
seems like tadzik and jnthn are the other suspects for this code 12:03
12:03 dmol left, igorsutton_ left
lizmat heolzro: I have no particular opinion: if you think you can make it better, I would say: go for it 12:04
hoelzro rather :-) ^^^
jnthn timotimo: It was another meassurable bit off a benchmark I tried...
timotimo \o/
12:04 igorsutton_ joined, atroxaper joined
hoelzro lizmat: well, I'll certainly try =) 12:04
12:07 R0b0t1 joined 12:08 igorsutton_ left, atroxaper left 12:11 cognominal joined 12:15 vinian left
rGeoffrey The OSCON lightning talks are going to be with the State of the Onion on Wednesday night. If you will be there, do you want to speak about something? Any chance someone here is in a position to offer up the State of Perl6 (from a more hands on view than Larry's)? 12:18
lizmat well, I'll be at the OSCON, and willing to give a lightning talk 12:20
but to give a handson State of Perl6 ... wow, I would have to think about that (a lot) 12:21
12:22 jnap joined 12:23 cognominal left 12:24 lelf joined 12:27 Ven left
rGeoffrey lizmat, thanks. If you want to focus a bit, remember what Larry spoke of at YAPC. So some updates on where the project is from a "can I use it yet" point of view would be good. And I expect it will be hard to hold woolfy back from giving one. 12:29
lizmat jnthn: is it possible to obtain the original extension from a precompiled module?
12:30 SamuraiJack joined
lizmat fwiw, woolfy thinks lightning talks at OSCON should be about Perl, not about marketing or finding jobs 12:30
12:31 sqirrel joined
lizmat jnthn: in other words: if I load a precompiled module, can I find out the original path of the module? 12:31
12:32 atroxaper joined
rGeoffrey I have to work with what I have. Last year there was only 3 days from when OSCON said we would to the lightning talks and them happening. This year they gave me 3 weeks notice. Some year they will actually accept them on time and I will have 3 months to twist arms. 12:32
12:34 brrt joined 12:35 SamuraiJack left
dalek ast/S26-WHY: adf0914 | (Rob Hoelz)++ | S26-documentation/why-following.t:
Fix why-following attribute comment test
12:38
12:38 rurban1 joined
dalek kudo/nom: 9044339 | (Elizabeth Mattijsen)++ | src/core/CompUnit.pm:
Add crappy CompUnit.compile

And some assorted support methods
12:38
12:41 [particle] left
woolfy I really would like to see TimToady or jnthn give a talk about the state of Perl 6. But Larry is already doing the state of Perl in general... And I am afraid jnthn has other plans. 12:42
12:43 SamuraiJack joined
woolfy lizmat would be a good choice too, but she is hesitant, since she thinks she does not know enough... :-) 12:43
(hiding now)
lizmat wonders where woolfy went
woolfy :-) 12:44
nwc10 have you checked behind the sofa?
12:44 rurban1 left
woolfy o0O(sitting next to lizmat, in plain sight, so she does not see me)... 12:45
lizmat looks under the desk
rGeoffrey There are two weeks to the big event, and 209 people 'reading' this. It may take a whole village, but I am sure enough words can be put onto someone's slides, even if the speaker thinks she does not know enough.
12:45 cognominal joined
woolfy Ehm, I am afraid my 200x "Perl 6 is awesome and can be used already for many things" would not help much. 12:46
lizmat signal(SIGINT).tap( {die} ); { LEAVE "say left"; END say "ENDed"; 1 while 1 } # press Ctrl-C to exit 12:48
will say "ENDed", but not "left"
dalek kudo-star-daily: 8b178b8 | coke++ | log/ (14 files):
today (automated commit)
lizmat jnthn: I would have thought it would also need to say "left"., or am I wong? 12:49
signal(SIGINT).tap( {die} ); { LEAVE say "left"; END say "ENDed"; 1 while 1 } # fixed "" oops 12:50
FROGGS :o) 12:51
12:51 SamuraiJack left
lizmat still not working though :-( 12:51
12:52 SamuraiJack joined, anaeem1 joined
lelf Is Str.graphs not implemented anywhere or is it no longer here? 12:52
[Coke] r: say "barf".graphs 12:53
camelia rakudo-jvm 9a8470: OUTPUT«(timeout)»
..rakudo-{parrot,moar} 9a8470: OUTPUT«No such method 'graphs' for invocant of type 'Str'␤ in block at /tmp/tmpfile:1␤␤»
[Coke] can't really tell between removed and NYI, but I think NYI. 12:54
12:54 ggoebel111117 joined
FROGGS lelf: NYI 12:54
since we do not yet grapheme level strings 12:55
have*
jnthn lizmat: I can't think of a way to do that off hand. 12:56
lizmat: Unless UNIT already gets a $?FILE installed 12:57
lizmat: And making it do so is probably the right solution 12:58
m: say $?FILE
camelia rakudo-moar 9a8470: OUTPUT«/tmp/GdqDYdE0nl␤»
jnthn m: say UNIT::.keys
camelia rakudo-moar 9a8470: OUTPUT«$! $/ $_ GLOBALish EXPORT $?PACKAGE ::?PACKAGE $=pod !UNIT_MARKER␤»
jnthn Hm, wonder where $?FILE comes from :)
12:58 SamuraiJack left
dalek ast/S26-WHY: 934073d | (Rob Hoelz)++ | S26-TODO:
Document more edge cases for S26
12:59
jnthn lizmat: Anyway, does that give you enough hints how to make it available? 13:00
13:01 guru joined 13:02 guru is now known as Guest69063, Guest69063 is now known as ajr_ 13:04 SamuraiJack joined
sergot timotimo++ # new p6weekly post 13:07
13:08 cognominal left 13:11 brrt left 13:15 rurban1 joined
[Coke] m: say EVAL("'møp'".encode('UTF-8')) 13:16
camelia rakudo-moar 9a8470: OUTPUT«Cannot call 'EVAL'; none of these signatures match:␤:(Str $code, Any :lang($lang) = { ... }, PseudoStash :context($context))␤ in block at /tmp/BnX2LIfssT:1␤␤»
[Coke] finds that spec where EVAL is defined as taking a Str|Buf. Ah well. 13:18
lizmat [Coke]: LHF ? 13:19
[Coke] maybe? " If $code is of type Buf, the same decoding techniques are applied as a compiler for $lang would usually do to input files."
That seems like the tricky bit. 13:20
13:20 [particle] joined
jnthn [Coke]: Well, we try to treat them as utf-8, I think... :) 13:20
[Coke] test is in S29-context/eval.t if that's LHF for ya. 13:21
lizmat m: say EVAL("'møp'".encode('UTF-8').Str) # could be as simple as this ? 13:22
camelia rakudo-moar 9a8470: OUTPUT«møp␤»
[Coke] oh, even easier, it's defined as a multi sub (spec says it's a macro) 13:23
can we remove 'eval' now, also? it's been a while.
13:25 bluescreen10 joined
timotimo sergot++ # gsoc work :) 13:25
[Coke] -> meetings 13:26
13:28 raiph joined 13:39 Grrrr joined, d4l3k_ joined 13:40 nebuchad` joined, kst` joined
atroxaper If i have a grammar match object and $match<token-name><part-name> is optional (with ?) then <part-name> will be defined in any way. How can i recognize that <part-name> has data? Just check start and end indexes? 13:40
13:41 donghongbo left, firnsy_ joined, firnsy_ left, firnsy_ joined, sqirrel left
timotimo isn't it supposed to be nil? 13:41
13:41 simcop2387_ joined, simcop2387_ left, simcop2387_ joined, simcop2387_ left
raiph timotimo: I'm pretty sure s/nativecast/nativecallcast/ 13:41
13:41 mattp_ joined
atroxaper timotimo: no. it's defined. 13:41
13:42 simcop2387_ joined
timotimo raiph: it's a sub called "nativecast" 13:42
13:43 sunnavy_ joined, ponbiki joined, Tene_ joined, clkao_ joined
raiph timotimo: k. i got the impression FROGGS renamed it 13:43
13:43 obra_ joined, ponbiki is now known as Guest41171, rhr_ joined 13:44 haroldwu_ joined
jnthn In Rakudo's grammer, we have: 13:44
token infix:sym<(|)> { <!before <sym> <infixish> > <sym> <O('%junctive_or')> }
This is what is thwarting (|)= from working.
Does anybody know why we have taht !before in there?
13:46 dylanwh_ joined 13:47 eternaleye_ joined 13:48 [Sno] left, FROGGS left, nhayashi left, dylanwh_ is now known as dylanwh, eternaleye_ is now known as eternaleye, d4l3k_ is now known as dalek, simcop2387_ is now known as simcop2387 13:49 brrt joined
atroxaper Apocalypse? 13:49
13:50 nhayashi joined
lizmat no, just a net split 13:50
13:54 [Sno] joined
lizmat oddly enough, none of this is visible on irclog 13:54
13:54 rurban1 left, slavik joined 13:55 dmol joined 13:56 treehug88 joined
raiph timotimo++ # p6weekly (only just realized the link wasn't to a draft) 13:56
timotimo :) 13:57
13:57 breinbaas joined, kshannon joined 13:58 smash joined, atta joined, retupmoca joined, betterworld joined, masak joined, Maddingue joined, sivoais joined, Gothmog_ joined, [Coke] joined, masak is now known as Guest26828
atroxaper lizmat: indeed 13:59
lizmat moritz: you still here ?
14:00 Timbus joined, Guest26828 is now known as masak_grr 14:01 Guest41171 is now known as ponpon
moritz lizmat: yes-ish 14:01
14:01 vike joined, ponpon is now known as Guest18750 14:02 Guest18750 is now known as p0nb1k1, brrt left, yeltzooo joined 14:03 sergot joined
lizmat moritz: is it correct that irclog.perlgeek.de is not logging any of this ? 14:06
jnthn guesses it's on the other side of a netsplit... 14:07
14:08 felher joined
moritz lizmat: well, the only thing I could do is kill the bot and restart it, and hope that it ends up on "our" side of the netsplit 14:08
(CAP: IRC favors A over C) 14:09
timotimo "new ticket: remove eval from Will Coleda" reads very weird :)
14:09 ingy joined, FROGGS joined
moritz :-) 14:10
14:10 avuserow joined, lelf` joined, rurban1 joined
jnthn haha :) 14:11
14:11 woosley joined
FROGGS moritz: the logger does not log 14:11
14:11 ilbot3 joined
moritz FROGGS: see above :-) 14:11
FROGGS moritz: confirmed :o) 14:12
14:12 lelf left
[Coke] m: say EVAL(88); 14:13
camelia rakudo-moar 904433: OUTPUT«===SORRY!=== Error while compiling /tmp/liQsKGEJ5W␤Calling 'EVAL' will never work with argument types (int)␤ Expected any of: :(Str $code, Any :lang($lang) = { ... }, PseudoStash :context($context))␤at /tmp/liQsKGEJ5W:1␤---…»
[Coke] Also in a spectest - Should EVAL be spec'd to take a Cool in that case?
lizmat maybe we need an EVAL(Any x) { EVAL x.Str } ? 14:14
[Coke] Isn't that what Cool is for?
so, s/Any/Cool/ in your example.
lizmat does Cool include Buffer ?
14:15 synopsebot joined
[Coke] r: say Str ~~ Cool; 14:15
FROGGS m: say Buf ~~ Cool
camelia rakudo-jvm 904433: OUTPUT«(timeout)» 14:16
..rakudo-{parrot,moar} 904433: OUTPUT«True␤»
rakudo-moar 904433: OUTPUT«True␤»
[Coke] I suspect Buf shouldn't be in Cool these days.
moritz ilbot3 is back from the dead. 14:17
14:18 silug joined
[Coke] the EVAL(88) test was added by FROGGS++ 5 months ago. 14:18
FROGGS O.o 14:19
are you sure?
14:22 chenryn joined, ajr_ left
[Coke] no. :) 14:22
5bab36fd (Tobias Leich 2014-01-01 22:37:33 +0100 69) is EVAL(88), 88,
ah, no, just eval/EVAL 14:23
14:23 guru joined, guru left
FROGGS see :o) 14:24
masak_grr there should be a version of git-blame which asks "who *added* this code" rather than "who last *changed* this code"
also, grr!
lizmat [Coke]: so are you saying we should remove eval() ?
is 6 months enough for a deprecation cycle ?
dalek kudo/nom: b764567 | jnthn++ | src/Perl6/Grammar.nqp:
Restructure infixish to be more in line with STD.

This just aids parsing; the now-enabled extra cases will need some AST generation improvements too.
14:25
14:26 brrt joined
masak_grr m: sub foo(&mystery) { &mystery q[say "OH HAI"] }; foo(&EVAL) 14:26
camelia rakudo-moar 904433: OUTPUT«===SORRY!=== Error while compiling /tmp/juEAcZku3L␤Two terms in a row␤at /tmp/juEAcZku3L:1␤------> sub foo(&mystery) { &mystery ⏏q[say "OH HAI"] }; foo(&EVAL)␤ expecting any of:␤ postfix␤ …»
masak_grr m: sub foo(&mystery) { &mystery(q[say "OH HAI"]) }; foo(&EVAL)
camelia rakudo-moar 904433: OUTPUT«OH HAI␤» 14:27
[Coke] lizmat: (eval) yes, we need to remove it eventually. Doesn't have to be today, but needs to happen before 6.0
original "eval numbers should work" was added Tue Jul 21 17:33:37 2009 by kyle
14:27 carlin joined
[Coke] Given current spec, I wouldn't expect it to work. 14:28
masak_grr m: sub foo(&mystery) { my $x = 42; &mystery(q[$x = "escape analysis, pfah!"]); say $x }; foo(&EVAL) 14:29
camelia rakudo-moar 904433: OUTPUT«escape analysis, pfah!␤»
carlin github.com/perl6/roast/commit/62f3b9305ece is where that test was first added 14:30
[Coke] carlin: yes, that one. 14:31
carlin github.com/perl6/roast/commit/ea4d...a30f5374R1
that's where it was changed
masak_grr I just read shop.oreilly.com/product/9780596101992.do a bit more carefully, and it says "eval() in JavaScript should have been a keyword -- that would have solved so many static analysis headaches" 14:32
[Coke] masak_grr: any thoughts on EVAL being a macro as per spec? (right now it's a multi)
masak_grr [Coke]: EVAL being a macro sounds odd -- what compile-time effects is it trying to have? EVAL has *runtime* effects. 14:34
[Coke] Iunno. Spec says macro, 'sall. 14:35
moritz masak_grr: it has weird scoping
jnthn I think it's only macro in so far as the compiler is specially aware of it
Already the optimizer looks for the name EVAL to show up
masak_grr moritz: so do attributes, and they're not macros.
jnthn And if it doesn't, goes optimizing.
masak_grr jnthn: did you see the evaluation I did above? any opinions on that? 14:36
jnthn I think passing EVAL around is erroneous.
Unless we make it a macro 14:37
14:37 Alina-malina left
masak_grr I wonder if EVAL shouldn't be a statement prefix, then. 14:37
jnthn In which case it *can* work, 'cus the macro can replace it with some primitive that is not first class, but still optimizer recognizable. :)
But oh, it'd not know it was a macro
So back to square one :)
masak_grr yep.
jnthn I'll stick with "erroneous, on your own head be it" :) 14:38
14:38 Alina-malina joined
masak_grr I can accept/agree with that. 14:38
I just wonder if instead of the useless capitalization, we should actually limit the power of EVAL somehow. 14:39
for example by making it a keyword.
then you *can't* assign it.
jnthn True :)
14:39 locsmif joined
jnthn So far as escape analysis goes, anything in a lexical must be considered as escaping in absence of proof otherwise. 14:40
masak_grr well, my point was that anything might go on inside of the EVAL, and we don't even know it's an EVAL. 14:41
I'd much rather the language have a "nope" attitude to bad stuff, than an "on your head be it" attitude.
the *only* use case I can think of for assigning/rebinding &EVAL to other things, is to mess up static analysis. 14:42
14:42 lelf` is now known as lelf 14:43 btyler joined 14:47 bowtie joined
FROGGS timotimo: what happened to that? irclog.perlgeek.de/moarvm/2014-05-11#i_8709334 14:47
I get that right now :o(
14:47 lelf left 14:48 lestrrat joined
timotimo that's with my spesh dump sorting thingie? 14:48
FROGGS eww, shutting down my windows vm helps >.< 14:49
timotimo yeesh :\ 14:50
FROGGS this virtualbox tends to make trouble on my box... :/
timotimo i'm afraid the current state of the spesh-diff script may not reflect the actual contents of the spesh output any more
FROGGS timotimo: I'm not using that script, I'm just using shell() 14:52
timotimo oh, ok
14:56 xinming_ is now known as xinming 14:58 bluescreen10 left 14:59 bluescreen10 joined 15:00 sqirrel joined 15:01 locsmif left
atroxaper I have a difficult question... If a have 'my $a = 1; sub b() {say $a;}; $a = 5; b()' than i will have '5'. What should i do to have '1'? I mean how can i customize a sub while its definition? 15:03
I know that in JavaScript I will get '1' in that case. 15:04
nwc10 I see "moar" in the filename of the failing thing t/spec/S06-advanced/wrap.rakudo.moar
masak_grr atroxaper: first off, no you won't. 15:05
nwc10 is there an analagous JVM and Parrot failing thing?
masak_grr atroxaper: > var a = 1; function b() { console.log(a) }; a = 5; b() 15:06
atroxaper: 5
15:06 teodozjan left, dayangkun_ left
masak_grr atroxaper: secondly, the way 5 comes out is pretty sane and the semantics you suggest doesn't make much sense at all. 15:06
atroxaper masak_grr: ok. It's my mistake :)
timotimo m: my $a = 5; sub b($a = $a) { say $a }; $a = 1; b(); 15:07
camelia rakudo-moar 904433: OUTPUT«Type check failed in binding $a; expected 'Any' but got 'Mu'␤ in sub b at /tmp/zuz521jt7_:1␤ in block at /tmp/zuz521jt7_:1␤␤»
timotimo huh, what?
m: my $a = 5; sub b($ia = $a) { say $ia }; $a = 1; b();
camelia rakudo-moar 904433: OUTPUT«1␤»
15:07 denis_boyun_ left
timotimo hm. 15:07
masak_grr Perl 6 isn't Python. 15:08
timotimo oh, you caught me! :)
masak_grr that is, that default param isn't evaluated once at function definition time.
atroxaper masak_grr: my example is bad i know. I want to pass a sub as argument to another sub. And i'm not sure will it works or not)
masak_grr atroxaper: oh, that bit works.
atroxaper: but you didn't do that :0
m: sub twice(&action) { &action() for ^2 }; twice( sub { say "OH HAI" } ) 15:09
camelia rakudo-moar 904433: OUTPUT«OH HAI␤OH HAI␤»
15:09 bluescreen10 left
atroxaper masak_grr: but what if "OH HAI' is some $var 15:09
masak_grr atroxaper: talk about an XY problem! you want to pass a sub to another sub, and you end up asking about crazy lexical behaviors?! was there a missing step in the middle that you omitted? :P 15:10
atroxaper: then that var will be evaluated in the context of the passed sub.
the anonymous one, in this case.
m: my $greeting = "mblhf!"; sub twice(&action) { &action() for ^2 }; $greeting = "yo"; twice( sub { say $greeting } ) 15:11
camelia rakudo-moar 904433: OUTPUT«yo␤yo␤»
masak_grr m: my $greeting = "mblhf!"; sub twice(&action) { &action() for ^2 }; $greeting = "yo"; twice( sub { say $greeting; $greeting = "you rock, bot!" } )
camelia rakudo-moar 904433: OUTPUT«yo␤you rock, bot!␤»
[Coke] m: my $grt; say $grt; $grt = "hi"; 15:12
camelia rakudo-moar 904433: OUTPUT«(Any)␤»
[Coke] so why does that say Any, but your two examples give the value that was set after the variable was used? 15:13
er, your -first- example.
masak_grr which example? could you re-run the one you mean?
15:13 masak_grr is now known as masak
[Coke] ... nevermind. the set to "yo" happens outside the def of twice, so it's all fine. would be less confusing with newlines. :) 15:14
atroxaper masak_grr: ok. Thank you. I'll try to review my code :)
masak stopped being _grr :)
atroxaper: no prob. lexical scoping and closures fascinate me. 15:15
I find them very beautiful.
15:15 pdcawley joined
dalek ast: fa5ded7 | coke++ | S29-context/eval.t:
Refer to ticket.
15:16
atroxaper masak: yes. If i'm not mistaken you wrote a post about that recently :)
dalek kudo/nom: 57d8f39 | jnthn++ | src/Perl6/Actions.nqp:
Re-arrange infixish actions to support [[*]]= etc.
15:17
masak atroxaper: maybe strangelyconsistent.org/blog/lexpad...eed-fixups ?
atroxaper masak: yes! 15:18
masak atroxaper: I also wrote about closures as far back as 2008: strangelyconsistent.org/blog/ill-call-you-back
[Coke] j: eval "1"
camelia rakudo-jvm 904433: OUTPUT«Saw 1 call to deprecated code during execution.␤================================================================================␤Sub eval (from GLOBAL) called at:␤ /tmp/elsrZKJenB, line 1␤Please use 'EVAL' instead.␤-------------------------------…»
jnthn masak: Aww, you didn't make it "call be back maybe"? :P
masak jnthn: too early? 2008? 15:19
jnthn m: my @foo = [>>+<<] ([1..3],[1..3],[1..3]); say @foo
camelia rakudo-moar 904433: OUTPUT«Type check failed in binding op; expected 'Any' but got 'Mu'␤ in sub METAOP_REDUCE_LEFT at src/gen/m-CORE.setting:17409␤ in block at /tmp/DK_JtE0jH_:1␤␤»
jnthn Neato, I accidentally fixed that too. :)
[Coke] ^^ that might mean it's safe to remove these skips: #?rakudo.jvm skip 'tracebacks in deprecations'
15:20 SamuraiJack left, SamuraiJack joined
dalek ast: a47a750 | jnthn++ | S03-metaops/reduce.t:
Untodo a now-passing [>>+<<] test for Rakudo.
15:20
15:22 Rotwang joined, hoverboard joined
raiph Does host07.perl6.com:8080/report use Rakudo / NQP / MoarVM HEADs ? 15:24
15:25 chenryn left, shabble joined, shabble left 15:26 [Sno] left
dalek ast: 11b5f96 | jnthn++ | S03-operators/assign.t:
Add tests for [+]=, [[+]]=.
15:26
15:31 kst` is now known as kst 15:32 kaleem left
jnthn m: my $s = set(1,2); $s (|)= set(1, 3); say $s; 15:33
camelia rakudo-moar 904433: OUTPUT«===SORRY!=== Error while compiling /tmp/UtwRbEaxBI␤Two terms in a row␤at /tmp/UtwRbEaxBI:1␤------> my $s = set(1,2); $s ⏏(|)= set(1, 3); say $s;␤ expecting any of:␤ postfix␤ infix stopper…»
brrt nqp revision is wrong 15:35
jnthn ?
brrt that was cryptic, i'm sorry, i'll explain; i can't build nqp master on moar-jit, because moar-jit misses nativecallcast 15:36
but configure.pl thinks moarvm is recent enough
jnthn Uh, yeah
That's the trouble with the incrementing number :)
It's merging...it's merging time!
brrt oh, ok, this is expected :-)
jnthn > my $s = set(1,2); $s (|)= set(1, 3); say $s; 15:37
set(1, 2, 3)
Well, that works if I just delete stuff... :)
Now let's spectest and see if said stuff had a raisan d'etre... 15:38
Uh, raison...but the mental image was pretty good as I had it... :)
rurban rakudo p+m spectests: gist.github.com/rurban/d05e77ae0369a53861d6 15:39
15:39 anaeem1 left 15:40 anaeem1_ joined
FROGGS rurban: the passed todo's are due to RELEASE_6_5_0-12-gb1b4b87? 15:44
masak by the way, this is what it was like programming on Rakudo in 2008: strangelyconsistent.org/blog/rakudo...ugly-weird 15:45
FROGGS rurban: that seems to be a regression perhaps: gist.github.com/rurban/d05e77ae036...e1-txt-L28
15:45 anaeem1_ left
FROGGS rurban: at least when I compare to: github.com/coke/perl6-roast-data/b....out#L2905 15:45
masak smiles at his younger self rejoicing at the 'given' keyword but sorrowfully wishing he could do list assignment
you young'uns don't know how good you have it. 15:46
FROGGS A good deal of basic things that you as a Perl 5 user might expect to work, mostly do. This includes $_, my declarations, if/while/for, sub, scalars, arrays[...]
that sounds a bit like my posts about v5 :o)
masak: when I think about my first patches to rakudo/nqp it gets really funny :o) 15:47
15:47 kaleem joined
FROGGS like that when you had a grammar and you matches something in an outer token, the inner tokens kept the captures :o) 15:47
stuff like that
masak oh ouch
FROGGS or that our scoped vars could not be initialized when you declare them 15:48
and, that was just about 1.5 years ago I think
dalek kudo/nom: 178c8e7 | jnthn++ | src/Perl6/Grammar.nqp:
Remove hack that kept (|)= & co from working.

It's not clear why these <!before ...>s were there; perhaps they were to work around a historical bug. Removing them causes no new spectest fails, and makes (|)=, (&)= and so forth work.
15:49
jnthn Anybody wants to volunteer to find the RT about this and mark it testneeded, or better, turn it into a test or two? :) 15:50
masak 15:51
er, I volunteer to the "find" part, because I'm good at that
jnthn Surely you can write two tests? :) 15:52
masak (and because I wrote 50% of the subject lines of open tickets in RT)
15:52 sqirrel left
jnthn my $s = set(1,2); $s (|)= set(1, 3); # there, that's half of one ;) 15:52
masak I'll find the RT ticket for you, and then we'll see :) 15:53
knowing myself, I generally don't get as far as actually producing the tests.
it's not so much "I don't wanna" and more "these are the things I do well" 15:54
15:54 FROGGS[mobile] joined
jnthn Aye, I guess you're still learning testing, given how much time you spend in TDD courses... ;) 15:55
masak :P
15:55 fhelmberger left, denis_boyun joined
jnthn r: class C { my $.x = 42; }; C.x.say 15:57
camelia rakudo-{parrot,jvm} b76456: OUTPUT«42␤»
..rakudo-moar b76456: OUTPUT«(Any)␤»
masak jnthn: rt.perl.org/Ticket/Display.html?id=117103 15:59
masak marks it "testsneeded" 16:00
16:00 denis_boyun___ joined, FROGGS left 16:02 denis_boyun left
masak RT++ # in the end, I found it by searching for '(|)' in RT 16:02
16:02 atroxaper left
timotimo jnthn: way cool! 16:03
16:03 atroxaper joined, raiph left 16:05 brrt left 16:07 atroxaper left 16:13 ajr joined, ajr is now known as Guest3193, Guest3193 is now known as ajr_, FROGGS joined 16:16 denis_boyun joined 16:18 denis_boyun___ left 16:20 kaleem left 16:22 cognominal joined
colomon_ Has anyone heard more from TimToady? 16:23
dalek kudo/nom: 95f540d | jnthn++ | src/Perl6/Actions.nqp:
Fix class A { my $.x = 42 } scoping on MoarVM.
kudo/nom: 7b27642 | jnthn++ | src/Perl6/Actions.nqp:
Fix install_method to look at scope consistently.
timotimo oh, huh? 16:25
how was that broken?
dalek ast: 030b17a | jnthn++ | S12-attributes/class.t:
Add test for RT#122087.
16:28
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122087
jnthn cd ..
tssk
carlin how many people actually run the full S32-temporal/local.t test? It looks like it might have been wrong for a while and few noticed it 16:33
because it unless your /etc/timezone is America/New_York most of the tests are skipped
eg. coke's autoroasting skips them 16:34
dalek kudo/nom: 31404a4 | (Elizabeth Mattijsen)++ | src/core/CompUnit.pm:
Default from is 'Perl6' nowadays
16:37
16:38 _slade joined 16:44 SamuraiJack left
dalek ast: 89c59e3 | (Elizabeth Mattijsen)++ | S22-package-format/localfile/NanooNanoo.pm:
Create necessary source files while testing
16:47
ast: 16320f1 | (Elizabeth Mattijsen)++ | S (4 files):
Merge branch 'master' of github.com/perl6/roast
ast: 62446ba | (Elizabeth Mattijsen)++ | S22-package-format/local.t:
Some more CompUnit testing
16:55 dakkar left 17:03 guru joined, ajr_ left, guru is now known as Guest34386, Guest34386 is now known as ajr_, [particle] left 17:10 rurban1 left 17:14 lelf joined, lelf left 17:15 lelf joined
dalek ast: 6429cf8 | (Elizabeth Mattijsen)++ | S06-advanced/wrap.t:
De-tab and get indenting right
17:15
17:18 rurban1 joined 17:19 itz_ joined
[Coke] carlin: happy to take a mini patch for: github.com/coke/perl6-roast-data/b...rot.sh#L19 and friends to add env vars that are needed. 17:23
good catch.
17:26 itz__ joined
dalek rl6-roast-data: d9915a5 | coke++ | / (6 files):
today (automated commit)
17:28
17:29 nebuchad` is now known as nebuchadnezzar, ajr_ left 17:34 brrt joined, xusia joined, atroxaper joined 17:38 atroxaper left, xusia left 17:45 xusia joined 17:47 kaleem joined
dalek ast: d9f950a | (Elizabeth Mattijsen)++ | S06-advanced/wrap.t:
Fudge tests for RT #122259
17:48
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122259
17:49 FROGGS[mobile] left 17:51 [Sno] joined 17:53 Sqirrel joined 17:56 guru joined 17:57 guru is now known as Guest75086, Guest75086 is now known as ajr_
carlin m: $*TZ / 60 / 60 17:57
camelia ( no output )
carlin m: say $*TZ / 60 / 60 17:58
camelia rakudo-moar 31404a: OUTPUT«0␤»
carlin m: say $*TZ
camelia rakudo-moar 31404a: OUTPUT«0␤»
17:58 woolfy1 joined
carlin those tests in S32-temporal/local.t seem to rely on .local being able to convert to DST based on the date 17:59
17:59 kaleem left
carlin is that supposed to work? 18:00
dalek kudo/nom: 3bd00dd | (Elizabeth Mattijsen)++ | src/core/control.pm:
eval() is no more, long live EVAL()
18:01
flussence > say $*TZ / 60 / 60␤1
guess the p6eval server is in UTC.
18:01 itz__ left
carlin yeah 18:01
18:02 treehug88 left, SamuraiJack_ left 18:05 atroxaper joined 18:10 atroxaper left 18:12 Sqirrel left 18:22 darutoko left
dalek kudo/nom: 95e3ca4 | (Elizabeth Mattijsen)++ | src/core/ (2 files):
Make EVAL() and .EVAL really Cool
18:22
carlin if I do `DateTime.new("2014-02-01T10:00:00").local` is it really supposed to know I was in DST in February and adjust the timezone accordingly? 18:23
18:24 anaeem1 joined
dalek ast: 6e71b0b | (Elizabeth Mattijsen)++ | S (2 files):
Track disappearence of Cool.eval and eval()
18:24
kudo/nom: e9fad62 | (Elizabeth Mattijsen)++ | docs/ChangeLog:
Note that Cool.eval and eval() are now gone
18:26
vendethiel wow, that's a hell of a busy week ...
jnthn so progress... 18:27
timotimo vendethiel: hm? 18:28
hm. it occurs to me that i didn't mention anything ven did in my weekly; what did i miss? 18:29
vendethiel "<masak_grr> Perl 6 isn't Python." <- oh, I must've misread the channel name :-P 18:30
jnthn NO LOL 18:31
18:33 Tene_ is now known as Tene
timotimo NO EULOL 18:33
masak NO PROJECT EULER 18:34
vendethiel timotimo: I started working on my beginner tutorial and on a learnXinYminutes. 18:35
(sadly, I got caught up by time, as last week was <IRL> in full caps, and I have med appointments for the whole week, but I'll try to get stuff done :).)
dalek ast: 4af01d7 | (Elizabeth Mattijsen)++ | S29-context/eval.t:
Unfudge now passing EVAL tests (and add .EVAL)
18:36
timotimo oke
looking forward to report on some nice stuff in the future :)
vendethiel I'll change the way I did the learnXinYminutes tho, because starting with the operators is ... hehe :P
18:37 itz__ joined
timotimo well, perl is an operator-driven language or how did that quote go? 18:37
vendethiel It is. That's why I should try and not show it directly ... 18:40
FROGGS operator-rich is the right term I think
lizmat FROGGS: regarding 'perl6' and 'Perl6' 18:41
if I change the default language of EVAL to 'Perl6'
I get: No compiler available for language 'Perl6'
timotimo lizmat: aye, it needs a corresponding nqp::regcomp call somewhere
FROGGS yeah, rakudo/nqp use 'perl6' internally 18:42
lizmat having them differently, is asking for problems in the future, I would say
FROGGS true
lizmat so shall we try to standardize on 'perl6' or 'Perl6' ?
FROGGS I'd like to see Perl6
lizmat jnthn: do you have an opinion? ^^^ 18:43
FROGGS we talked about this when the JVM bindings were made
18:44 itz__ left
FROGGS and IIRC I "won" that time 18:44
(writing that language name correctly, that is)
because :from and friends are about a language, not about a compiler or interpreter
jnthn I think as far as regcomp goes it may be a bit of a hodge podge already 18:45
FROGGS and c or jvm feels odd
jnthn I'm pretty srue it's QAST not qast :)
lizmat ok, I'll try to get it changed to Perl6 then ? 18:46
jnthn doesn't feel strongly on it
I think let what you put in :from<...> drive it. 18:47
FROGGS exactly what I think, yes
vendethiel FROGGS: yeah, but I don't want the whole tutorial to be about nq, ff and friends :P
FROGGS vendethiel: yeah :o) 18:48
vendethiel
.oO( nq - "not quite" operator )
18:58 isBEKaml joined
[Coke] lizmat++ 18:58
as long as it isn't Perl<nonbreakingspace>6
jnthn Uh, yes, don't do that. :) 18:59
vendethiel which reminds me ... isn't [>>+<<] a hyper²-operator ?
[Coke] so, my strategy of "flip randomly to a skipped test in roast" seems to make other people quite effective. :) 19:00
I call it the Cartman operator.
19:00 btyler_ joined
vendethiel should I explain operator categories early on ? (ie infix etc) 19:02
and right/left/non-associativity
FROGGS categories perhaps yes, associativity maybe not so 19:03
19:03 btyler left 19:05 hummeleB1 joined
vendethiel well, it's still learnXinYminutes, so ... but yeah 19:05
19:05 molaf left
dalek ast: 320794d | (Elizabeth Mattijsen)++ | S29-context/eval.t:
Add test for Buf.EVAL
19:13
19:17 brrt left
dalek p: 346e6e9 | jnthn++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
Use a fresh register for decont'd callee.
19:17
19:19 isBEKaml left 19:34 denis_boyun left 19:40 [particle] joined 19:42 itz__ joined 19:44 itz_ left 19:45 [particle] left 19:46 treehug88 joined 19:51 ren1us joined 19:52 [particle] joined
ren1us in keeping with my unfortunate tradition of being truly useless other than breaking everything, quick operator question: 19:53
masak :) 19:54
FROGGS hehe
masak ren1us++ # breaking everything
vendethiel (recognizing breaking stuff is good)++
ren1us m: multi sub infix:<<|>>(Any $lhs, Any $rhs) { say $lhs; }; 5<|>2;
timotimo you cannot learn from nonfailure, can you?
camelia rakudo-moar e9fad6: OUTPUT«===SORRY!=== Error while compiling /tmp/qULQipLfXb␤Two terms in a row␤at /tmp/qULQipLfXb:1␤------> (Any $lhs, Any $rhs) { say $lhs; }; 5<|>⏏2;␤ expecting any of:␤ postfix␤ infix stopper␤…»
vendethiel well, breaking what's broken but we don't know it's (yet)
timotimo m: multi sub infix:['<|>'](Any $lhs, Any $rhs) { say $lhs }; 5 <|> 2;
camelia rakudo-moar e9fad6: OUTPUT«===SORRY!===␤Cannot find method 'ast'␤»
masak ren1us: if you don't do whitespace after the 5, it's not an infix, it's a postfix. 19:55
timotimo m: multi sub infix:<< <|> >>(Any $lhs, Any $rhs) { say $lhs }; 5 <|> 2;
camelia rakudo-moar e9fad6: OUTPUT«5␤»
19:55 _slade left
timotimo i think infix:<<|>> still refers to only | 19:55
vendethiel yea
ren1us timotimo: yeah, that's what i was fighting with
vendethiel it's just << and >> (interpolating <>)
timotimo infix:<< ... >> doesn't interpolate actually
FROGGS m: multi sub infix:('<|>')(Any $lhs, Any $rhs) { say $lhs; }; 5<|>2;
camelia rakudo-moar e9fad6: OUTPUT«===SORRY!=== Error while compiling /tmp/tkwb_4wMbe␤Two terms in a row␤at /tmp/tkwb_4wMbe:1␤------> (Any $lhs, Any $rhs) { say $lhs; }; 5<|>⏏2;␤ expecting any of:␤ postfix␤ infix stopper␤…»
FROGGS m: multi sub infix:('<|>')(Any $lhs, Any $rhs) { say $lhs; }; 5 <|> 2; 19:56
camelia rakudo-moar e9fad6: OUTPUT«===SORRY!=== Error while compiling /tmp/LHjAbEZgbN␤Preceding context expects a term, but found infix | instead␤at /tmp/LHjAbEZgbN:1␤------> (Any $lhs, Any $rhs) { say $lhs; }; 5 <|⏏> 2;␤»
timotimo i'm not sure why infix:['...'] doesn't work at the moment
i *think* it used to work at some point
19:56 itz_ joined
FROGGS m: multi sub infix:«<|>»(Any $lhs, Any $rhs) { say $lhs; }; 5 <|> 2; 19:56
camelia rakudo-moar e9fad6: OUTPUT«5␤»
vendethiel m: my %a = foo => 2; my $b = 'foo'; say %a<<$b>>;
camelia rakudo-moar e9fad6: OUTPUT«2␤»
vendethiel timotimo: ^ ?
oh, you mean infix:<< stuff here >> to declare an op. 19:57
19:57 kivutar joined
timotimo vendethiel: that's a different << >> 19:57
:)
ren1us so there's just a whole pile of symbols that can be used to enclose the actual operator, and it doesn't really matter which pair i use as long as it's not the same as the symbol in the actual op? 19:58
timotimo well, the closer must'nt be part of the operator 19:59
xfix Well, there is infix['[\'><«»]'] for declaring insane operators.
Not that you will ever need it.
(seriously, why anyone would want ['><«»] operator?) 20:00
rn: sub infix:<perl 6 is best language ever, it allows defining new operators>($a, $b) { say "$a this works$b" }; "Well," perl 6 is best language ever, it allows defining new operators "..." 20:03
camelia rakudo-{parrot,jvm,moar} e9fad6, niecza v24-109-g48a8de3: OUTPUT«Well, this works...␤» 20:04
xfix rn: sub infix:<perl 6 is best language ever, it allows defining new operators>($a, $b) { say "$a this works$b" }; "Well," perl 6 is best language ever, it allows defining new operators "..."
camelia rakudo-{parrot,jvm,moar} e9fad6: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Two terms in a row␤at /tmp/tmpfile:1␤------> $b) { say "$a this works$b" }; "Well," ⏏perl 6 is best lang␤ expecting any of:…»
..niecza v24-109-g48a8de3: OUTPUT«===SORRY!===␤␤Confused at /tmp/tmpfile line 1:␤------> is works$b" }; "Well," perl 6 ⏏is best language ever, it ␤␤Parse failed␤␤»
xfix I'm almost sure it once worked.
Well, whatever.
Also, perlcabal.org is lagging...
Not anymore. 20:05
Well, it seems there are multiple tests running using 100% of CPU total. They are all stuck on t/01-file-find.t. 20:06
20:07 atroxaper joined
xfix gist.github.com/xfix/e39d7a8baf31f0ea45e5 20:07
Sure something went wrong.
20:08 araujo joined, araujo left, araujo joined
ren1us huh. pasting in « and » has a tendency to break the moar repl, it seems. hooray for utf-8. 20:10
FROGGS :/ 20:11
20:11 atroxaper left
ren1us whatever, i'm just using the repl for fiddling anyway. 20:12
FROGGS I never use it 20:14
vendethiel unicode-- # unicode hater ! 20:15
ren1us i like using it on the side as i write my actual code in another window, just because i often need to do some fiddling to get the syntax right
vendethiel unicode++ #it's cool, though
20:16 rurban1 left
ren1us vendethiel: i like widescale unicode support as a concept, but i'd like it more if it didn't imply the need to memorize character codes 20:16
20:21 psch joined
psch evening #perl6 o/ 20:23
20:24 khisanth_ joined
perigrin didn't realize that #perl6 was uneven ... should have though ... knowing how many people in here are odd. 20:24
masak ahoj psch
psch successfully un-broke the "missing OUTER on jvm"-thingy in the debugger just now o/
now for "doing it properly"... :)
lue ren1us: it doesn't, there are codepoint-less input methods. I use compose keys, for example :) 20:25
yoleaux 08:04Z <atroxaper> lue: hello, my not finished yet solution is github.com/atroxaper/Pod-SAX. You can see Pod::SAX::Reformer class and its test. Main feature that my Callees makes a calls for start of Pod object, end of Pod object, and 'in' Pod object that trigger if .content has not Pod object like String. And for each Pod type we can make many callbacks for many cases. Like only for L<> but not for C<>, I think it is more …
flexible and maintenanc[fu
psch hey masak :)
20:25 rurban1 joined
FROGGS psch++ # \o/ 20:26
ren1us lue: ah, that works too. 20:27
lue « is just <Multi> + < + < , and ☃ is just <Multi> + & + s + n + o + w, and... :) 20:28
(there's also the OSX-y solution of setting up third/fourth/etc. levels for your keyboard) 20:29
ren1us m: multi sub circumfix:<? ?>($in) { say $in; }; ?5?; # is this just breaking because there are prefix/postfix operators taking higher precedence? also lue++ 20:31
camelia rakudo-moar e9fad6: OUTPUT«===SORRY!=== Error while compiling /tmp/tRLsq8dntm␤Two terms in a row␤at /tmp/tRLsq8dntm:1␤------> ub circumfix:<? ?>($in) { say $in; }; ?5⏏?; # is this just breaking because there␤ expecting any of:␤ …»
lue m: multi sub circumfix:<☃ ☄>($in) { say $in; }; ☃5☄;
camelia rakudo-moar e9fad6: OUTPUT«5␤»
lue ren1us: seems like it. 20:32
ren1us i almost feel like circumfix should have the highest precedence, since it's the least likely to be triggered and most likely to trigger false positives on other prefix or postfix captures 20:34
jnthn Yes, termish is prefix* term postfix*, roughly.
And a circumfix is a kind of term
It's not that they compete, it's that the circumfix doesn't even get a chance.
20:35 khisanth_ is now known as Khisanth, teodozjan joined 20:37 virtualsue joined 20:52 teodozjan left 20:55 mathw joined 20:59 Guest4485 joined, Guest4485 left, Guest4485 joined, Guest4485 left 21:02 teodozjan joined 21:10 telex left 21:12 telex joined 21:13 virtualsue left, kivutar left 21:17 teodozjan left 21:18 rindolf left 21:22 ivanshma` joined 21:31 SevenWolf joined
Mouq p: say await start { 1 + 1 } 21:40
camelia rakudo-parrot e9fad6: OUTPUT«===SORRY!=== Error while compiling /tmp/uSyZHa_ZZu␤Undeclared routines:␤ await used at line 1␤ start used at line 1. Did you mean 'spurt', 'sqrt', 'sort'?␤␤»
PerlJam q!
Mouq I kinda wish they were defined syncronously for Parrot, so you could write code for all three compilers 21:41
21:42 itz_ left 21:46 ren1us left 21:49 p0nb1k1 is now known as ponbiki, rje_ joined
rje_ perl6: say "hello, world!" 21:49
camelia rakudo-{parrot,jvm,moar} e9fad6, niecza v24-109-g48a8de3: OUTPUT«hello, world!␤»
21:54 rje_ left 21:55 BenGoldberg joined 22:05 ajr_ left 22:08 atroxaper joined, Rotwang left 22:12 atroxaper left 22:20 carlin left, _slade joined 22:24 treehug88 left 22:25 anaeem1 left 22:30 jnap left 22:32 jnap joined 22:43 dmol left 22:45 btyler_ left
[Coke] fixed feather. 22:46
looks like I had the rakudo-star-daily process still running there, and the last few weeks it was hanging on that test file. probably been getting slower for a while. killed the cronjob, killed all procs running. 22:50
dalek kudo/lex2loc2: f4fc6d4 | jnthn++ | src/vm/moar/Perl6/Ops.nqp:
Fix a .DEFINITE code-gen bug.

Should not blindly re-use registers that may belong to locals.
22:52
22:52 dalek left 22:53 dalek joined, ChanServ sets mode: +v dalek 22:54 mathw left
lizmat Mouq: well volunteered :-) 22:58
Mouq lizmat: Would that be acceptable behavior though? 23:02
p: Channel.new
camelia rakudo-parrot e9fad6: OUTPUT«===SORRY!=== Error while compiling /tmp/M8sdlq9p_V␤Undeclared name:␤ Channel used at line 1␤␤»
Mouq m: Channel.new
camelia ( no output )
lizmat maybe the CurrentThreadScheduler could provide some inspiration? 23:03
well, that was disappointing :-( 23:11
23:11 PZt joined
lizmat 4-2 :-( 23:11
jnthn Yeah :/
lizmat on the brighter side: more time for hacking now :-) 23:12
jnthn yay :) 23:17
The lex2loc branch build agaisnt latest Moar master seems clean to me. Testing welcome. 23:19
23:19 cooper_ joined
jnthn Will bump revisions and merge it tomorrow evening, if all looks good. 23:19
lizmat looks at s/perl6/Perl6/ and decides to sleep on it 23:20
gnight, #perl6! 23:21
Mouq 'night lizmat!
jnthn sleeps also 23:22
'night all
dalek ast: af01013 | coke++ | integration/advent2013-day14.t:
this test is marked as requiring concurrency

  ... so parrot won't even try to run it now.
23:25
kudo/nom: 4cad54f | coke++ | t/spectest.data:
Mark this test as requiring concurrency
woolfy1 lizmat does not fully realise that the Dutch team still has to play one more game, against Brazil, this Saturday. And if the Dutch lose that, they're real losers. Grr. 23:28
bedtime
23:30 hoverboard left 23:32 rindolf joined
Mouq 'night jnthn, woolfy 23:32
dalek ast: 58c8aea | coke++ | S17-channel/winner.t:
this test is marked as requiring concurrency

  ... so parrot won't even try to run it now.
23:33
cognominal woolfy1: the real loosers are the brazilians citizens. That circus costs a lot of money and any money made goes in already deep pockets. 23:37
23:46 ren1us joined 23:47 xragnar_ joined, xragnar_ is now known as xragnar
[Coke] we have a uniname that takes an int, but it's not spec'd. 23:48
also: uninames is NYI, and that looks like LHF.
dalek ast: 3c9bf20 | coke++ | S (2 files):
use standard "NYI" text
23:52
[Coke] down to 906 rakudo fudges that aren't ticketed or marked NYI 23:53
.tell lizmat is S03-metaops/hyper.t:659:#?rakudo skip 'EVAL(Buf)' easily fixable? (I tried unskipping it, no love)
yoleaux [Coke]: I'll pass your message to lizmat.
Mouq [Coke]++ 23:55
retupmoca m: my $s = Supply.new; my $m = $s.grep({ $_ == 1}).map({ say $_; (x => $_).hash }); $m.tap({say 'a'}); $m.tap({say 'b'}); $s.more(1) 23:58
camelia rakudo-moar e9fad6: OUTPUT«1␤a␤b␤1␤a␤b␤1␤a␤b␤1␤a␤b␤»
retupmoca ^ if that is correct, then I really don't understand supplies