»ö« 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.
psch m: my @cache = 2; my @primes := gather for 2..* { @cache.push(.take) if so [+] $_ Z% @cache[^($_.sqrt)] }; say @primes[^10]; # cono 00:02
camelia rakudo-moar 40748b: OUTPUT«3 5 7 9 11 13 15 17 19 21␤»
psch oh
noo
im too tired
:(
all of my sads
timotimo: that ran in 5 minutes, BUT it's clearly wrong 00:03
silly me
@cache doesn't get updated inside the gather scope if it's declared outside it seems 00:08
or is it that the zip is thunked..? 00:09
00:10 ldris joined
timotimo does $_.take actually return $_? 00:14
m: gather { say 10.take }
camelia rakudo-moar 40748b: OUTPUT«10␤»
timotimo hmm.
00:14 ventica left
timotimo you know the ... operator lets you get all previous values passed into the generator closure, too, right? 00:14
i think that'd make it tons easier 00:15
and i think you want X% instead of Z%
00:15 SevenWolf left
psch X% breaks somehow 00:16
m: my @cache = 2; my @primes := gather for 2..* { @cache.push(.take) if so [+] $_ X% @cache[^($_.sqrt)] }; say @primes[^10]; 00:17
camelia rakudo-moar 40748b: OUTPUT«use of uninitialized value of type Any in numeric context in block at /tmp/UuPMIzNZmG:1␤␤===SORRY!===␤Type check failed for return value; expected 'Int' but got 'Failure'␤»
psch which should maybe point towards what's wrong, but i'm not seeing it
m: my @cache = 2; my @primes := gather for 2..* { @cache.push(.take) if so [+] ($_ X% @cache[^($_.sqrt)]) }; say @primes[^10];
camelia rakudo-moar 40748b: OUTPUT«use of uninitialized value of type Any in numeric context in block at /tmp/I1hjFVhZj_:1␤␤===SORRY!===␤Type check failed for return value; expected 'Int' but got 'Failure'␤»
psch i don't know how ... gives me the previous values
timotimo i'll show you 00:18
m: .say for ^20, -> *@v { @v.pick + 1 } ... 30 00:19
camelia rakudo-moar 40748b: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤7␤16␤18␤7␤19␤11␤4␤13␤12␤19␤13␤20␤19␤5␤6␤16␤8␤12␤19␤14␤13␤14␤8␤11␤14␤9␤17␤11␤20␤19␤6␤19␤1␤20␤13␤1…»
timotimo oh, that's not going to converge like that
m: .say for 20, -> *@v { @v.pick + 2 } ... 30
camelia rakudo-moar 40748b: OUTPUT«20␤22␤22␤22␤22␤22␤24␤26␤26␤24␤24␤26␤28␤28␤28␤30␤»
timotimo and that's boring %) 00:20
m: .say for ^5, -> *@v { @v.pick + 2 } ... 30
camelia rakudo-moar 40748b: OUTPUT«0␤1␤2␤3␤4␤3␤5␤2␤6␤6␤4␤4␤3␤5␤6␤5␤7␤6␤2␤6␤8␤5␤8␤9␤5␤4␤6␤2␤8␤10␤4␤8␤7␤8␤6␤9␤3␤4␤7␤5␤9␤6␤7␤7␤8␤6␤8␤6␤8␤7␤7␤10␤8␤10␤9␤6␤10␤5␤5␤3␤8␤12␤10…»
timotimo m: .say for ^5, -> *@v { ([max] @v.pick: 3) + 2 } ... 30
camelia rakudo-moar 40748b: OUTPUT«0␤1␤2␤3␤4␤5␤7␤6␤8␤7␤9␤9␤10␤12␤14␤7␤12␤14␤14␤14␤16␤9␤14␤9␤16␤16␤10␤16␤16␤11␤12␤16␤18␤18␤16␤20␤16␤20␤18␤18␤16␤16␤22␤18␤18␤18␤18␤22␤24␤26␤20␤18␤24␤20␤2…»
00:22 zakharyas joined
timotimo so yeah. that's how :) 00:23
00:23 SevenWolf joined
psch that's too dense for me at the moment :D 00:24
curiously that happens when i'm trying to write dense code ;)
00:24 iarna joined 00:25 nbrown____ joined
timotimo oh? 00:25
well, the core of what i wanted to show is that you can just define a slurpy positional argument to the closure left of the ... operator
and it'll give you all values that have been in the series so far
so that'd be your cache in that case
psch ah, okay 00:26
00:29 nbrown____ left
timotimo and i think you don't want "so [+] ...", you probably want any(...) instead, as you'd have to prove the numbers are all positive or zero in order for rakudo to even be able to figure out it could short-circuit that 00:32
or maybe just [||] ... 00:34
that can probably short-circuit? 00:35
m: [||] gather for ^20 { take $_ > 10; say $_ }
camelia rakudo-moar 40748b: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤»
timotimo m: any(gather for ^20 { take $_ > 10; say $_ })
camelia rakudo-moar 40748b: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤»
timotimo :o
m: say so any(gather for ^20 { take $_ > 10; say $_ }) 00:36
camelia rakudo-moar 40748b: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤True␤»
timotimo m: say so (gather for ^20 { take $_ > 10; say $_ }).any
camelia rakudo-moar 40748b: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤True␤»
timotimo that's unfortunate
psch m: my @cache; my @primes := gather for 2...* { @cache.push(.take) if all(@cache.map({ $_ % $^a })) }; say @primes[^10]; 00:40
camelia rakudo-moar 40748b: OUTPUT«2 3 5 7 11 13 17 19 23 29␤»
psch there it is :)
colomon m: my @primes := (2..*).grep(*.is-prime); say @primes[^10] 00:42
camelia rakudo-moar 40748b: OUTPUT«2 3 5 7 11 13 17 19 23 29␤»
colomon is lazy
psch interestingly cono's original code takes 8.3 real for the first 250, while my latest bit takes 3.8 00:43
i'm not going to test how long colomon's takes :P
colomon m: my @primes := (2..*).grep(*.is-prime); say @primes[300] 00:44
camelia rakudo-moar 40748b: OUTPUT«1993␤»
colomon we actually did try to make is-prime somewhat efficient...
timotimo well, the is-prime test is the probabilistic one
00:45 zakharyas left
psch the wikipedia article about probabilistic primality tests definitely is beyond my current waking level 00:51
timotimo well ... 00:52
the probability of getting a false-positive is smaller than getting hit on the head by a little meteorite or something like that
(well, the value that's responsible for the false-positive rate is tunable, of course)
timotimo heads off to bed
o/ 00:53
psch i'll do the same
g'nite \o
00:55 slavik left, jnap joined
japhb perl6-m -e '' is much slower than perl6-m -v ... why? 2 < timotimo> (well, the value that's responsible for the false-positive rate is tunable, of course) 01:00
17:52 * timotimo heads off to bed
17:53 < timotimo> o/
17:53 < psch> i'll do the same
Dangit
perl6-m -e '' is much slower than perl6-m -v ... why? gist.github.com/japhb/c4af98bab6f918aa857d 01:01
japhb has to figure out what is going goofy with his paste buffer this week ....
01:03 virtualsue left 01:06 ldris left 01:07 slavik joined 01:11 jnap left 01:25 nbrown____ joined 01:28 FROGGS_ joined 01:29 klapperl joined 01:30 nbrown____ left 01:31 FROGGS left 01:32 klapperl_ left 01:40 PZt joined 01:44 dayangkun joined 01:47 virtualsue joined 01:54 slavik left 01:58 SevenWolf left 02:02 rurban left 02:08 slavik joined 02:19 chenryn joined 02:48 lustlife joined 02:57 noganex joined 02:58 rurban joined 02:59 noganex_ left 03:11 perlfan left 03:13 xragnar_ joined, xragnar left, xragnar_ is now known as xragnar 03:18 lue left 03:19 mr-foobar joined 03:29 dwarring left 03:32 kaare_ joined 03:42 echoprinter left 03:48 slavik left 03:51 BenGoldberg left 03:55 virtualsue left 03:57 rurban left 03:59 iarna left 04:02 kurahaupo left, slavik joined 04:08 chenryn left 04:12 lue joined 04:16 dayangkun left 04:20 kaare_ left 04:22 iarna joined 04:35 kurahaupo joined 04:36 ventica joined
kurahaupo m 04:37
mm
m 04:38
diakopter m
yoleaux 25 Feb 2014 19:56Z <[Coke]> diakopter: I need a password reset on host06, as my keys stopped working today (and I promptly forgot the password once I had the keys setup)
kurahaupo p
pm
diakopter wow, 25 Feb
04:38 chenryn joined
kurahaupo nm 04:38
04:39 iarna left
kurahaupo pkm 04:40
ml
mlm
mmmmlmm
mkm
mmp
mkmmkp
mkmmkpmp
mkmmkpmpmmm
mkmmkpmpmmmm
04:40 [Sno] left
kurahaupo mkmmkpmpmmkmmm 04:40
mkmmkpmpmmm;m
mkmmkpmpmmmml
mkmmkpmpmmmmlmm
mkmmkpmpmmkmmmmm 04:41
l
04:41 brrt joined
kurahaupo klmmm 04:41
lee_ you ok there?
kurahaupo m
k
kmlnm
m
kmlnmmml
mmm
mmmnnl
damn phone unlocked in pocket, sorry guys 04:42
04:43 chenryn left
diakopter :) 04:48
04:50 zakharyas joined 04:53 kaare_ joined 04:56 zakharyas left 05:01 brrt left 05:11 anaeem1 joined 05:13 vendethiel left
nwc10 kurahaupo: could you get it to put in a colon and then a space? That way,you could start to fuzz test camelia :-) 05:31
m: kmmkpmpmmkmmmmm
camelia rakudo-moar 40748b: OUTPUT«===SORRY!=== Error while compiling /tmp/PWqjhDNV8u␤Undeclared routine:␤ kmmkpmpmmkmmmmm used at line 1␤␤»
05:39 chenryn joined 05:51 gfldex joined 05:56 kaleem joined 05:59 denis_boyun_ joined
ingy where are the p6 numeric types best described? 06:06
s02? 06:07
06:08 dayangkun joined 06:11 Woodi joined 06:12 brrt joined 06:13 gfldex left 06:15 ventica left 06:16 [Sno] joined 06:19 thou left 06:20 erkan left 06:31 dayangkun left 06:36 erkan joined, erkan left, erkan joined 06:38 slavik left 06:48 dayangkun joined 06:51 slavik joined 06:52 chenryn left 06:58 darutoko joined 07:04 lisyara joined 07:09 lisyara is now known as lisyara2 07:11 ventica joined 07:14 chenryn joined 07:24 dmol joined 07:29 brrt left 07:33 Mouq joined
Mouq FROGGS++ 07:34
yoleaux 10 Aug 2014 07:10Z <FROGGS> Mouq: What do you mean by 'how'? <Mouq> FROGGS: How do you use the nqp_to_perl6 branch of v5?
10 Aug 2014 08:11Z <FROGGS> Mouq: In case you meant build instructions I updated the README.md
07:34 virtualsue joined 07:35 kshannon left 07:50 brrt joined
nwc10 brrt: PASS (apar from sinful flapping spectests) 07:51
brrt :-D
07:51 kuroseki joined
brrt much wow 07:52
also
still not helping core-setting
masak good morning, #perl6
07:55 aoseki left 08:02 dayangkun left 08:04 dayangkun joined
brrt \o masak 08:06
(as in, core.setting compiles all right, but it's not any faster)
08:12 FROGGS_ is now known as FROGGS
FROGGS morning 08:13
brrt morning FROGGS 08:15
08:15 clkao left 08:17 clkao joined 08:25 lisyara2 left 08:31 pecastro left 08:41 pingvin joined
sergot carlin: I do :) 08:45
hey! o/
masak \o 08:52
moritz o/ 08:56
timotimo: tiny typo in p6weekly.wordpress.com/2014/08/05/2...this-time/ : 'usag' (should be 'usage')
masak timotimo: [||] doesn't short-circuit, see S03:1382. 08:57
synopsebot Link: perlcabal.org/syn/S03.html#line_1382
09:06 xinming_ is now known as xinming 09:10 broquain1 is now known as broquaint, SamuraiJack joined
FROGGS jnthn: I added this to NFA.nqp: nqp::say("$name iscont") if nqp::iscont(@substates); 09:10
and the only thing that shows up is "b iscont", so the thing from my example code
nothing shows up when building nqp or rakudo 09:11
now I'll rebuild perl6-p to know if that thing also gets that bloody container 09:12
09:12 ren1us joined
jnthn Oh...that being containerized would probably be rather bad 09:12
09:13 chenryn left
FROGGS yeah, and I have no idea where that comes from... 09:14
09:14 chenryn joined
FROGGS I mean, it must have something todo with b being a multi 09:14
ren1us weird question. the cs department at my college is looking into setting up a "Human Side of CS" talk series, and we're trying to come up with a list of potential speakers. i feel like the evolution of the p6 community over the last decade is a perfect fit. given that it's 5 am on the east coast i think my timing is a bit off, but are there any p6 people in the new england (US) area who would 09:16
be a good speaker?
09:17 kaleem left
ren1us (we liberal arts schools do weird stuff in our cs programs) 09:17
FROGGS somebody would just have to perform TimToady++'s talks :o) 09:18
09:19 silug left 09:25 chenryn left
Mouq I wouldn't be a good speaker, but I'm curious where? 09:29
09:29 chenryn joined
ren1us south-east CT (Connecticut College) 09:29
we get no attention because we're more or less a boring little liberal arts school with a crazy good science program
most of the interesting talks go on an hour in any direction (yale, harvard, mit) 09:30
and i've actually never seen any of timtoady's p6 talks
09:32 silug joined 09:33 brrt left
Mouq Ahh, well I have family in Conneticut, maybe I'll try to stop by for a talk sometime :) I'm going to a tiny college too, but it's a branch of Penn State so that's a little different I guess 09:34
09:36 kaleem joined 09:37 silug left
Mouq Much smaller than Conn tho 09:38
timotimo .tell japhb -v and echo "" | perl6-m will not pull in the setting, but an empty program will
yoleaux timotimo: I'll pass your message to japhb.
09:39 silug joined
Mouq Hmm 09:41
FROGGS: Strange error with v5 (nqp_to_perl6 branch): use v5; 2,3; say "test"; 09:42
===SORRY!=== Cannot iterate object with P6opaque representation
Came up because I wrote my @a = 1,2,3 instead of my @a = (1,2,3) 09:43
09:44 chenryn left
dalek rlito: c3003cf | (Flavio S. Glock)++ | misc/alias.pl:
misc - add a parameter aliasing example
09:44
09:44 silug left, spider-mario joined
Mouq Hm, comes from deep in the optimizer 09:45
moritz it doesn't surprise me that the optimizer makes v6-specific assumptions :-) 09:46
timotimo if the optimizer wasn't doing some things in-place, i'd suggest giving it a big try/catch that just returns the original AST back if an unexpected error occurs 09:47
moritz and hide all the errors, and wonder why stuff runs so slow? 09:49
bad idea, IMHO
timotimo ah, yes. 09:51
Mouq It may just be that v5 isn't marking void context correctly 09:52
star: use v5; 2,3; 1
camelia star-{m,p} 2014.04: OUTPUT«WARNINGS:␤Useless use of "," in expression "2,3" in sink context (line 1)␤»
Mouq Or just the branch anyway :) 09:53
lizmat good *, #perl6!
r: $_=1; .say for grep $_ == 1, 1,2,3 # WTF ? 09:54
camelia rakudo-{parrot,jvm,moar} 40748b: OUTPUT«1␤2␤3␤»
Mouq m: .say for grep True, 1,2,3 # :P
camelia rakudo-moar 40748b: OUTPUT«1␤2␤3␤»
Mouq also \o lizmat 09:55
jnthn lizmat: Block!
lizmat S29:126 appears to imply this should be a compile error
synopsebot Link: perlcabal.org/syn/S29.html#line_126
lizmat o/ Mouq jnthn 09:56
or at least a runtime error
09:58 silug joined
jnthn It can't be a runtime error. 09:58
Since we've know idea it was something silly by then; we just see True
Mouq
.oO( multi grep (Bool $, ...) { die "you probably need a block, silly" } )
09:59
10:02 silug left
lizmat Mouq: going to spectest with that change 10:03
10:03 brrt joined
timotimo if you want a matcher that'll always fail or succeed, you can still supply -> { True/False } 10:05
jnthn Ah... "Booleans are forbidden because they almost always indicate a programming error where the argument has been evaluated too soon against the wrong $_" 10:07
So handholding...
But yeah, a multi candidate is probably the cleanest way.
timotimo how about a warning + nextsame? 10:08
jnthn Well, forbidden sounds like error, not warning
timotimo mhh 10:09
fair enough
10:10 dayangkun left
timotimo .tell sergot: you haven't posted to your blog about the gsoc for quite a while; isn't there some kind of requirement (possibly not strict) to have a public progress report on a biweekly basis? 10:10
yoleaux timotimo: What kind of a name is "sergot:"?!
jnthn Yay, my JIT patches didn't blow up the builds, spectest, etc.
timotimo .tell sergot you haven't posted to your blog about the gsoc for quite a while; isn't there some kind of requirement (possibly not strict) to have a public progress report on a biweekly basis?
yoleaux timotimo: I'll pass your message to sergot.
jnthn gently encourages brrt to take a moment to write a short post noting the merge, and whatever else he fancies noting :) 10:12
brrt++ # adding function-calling stuff in to the JIT isn't hard 10:13
lizmat spectest seems clean
jnthn lizmat: You did --enable-jit too? :)
lizmat: Also: clean? init.t thing ain't fixed yet, no?
lizmat I mean clean as in no additional problems 10:14
:-)
brrt :-) yes
jnthn Right :)
10:14 chenryn joined
lizmat where does the --enable-jit go ? 10:14
jnthn To MoarVM's Configure
I guess if you --gen-moar there's a --moar-options you can use? 10:15
lizmat --moar-options=--enable-jit ?
jnthn Also you'll need to --gen-moar=master as we didn't bump revisions yet
lizmat: Someth9ing like that
lizmat will do so in a mo, first making this a proper exception :-) 10:16
10:16 silug joined 10:17 pecastro joined
lizmat and do the same with first, first-index, last-index, grep-index 10:18
10:19 chenryn left 10:20 silug left, virtualsue left
lizmat How about "Cannot use Bool as Matcher with 'grep'" as text for the exception ? 10:25
jnthn Well, it may want to give a hint about why we're telling them this 10:26
"(Did you forget to use $_ inside a block?)"
lizmat ok 10:29
10:32 silug joined 10:33 chenryn joined
FROGGS Mouq: these things can happen, I'm not yet done with the transition :o) 10:33
10:38 silug left 10:52 silug joined 10:53 pingvin left 10:56 silug left
FROGGS jnthn: using perl6-j the "b iscont" also shows up, but it still works out for some reason... 11:00
maybe it is not that strict about containers
jnthn Well, or more likely it does a decont somewhere that Moar's code-gen doesn't put one 11:02
FROGGS hmmm 11:04
but do we want that?
jnthn: building perl6-p is busted 11:05
jnthn Not sure, without knowing where it is
FROGGS Stage pir : Killed
make: *** [CORE.setting.pbc] Fehler 137
it feels like a deep recursion
jnthn What on earth does 137 mean?
FROGGS killed by OS or so
nwc10 SIGBUS and cordump, I thnk
oh, no
SIGKILL and coredump, probably
m: 137 - 128
camelia ( no output )
nwc10 m: say 137 - 128
camelia rakudo-moar 40748b: OUTPUT«9␤»
FROGGS I was unable to type here and only hardly could move the mouse
11:06 SamuraiJack left 11:07 SamuraiJack joined 11:11 silug joined 11:14 nbrown____ joined 11:17 nbrown____ is now known as nbrown
lizmat jnthn: how about "Did you mean to use $_ inside a block?) 11:17
so, s/forget/mean/
11:17 silug left 11:19 Mouq left
jnthn lizmat: Yes, that's fine 11:21
11:23 chenryn left 11:24 chenryn joined 11:26 cognome joined 11:28 silug joined
dalek kudo/nom: 16ce7df | (Elizabeth Mattijsen)++ | src/core/ (2 files):
Prevent using Bool as a Matcher in grep c.s.

