»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend! | feather will shut down permanently on 2015-03-31
Set by jnthn on 28 February 2015.
00:00 vendethiel left 00:01 BenGoldberg joined
thou r: try { dir('foobar'); CATCH { note "catch block"; } }; note "ALIVE"; # simplified test case, this would work on 2015.03 build 00:01
camelia rakudo-jvm c10232: OUTPUT«catch block␤Failed to get the directory contents of '/home/camelia/foobar': nqp::opendir: unable to get a DirectoryStream␤ in method dir at gen/jvm/CORE.setting:18754␤ in sub dir at gen/jvm/CORE.setting:19080␤ in block <unit> at /tmp/tmpfile:1␤␤»
..rakudo-moar c10232: OUTPUT«catch block␤Failed to get the directory contents of '/home/camelia/foobar': chdir failed: Unknown system error␤ in method dir at src/gen/m-CORE.setting:18994␤ in sub dir at src/gen/m-CORE.setting:19313␤ in block <unit> at /tmp/tmpfile:1␤␤»
thou please comment on issue if anyone knows the right fix. 00:03
thanks!
00:03 thou left 00:05 pierrot left, pierrot joined 00:13 geekosaur joined
raydiak m: try { dir('foobar'); CATCH { default { note "catch block"; } } }; note "ALIVE"; 00:21
camelia rakudo-moar c10232: OUTPUT«catch block␤ALIVE␤»
raydiak goes to comment 00:22
00:24 tinyblak joined 00:26 laouji_ joined 00:29 gfldex left 00:33 tinyblak left, tinyblak joined 00:35 tinyblak_ joined, tinyblak left 00:39 pecastro left, laouji_ left 00:40 laouji_ joined 00:44 laouji_ left 00:46 pecastro joined 00:50 laouji_ joined
TimToady .tell jnthn I don't there's any good reason to support placeholders in { $^a } for @list and not support lambdas; I'd rather lose blocks in loopless if than lose lambdas in list comprehensions 00:56
yoleaux TimToady: I'll pass your message to jnthn.
00:58 tinyblak joined
TimToady .tell jnthn *think (and placeholders make no sense in bare blocks, so that analogy is flawed anyway, plus there is RC code that depends on list comprehensions using lambdas) 01:01
yoleaux TimToady: I'll pass your message to jnthn.
01:01 tinyblak_ left
flussence is "panda install Linenoise" the intended replacement for building rakudo with --use-readline now? 'Cause I just did that, and now I get "Cannot locate native library 'liblinenoise.so'" instead of a REPL... 01:12
labster m: ('cc' x 2.5).perl.say # /me hopes for 5 chars 01:13
camelia rakudo-moar c10232: OUTPUT«"cccc"␤»
labster awwww :P 01:14
flussence
.oO( and panda --help tells me "install/share/perl6/site/36" has no uninstall subcommand... great. )
01:19
b2gills flussence: The way I fixed the liblinenoise.so problem is ^C panda after its built and copy it to the same folder as moar.so 01:42
flussence ah, thanks. I'll just leave it with the default repl for the time being, if I need fancy editing I'll fire up a fancy editor :) 01:44
01:50 rmgk left 01:58 Akagi201 joined 01:59 rmgk joined 02:01 konsolebox joined 02:05 dayangkun joined 02:10 konsolebox left 02:11 konsolebox joined 02:24 rmgk left 02:27 rmgk joined 02:38 aliraju joined 02:39 jack_rabbit joined, davido_ joined 02:40 aliraju left 02:47 ir2ivps4 left 02:48 ir2ivps4 joined 02:49 laouji__ joined 02:52 laouji_ left, noganex_ joined 02:55 noganex left 02:58 vendethiel joined, tinyblak left 03:05 telex left 03:06 telex joined 03:19 tinyblak joined 03:26 hobbs left 03:27 hobbs joined 03:33 davido_ left 03:44 FROGGS_ joined 03:48 FROGGS left
BenGoldberg m: say 'abcdefg' x 0.5 03:49
camelia rakudo-moar c10232: OUTPUT«␤»
04:03 vendethiel left 04:09 kaare__ joined 04:34 BenGoldberg left 04:46 pierrot left 05:04 quester joined 05:07 hobbs left, hobbs joined 05:14 diana_olhovik left 05:21 diana_olhovik_ joined, raiph left 05:22 pierrot joined 05:25 mr-foobar left 05:28 diana_olhovik_ left 05:35 atweiden left 05:46 alini joined 06:02 Foxcool joined 06:03 koo6 joined 06:07 domidumont joined 06:09 diana_olhovik joined 06:12 domidumont left 06:13 domidumont joined 06:18 jack_rabbit left 06:22 FROGGS_ left 06:27 Akagi201 left, Akagi201 joined 06:28 abraxxa joined, abraxxa left 06:29 Akagi201_ joined
moritz m: say dir('nosuchdir').^name 06:30
camelia rakudo-moar c10232: OUTPUT«Failure␤»
06:32 Akagi20__ joined 06:33 Akagi201 left, _mg_ joined 06:35 Akagi201_ left 06:42 espadrine_ joined 06:46 mr-foobar joined 06:49 dolmen joined 06:51 FROGGS joined
FROGGS good morning #perl6 06:52
06:52 RabidGravy joined
masak good morning FROGGS, #perl6 06:54
FROGGS .tell flussence panda does not know how to install dlls
yoleaux FROGGS: I'll pass your message to flussence.
FROGGS hi masak
masak m: say 'abcdefg' x 0.999
camelia rakudo-moar c10232: OUTPUT«␤»
masak m: say 'abcdefg' x i
camelia rakudo-moar c10232: OUTPUT«Can not convert 0+1i to Int: imaginary part not zero␤ in method Int at src/gen/m-CORE.setting:13953␤ in sub infix:<x> at src/gen/m-CORE.setting:1632␤ in block <unit> at /tmp/WmGGwmKyD7:1␤␤»
labster hail FROGGS, masak
masak .oO( rain FROGGS, masak. sleet FROGGS, masak. snow FROGGS, masak. ) 06:55
labster I thought "ave" might be too archaic 06:56
06:56 XP joined 06:57 darutoko joined 06:58 rurban joined
masak not if the listener is named "Maria". 06:59
or "Cesar".
dalek kudo/nom: 5455ace | TimToady++ | src/core/Complex.pm:
use new complex literal notation for .perl
07:04
kudo/nom: 480bd7f | TimToady++ | src/core/ (8 files):
implement 'is nodal'
07:05 konsolebox left 07:08 dolmen left 07:09 konsolebox joined
XP test 07:11
FROGGS ok 1 - test
XP start hacking...
FROGGS :o)
XP attack victim no. 1 07:12
shell code executing...
TimToady there are probably a couple of tests failing from the nodal change, which I'll look at tomorrow if no one else does first 07:13
XP victim no 1 killed. selecting another victim...
07:13 tadzik left
moritz 'is nodal' is this know-where-to-stop-on-hypers thingy, right? 07:14
TimToady yup 07:15
m: say [[1,2,3],[4,5,6]]».abs
camelia rakudo-moar c10232: OUTPUT«3 3␤»
TimToady that will be different in about 5 minutes 07:16
07:16 alini left
TimToady m: say [[1,2,3],[4,5,6]]»i # likewise this 07:16
camelia rakudo-moar c10232: OUTPUT«0+3i 0+3i␤»
moritz TimToady++ 07:18
TimToady m: say [[1,2,3],[4,5,6]]».abs 07:19
camelia rakudo-moar 480bd7: OUTPUT«1 2 3 4 5 6␤»
TimToady m: say [[1,2,3],[4,5,6]]».abs.perl
camelia rakudo-moar 480bd7: OUTPUT«([1, 2, 3], [4, 5, 6])␤»
TimToady m: say [[1,2,3],[4,5,6]]»[1]
camelia rakudo-moar 480bd7: OUTPUT«2 5␤»
TimToady m: say [[1,2,3],[4,5,6]]»i.perl 07:20
camelia rakudo-moar 480bd7: OUTPUT«([<0+1i>, <0+2i>, <0+3i>], [<0+4i>, <0+5i>, <0+6i>])␤»
TimToady m: say [[1,2,3],[4,5,6]]».reverse.perl
camelia rakudo-moar 480bd7: OUTPUT«([3, 2, 1]<>, [6, 5, 4]<>)␤»
07:21 XP left
TimToady one thing I didn't quite solve is looking up methods on the proto; at the moment I have to put 'is nodal' on all the multis 07:21
for operators, though, marking the proto suffices 07:22
07:22 XP joined
FROGGS that might be the same bug that does not export multi subs when the proto is marked 'is export' 07:23
07:24 XP left
TimToady could be, though in this case, I have to do a trial dispatch with .can, and I just look at the 1st candidate, which is a multi 07:24
moritz failures in four spectest files 07:25
TimToady cause the problem is that we generate a closure around the method for hyper(), which hides the trait 07:26
moritz # Failed test 'right exception type (X::Syntax::Adverb)'
in t/spec/S03-operators/ternary.t
TimToady that one doesn't look familiar
moritz guess that might be related to timotimo++'s adverb error message patch yesterday 07:27
t/spec/S32-num/stringify.t has several passing TODOs
TimToady t/spec/S03-smartmatch/array-hash.t and t/spec/S09-typed-arrays/arrays.rakudo.moar are mine
those TODOs may be new complex notation
moritz aye 07:28
FROGGS nice
dalek ast: fe39e51 | moritz++ | S32-num/stringify.t:
Unfudge passing tests, TimToady++
moritz that was the easy part of reducing test noise :-)
TimToady well, I need to crash now, so have fun with the others 07:29
zzz &
moritz m: try EVAL '1 ?? 2,3 !! 4,5'; say $!.^name
camelia rakudo-moar 480bd7: OUTPUT«X::Syntax::ConditionalOperator::PrecedenceTooLoose␤»
FROGGS gnight TimToady 07:30
moritz m: try EVAL '1 ?? (3:foo) !! 2'; say $!.^name
camelia rakudo-moar 480bd7: OUTPUT«X::AdHoc␤»
moritz m: 1 ?? (3:foo) !! 2
camelia rakudo-moar 480bd7: OUTPUT«===SORRY!===␤Cannot find method 'name'␤»
FROGGS lizmat and me was working on that too, at the qah 07:31
but that error is new
moritz $/.CURSOR.typed_panic('X::Syntax::Adverb', what => $target.name);
that's the line that fails
I guess it needs an if nqp::can($target, 'name') 07:32
lizmat good *, #perl6!
07:32 zakharyas joined
lizmat
.oO( barely awake )
07:32
FROGGS morning lizmat
moritz tries a patch 07:33
FROGGS checks what $target is 07:35
moritz a QAST::Op 07:37
FROGGS moritz: no, it is a QAST::Want 07:39
moritz QAST::Want isa QAST::Op
FROGGS so yeah, if it can .name (and that name is not empty)... that makes more sense here I guess 07:40
dalek kudo/nom: 2825467 | moritz++ | src/Perl6/Actions.nqp:
Fix error reporting on adverbed things whose name we cannot extract