As per S29:126
11:28
synopsebot Link: perlcabal.org/syn/S29.html#line_126
11:29 chenryn left 11:33 silug left 11:34 chenryn joined
cono timotimo: This is perl6 version 2014.07-147-g40748bc built on MoarVM version 2014.07-116-g9a4fda8 11:35
timotimo oh, that's quite up-to-date 11:37
cono yeah, but I'm newbie in perl6, so looks like it could be rewritten better )
timotimo so you'll probably not benefit from recent performance improvements
cono looked to what psch provided. Stuck here if so [+] :) 11:38
timotimo the "so" is superfluous in this case; it's the opposite of "not"
gotta run now :\ 11:39
cono cu
thanks for explanation
timotimo no problem :)
11:46 silug joined
dalek kudo/nom: 50d042b | Carlin++ | tools/lib/NQP/Configure.pm:
pass --moar-options(s) to NQP's Configure

This makes setting --moar-option(s) in rakudo's Configure actually have those options passed to MoarVM's Configure
11:49
kudo/nom: 11afe19 | lizmat++ | tools/lib/NQP/Configure.pm:
Merge pull request #300 from carbin/some-of-us-have-to-set-the-os-option

pass --moar-options(s) to NQP's Configure
11:51 silug left
lizmat seems we have two mentions of DESTROY in the spec, both seem like fossils to me 11:55
S12:856 11:56
synopsebot Link: perlcabal.org/syn/S12.html#line_856
lizmat S29-249
S29:249
synopsebot Link: perlcabal.org/syn/S29.html#line_249
lizmat hmmm.... rebuilt with patched configure, but jit_log still empty 11:57
dalek ecs: 56c5710 | (Elizabeth Mattijsen)++ | S (2 files):
Get rid of DESTROY fossils
12:00
12:04 silug joined
carlin ls 12:05
oops
the jit_log isn't empty for me, but I manually bumped nqp/tools/build/MOAR_REVISION to 7671558 12:07
12:07 molaf__ left
jnthn Yes, for now it'll need --gen-master 12:08
uh
Yes, for now it'll need --gen-moar=master
12:08 nbrown left, silug left 12:11 rurban joined
carlin doh, didn't realise you could do =master to get the HEAD 12:13
FROGGS jnthn: it seems like istrue decont's on jvm but not on moar
jnthn nqp::istrue ? 12:14
QAST::MASTOperations.add_core_moarop_mapping('istrue', 'istrue', :decont(0)); 12:15
FROGGS ahh, dang
jnthn It's marked as deconting...
dalek ast: a0a80b7 | (Pepe Schwarz)++ | S32-exceptions/misc.t:
Unfudge and correct test for RT #122502.
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122502
12:21 silug joined, kivutar joined
lizmat jnthn: fwiw, I *did* --gen-moar=master, but it still doesn't give me jit 12:23
12:25 silug left
FROGGS lizmat: you have to pass --enable-jit to moar-options 12:29
12:29 silug joined
lizmat this was the command I used: perl Configure.pl --gen-moar=master --moar-option=--enable-jit --gen-nqp --backends=moar 12:30
12:31 jnap joined
jnthn lizmat: If it's still in the terminal, how does your MoarVM Configure output look? 12:31
12:32 telex left 12:34 silug left
lizmat Already on 'master' 12:34
Already up-to-date.
Configuring and building MoarVM ...
perl Configure.pl --enable-jit --optimize --prefix=/Users/liz/Github/rakudo.moar/install --make-install
12:34 silug joined
lizmat Configuring native build environment ................... JIT isn't supported on darwin-thread-multi-2level yet. 12:34
aha!
12:34 telex joined
lizmat :-( 12:34
dalek Heuristic branch merge: pushed 79 commits to rakudo/S26-WHY by hoelzro 12:35
12:35 araujo joined
carlin if ($Config{archname} =~ m/^x86_64|^darwin-2level/) 12:35
jnthn Ah...so it's not detecting it as an x64 arch
dalek ast: 750b9da | (Pepe Schwarz)++ | S32-exceptions/misc.t:
Add test for RT #115726.
12:36
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=115726
cognome is this possible to use an emum name as a subrule in a rule, so as to match any of the enum strings? 12:37
r: enum Bool < False True >; 'True' ~~ m/ <Bool> / 12:38
jnthn No.
camelia rakudo-jvm 11afe1: OUTPUT«(timeout)»
..rakudo-moar 11afe1: OUTPUT«P6opaque: no such attribute '$!pos'␤ in method match at src/gen/m-CORE.setting:6297␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-parrot 11afe1: OUTPUT«Can not get attribute '$!pos' declared in class 'Cursor' with this object␤ in regex at /tmp/tmpfile:1␤ in method match at gen/parrot/CORE.setting:6301␤ in block at /tmp/tmpfile:1␤␤»
cognome too bad. 12:39
jnthn m: say Bool.enums.keys
camelia rakudo-moar 11afe1: OUTPUT«False True␤»
jnthn So you could @(Bool.enums.keys) inside a regex I guess
cognome How does it knows that the array is constant to make that a NFA. Good luck for jnthn to optimize that :) 12:41
jnthn It doesn't.
dalek ast: 4b608e7 | (Elizabeth Mattijsen)++ | S32-list/ (5 files):
Add tests for Bool Matchers
12:42
jnthn Not sure off hand there's an especially great way to do this yet. Not without regex interpolation of some kind.
lizmat BEGIN @(Bool.enums.keys) ? 12:43
12:45 rurban left 12:46 guru joined
cognome r: constant @bkeys = Bool.enums.keys; 'True' ~~ / @bkeys / 12:46
12:46 ivanshmakov left
camelia ( no output ) 12:46
12:46 guru is now known as Guest38471, silug left, Guest38471 is now known as ajr_
cognome r: constant @bkeys = Bool.enums.keys; say 'True' ~~ / @bkeys / 12:46
camelia rakudo-{parrot,jvm,moar} 11afe1: OUTPUT«「True」␤␤»
cognome don't know if that is optimized. 12:47
12:49 ivanshmakov joined, molaf joined 12:50 virtualsue joined 12:53 kaare_ left, klapperl_ joined 12:55 klapperl left 12:58 anaeem1 left 12:59 silug joined 13:00 ivanshmakov| joined
dalek kudo-star-daily: c5c656f | coke++ | log/ (15 files):
today (automated commit)
13:01
kudo-star-daily: 443471a | coke++ | log/ (14 files):
today (automated commit)
rl6-roast-data: b3f9fc2 | coke++ | / (5 files):
today (automated commit)
13:02 ajr joined, ajr_ left, raiph joined, ivanshmakov left, ajr is now known as Guest25736 13:03 Guest25736 is now known as ajr_, cognome left 13:04 cognome joined, silug left, rurban joined 13:08 cognome left
dalek blets: da79fa3 | (Herbert Breunung)++ | docs/appendix-g-glossary.txt:
streamline glossary head text
13:12
13:13 brrt left
FROGGS wow, we decont a lot 13:25
nwc10 and you can see a away to reduce the number of times?
FROGGS ummm, no
I am hunting a decont we do on the jvm but not on moar...
13:26 dayangkun joined
FROGGS we decont 561191 times for -e 1 using perl6-j 13:26
jnthn spesh does remove some amount of decont, and turns many of those it can't into a single pointer operation
FROGGS yeah, that'd better be cheap :o)
jnthn Though it was cheap anyways
Well, it's just a dereference really. Pulling a value out of a container. 13:27
dalek blets: 47e0136 | (Herbert Breunung)++ | docs/appendix-g-glossary.txt:
rewrote glossary text for yadda ops
13:30
13:31 kaare_ joined
lizmat cycling& 13:34
13:41 kaleem left 13:45 cognominal joined 13:48 iarna joined
dalek blets: 6718e2f | (Herbert Breunung)++ | docs/ (3 files):
organizing first link anchor to explain parsing with grammars
13:51
13:52 iarna left 13:56 thou joined
psch m: say "{.key}" given a => 1 # RT #100746 14:01
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=100746
camelia rakudo-moar 11afe1: OUTPUT«␤»
14:01 [Sno] left
moritz m: say .perl given a => 1; 14:03
camelia rakudo-moar 11afe1: OUTPUT«"a" => 1␤»
moritz m: say .key given a => 1;
camelia rakudo-moar 11afe1: OUTPUT«a␤»
psch m: $_ = a => 1; say "{.key}" 14:04
camelia rakudo-moar 11afe1: OUTPUT«a␤»
FROGGS m: "{say .key}" given a => 1
camelia rakudo-moar 11afe1: OUTPUT«Nil␤»
FROGGS m: "{say $_}" given a => 1
camelia rakudo-moar 11afe1: OUTPUT«Nil␤»
FROGGS n: "{say $_}" given a => 1 14:05
camelia niecza v24-109-g48a8de3: OUTPUT«"a" => 1␤»
FROGGS niecza++
moritz and I think it's even correct
because {say $_} is a block
and it's called without an argument
FROGGS n: "{ { say $_ } }" given a => 1
camelia niecza v24-109-g48a8de3: OUTPUT«"a" => 1␤»
moritz m: $_ = 42; { say $_}() 14:06
camelia rakudo-moar 11afe1: OUTPUT«42␤»
FROGGS I'm not so sure that {} in a string already is a block
it is more like: hey! here comes code
moritz yes, it's a block
psch m: say "{say $^a}"("foo")
camelia rakudo-moar 11afe1: OUTPUT«===SORRY!=== Error while compiling /tmp/rrZFFXSQgc␤Placeholder variable $^a may not be used here because the surrounding block takes no signature␤at /tmp/rrZFFXSQgc:1␤------> say "{say $^a}⏏"("foo")␤ expect…»
dalek blets: f591196 | (Herbert Breunung)++ | docs/appendix- (2 files):
explaining better parse, subparse and action method - and lot of spacings for better readability
psch EDOUBLESAY 14:07
moritz it's one of the reasons we allow $^a to be accessed as $a too
so that inner scopes, including {} blocks in strings, can access them
psch m: (-> $a { say "{$a}" })("foo") 14:08
camelia rakudo-moar 11afe1: OUTPUT«foo␤»
psch m: (-> $a { say "{$a}" }) given "foo"
camelia ( no output )
FROGGS you do not invoke it 14:09
psch right
i had a feeling it does something different :)
m: ((-> $a { say "{$a}" }) given "foo")()
camelia rakudo-moar 11afe1: OUTPUT«Not enough positional parameters passed; got 0 but expected 1␤ in block at /tmp/CUpmVuKSCS:1␤␤»
psch i think i need a break
FROGGS hehe, clearly :P 14:11
14:16 raiph left
daxim_ r: -> $f, $s { return $f + $s }; # how do I immediately call this block? arguments are for instance 23, 42 14:17
camelia ( no output )
14:17 brrt joined
moritz m: -> $f, $s { return $f + $s }(23, 42) # dunno if that works, or needs parens 14:18
camelia ( no output )
FROGGS m: -> $f, $s { say $f + $s }(23, 42); # this way
camelia rakudo-moar 11afe1: OUTPUT«65␤»
moritz m: say -> $f, $s { return $f + $s }(23, 42) # dunno if that works, or needs parens
camelia ( no output )
moritz m: say (-> $f, $s { return $f + $s })(23, 42)
camelia ( no output )
moritz ffs? 14:19
m: say 23 + 42
camelia rakudo-moar 11afe1: OUTPUT«65␤»
FROGGS m: say( -> $f, $s { return $f + $s }(23, 42) )
camelia ( no output )
FROGGS err
moritz oh
FROGGS a return in a pointy >.<
moritz return inside a lambda is a BAD IDEA
return is only for routines
FROGGS daxim_: a return falls through a pointy/lambda
moritz m: say -> $f, $s { $f + $s }(23, 42)
camelia rakudo-moar 11afe1: OUTPUT«65␤»
daxim_ this is confusing me 14:20
FROGGS m: sub foo { if 42 { return 1 } } # for what should the return be?
camelia ( no output )
FROGGS m: sub foo { if 42 -> $x { return 1 } } # more clearly
camelia ( no output )
FROGGS that is also a pointy, and the return is meant to return from the sub 14:21
daxim_ please add this to perl6trap document
FROGGS O.o
PerlJam I get a core dump locally for -> $f, $s { return $f + $s }(23, 42). That seems LTA to me. Seems like this is something that could be detected and warn the user about anyway
moritz it should say "return without a routine" 14:22
FROGGS if it does not do that it should state that the return-exception missed its handler
14:22 psch left
FROGGS j: -> $f, $s { return $f + $s }(23, 42) 14:22
camelia ( no output )
masak m: return; say "alive"
camelia ( no output )
FROGGS j: return 14:23
camelia ( no output )
FROGGS :/
masak I'd go so far as to consider that a bug.
FROGGS yeah
masak it can be caught *statically*.
PerlJam agreed
masak submits rakuobug
14:23 psch joined
moritz since control exceptions are lexotic, and all taht 14:23
masak `return` in the mainline is always wrong. 14:24
PerlJam masak: sub MAIN { return 42; } # ;-)
FROGGS m: class foo { method bar { say &?ROUTINE } }; foo.bar 14:25
camelia rakudo-moar 11afe1: OUTPUT«bar␤»
FROGGS okay, should be an easy fix
masak PerlJam: that's un-wrong but meaningless :)
FROGGS *g*
PerlJam masak: it's a gentle nudge toward improving the precision of our words :) 14:26
masak PerlJam: I stand by what I said. MAIN is a sub, so `return` is fine there.
PerlJam: it's only not fine outside of any routine.
FROGGS "Can only return from within a method or sub"
masak FROGGS: "routine"
14:27 iarna joined
FROGGS std: -> $a { return 42 } 14:27
masak that's the Perl 6 word for it.
camelia std 0f2049c: OUTPUT«Potential difficulties:␤ $a is declared but not used at /tmp/IHMoUFGPst line 1:␤------> -> ⏏$a { return 42 }␤ok 00:01 126m␤»
FROGGS std: return
camelia std 0f2049c: OUTPUT«ok 00:01 120m␤»
masak FROGGS: you can return from a macro, too. for example.
FROGGS ahh
okay
daxim_ who's up for discussion/code sprints for standardising/documenting library installation paths across implementations at austrian perl workshop?
masak (moritz++ says that's because a macro is a sub is a routine. I say it's because a macro is a routine) :)
moritz thinks it's nice that masak++ speaks for him, so he can be a bit more lazy himself 14:28
masak :)
moritz: hope I didn't misrepresent you in any way. 14:29
moritz masak: if you did, I'd protest. Not to lazy for that... :-)
masak excellent. 14:30
PerlJam notes that the discussion on pointy blocks doesn't mention the word "lambda" 14:32
perhaps it should.
14:41 mathw_ left 14:42 ggoebel1111114 joined, mathw joined 14:43 treehug88 joined
FROGGS Attempt to return outside of any Routine 14:44
make: *** [RESTRICTED.setting.moarvm] Fehler 1
lol
masak epic fehler.
FROGGS my bad, there is not even a return..
moritz oh, and remember that return is just a routine, and overridable :-) 14:45
14:45 ggoebel1111113 left
moritz m: sub return($x) { $x * 2}; sub f { return 21 }; f() 14:45
camelia ( no output )
moritz m: sub return($x) { $x * 2}; sub f { return 21 }; say f()
camelia rakudo-moar 11afe1: OUTPUT«42␤»
moritz m: sub return($x) { $x * 2}; say -> { return 21 }(21) 14:46
camelia rakudo-moar 11afe1: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤ in block at /tmp/Cct6vyFoFP:1␤␤»
moritz m: sub return($x) { $x * 2}; say -> { return 21 }()
camelia rakudo-moar 11afe1: OUTPUT«42␤»
14:46 ajr_ left 14:47 guru joined
moritz imagine the fun you could have, if for example JSON::Tiny exported a rigged &return... :-) 14:47
14:47 guru is now known as Guest36377
jnthn
.oO( :!auth<moritz> )
14:48
moritz oh, new github profiles are easy to create :-)
masak .oO( :!auth<mysterious_stranger_who_is_not_at_all_moritz> ) 14:50
FROGGS I could talk to ANDK so that at least CPAN would be safe :o) 14:51
timotimo aren't we supposed to be able to filter versions with a code block? :P 14:52
14:52 raiph joined
timotimo and do verification of whatever kind? 14:52
FROGGS okay, my patch seems to work now... 14:53
14:56 pmichaud joined
pmichaud good morning, #perl6 14:56
PerlJam pmichaud! o/
14:56 anaeem1 joined 14:57 anaeem1 left, anaeem1 joined
carlin would be nice to be able to do, use Foo:sha<67c738...> 14:57
pmichaud I just saw RT #122504.... I think that by definition "lexotic" means that something might not be able to be caught statically
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122504
pmichaud PerlJam! o/
PerlJam pmichaud: btw, Happy (early) Birthday. Just in case I don't remember on your actual birthday :) 14:58
pmichaud PerlJam: thanks!
timotimo hola pmichaud!
moritz maybe "lexotic" isn't the right terminology
pmichaud In particular, foo( -> { return 123 } ) means that the return cannot be caught statically
moritz is a bit out of tune 14:59
pmichaud since it's being specified outside of a lexical routine, it's dynamic scoped
masak pmichaud! \o/
FROGGS pmichaud: \o/
timotimo pmichaud: have you been following the amazing performance improvements moar has been getting? :)
pmichaud timotimo: I have not. I had a summer contract/employment position that just finished last Friday... so my following of Perl 6 has been sporadic at best :) 15:00
FROGGS carlin: we could pass additional adverbs to the EXPORT sub of the module you use...
(or all)
15:00 Guest36377 left
timotimo pmichaud: you'll be all the more positively surprised, then ;) 15:00
PerlJam pmichaud: oh, then you need to build rakudo/nqp with the moar backend. It's gotten loads faster.
FROGGS this way we could even have EXPORT multis
15:01 ajr joined
TimToady pmichaud: but we've been saving contextual refactor for you :) 15:01
well, except when I couldn't stand it, and made push take advantage of eagerness last week... :) 15:02
15:02 ajr left
pmichaud the only place one could potentially catch 'return' statically is if it's in the mainline, not inside of a lambda 15:02
15:02 bjz left
pmichaud and I'm not sure it's worth the trouble. 15:02
timotimo right; how iterating things are supposed to tell iterators/lists how eager to be
15:02 bjz joined
pmichaud Yes, I was wondering what the status of lists is, and whether I'm still "point" for that or if someone else has taken it on :) 15:03
brrt good ... morning for you, pmichaud :-)
15:03 ajr joined
TimToady yeah, if you actually use it as a lambda, you'd have to do escape analysis before inlining its usages 15:03
a bare block, though, can be inlined, and then returned
15:03 ajr is now known as Guest43775, chenryn left 15:04 Guest43775 is now known as ajr_
TimToady as can lambdas fed to known constructs like loops 15:04
masak oh, good point.
pmichaud and yes, I've missed you all. My summer contract was super-fun, though. :)
FROGGS that is my patch, but it looks like it introduces spectest fails:
my &return := -> | {
+ X::ControlFlow::Return.new().throw
+ unless nqp::getlexrel(nqp::ctxcaller(nqp::ctx()), '&?ROUTINE');
my $parcel :=
masak pmichaud: missed you toooo!
masak hugs pmichaud
timotimo \o/
pmichaud Do I update the ticket, or ... ? 15:05
timotimo pmichaud: yes, you're still on point :)
masak FROGGS: what TimToady++ just said.
FROGGS: like, `my &block = -> { return }` is fine.
FROGGS uhh
masak ...yeah.
FROGGS that explains why wrap.t fails
:o)
pmichaud can I reject the ticket? 15:06
moritz if so, we need a ticket for better runtime error
masak pmichaud: IMO, a core of it still is valid.
15:06 chenryn joined
pmichaud okay, I'll update it 15:06
masak pmichaud: like, `return` outside of any routine or lambda is always wrong and should be caught statically. 15:07
even if it is not caught statically, right now it *has the wrong runtime behavior*.
pmichaud I can go with "wrong runtime behavior"
15:07 ajr_ left
FROGGS would be funny if the quotes would be included :P 15:08
TimToady frequently has wrong runtime behavior...
15:09 ajr_ joined
jnthn ooh, a pmichaud! :) 15:09
TimToady well, except lately, he hasn't been allowed to run at all, just walk gently
jnthn o/ pmichaud
Glad your summer contract was fun. :)
pmichaud jnthn: /o
er, o/
(I've even forgotten how to wave, it seems.)
TimToady it was just a freudian headache on one side of your head 15:10
masak ...but not how to salute!
jnthn pmichaud: Guess you won't be making YAPC::EU this year?
pmichaud when is yapc::eu ? 15:11
brrt sofia, bulgaria
masak *when*
jnthn That's where :P
pmichaud well, "where" is important also :)
jnthn 22nd :)
masak 22st - 24th
pmichaud oooooh 15:12
masak er, 22nd
jnthn st? :P
masak 22st - 24rd :)
pmichaud I'm pretty sure Perl 6 allows any of st|nd|rd|th
masak hehe
pmichaud at least it used to :)
masak m: say :42umpteenth
camelia rakudo-moar 11afe1: OUTPUT«␤»
masak m: say (:42umpteenth)
camelia rakudo-moar 11afe1: OUTPUT«"umpteenth" => 42␤»
masak yep.
m: say (:42rd) 15:13
camelia rakudo-moar 11afe1: OUTPUT«"rd" => 42␤»
15:13 ajr_ left
TimToady isn't sure how to pronounce that one, or even if he wants to... 15:13
pmichaud holy cow! roundtrip to sofia is only $1800
masak "forty-twoord"
pmichaud: ship it! 15:14
jnthn pmichaud: ooh :)
FROGGS pmichaud: and in October would be the APW - act.useperl.at/apw2014/talk/5565 and act.useperl.at/apw2014/talk/5566
dalek ecs: 43ff895 | duff++ | S99-glossary.pod:
[S99] Add emptyish lambda and pointy block
jnthn pmichaud: Would be great to see you, if you can make it :)
15:14 ajr_ joined
masak +1 15:14
hoelzro morning #perl6
pmichaud I've been thinking I need a trip... I had been planning western US, but .... hrm
FROGGS hi hoelzro 15:15
hoelzro o/ FROGGS
jnthn pmichaud: I'll be there form 20th afternoon but leaving on the evening of the 24th, fwiw
PerlJam This seems useful to folks here: www.cs.cmu.edu/~aldrich/papers/ecoop14-tsls.pdf
pmichaud yes, that information helps
jnthn has to commute to his autumn contract. :)
15:15 kaleem joined
pmichaud is there a hackathon-ish thingy? 15:16
jnthn (Thus the leaving on the evening)
No hackathon this time... The Austrian Perl Workshop in October has two days of glorious hackathon, though. :)
pmichaud yes, I've also got APW on my calendar
jnthn \o/
FROGGS yay
pmichaud not sure I'll be able to make that one, but it's been on my radar
TimToady we're planning to come to the APW, especially since we can't go to Sophia 15:17
pmichaud that makes me even more inclined to do APW, fwiw. :)
it's entirely possible for me to consider both
masak PerlJam: I'm on page two, and yes, it looks useful/interesting.
pmichaud if I had to choose between them, which is better? ;-) 15:18
TimToady had to cancel on 4 different events this summer :(
masak PerlJam: "A notation is important for what it leaves out." -- I like that.
PerlJam masak: aye, skimming it made little Perl6 dings go off in my head :)
FROGGS pmichaud: depends... it is like choosing between hackathons and talks...
masak hugs TimToady
15:18 denis_boyun_ left
pmichaud TimToady: ick! 15:18
I know how disappointing cancelling can be 15:19
actually, "disappointing" is the wrong word. "agonizing"
TimToady and one of those is my mom's 90th birthday party
PerlJam I'm sure some of the event attendees were disappointed
pmichaud 90th birthday +1
actually, +1 isn't enough. 15:20
who is going to YAPC::EU ?
TimToady turns out you can't drive from here to Seattle without going up to 2000ft altitude, which is vorbotten
pmichaud TimToady: boat? 15:21
masak pmichaud: I'm going to YAPC::EU.
TimToady we investigated boats
FROGGS I'm not :o(
TimToady but my mom told me I wasn't allowed to come, because she would feel awful if I lost an eye just because of her birthday
FROGGS yeah... 15:22
15:23 kivutar left
TimToady and no scheduled or charterable boats around the bit of California that is too high 15:23
I could rent a canoe, and paddle 120 miles each way...
FROGGS hehe 15:24
TimToady but I don't want to be that far from doctors right now
FROGGS in theory...
pmichaud does US 101 go up too high?
TimToady that goes up to 2000 near Leggitt
15:24 ajr_ left
masak solution is immediate: put a doctor in the canoe! 15:24
FROGGS and let him paddle!
TimToady also, it's not clear all the jostling would be good for my eye in any case
besides, a clumsy surgeon might whack me in the eye with the paddle 15:25
15:25 brrt left
FROGGS *g* 15:25
15:25 ajr_ joined
TimToady then we'd have to bring along an anasthesiologist as well 15:25
*ane or *anae 15:26
TimToady keeps forgetting his greek
pmichaud somewhere in here is a good "If the mountain won't come to Muhammad" quote.... :)
PerlJam pmichaud: funny, I was just thinking that 15:27
TimToady: how does your mom feel about flying (or boats) ? :)
TimToady pictures a guru sitting on top of a valley
FROGGS I might not want to travel much when I am 90
pmichaud "If the mountain won't come to Muhammad.... you'll put your eye out!"
TimToady she doesn't travel as well as she used to, but the main prolblem there is most of her relations are up in WA 15:28
pmichaud anyway, I'll seriously consider Sofia today. I need to double-check my calendar and make sure I'm not forgetting something important
jnthn \o/
pmichaud otoh, it might actually be more productive for me to stay in TX and just dedicate the travel days to catching up on P6 :) 15:29
but... Sofia
jnthn
.oO( Make the wise choice... )
15:30
TimToady chuckles at the phrase "catching up on P6" 15:31
at the moment #perl6 is generating frontlog faster than I can backlog...
masak TimToady: we miss you here in the frontlog! :D 15:34
pmichaud looks at the YAPC::EU talks 15:35
15:35 dayangkun left
masak .oO( the frontlog is already here, it's just unevenly backlogged ) 15:35
pmichaud chuckles at "GOTO statement considered awesome" 15:36
masak mission accomplished :)
pmichaud: actually I'm sitting here and mapping out the talk right now.
carlin masak: do you get half-way through the talk and then jump to the end? 15:37
masak carlin: I see what you did there.
pmichaud carlin: one GOTO in the talk wouldn't be awesome enough
15:39 raiph left
jnthn considers arriving with a huge "Structured programming FTW" banner :D 15:40
pmichaud You procedural guys crack me up. :)
masak jnthn: spoiler alert: not gonna diss structured programming *per se*. 15:41
jnthn masak: Since when did protests have to be based on well-founded reasoning? :P
masak point.
pmichaud A less-than-awesome GOTO: goput.it/gpx.jpg 15:44
15:44 ajr_ left
masak :) 15:44
15:45 guru joined, guru is now known as Guest30572
FROGGS jnthn: it looks like the decont is there for 'if @a {...' but not for 'if !@a {...' 15:52
jnthn: I guess I should take a look at the code-gen of if? 15:53
jnthn FROGGS: Or !
Is this NQP code?
FROGGS yes
jnthn Yeah. Now you've got it down to that, I can see the fail 15:54
15:54 Guest30572 left
FROGGS 'if @a {...' results in: decont; unless_o; goto 15:54
jnthn src/vm/moar/NQP/Ops.nqp:111..114
FROGGS 'if !@a {...' in: isfalse; goto or so
k
QAST::MASTOperations.add_core_moarop_mapping('isfalse', 'isfalse', :decont(0)); 15:57
does that mean that the :decont(0) is not taken into account when we push the op directly?
jnthn Correct
FROGGS only by using nqp::isfalse
jnthn That only applies to the nqp => moarop mapper
15:57 ajr joined
FROGGS nice 15:57
15:58 ajr is now known as Guest3837
FROGGS tries his patch 16:02
16:03 Guest3837 left 16:04 ajr_ joined
japhb botsnack 16:04
yoleaux 09:38Z <timotimo> japhb: -v and echo "" | perl6-m will not pull in the setting, but an empty program will
japhb Gah, that's a pretty painful difference from loading the setting. I thought jnthn++ mitigated most of that? Or wait ... is there still the "iterating over every lexical after loading the setting kills much of the potential laziness" problem? 16:06
FROGGS dang, why doesn't it work?
jnthn japhb: Yes, there's still that problem.
japhb awww, dang.
16:06 pecastro left
jnthn In other news, async process spawning is making progress. :) 16:08
timotimo not most.
16:09 ajr_ left, brrt joined 16:10 kurahaupo left
FROGGS ahh... 16:11
16:12 ajr_ joined 16:13 [Sno] joined
lizmat FWIW, on a cold machine: Files=912, Tests=32101, 170 wallclock secs ( 8.53 usr 3.80 sys + 1051.33 cusr 128.47 csys = 1192.13 CPU) 16:13
first time at 170 wallclock and < 1200 CPU
(cold as in not running the fan) 16:14
jnthn Cool!
lizmat including 20 grep Bool and grep Bool:D related tests 16:15
I just added
FROGGS it works \o/
jnthn FROGGS++
lizmat hopes for a quick MOAR / NQP REVISION push
jnthn Well, I'll have reason to push in a bit, I think 16:16
But others are free to beet met do it :)
uh, beat
TimToady beets, yum
16:20 kaleem left 16:22 revdiablo left 16:23 revdiablo joined
FROGGS wow: Stage parse : 34.542 16:23
I should shut down my browser more often :o)
dalek p: 5015755 | (Tobias Leich)++ | src/vm/moar/NQP/Ops.nqp:
emit a decont before isfalse in code like: !@a

This led to a nasty (and annoying) bug where the NFA did not get all fates and took the wrong route through a grammar...
16:27
16:27 chenryn left
timotimo FROGGS: wow. 16:27
FROGGS timotimo: yeah, much wow
jnthn That one ended up a layer or two down the stack further than I expected... 16:28
16:28 chenryn joined
dalek p: f29fffc | (Tobias Leich)++ | src/QRegex/NFA.nqp:
reorder NFA.mergesubrule to save an existskey and isnull call
16:29
16:32 bjz left, bjz_ joined, chenryn left 16:36 ventica left 16:39 anaeem1 left
masak .u ‐ 16:41
yoleaux U+2010 HYPHEN [Pd] (‐)
lizmat first jitted spectest: Files=912, Tests=32101, 179 wallclock secs ( 8.69 usr 3.90 sys + 1108.18 cusr 137.71 csys = 1258.48 CPU) 16:46
slightly slower / more CPU than without
moritz oh, fun. Decommute took about an hour longer than usual 16:47
FROGGS perl6-m -Ilib t/spec/base/cond.v5
===SORRY!===
Unknown operator precedence specification "%terminator" at line 7, near "\n\n$x = '0'"
hmpf, that's new...
jnthn moritz: ugh...that's so...un-German! 16:48
moritz because some idiot football fan thought it was necessary to throw a fire extinguisher through the front window of a subway
and that resulted in a full stop to subway traffic along that line, which happened to be mine
jnthn Fail
moritz and the alternative bus meandered slowly through all the small villages in the vincinity 16:49
16:49 jeffreykegler joined
jeffreykegler TimToady: answering a question Larry Wall asked at Andrew Rodland's Orlando YAPC Marpa talk -- 16:50
"What does 'acceptable' mean in a Marpa "Longest *Acceptable* Token Match"?
16:50 sivoais left
jeffreykegler "Acceptable" has a very precise definition. 16:51
If, with a token added, the input so far is a prefix of some sentence in the language, a token is acceptable.
TimToady the non-declarative part of an alternative can reject the alternative, and the LTM engine must backtrack to the next best LTM alternative
jeffreykegler No backtracking -- it's predictive 16:52
16:52 sivoais joined
TimToady well, I'm talking about P6 here :) 16:52
jeffreykegler In other words, a token is acceptable if there is still some possibility of a successful parse.
OK,
The equivalent in other cases would typically use backtracking.
16:52 anaeem1_ joined
jeffreykegler Marpa uses full knowledge of the BNF to do this -- AFAIK, it's the first parser to allow a determination like this on the fly. 16:53
Andrew basically got this right, but I thought I'd pass on the more precise answer.
The key is that this (to a extent) erases the lexer/parser boundary.
pmichaud clones latest rakudo repo, builds 16:54
jeffreykegler The lexer is able to use the context that the parser knows.
And the parser is fully aware of its BNF context -- rules, how far recognized, which symbols expected. 16:55
lizmat yup: spectest with MVM_SPESH_DISABLE=1: Files=912, Tests=32101, 168 wallclock secs ( 8.39 usr 3.75 sys + 1044.75 cusr 111.48 csys = 1168.37 CPU)
FROGGS jnthn: the problem I see in v5 might happen due to lazy deserialization...
jnthn: this block might cause problems: github.com/rakudo-p5/v5/blob/nqp_t...ar.pm#L886
jnthn FROGGS: There was an init.t regression, so that's plausible. 16:56
FROGGS ahh
:o)
jeffreykegler If you'd lke I can give more details of the mechanism in the lexer -- it's all done non-deterministically, so it's not the usual thing.
jnthn lizmat: Programs that exercise a load of different code paths a small number of times - which is the point of the spectests - tend to be hard for any kind of optimizer to overcome. 16:57
lizmat yup, I understand why :-)
just wanted to see this in numbers
jnthn The best we can hope for there is tweaking thresholds :)
TimToady jeffreykegler: sorry, a bit distracted by real life at the moment... 16:58
16:58 chenryn joined
jeffreykegler LExing will wait. :-) I hope all is well 16:59
TimToady but it would be an interesting experiment at some point to see how well Marpa parses Perl 6
jeffreykegler I've often wondered about that, but frankly was waiting for an expression of interest. 17:00
TimToady is always interested in too many things :)
jeffreykegler I'm reading Bertrand Russell and he says the key to a happy old age is widening your interests. :-)
TimToady it might be something that one of our up-and-coming whipersnappers could be delegated 17:01
TimToady is supposed to be writing a book, among other things...
jeffreykegler Exactly my thought.
17:02 dmol left
TimToady at the moment I'm a bit sidelined by a bum eye that I had emergency surgery on last month 17:02
jeffreykegler Perhaps a volunteer on your side and I try to find one on my side. I'd be available to help the Marpa guy.
Ouch! I didn't know. Haven't been following the Perl6 IRC as much as in the past.
TimToady yeah, had to cancel all travel this summer, basically 17:03
jeffreykegler Can you see at all from the burned eye.
I noticed that in my backlogging just before I came on.
17:03 chenryn left
TimToady some, and getting better as the bubble inside gets reabsorbed (triple retinal detachment) 17:03
17:03 ajr_ left
TimToady and I think your font doesn't distinguish m and rn very well :) 17:04
jeffreykegler Best of luck. Your eyesight is a major resource for the programming community.
17:04 Rotwang joined
TimToady well, still have one good eye to keep the bus number in check :) 17:05
moritz not only for the programming community... I guess it helps a lot in real life too :-)
huf if it didnt, we wouldnt have lights in the loo...
TimToady or on the busses 17:06
17:07 treehug88 left
jeffreykegler I'll ask on my own IRC channel if anyone wants to take on a Perl6 parser. I guess we in effect have already asked here. 17:08
17:08 cognome joined
TimToady errands & 17:10
17:10 cognome_ joined
jeffreykegler TimToady: Wish you a speedy recovery with the eye. 17:11
17:11 cognominal left 17:16 cognominal joined 17:20 SamuraiJack left, cognome left
psch thinks 2010 masak confused positional and named arguments in RT #77744 17:22
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=77744
psch the &arity thing reported below is because slurpies don't get counted and assuming puts slurpies into the derived sub
i think we could get a more informational Signature from the lhs' signature, but i don't have a clear way to get that working in mind 17:24
17:24 treehug88 joined
dalek p: 4cf7f13 | jnthn++ | / (2 files):
Bump MOAR_REVISION; map async proc bits.
17:29
masak psch: back in 2010 there was more confusion in Perl 6 between nameds and positionals.
moritz m: say (sub (*@a) { }).count 17:30
camelia rakudo-moar 11afe1: OUTPUT«Inf␤»
psch m: say (sub (*@a) { }).arity
camelia rakudo-moar 11afe1: OUTPUT«0␤»
moritz arity only counts required positionals; .count includes optionals too
17:30 Rotwang left
moritz and counts slurpies as Inf, as you can see 17:31
psch masak: i'm glad it's not so confusing anymore, i'd probably have troubles following it :)
moritz: but that still breaks &assuming, doesn't it? 17:32
m: sub f($x, $y) { }; my &g = &f.assuming(1); &g.arity.say
camelia rakudo-moar 11afe1: OUTPUT«0␤»
moritz psch: &assuming doesn't contruct a proper signature
17:33 virtualsue left
moritz psch: it's just a dumb proxy that adds the assumed argument(s) 17:33
dalek kudo/nom: 7cc0d7d | jnthn++ | / (3 files):
Add Proc::Async for Moar. Bumps NQP_REVISION.