fixes the test failure in S03-operators/ternary.t
07:41
07:41 tadzik joined, domidumont left
FROGGS moritz: you left a debugging statement in there 07:41
moritz FROGGS: thanks for catching that 07:42
FROGGS: I removed it, but only from the generated file :(
dalek kudo/nom: ee116a5 | moritz++ | src/Perl6/Actions.nqp:
Remove debugging statement, FROGGS++
07:43
moritz (code review)++
FROGGS aye
moritz given enough FROGGS++, all bugs are shallow
FROGGS that's what I miss at work
nwc10 bugs? :-)
FROGGS no, the other thing :o) 07:44
lizmat shallow bugs?
:-)
moritz FROGGS :-)
07:44 domidumont joined
nwc10 and, yes, sorry, my "miss" was ambigous - I meant the more daft sense of "they are missing", not "you miss spotting them" 07:44
I figured that it was the other thing.
FROGGS the code review here is more like that a user comes by and says: That app is broken 07:45
lizmat and that's the complete report then, yeah, nothing changes :-(
FROGGS not that "the app" really is broken
nwc10 hey, yes, it had some detail. It said which thing was broken. Not simply "a bug exists"
FROGGS and not that we had a single application 07:46
users... gah!
lizmat ah well, at least you don't have a user who manages to push in an RS232 plug in the wrong way, to complain the printer doesn't work 07:47
or manage to put in floppies upside down 07:48
or forget to close the door
and when you tell them to close the door (on the phone), hear them get up and close the door of the room 07:49
RabidGravy I found some some 5¼" floppies a while back, of course I have nothing to read them with 07:50
FROGGS lizmat: we have such users :o)
like, putting both ends of an ethernet cable into a switch in a meeting room and so doing quite funny things in our office lan 07:51
lizmat RabidGravy: there are need usb-powered external floppy drives you can still get :)
FROGGS or connecting a private router (with dhcpd enabled) to our network
network => notwork 07:52
lizmat FROGGS: they had to, otherwise the internet will leak!
07:52 Rounin joined
DrForr FROGGS: That's why you "accidentally" leave an etherkiller around. 07:52
lizmat $ perl6 t/spec/S03-smartmatch/array-hash.t 07:53
1..6
Type check failed in binding &call; expected 'Callable' but got 'Method+{<anon>}
this feels like an "is nodal" victim
FROGGS and we have super talented technicians that staple important 3.5" floppy to an envelope to send it to the office quickly 07:54
07:54 domidumont left
FROGGS yeah, most likely 07:54
lizmat we also seem to have a regression on #120506 07:55
synbot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=120506
DrForr FROGGS: Don't forget sticking them on the refrigerator with their fancy new neodymium magnets.
FROGGS *g*
yeah
lizmat tests fail in t/spec/S09-typed-arrays/arrays.t for #120506 07:56
synbot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=120506
lizmat judging from the comment "Type is maintained (binding)", feels like another "is nodal" casualty 07:57
07:58 domidumont joined
lizmat m: class A { method a() is nodal {} }; say A.can("a")[0].WHAT; say A.can("a")[0] ~~ Callable # hmmm.. not a simple problem :-( 08:00
camelia rakudo-moar 480bd7: OUTPUT«(Method+{<anon>})␤True␤»
08:02 alini joined, brrt joined
lizmat m: [] ~~ {} # golfed down 08:05
camelia rakudo-moar 480bd7: OUTPUT«Type check failed in binding &call; expected 'Callable' but got 'Method+{<anon>}'␤ in method AUTOTHREAD at src/gen/m-CORE.setting:4568␤ in method ACCEPTS at src/gen/m-CORE.setting:12270␤ in block <unit> at /tmp/yMpua_TbNu:1␤␤»
lizmat
.oO( way too dissonant with my current capabilities )
08:09
08:11 larion joined 08:13 quester left 08:17 espadrine_ left 08:24 cschwenz joined
dalek kudo/nom: 6337a9c | lizmat++ | src/Perl6/Actions.nqp:
Naive exposure of lexical pragmas as %?PRAGMAS