Enables asynchronous spawning of a process, tapping of stdout or stderr (or both) by bytes or chars, and provides a promise for process completion that, if kept, gives a Proc::Status. Todo is killing the process and async writes to stdin of that process.
17:36 pmurias joined
pmurias hi 17:36
17:36 Rotwang joined
jnthn o/ pmurias 17:36
psch moritz: does that mean that current assuming is only superficially to spec? i'm not sure if what it does counts as "partial binding of a set of arguments", as per S06:3070 17:37
synopsebot Link: perlcabal.org/syn/S06.html#line_3070
psch ...but then, the synopses are transitional until roast checks for everything i think? 17:38
dalek kudo/nom: e822cca | (Elizabeth Mattijsen)++ | README.md:
Mention the use of --moar-option=--enable-jit
17:39 gfldex joined 17:40 pyrimidine joined
pmurias jnthn: what does immediate_static mean? 17:41
pyrimidine timotimo: thanks for pointers on the bioinformatics grammar question on perl6-users 17:42
17:43 jeffreykegler left
lizmat is confused by S29:332 17:44
synopsebot Link: perlcabal.org/syn/S29.html#line_332
pyrimidine still trying to work out a best solution, not sure how feasible it is to expect grammars to act on streaming data or large files 17:45
lizmat "used to take a first argument" but only * form is deprecated ?
17:45 rurban left
lizmat so, can we get rid of *@protos in the signature ? 17:45
or does it still serve a purpose?
afk for bit& 17:46
japhb lizmat: re: e822cca , the text and the example command don't match (=-- versus =) 17:47
pmurias jnthn: when used as a QAST::Block.blocktype? 17:48
17:52 pyrimidine left, pyrimidine joined
FROGGS pyrimidine: by large files you mean like really really large, right? 17:53
pyrimidine FROGGS: yep
possibly 100’s of GB 17:54
FROGGS eww
pyrimidine yep
FROGGS I would probably use a grammar on chunks, rather than fetching lines and match with regexes... 17:55
because loping over lines is slower than matching lines within a grammar 17:56
pyrimidine FROGGS: that’s in line with what I’m thinking; just have to decide on the size of the chunks
FROGGS I'd try low with 100M, if that does not explode then increase it to 250M or 500M 17:57
17:58 virtualsue joined
pyrimidine FROGGS: yep; that could be altered based on memory available (not unusual for us to have access to machines with 100’s of G available) 17:59
17:59 chenryn joined
japhb Ah, the joys of bioinformatics hardware ... 18:01
pyrimidine japhb: :)
japhb: I’m not sure the word ‘joy’ applies in many cases 18:02
18:03 kaleem joined, treehug88 left, chenryn left
pyrimidine cool research but a LOT of data munging to get things into a form that’s useful 18:03
18:10 kaleem left 18:11 ventica joined
FROGGS jnthn: do you think the init.t regression is solvable by me? because I cannot go back to a good revision easily :o( 18:14
pmichaud jnthn/masak : where are you staying (hotel) at YAPC::EU ? 18:18
nwc10 hi pmichaud 18:19
nwc10 doesn't know the answer to that question
pmichaud nwc10: hi! o/ 18:20
18:32 molaf_ joined 18:33 brrt left
japhb notes that the next YAPC::NA is in yet another hot city and wonders if that's a conspiracy of the YAPC folk. 18:34
18:36 molaf left
itz cheap, hot city a few hours flight within Europe works for me :) 18:36
hopefully they won't be at war in 9 months unlike UA 18:37
timotimo pyrimidine: you're welcome :)
nwc10 iceland has volcanoes - will they do?
japhb hasn't been near an active volcano since childhood 18:43
Need to go do that again, methinks.
japhb still vividly remembers getting hit with the Mt. St. Helens ash cloud 18:44
jnthn pmurias: The _static means that it doesn't need a closure of it taking in order to have correctness.
japhb Memories of Hawaiian volcanoes are a little fuzzier, though.
jnthn lizmat: No, *@protos is still needed 18:45
18:49 Sqirrel joined 18:57 mj41 joined 19:00 chenryn joined 19:02 jdurand_ joined 19:04 chenryn left 19:07 ventica2 joined 19:08 ventica left 19:13 SevenWolf joined 19:15 guru joined, guru is now known as Guest89746, Guest89746 is now known as ajr_ 19:16 kurahaupo joined, FROGGS[mobile] joined
FROGGS[mobile] jnthn: do you think the init.t fails are easy to solve? 19:18
jdurand_ I would like to have, if possible, a BNF view of perl6 grammar. Would you mind to tell what are the best starting blocks ? I am thinking to github.com/perl6/std/blob/master/STD.pm6 or to synopses... Thx 19:19
jnthn FROGGS[mobile]: My first attempt to figure out what's going on didn't nail them... 19:20
FROGGS[mobile]: In your particular case, what happens if you comment out the INIT bit and just have those things run in the grammar body?
FROGGS[mobile] I can test that in a bit... 19:21
19:21 jeffreykegler joined, Sqirrel left
jeffreykegler TimToady: jdurand (Jean-Damien) is one of Marpa's power users. He's very generously agreed to look into a Marpa-powered Perl 6 parser. 19:23
jeffreykegler referring to irclog.perlgeek.de/perl6/2014-08-11#i_9168175 19:24
We think the first step is to get a Perl 6 BNF, the parsing of which would suffice as proof of concept.
dalek kudo/nom: 0c42c11 | (Elizabeth Mattijsen)++ | README.md:
Proper --moar-option, spotted by japhb++
19:25
PerlJam jeffreykegler,jdurand_: depends on what you mean by "BNF view" of the grammar. To my mind, STD.pm6 is BNF-ish (and more) 19:26
jeffreykegler This is on the assumption that such a thing as a reasonable Perl 6 BNF can exist -- Marpa is BNF-driven, so that's our natural starting point.
jdurand_ PerlJam, jeffreykegler: fine with me is STD.pm6 is the correct starting point - the goal is to have Marpa's BNF of perl6 grammar 19:28
"if STD.pm6"
19:28 pmurias left
PerlJam It's the "(and more)" part I'm not sure if you'll have trouble with :) 19:29
jeffreykegler Perljam: we'd need to pull out, as our starting point, just the BNF. Std.pm contains lexical considerations. And the traditional Perl 6 parser is *not* a general BNF parser, so that Std.pm contains extra logic to make BNF work with Perl 6's traditional parser, logic Marpa will not need.
Perljam: Marpa can do custom hacks, but it's about leveraging the power of general BNF parsing. Left parsers need the hacks to figure out things that Marpa can figure out from the BNF. 19:31
19:32 darutoko left
jeffreykegler Jean-Demian and I have used Marpa for real life parsers (C language, Javascript), which contain non-BNF gotcha's. These turn out to be surprisingly few. 19:32
19:32 raiph joined
lizmat jnthn, TimToady: if *@protos is still needed in .bless, maybe the paragraph at S29:332 needs some clarification? 19:33
synopsebot Link: perlcabal.org/syn/S29.html#line_332
pmichaud masak: you aren't the only one doing st|nd|rd|th differently: trendspotter.toptentalk.com/youre-d...g-trolls-7
jnthn lizmat: I didn't spot your confusion with it, tbh... :)
PerlJam jdurand_, jeffreykegler: well, if you can read or figure out the Perl 6 bits in STD.pm6, then that is indeed where I would start if I were you.
19:34 rurban joined
rurban Whow! moar-jit is fast 19:35
dalek ecs: 2338ed1 | (Elizabeth Mattijsen)++ | S29-functions.pod:
Attempt at clarification 1st parameter to .bless
lizmat rurban: how can you tell?
rurban Now -O3 would be nice to be usable
perl Configure.pl --gen-moar --moar-option=--enable-jit --gen-nqp --backends=moar && m -s -j4 && m spectest 19:36
FROGGS[mobile] the JIT does not help there yet 19:37
19:37 treehug88 joined, chenryn joined
FROGGS[mobile] the for loop minibench shows it better :o) 19:37
rurban it's not running the jit yet, it it's not fast enough yet? 19:38
jdurand_ PerlJam, jeffreykegler: Ok, so I propose to try to figure out from STD6.pm - I you don't mind I'll come back if I have troubles with it
rurban Stage mast : 11.855 looks pretty fast to me
FROGGS[mobile] rurban: the JIT makes many things slower atm
rurban: run with JIT disabled an see 19:39
rurban ok
PerlJam jdurand_: #perl6 is always happy to answer Perl 6 questions :)
rurban I had 30sec for Stage mast usually
jnthn rurban: That's partly just more general improvements.
FROGGS[mobile] MVM_JIT_DISABLE=1 or so 19:40
rurban oh bad
jnthn Yeah, sucks when things get better :P
rurban I expected it at least 2x faster with the jit, comparable to parrot 19:41
jnthn I think generally, we need to tweak the thresholds for when to spend time JITting and when to just interpret.
19:41 jeffreykegler left
jdurand_ PerlJam: ok - many thx - will keep you informed - have a nice day & AFK -; 19:41
19:42 chenryn left
PerlJam jdurand_: good luck! 19:42
dalek blets: 19430b6 | (Herbert Breunung)++ | docs/appendix-g-glossary.txt:
explaining better strings and action methods
19:44
19:44 ventica2 left
rurban I see, only 1 sec faster (~10%) with the jit, not 200% 19:45
FROGGS rurban: the JIT is still at the "make it work" stage
19:45 FROGGS[mobile] left
FROGGS jnthn: it working outside of the INIT :o) yay :o) 19:47
that means I can continue hacking
jnthn yay :)
19:49 jdurand_ left 19:50 mj41 left 20:04 treehug88 left, rurban1 joined
masak lizmat: pretty sure S29:332 is a fossil. 20:14
synopsebot Link: perlcabal.org/syn/S29.html#line_332
masak pmichaud: we're staying at the hotelexposofia.com/ 20:15
lizmat masak: jnthn indicated earlier that the *@protos are still needed
masak lizmat: yes, but that's unrelated to the repr, which is, um, depr.
pmichaud: better book soon -- they made it seem like they were running out of rooms. 20:16
lizmat so what's the use of the *@protos then?
masak pmichaud: we just emailed them at [email@hidden.address]
lizmat: that's the thing where you give superclasses attribute values.
20:17 brrt joined
masak lizmat: like Derviving.new( Base { :foo(42) } ) 20:17
I *think* that's the syntax.
with or sans the space after 'Base'. 20:18
20:18 Mouq joined
masak I've never used it in actual code. 20:18
20:22 jnap1 joined, jnap left 20:23 kurahaupo left, kurahaupo joined
masak m: class Animal { has $.blood; has $.legs }; class Dog is Animal { has $.name }; say .name, " ", .blood, " ", .legs given my $pet = Dog.new( :name<Fido>, Animal{ :blood<warm>, :legs(4) } ) # example from S12:871 20:24
synopsebot Link: perlcabal.org/syn/S12.html#line_871
camelia rakudo-moar e822cc: OUTPUT«Default constructor for 'Dog' only takes named arguments␤ in method new at src/gen/m-CORE.setting:818␤ in block at /tmp/MrXZ5CxSrj:1␤␤»
masak oh, that's a pity.
Rakudo is not to spec on this one. 20:25
m: class Animal { has $.blood; has $.legs }; class Dog is Animal { has $.name }; say .name, " ", .blood, " ", .legs given my $pet = Dog.new( :name<Fido>, :blood<warm>, :legs(4) ) # most of the time, you can to this, though 20:27
camelia rakudo-moar e822cc: OUTPUT«Fido warm 4␤»
masak class inheritance is overrated ;)
20:28 virtualsue left, virtualsue joined, ventica2 joined
jnthn masak: Ain't it just... :) 20:30
lizmat S15:93 and S29:372 seem to contradict each other 20:35
synopsebot Link: perlcabal.org/syn/S15.html#line_93
lizmat graphemes consisting of multiple code points without a composed codepoint are < 0 in the first, and larger than 0x10ffff in S29:372 20:36
synopsebot Link: perlcabal.org/syn/S29.html#line_372
lizmat I guess the <0 interpretation is the correct one? 20:37
20:38 chenryn joined
lue lizmat: yeah, I recall TimToady telling me that negative numbers were better than hoping Unicode will never change their policy on the upper bound. 20:39
20:40 pecastro joined, cooper__ left 20:41 cooper__ joined
jnthn has it as negative too 20:41
masak has it that way three
dalek ecs: aa6f243 | (Elizabeth Mattijsen)++ | S29-functions.pod:
Unprecomposed graphemes are < 0, not > 0x10ffff
20:42
20:43 chenryn left
lue Also, a negative sign acts as a nice visual cue for "is this Unicode?" :) 20:44
20:52 kaare_ left
kurahaupo isn't 0x10ffff the limit of what can be represented in UTF16 (with surrogates)? While it's true that the unicode consortium *could* increase the limit, it'd require every Java installation to be fixed first 20:53
20:56 ventica2 left
lue kurahaupo: yep, but I wouldn't totally discount the possibility that someday the consortium gets to its senses and invents a 16-bit version of UTF-8, like they should've in the first place :) 20:56
lizmat r: class A { method a() is export { say "a" } }; A.new.a # is export on a method, what does it mean ? 21:01
camelia rakudo-{parrot,jvm,moar} 0c42c1: OUTPUT«a␤»
21:02 cognome_ left, cognome joined
PerlJam lizmat: S12:1383 21:03
synopsebot Link: perlcabal.org/syn/S12.html#line_1383
21:06 virtualsue left 21:07 rurban1 left
kurahaupo lue: a bit hard to see where they'd put it. perhaps the upper surrogate block could be cut in half, then the upper of that cut again, etc 21:11
lue kurahaupo: yeah, it would be interesting to pull off. In any case, you can think of it as using all 32-bits numbers that are ≥ 0x8000_0000 if you like :P (at least I think the idea is to use 32-bit numbers...) 21:13
[Coke] Anyone here going to the dancer con? 21:14
it's a 2-3 hour drive for me, would definitely show up to hack.
21:15 Rotwang left
dalek ecs: a801495 | (Elizabeth Mattijsen)++ | S11-modules.pod:
Hint a bit at "is export" for methods
21:17
ecs: ce07358 | (Elizabeth Mattijsen)++ | S29-functions.pod:
Some cleanup/additions to S29
21:17 rurban1 joined
[Coke] lizmat: any feedback on the "is cached" test that's trying to verify that the caching is happening? 21:17
I imagine the best thing is to fix rakudo-jvm so it really does cache and leave the test as a hopeful one. 21:18
lizmat hmmm... I wasn't aware it doesn't work on jvm 21:21
no, I have no feedback :-( 21:24
21:24 mr-foobar left 21:25 dmol joined
lizmat on another note: S29:234 Shouldn't that be called EVALfile or EVALFILE rather than evalfile ? 21:25
synopsebot Link: perlcabal.org/syn/S29.html#line_234
lizmat also: this seems like LHF 21:26
PerlJam why would we even have evalfile instead of using something like EVAL(slurp($filename)) ? 21:30
lue EVALFILE is less awkward than EVALfile to me 21:31
jnthn EVALFILE feels a bit low-wattage...
Given EVAL slurp $file is so easy :) 21:32
PerlJam lue: they both seem awkward to me :)
lue jnthn: agreed. Even better, one could do sub EVALFILE($fn) { EVAL slurp $fn } if they need it :) 21:33
PerlJam The only advantage that I can currently imagine to having EVAL-file($filename) would be if it *didn't* slurp, but rather read the file piece-wise to limit the amount of RAM needed all at once. 21:35
japhb There's another benefit: Being able to report errors as being in the actual file, rather than inside a string. 21:37
PerlJam (oh, and EVAL-file felt quite natural for me to type just then. If it's going to stick around, I prefer that name :-)
japhb++ excellent point.
lue PerlJam: this'd be the one place where you can't really do that, unless you want to force people to rearrange their declarations.
dalek ecs: 8b6d0bb | (Elizabeth Mattijsen)++ | S29-functions.pod:
Elaborate a bit on exit, END blocks and threads
PerlJam lue: eh? With our handy, future, streaming grammars, we can do anything :) 21:38
21:39 chenryn joined
lizmat also: how different is evalfile from require ? 21:43
21:44 chenryn left
lizmat evalfile feels a bit like a fossil 21:44
21:46 gfldex left
PerlJam does require let you twiddle which language is being parsed? 21:46
21:48 pyrimidine left
dalek ecs: b3fceb8 | (Elizabeth Mattijsen)++ | S29-functions.pod:
lock() is now Lock.new and its methods
21:49
lizmat PerlJam: no, so that could be a use case for 'evalfile' ? 21:51
(or whatever we call it)
PerlJam could be. 21:52
21:55 rurban1 left 22:03 lustlife left
masak 'night, #perl6 22:05
lue masak o/ 22:06
masak ♘, lue
lue :)
lizmat night masak 22:07
22:07 spider-mario left 22:12 ventica2 joined
lizmat gets some sleep& 22:18
lue lizmat o/ 22:20
brrt o/ all 22:21
22:21 brrt left 22:22 treehug88 joined 22:27 SevenWolf left 22:34 Mouq left 22:38 raiph left, dmol left 22:40 chenryn joined 22:42 raiph joined 22:45 chenryn left 22:47 ventica2 left 22:49 pecastro left 22:50 kurahaupo left 22:52 mr-foobar joined 22:54 mr-foobar left 22:55 mr-foobar joined 23:13 treehug88 left 23:16 ajr_ left 23:18 raiph left 23:19 BenGoldberg joined 23:30 anaeem1_ left 23:34 jnap1 left 23:35 iarna left 23:40 chenryn joined 23:45 chenryn left 23:48 araujo left 23:49 araujo joined 23:52 rurban1 joined 23:55 xenoterracide joined