Mainly intended for debugging atm. Its usefulness to be discussed. If it stays, we probably want to turn it into an immutable EnumMap.
08:28
08:30 dakkar joined
lizmat afk for a few hours& 08:30
tadzik labster: hah, that sounds like an interesting one :) 08:35
08:36 Ven joined 08:37 Ven left
labster tadzik: It wasn't that interesting, just me checking for case sensitive filesystems in File::Spec::Case -- .lc eq .uc when all you have is numbers (and you're checking the wrong file). 08:38
08:40 brrt left, travis-ci joined
travis-ci Rakudo build failed. Elizabeth Mattijsen 'Naive exposure of lexical pragmas as %?PRAGMAS 08:40
travis-ci.org/rakudo/rakudo/builds/60661512 github.com/rakudo/rakudo/compare/e...37a9c706f8
08:40 travis-ci left, dave joined, dave left, fhelmberger joined 08:41 David74 joined
FROGGS that travis build fail is just: fatal: The remote end hung up unexpectedly 08:42
the other two workers succeeded
(when clone submodules from github)
08:42 David74 left 08:46 rurban left 08:48 rurban joined 08:50 Ven joined, dustinm` joined 08:54 xfix joined
RabidGravy I asked this last night but it was a bit quiet at the time: would it be reasonable to describe "earliest" as being like given/when but specialised to channels? 08:55
FROGGS has no idea about async
RabidGravy afaik earliest is only documented in the spec and nowhere else so it's a bit tricky describing it 09:04
09:04 espadrine_ joined 09:08 espadrine_ is now known as espadrine 09:09 Ven left 09:10 hobbs left, andreoss joined 09:12 hobbs joined 09:19 donaldh joined 09:21 domidumont left 09:25 domidumont joined 09:31 larion left
andreoss literal: consider my pull request for perl6-mode 09:36
literal will do! 09:38
09:42 H2O1 joined 09:43 H2O1 left 09:49 diana_olhovik left 09:54 diana_olhovik_ joined 10:03 coffee` left, noganex joined 10:04 noganex_ left 10:09 _mg_ left 10:10 coffee` joined 10:15 coffee` left 10:19 tinyblak left, Ven joined 10:20 Alina-malina left 10:29 dayangkun left 10:34 coffee` joined 10:37 andreoss left 10:40 spider-mario joined 10:42 Alina-malina joined 10:43 cschwenz left 10:45 alini left 10:51 Ven left 10:57 tinyblak joined 11:01 Akagi20__ left
lizmat RabidGravy: perhaps t/spec/S17-channel/earliest.t can be of inspiration ? 11:02
11:10 rindolf joined
RabidGravy :) It does help my understanding of how "earliest * { }" is meant to work though 11:14
masak it's only a given/when construct in the very loosest of senses. 11:15
for example, it doesn't topicalize on anything from what I can see.
I'm not sure using pointy blocks with `earliest` is even legal syntax.
11:15 _mg_ joined
masak std: earliest * { } 11:15
camelia std 28329a7: OUTPUT«ok 00:00 136m␤»
masak std: earliest * -> $x { } 11:16
camelia std 28329a7: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/X6doe_q0yh line 1:␤------> 3earliest * -> 7⏏5$x { }␤ok 00:00 138m␤»
RabidGravy yeah, but it's sort of unique
masak std: earliest * -> $x { $x }
camelia std 28329a7: OUTPUT«ok 00:00 139m␤»
masak seems it's legal.
(kvetch: why is std still making me use all my declared variables? that's my business if I use them or not.)
lizmat std: foobar * -> $x { $x } # nothing special here? 11:18
camelia std 28329a7: OUTPUT«5===SORRY!5===␤Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/D44BRN70DS line 1:␤------> 3foobar * 7⏏5-> $x { $x } # nothing special here?␤ expecting infix or meta-infix␤Undeclared r…»
lizmat std: sub foobar{}; foobar * -> $x { $x } # nothing special here?
camelia std 28329a7: OUTPUT«5===SORRY!5===␤Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/6L1II0vmNu line 1:␤------> 3sub foobar{}; foobar * 7⏏5-> $x { $x } # nothing special here?␤ expecting infix or meta-infix…»
lizmat ok, so there *is* something special there :-) 11:19
masak yes.
I was specifically testing whether STD thought `earliest` could accept a pblock.
RabidGravy I think that earliest.t possibly wants at least one more test, the case where a list of channels is provided and there are specific more and done blocks for one or more channels 11:24
lizmat RabidGravy: do you need a commit bit ? :-)
RabidGravy I think I have one already :-) 11:25
that is I can push to perl6/doc already 11:26
11:27 skids left 11:28 donaldh left
lizmat if you can't, make it a PR and I will merge 11:30
or maybe moritz can give you a commit bit :-)
FROGGS I can hand these out too me thinks 11:32
RabidGravy let me add the test and see 11:33
lizmat RabidGravy++
11:33 telex left 11:34 telex joined
dalek kudo/nom: bbadad1 | lizmat++ | src/Perl6/Grammar.nqp:
Get rid of obsolete "quit" rule

It doesn't break any spectests and doesn't break panda, so I assume it can go.
11:34
11:38 ShimmerFairy left 11:39 alini joined 11:42 ShimmerFairy joined
moritz RabidGravy: if you can push to perl6/doc, you can also push to perl6/roast directly 11:43
they are in the same github team 11:44
RabidGravy cool, that's what I thought
11:45 travis-ci joined
travis-ci Rakudo build passed. Elizabeth Mattijsen 'Get rid of obsolete "quit" rule 11:45
travis-ci.org/rakudo/rakudo/builds/60682445 github.com/rakudo/rakudo/compare/6...adad10908a
11:45 travis-ci left
masak is this huge news? lists.debian.org/debian-hurd/2015/...00047.html 11:46
is it the first release of any Debian GNU/Hurd?
(or of any complete distribution with Hurd as the kernel)
if so, it seems accompanied with very little fanfare... 11:47
moritz masak: debian gnu/hurd wheezy also existed, but it wasn't an officially supported platform
FROGGS you could install GNU/Hurd for years now
masak FROGGS: oh, that bit I know. 11:49
I'm thinking whether the Hurd people want to have a "big release -- this is it" kind of thing. and whether that email that was it. 11:50
FROGGS maybe domidumont knows 11:51
masak ok, so has anyone ever tried to run Rakudo on GNU/Hurd?
what about Rakudo on Plan 9? 11:52
FROGGS no, my Hurd experience is from before joining #perl6 :o(
11:53 ShimmerFairy left
domidumont I remember some questions about whether Debian on hurd was still viable or not. I guess that this announce was done to answer this question. 11:55
Take my opinion with a grain of salt as I don't follow this group at all 11:56
11:56 Akagi201 joined 12:00 ShimmerFairy joined
dalek ast: d4f7aca | (Jonathan Stowe)++ | S17-channel/earliest.t:
Test for channel specific selectors for more and done
12:03
12:04 Akagi201_ joined
lizmat RabidGravy++ 12:04
masak a more pointed question is perhaps what would attract someone to choose Hurd over the Linux kernel.
tadzik andor someone else than a kernel hacker 12:05
btyler masak: looks like a similar release was made in at least 2013: www.gnu.org/software/hurd/news/2013..._2013.html
masak oh! 12:06
well, then it's not all that much news, I guess.
12:06 Akagi201 left
btyler www.gnu.org/software/hurd/hurd/runn...ebian.html (IRC logs as documentation...where have I seen that before? :) ) 12:07
lizmat is trying to golf down a case where :foo becomes false when passed as a parameter in a loop
masak m: sub foo(:$bar) { say $bar }; for 1, 2, 3 { foo :bar } # lizmat: at least it isn't this easy ;) 12:09
camelia rakudo-moar bbadad: OUTPUT«True␤True␤True␤»
lizmat no, it isn't :-)
masak the golf is on. 12:10
lizmat $callsite = $bt[ 12:12
$index = $bt.next-interesting-index($index, :noproto, :setting)
] for ^$up;
:setting becomes false in the 2nd interation
part of the deprecation code
moritz are you sure there's no other call to next-interesting-index which might have $setting=False? 12:13
lizmat yea :-( 12:14
RabidGravy so lizmat++, yes looking at that was useful as it made me realise something about "done" that hadn't been entirely obvious and is worth documenting
:)
actually if I change that test slightly it can test two things 12:16
lizmat prefers 2 tests in that case, so it is easier to track failures 12:17
moritz: in case you're interested: gist.github.com/lizmat/7e0401a79615aff3c094 12:21
hmmm.... 12:22
moritz lizmat: but Backtrace.pm has three calls to next-interesting-index 12:24
[Coke] lots of new failures in jvm, came in on the test of a5f38ae, after 1c96bc. 12:25
lizmat the dd $up after the for loop never shows
12:27 Ven joined
nwc10 masak: the state of Perl 5 on Plan 9 is not well known. Hence it's unclear how far through the Configure process anyone would get, let alone attempt the build 12:28
lizmat
.oO( now, if we would get rid of the Perl 5 dependence, it would all be a lot easier :-)
12:29
nwc10 oh, I'd love that too
but I believe one open question is how to de-dupe build tool code between NQP and Rakudo 12:30
12:30 cibs left
BinGOs my attempts to install Plan9 have always ended in WTF 12:30
nwc10 before that, could someone else (re)write me an IRC logger in Perl 6? :-) 12:31
[Coke] (jvm) ah, it's cross backend. and I see timtoady said he broke something.
RabidGravy nwc10, surely they need to write a mail list manager first ;-) 12:32
nwc10 Only the core should be in Perl 6. They can keep the web UI in Perl 5. 12:33
also, would my liver stand it?
:-)
lizmat moritz: this seems to fix it: 12:34
# $callsite = $bt[
# $index = $bt.next-interesting-index($index, :noproto, :setting)
# ]
$index = $bt.next-interesting-index($index, :noproto, :setting) for ^$up;
my $callsite = $bt[$index];
# ] for ^$up
RabidGravy hmm the behaviour of earliest appears to differ from my understanding from the spec
lizmat that could be bug in the implementation :-) 12:35
RabidGravy yeah or a bug in my reading
nwc10 context of that well, seemingly random comment is that "Mailman needs Python 3.4+ but Postorius and HyperKitty still run on 2.7" 12:36
mailman 3, that is
RabidGravy my take is that "earliest @channels { more $channel { ... } more * { ... } done $channel { ... } done * { ... } }" assuming that $channel is in @channels, that the wildcard done and more should get called for any that aren't $channel 12:39
12:39 andreoss joined
RabidGravy but it seems that the done * doesn't get called 12:40
12:40 tinyblak left
lizmat RabidGravy: you probably should ask jnthn about this, as it is largely modelled on .NET behaviour, afaik 12:40
hoelzro o/ #perl6 12:42
lizmat hoelzro o/
12:42 tinyblak joined
hoelzro ahoy lizmat 12:43
RabidGravy what makes me think it may be a bug is that if I change the test I just added so that the "more $c_b" is "more *" and leave the rest the same, the "done $c_b" never gets called 12:44
hoelzro is there a trait one can use with NativeCall to specify that a char * return value from a native function should be free'd after making a Perl 6-y copy? 12:47
lizmat hoelzro: not yet, afiak 12:49
hoelzro I thought not =/
hmm...perhaps there's a way I can get around it, though 12:50
instead of returning Str, I can return an OpaquePointer $p, somehow copy that to a Str, and free($p)
12:53 tinyblak left
masak RabidGravy: I'm also no expert, but that sounds like a bug, yes. 12:55
RabidGravy: enough so that I'd just go ahead and RT it, if I were you.
lizmat agree 12:56
12:57 skids joined
RabidGravy just looking it asyncops with a view to fixing, if that doesn't work out I'll RT it 13:00
13:10 dalek left, dalek joined, ChanServ sets mode: +v dalek
lizmat dalek missed this: github.com/rakudo/rakudo/commit/a7c5b181a4acb "Exclude all setting code from backtraces" 13:14
and now I cannot reproduce the weirdness I saw earlier :-( 13:15
lizmat gives up 13:19
probably *was* something stupid I did myself
13:21 laouji__ left 13:24 Ven left
|Tux| gist.github.com/Tux/01705c381bb9721a39b3 13:26
:(
2015-04-30 - [moar] panda install Inline::Perl5 fails (again) 13:27
FROGGS hoelzro: I'd also try: return Pointer[Str]; my $str = $ptr.deref; free($ptr)
lizmat |Tux|: fwiw, confirmed here as well 13:28
hoelzro FROGGS: ah, thanks! I'll try that 13:32
colomon hmmm, Inline::Perl5 won’t install for me: “Unhandled exception: No exception handler located for warn” 13:34
dalek kudo/nom: 7af7eb4 | lizmat++ | / (18 files):
Kill is hidden-from-backtrace from core

We don't need it anymore, as all settings entries are now not shown in a standard backtrace.
lizmat colomon: yeah, known issue atm :-( 13:35
colomon ok
FROGGS does --ll-exception give some insights about the I::P5 issue? 13:40
skids lizmat: while you have the backtrace hood open, I do have one last pending rakudo PR, #405 13:45
lizmat looks 13:48
13:48 tinyblak joined
FROGGS 405 looks good 13:49
lizmat yeah, can't merge it automatically apparently, will do manually
FROGGS lizmat++ # Exclude all setting code from backtraces 13:51
13:55 Ven joined
[Coke] is there a way to get it back in the backtraces for developers? 13:57
does --ll still work in that cases?
*case
lizmat yes, --ll-exception is unaffected
[Coke] woot. 13:59
13:59 Ven left 14:04 FROGGS left 14:06 Ven joined
hoelzro .tell FROGGS thanks for the tip, that worked! 14:07
yoleaux hoelzro: I'll pass your message to FROGGS.
dalek kudo/nom: 91eaacf | lizmat++ | src/core/Exception.pm:
Gracefully handle .gist on unthrown exceptions

Inspired by PR #405, skids++
14:10
skids lizmat++ Thank you!
lizmat no, thank you! :-) 14:11
I'm wondering how cool it would be to have each entry in the stacktrace be accompaniied by N lines of code around that location 14:15
RabidGravy I'm beginning to doubt whether the behaviour of earliest is a bug, at least in the mind of the person who implemented it, the "if there are any channel specific more or done statements completely ignore the wildcard ones" seems pretty deliberate 14:16
lizmat well, that's why I would like to see jnthn opinion about it 14:17
I merely prettified his code, really
RabidGravy but the spec is not specific at all
14:19 cognominal joined
skids
.oO(spectastic!)
14:20
14:26 alini left 14:29 donaldh joined
lizmat m: sub a() { my @a = ^10; return |@a }; say a.perl # flattening into a Parcel 14:41
camelia rakudo-moar 7af7eb: OUTPUT«(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)␤»
lizmat m: sub a() { my @a = ^10; |@a }; say a.perl # return not needed if last value, but WAT ?
camelia rakudo-moar 7af7eb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/2xcz2WmtBu␤Arg-flattening | is only valid in an argument list␤at /tmp/2xcz2WmtBu:1␤------> 3sub a() { my @a = ^10; |7⏏5@a }; say a.perl # return not needed i␤»
lizmat I guess we will have to live with that one
14:43 gfldex joined
ugexe i haven't been able to golf it down yet, but im running into a problem where a module isnt being loaded when dynamically required inside a role but after the class it will apply to has already been initiated. the RAKUDO_MODULE_DEBUG actually it shows it tryign to load '' (which also outputs warning messages to stdout about moduleloader) 14:44
lizmat RabidGravy: yeah, spec is slushy there, I guess we're all trying to figure out what makes sense
14:49 _mg_ left
RabidGravy it would be a very small change to make a "@todo" entry for any channels in @earliest that haven't already been seen but clearly jnthn took something different from the spec than I would have inferred 14:49
PerlJam guten tag meine freunde (I've now exhausted 90% of the german I know :) 14:51
14:52 mr-foobar left
ugexe use of uninitialized value of type Any in string context in any load_module at src/gen/m-ModuleLoader.nqp:223 (MODULE_DEBUG: chosen: pm => key => ) is the actual message 14:52
PerlJam lizmat: re surrounding code in stacktrace. Assuming that's with a :verbose option or something selectable, that's sounds like it could be really neat. 14:54
lizmat env variable setting, I was thinking about
and, once we have is-a-tty on a handle, only if that is true 14:55
to prevent it from showing up in web page output or so
PerlJam lizmat++ nice.
dalek kudo/nom: 35266ad | lizmat++ | src/core/ (16 files):
Remove unneccessary return statements

At one point, the optimizer should fix these. Until then, this should help a (tiny) bit in performance.
14:57
14:57 koo6 left, aborazmeh joined, aborazmeh left, aborazmeh joined
skids irclog.perlgeek.de/perl6/2015-04-26#i_10507020 ? 14:57
lizmat looks 15:00
yeah, except I would like to see ±5 lines around the code for each entry 15:02
and I don't see anything mergable, is that correct ?
15:03 aborazmeh left, Rounin left
dalek Heuristic branch merge: pushed 78 commits to rakudo/newio by lizmat 15:05
15:05 konsolebox left
skids lizmat: I dunno it isn't my stuff. 15:05
15:05 konsolebox joined, konsolebox left, konsolebox joined
dalek kudo/newio: 018dbe5 | lizmat++ | src/core/ (7 files):
Some more return removals
15:11
15:13 laouji left 15:17 Ven left
ugexe this error message could use a tweak it looks like: Start argument to substr out of range. Is: 1, should be in 0..0; use *1 if you want to index relative to the end 15:22
lizmat ugexe: how did you do that? 15:23
ugexe well its not golfed down, but
15:23 Ven joined
ugexe perl6 -Ilib -e 'use Zef::Builder; my $b = Zef::Builder.new; try { $b.pre-comp($*CWD) }; say 1; try { require Zef::Plugin::PreComp }; say 2; say ::("::Zef::Plugin::PreComp"); say 3; my $c = Zef::Builder.new( :plugins(["Zef::Plugin::PreComp"]) ); say ::("Zef::Plugin::PreComp")' 15:23
say ::("::Zef::Plugin::PreComp"); is the statement that causes it 15:24
15:24 vendethiel joined 15:25 pochi joined
ugexe if i dont do $b.pre-comp first it works fine (Zef::Plugin::PreComp is a role that supplies a pre-comp method to an interface role that is applied to Zef::Builder) 15:27
lizmat sorry, but I can't really do much with that :-( 15:28
lizmat is hoping for a non-module related golf
15:28 Ven left
ugexe yea, im still in the process of that 15:29
15:30 zakharyas left
hoelzro what's the proper way to override postcircumfix:<[ ]> functionality, if one wants to write one's own Positional type? 15:33
lizmat provide methods AT-POS/ASSIGN-POS/EXISTS-POS/DELETE-POS 15:34
15:35 donaldh left
lizmat m: class A { method AT-POS($i) is rw { $i*$i } }; say A.new[4,5] 15:36
camelia rakudo-moar 35266a: OUTPUT«16 25␤»
hoelzro oh, I see 15:39
thanks lizmat!
dalek kudo/nom: 9f5632b | lizmat++ | src/Perl6/Actions.nqp:
Introduce $?RAKUDO_MODULE_DEBUG

At least for now to facilitate module loading debugging. Should be easily optimizable by any optimizer.
15:40
hoelzro .tell FROGGS for the %?RESOURCE<lib/liblinenoise.so> suggestion, will %?RESOURCE contain Str values, or perhaps IO::Path ones? 15:43
yoleaux hoelzro: I'll pass your message to FROGGS.
15:43 Ven joined
lizmat in my opinion, they would be .IO objects, or something that encapsulates that 15:44
hoelzro ok, that's what I'm hoping for 15:45
lizmat otherwise, they wouldn't make much sense, I think
hoelzro I was thinking that for NativeCall, calling is native(Str) could perhaps find the appropriate object in the invoking module's %?RESOURCE
lizmat the values need to be wrangled to something you can open, or copy, or whstever 15:46
hoelzro so is native('liblinenoise.so') would "just work"
lizmat yep, that's defiinetly on the board :-)
15:57 Ven left 16:00 eli-se joined
eli-se hi 16:01
16:10 vendethiel left 16:12 lucasb joined 16:13 vendethiel joined 16:20 atweiden joined
hoelzro good to hear =) 16:20
ugexe m: role Interface { multi method meth { ... } }; class SomeClass does Interface { multi method meth { say "using default meth()" }; }; my $c = SomeClass.new; $c.meth
camelia rakudo-moar 9f5632: OUTPUT«Ambiguous call to 'meth'; these signatures all match:␤:(SomeClass $: *%_)␤:(SomeClass $: *%_)␤ in block <unit> at /tmp/5UnmGDp_KW:1␤␤»
ugexe what am i doing wrong with that? 16:21
16:22 tinyblak left 16:24 koo6 joined 16:25 diana_olhovik_ left
lizmat hmm... try removing the multi ? 16:27
m: role Interface { method meth { ... } }; class SomeClass does Interface { method meth { say "using default meth()" }; }; my $c = SomeClass.new; $c.meth
camelia rakudo-moar 9f5632: OUTPUT«using default meth()␤»
hoelzro what would be the proper way to get this for loop invocation to include the 12 I'm pushing? my @values = 1..10; for @values -> $v { if $v == 8 { @values.push: 12 } ; say $v } 16:28
lizmat not with a for, but with a while 16:29
hoelzro ah ha 16:31
I figured that's how it would be, but I was wondering if it was possible with for
lizmat m: my @values = 1..10; while @values { my $v := @values.shift; if $v == 8 { @values.push: 12 }; say $v }
camelia rakudo-moar 9f5632: OUTPUT«1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤12␤»
lizmat this came up a little while ago 16:32
if you could hide the condition somehow in a iterator, then it could be a lazy list, then it would work
lizmat is not sure how to do that though, and whether it would survive the GLR 16:33
16:33 konsolebox left
japhb Is there a plan written down now of what all is changing in the GLR? 16:36
lizmat m: my @values := gather for 1..10 -> $v { take $v; if $v == 8 { take 12 } }; say @values # similar, but different :-)
camelia rakudo-moar 9f5632: OUTPUT«1 2 3 4 5 6 7 8 12 9 10␤»
lizmat japhb: nothing more than pmichaud's post: pmthium.com/2014/10/apw2014/ 16:37
afaik
16:38 domidumont left
lucasb some GLR info here too: github.com/perl6/specs/issues/70 16:43
lizmat lucasb++
16:53 alini joined
[Coke] we've been kind of on hold. Hopefully, pmichaud's time is going to free up a bit soon. 16:53
16:58 vendethiel left 17:08 eli-se left 17:09 rurban left 17:12 fhelmberger left
lizmat m: sub a { say $*FOO }; my $*FOO = 42; a # FROGGS moritz jnthn 17:12
camelia rakudo-moar 9f5632: OUTPUT«42␤»
17:12 fhelmberger joined
lizmat what is the nqp equivalent of my $*FOO = 42 ? 17:12
install_lexical_symbol doesn't seem to cut it 17:13
17:13 vendethiel joined
japhb [Coke]: I thought pmichaud was free after robotics, and it's after robotics ...? 17:15
17:16 fhelmberger left
andreoss can i use :nth with split? 17:22
m: my $x = "1 2 3 4 5 6"; $x.split(/\s/, :nth(3)).perl.say;
camelia rakudo-moar 9f5632: OUTPUT«("1", "2", "3", "4", "5", "6")␤»
17:25 dakkar left, espadrine left 17:27 cognominal left
tony-o tadzik: ping 17:27
tadzik tony-o: pong 17:30
tony-o thanks for nativecall and nativecast 17:33
dalek rl6-roast-data: bf8b466 | coke++ | / (9 files):
today (automated commit)
17:35
[Coke] japhb: yes. that's why my hope is probably reasonable.
itz_ "You'd hold the whole world in your metal claws / if it wasn't for the Three Laws"
17:37 alini left 17:42 ab5tract_ joined, pecastro_ joined 17:46 felher left, eiro left, skids left, Zoffix left, mrf left, Spot__ left, cdc left, cosimo left, krakan_ left, RabidGravy left, rmgk left, eternaleye left, b2gills left, pyrimidine left, rhr left, raydiak left, StavroMueller left, betterworld left, dylanwh left, dg left, cxreg left, diegok left, tony-o left, telex left, masak left, nwc10 left, SHODAN left, psch left, ggoebel left, MilkmanDan left, anocelot_ left, mattp|spurs left, yeltzooo9 left, lestrrat left, go|dfish left, ashleydev left, apejens left, atweiden left, dalek left, Akagi201_ left, hobbs left, mephinet left, yogan left, labster left, retupmoca left, larks_ left, skarn left, stux|RC left, dustinm` left, lucasb left, andreoss left, colomon left, xinming left, Possum left, baest left, iv left, b^_^d left, BooK_ left, torbjorn left, Alina-malina left, kaare__ left, rivarun left, sunnavy left, kst left, btyler left, sergot_ left, atta_ left, japhb left, pochi left, ilbot3 left, PZt left, jercos left, itz_ left, jnthn left, oetiker left, cbk1090 left, bartolin left, koo6 left, ShimmerFairy left, tadzik left, pecastro left, sue_ left, nine_ left, Psyche^ left, bayprogrammer left, ab5tract left, ugexe left, rarara left, geekosaur left, |Tux| left, ruoso_ left, mathw left, robinsmidsrod left, Ulti left, ggherdov left, xxx left, ingy left, coffee` left, erdic left, Khisanth left, salva left, Bucciarati left, aindilis left, lizmat left, [Tux] left, mst left, El_Che left, Grrrr left, gfldex left, noganex left, vike left, jepeway left, jdv79 left, PerlJam left, jferrero left, estrabd_ left, leedo_ left, f3ew left, broquaint left, rudi_s left, kshannon left, Foxcool left, ir2ivps4 left, petercommand left, moritz left, smash left, pmichaud left, Peter_R left, egrep left, tictac left, vendethiel left, vytas left, DarthGandalf left, xiaomiao left, yoleaux left, Mouq left, wtw left, [Coke] left, Util left, risou left, tinita left, jschulz left, Humbedooh left, osfameron left, profan left, literal left, avar left, jfried left, rindolf left, spider-mario left, xfix left, darutoko left, camelia left, flussence left, renormalist left, isacloud left, nbrown04 left, avuserow1 left, Juerd left, krunen left, clkao left 17:50 mtj__ joined, eli-se joined, tinyblak joined, Timbus_ joined, hernan605 joined, nine joined, hahainte1net joined, sjn__ joined, TimToady_ joined, ugexe_ joined, Patterner joined, sue__ joined, thou joined, mr-foobar joined, vendethiel joined, atweiden joined, lucasb joined, pochi joined, gfldex joined, dalek joined, skids joined, andreoss joined, Akagi201_ joined, rindolf joined, Alina-malina joined, spider-mario joined, coffee` joined, noganex joined, hobbs joined, xfix joined, dustinm` joined, darutoko joined, RabidGravy joined, Foxcool joined, kaare__ joined, ir2ivps4 joined, rmgk joined, geekosaur joined, Zoffix joined, mephinet joined, erdic joined, Khisanth joined, vike joined, rivarun joined, Ulti joined, camelia joined, sunnavy joined, tepper.freenode.net sets mode: +vv dalek camelia, ilbot3 joined, petercommand joined, salva joined, kst joined, colomon joined, PZt joined, eternaleye joined, xinming joined, b2gills joined, masak joined, Bucciarati joined, moritz joined, mrf joined, jercos joined, vytas joined, smash joined, nwc10 joined, yogan joined, rarara joined, |Tux| joined, itz_ joined, SHODAN joined, pmichaud joined, psch joined, aindilis joined, lizmat joined, flussence joined, Peter_R joined, jepeway joined, jdv79 joined, pyrimidine joined, Possum joined, [Tux] joined, rhr joined, Spot__ joined, jnthn joined, ggoebel joined, btyler joined, oetiker joined, torbjorn joined, renormalist joined, cbk1090 joined, egrep joined, DarthGandalf joined, baest joined, PerlJam joined, labster joined, xiaomiao joined, eiro joined, yoleaux joined, isacloud joined, retupmoca joined, avuserow1 joined, nbrown04 joined, larks_ joined, Mouq joined, ruoso_ joined, tictac joined, iv joined, cdc joined, skarn joined, MilkmanDan joined, cosimo joined, jferrero joined, b^_^d joined, mathw joined, anocelot_ joined, estrabd_ joined, BooK_ joined, krakan_ joined, bartolin joined, robinsmidsrod joined, Juerd joined, mst joined, El_Che joined, sergot_ joined, leedo_ joined, atta_ joined, japhb joined, krunen joined, clkao joined, stux|RC joined, mls joined, arnsholt joined, caymanboy joined, silug joined, [particle] joined, ponbiki joined, jantore joined, BinGOs joined, inokenty joined, synbot6 joined, sftp joined, prammer joined, tepper.freenode.net sets mode: +v yoleaux, timotimo joined, bobkare joined, captain-adequate joined, Gothmog_ joined, revdiablo joined, kbenson joined, [ptc] joined, bcode joined, avalenn joined, Celelibi joined, shmibs joined, nebuchadnezzar joined, gtodd joined, agentzh joined, smi1er joined, charsbar__ joined, zoosha_ joined, huf joined, sivoais joined, gargamel_ joined, JimmyZ joined, hoelzro joined, preyalone joined, DrForr joined, maddingue joined, yakudza joined, awwaiid joined, simcop2387 joined, pRiVi_ joined, Exodist joined, ribasushi joined, pnu joined, apejens joined, ashleydev joined, go|dfish joined, lestrrat joined, yeltzooo9 joined, mattp|spurs joined, tony-o joined, diegok joined, cxreg joined, dg joined, dylanwh joined, betterworld joined, StavroMueller joined, raydiak joined, jfried joined, avar joined, profan joined, literal joined, osfameron joined, kshannon joined, Humbedooh joined, woshty joined, integral joined, fernando___ joined, _sri_ joined, danstoner joined, burnersk joined, jschulz joined, tinita joined, risou joined, Util joined, Grrrr joined, broquaint joined, [Coke] joined, rudi_s joined, f3ew joined, ingy joined, xxx joined, ggherdov joined, wtw joined, notjack joined, telex joined 17:52 ShimmerFairy joined 17:53 felher joined, koo6 joined, tadzik joined, felher is now known as Guest3343 17:54 danaj joined, bayprogrammer joined 17:57 Alina-malina left
thou Thanks raydiak++ and moritz++ for helping me clear up a misunderstanding about try/CATCH 17:59
japhb is glad that TimToady++ is getting started on the user-visible side of the GLR at least 18:04
lizmat yeah, there's plenty of stuff for many omelets
japhb That way even before the performance changes, I can fix up any code that was depending on old behavior 18:05
lizmat :-)
18:11 rindolf left 18:25 pierrot left
raydiak thou: glad to help :) 18:25
dalek kudo/nom: 64b0d48 | lizmat++ | src/core/Backtrace.pm:
Introduce RAKUDO_BACKTRACE_SETTING env variable

If true, setting frames will be included in any stack trace. By default, they will not.
18:31
18:32 pierrot joined, rvchangue joined 18:42 vendethiel left 18:44 vendethiel joined
thou timotimo: do you have access to perl6.org DNS (cpandatesters.perl6.org should cname testers.perl6.org, I guess; right now it goes to the design page) 18:45
moritz it's not a matter of DNS, but rather of apache config 18:52
thou: FTFY 18:56
18:57 cognominal joined, andreoss left 18:58 cognominal left 19:02 cognominal joined
lucasb A tiny issue that maybe would be easy to patch is this: in "@a xx *", when @a is empty, I think the return value should be a 0-elem list, not a infinite list. 19:05
m: my @a; my @b = @a xx *; @b[0]
colomon What’s the current status of C++ nativecall?
camelia rakudo-moar 64b0d4: OUTPUT«(timeout)»
lizmat hmmm.. what is an infinitely empty list 19:06
19:06 vendethiel left
lucasb lizmat: an infinite list of "what?" :) 19:06
moritz that, on the other hand, is easy 19:07
m: my @a = (WHAT ()) xx *; say @a[0]
camelia rakudo-moar 64b0d4: OUTPUT«(Parcel)␤»
flussence colomon: I wondered the same a few weeks ago, it's in a branch but github says nothing's happened on it for quite a while.
this one specifically: github.com/rakudo/rakudo/compare/cpp 19:09
skids probably an infinite list of "not yet check back later" 19:14
19:15 Alina-malina joined 19:23 atweiden left
colomon flussence++ 19:25
raydiak .tell jnthn I've documented the Grammar::Generative segfault at github.com/jnthn/grammar-generative/issues/1 ...if it's not a very involved fix, more than zero people would like to play with it :) 19:26
yoleaux raydiak: I'll pass your message to jnthn.
19:26 molaf joined 19:30 baest_ joined 19:32 lucasb left, baest left, lucasb joined 19:33 caymanboy left, ycaymanbo joined
masak raydiak++ 19:35
19:38 sjn__ is now known as sjn 19:44 yqt joined, zakharyas joined
timotimo thou: i don't, sorry 19:45
ah, moritz++ already fixed it
19:47 diana_olhovik_ joined 19:54 baest_ is now known as baest 19:56 diana_olhovik_ left
itz_ perltricks.com/article/170/2015/4/3...ith-Perl-6 20:00
20:01 hobbs left 20:02 hobbs joined
lizmat "as copy" ??? 20:04
dalek kudo/nom: b689a84 | lizmat++ | src/core/Backtrace.pm:
Introduce RAKUDO_VERBOSE_STACKFRAME env variable

If specified, it should indicate the number of *extra* lines before and after of the *code* should be shown whenever a stack frame is stringified. This can happen for any warning, or when an exception is thrown and not caught.
20:08
lizmat has done an export RAKUDO_VERBOSE_STACKFRAME=3
[Coke] itz_: nifty. question: do you need the .Str in the last code block, or will that get called implicitly since you're interpolating into a {} in a string?
20:09 koo6 left, dolmen joined 20:13 vendethiel joined 20:22 koo6 joined
lizmat .tell jnthn Something weird when inadvertently using $_: gist.github.com/lizmat/b005de9b024c73a10608 20:23
yoleaux lizmat: I'll pass your message to jnthn.
20:24 yqt left 20:33 xfix left 20:35 vendethiel left, darutoko left
lizmat m: my @l := ^Inf; for ^10 -> $i { say @l[$_] } # golfed down a bit, maybe 20:37
camelia rakudo-moar b689a8: OUTPUT«Method 'name' not found for invocant of class 'Range'␤ in block <unit> at /tmp/VMLRMCqDgl:1␤␤»
PerlJam m: my @l = ^10; for ^10 -> $i { say @l[$_] } # different but equally strange (to me at least) 20:39
camelia rakudo-moar b689a8: OUTPUT«Indexing requires an instance, tried to do: @l[ (Any) ]␤ in block <unit> at /tmp/OGzP1sTxP8:1␤␤»
PerlJam (the message is just really LTA) 20:40
lizmat actually, *that* one makes perfect sense
as $_ is (Any) at that time
it's the combination of binding and $_ that creates weird effects (at least in this golf)
PerlJam yes, I a suppose so.
masak m: my @l := ^Inf; say @l[Any] 20:41
camelia rakudo-moar b689a8: OUTPUT«Method 'name' not found for invocant of class 'Range'␤ in block <unit> at /tmp/SJb2p5YElV:1␤␤»
masak m: my @l = ^Inf; say @l[Any]
camelia rakudo-moar b689a8: OUTPUT«Indexing requires an instance, tried to do: @l[ (Any) ]␤ in block <unit> at /tmp/r4oQ1beirJ:1␤␤»
masak shorter, y'all.
PerlJam masak++ 20:42
lizmat masak: wow
PerlJam also shows that the for loop isn't part of the problem
lizmat yup
masak I don't feel the second one is an error, really.
it's more or less what I'd expect.
lizmat the second one is ok, like I said before
masak right. 20:43
the first one... is at least LTA.
lizmat well, the Any is somehow converted to the Range that @l is
lucasb m: (1..5)[$_] 20:44
camelia rakudo-moar b689a8: OUTPUT«Method 'name' not found for invocant of class 'Range'␤ in block <unit> at /tmp/5a7ZCJuXMx:1␤␤»
lucasb :D
lizmat m: (^5)[Any] 20:45
camelia rakudo-moar b689a8: OUTPUT«Method 'name' not found for invocant of class 'Range'␤ in block <unit> at /tmp/tcWofnw6GO:1␤␤»
lizmat sameo
m: my $a := ^5 but role { method name { "FOO" } }; $a[Any] 20:46
camelia rakudo-moar b689a8: OUTPUT«Indexing requires an instance, tried to do: FOO[ (Any) ]␤ in block <unit> at /tmp/tvuX0NI9z1:1␤␤»
lizmat so it *is* referring to the range it is trying to index 20:47
lizmat rakudbbugs 20:48
actually, thinking about it more, it is a problem in the reporting 20:51
20:52 konsolebox joined
dalek kudo/nom: c03f82d | lizmat++ | src/core/array_slice.pm:
Fix LTA error for (^5)[Any]
20:53
20:55 dolmen left 20:58 zakharyas left, molaf left 21:00 skids left 21:03 rurban joined 21:05 vendethiel joined
dalek kudo/nom: d09e62c | lizmat++ | src/core/CompUnitRepo.pm:
Some preliminary work on CompUnitRepo
21:25
lizmat before I start breaking the rest, I'm going to get some sleep
so good night, #perl6! 21:26
21:26 dolmen joined 21:28 vendethiel left 21:30 Zoffix left
[Coke] ~~ 21:33
lucasb Given any operation (a sub/method call, an operator), how can I know to which method the operation will ultimately be dispatched to?
I mean, there's is a hierarchy of objects, there are several candidates with different signatures for each method. I would like to know the exact class, the exact method candidate to look at. 21:36
21:36 Foxcool left
hoelzro lucasb: I think you can use methods on a Routine object 21:36
like cando
from there, you could determine which variant will be called 21:37
although I don't know if cando will help you disambugiate which variant of a multi will be called
class C { multi foo(Str $) {} ; multi foo('bar') {} ; } ; say C.can('foo').cando(Capture.new(list => ['bar'])) 21:40
m: class C { multi foo(Str $) {} ; multi foo('bar') {} ; } ; say C.can('foo').cando(Capture.new(list => ['bar']))
camelia rakudo-moar c03f82: OUTPUT«Method 'cando' not found for invocant of class 'Parcel'␤ in block <unit> at /tmp/mRj96Swgm0:1␤␤»
hoelzro =/
lucasb hoelzro: hey o/, thanks for the comment. At the moment, I don't know how to do these things but I'll look for more information.
hoelzro good luck! 21:41
lucasb Maybe I'm asking something difficult. It's like, given the code "1 + 2", you say to the interpreter: "please don't execute that, just tell me what method you will run" 21:42
hoelzro I think that's doable
m: my $f = &infix:<+>; say $f.cando(Capture.new(list => [1, 2], hash => {}))[0]; 21:44
camelia rakudo-moar c03f82: OUTPUT«sub infix:<+> (Int:D \a, Int:D \b --> Int) { #`(Sub|38412680) ... }␤»
hoelzro lucasb: ^
I don't know for sure if cando sorts its results by multi matching rules, though
21:45 atta_ is now known as atta
lucasb hoelzro: Interesting! That's something like this I was looking for. 21:45
21:46 coffee` left
japhb Can we rely on the builtin string/buffer-like objects knowing their own length in their standard unit (Str.chars, Uni.codes, utf8.bytes, etc.) in O(1) time? 21:48
hoelzro lucasb: it's looking like it *is* sorted in order of multi matching 21:49
lucasb So, the sub that is at index 0 is what I'm looking for? 21:51
japhb .ask jnthn Can we rely on the builtin string/buffer-like objects knowing their own length in their standard unit (Str.chars, Uni.codes, utf8.bytes, etc.) in O(1) time? 21:52
yoleaux japhb: I'll pass your message to jnthn.
hoelzro lucasb: I believe so 21:53
21:53 airdisa joined 21:55 eli-se left, coffee` joined
jnthn japhb: In their own units, O(1) 22:08
yoleaux 00:56Z <TimToady> jnthn: I don't there's any good reason to support placeholders in { $^a } for @list and not support lambdas; I'd rather lose blocks in loopless if than lose lambdas in list comprehensions
01:01Z <TimToady> jnthn: *think (and placeholders make no sense in bare blocks, so that analogy is flawed anyway, plus there is RC code that depends on list comprehensions using lambdas)
19:26Z <raydiak> jnthn: I've documented the Grammar::Generative segfault at github.com/jnthn/grammar-generative/issues/1 ...if it's not a very involved fix, more than zero people would like to play with it :)
20:23Z <lizmat> jnthn: Something weird when inadvertently using $_: gist.github.com/lizmat/b005de9b024c73a10608
21:52Z <japhb> jnthn: Can we rely on the builtin string/buffer-like objects knowing their own length in their standard unit (Str.chars, Uni.codes, utf8.bytes, etc.) in O(1) time?
jnthn japhb: In any other units, O(n) 22:09
22:09 kaare__ left
jnthn japhb: And that's in a "we support NFG" implementation; r-j doesn't yet. On r-m you can rely on Str.chars, Uni.codes, and Buf.bytes to be O(1) though. 22:10
japhb: I guess you can rely on them to be on JVM too, you just won't get the right answers for .chars, and Uni is NYI there so far. 22:11
22:28 skids joined 22:42 ShimmerFairy left
japhb Still, that's good to hear. 22:44
I didn't want to have to carry around ancilliary caches for .chars in order to make some multi-pass algorithms on AoA of Str more efficient. 22:45
22:52 spider-mario left 22:55 ShimmerFairy joined
jnthn writed up the last week's work while traveling: 6guts.wordpress.com/2015/04/30/thi...any-fixes/ 23:00
Going to get some rest now, and will be doing Perl 6 things tomorrow. :)
dalek kudo-star-daily: b983917 | coke++ | log/ (2 files):
today (automated commit)
23:03
japhb m: my @columns = "", "" => {"max-width" => 130}; say @columns.perl; say .WHAT for @columns; say @columns.map({ $_ ~~ Pair ?? $_ !! $_ => {} }).perl 23:06
camelia rakudo-moar d09e62: OUTPUT«["", "" => {:max-width(130)}]<>␤(Str)␤(Pair)␤("" => {}, ("" => {:max-width(130)}) => {})␤»
japhb OK, WTH am I doing wrong there?
I want Str to be paired with an empty hash, and Pair to pass through. Clearly something is bogus. 23:07
jnthn m: my @columns = "", "" => {"max-width" => 130}; say @columns.map({ $_ ~~ Pair ?? $_ !! ($_ => {}) }).perl 23:08
camelia rakudo-moar d09e62: OUTPUT«("" => {}, "" => {:max-width(130)})␤»
jnthn Precedence strikes!
japhb OH GAH
I *knew* it was going to be simple and annoying 23:09
Thanks, jnthn++
japhb goes to read jnthn's post
23:13 fhelmberger joined 23:18 fhelmberger left 23:22 RabidGravy left 23:23 jferrero is now known as JoaquinFerrero
cognominal jnthn++ 23:24
jnthn goes to sleep :) o/ 23:25
23:25 dolmen left 23:26 vendethiel joined, brrt joined 23:29 BenGoldberg joined
jepeway hey, so raiph++ for gist comments. 23:31
yoleaux 27 Apr 2015 00:57Z <raiph> jepeway: I've added a comment to your gist
29 Apr 2015 17:27Z <raiph> jepeway: I've changed/extended my commentary at gist.github.com/cjepeway/42215154aff709d3efd7
23:32 telex left, brrt left, jack_rabbit joined 23:34 telex joined 23:47 vendethiel left 23:56 lucasb left