»ö« 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!
Set by masak on 12 May 2015.
timotimo germany 00:02
near the tip where france pokes in
i mean the tip of france that pokes in 00:03
but on the germany side 00:04
tony-o_ ah, i've been to füssen and münchen
timotimo i don't know fussen :S
tony-o_ seems like it'd be a really nice place to ride
timotimo agreed 00:05
except if you have hayfever ;)
which i do :\
tony-o_ i have the year round allergies too. i've started taking a heaping spoon of raw bee pollen in the mornings and it seems to help a lot (for me anyway) - much better than the shots i've been getting since i was 12 00:06
timotimo oh? interesting 00:07
where can you get that kind of thing?
tony-o_ füssen is about half way between münchen and liechtenstein 00:08
i get it at a 'natural foods' store, kind of a hippy store where everything is marketed as organic and cleansing
timotimo mhm 00:09
what amount of money do you pay for such a thing?
tony-o_ get about 16oz for $8
45[0-9] grams 00:10
timotimo a heaping spoon of that would not be terribly much, right? i imagine that stuff is very light?
tony-o_ i don't know the conversion to euros 00:11
timotimo closer to 1:1 these days, sadly
tony-o_ it'd probably last a month or two if that's all youy used it for
timotimo what else would it be good for?
and more importantly: how did you reach this idea? :)
tony-o_ i've discovered that folks with allergies think it tastes terrible, others don't think that so much 00:12
00:13 japhb joined
timotimo oh? that sort of sounds sensible 00:13
hm. the "send more money" script doesn't terminate after the first result? 00:14
tony-o_ i had a lot of people tell me to 'eat honey, that works great', it doesn't so i started reading about why people think honey works and thought bee pollen is what really works for people, the small amount of pollen in honey is good enough for most people. my gf puts pollen in her smoothies that she makes, so i at a couple granules and turned beat red
then i just went for it the next day and didn't have any allergy problems after that
timotimo wow, that sounds pretty awesome
tony-o_ no more hives, itchy eyes, fatigue, fogginess, etc
timotimo and you have to keep that up to keep the symptoms away?
tony-o_ it works pretty instantly and the effects go away just as quickly 00:15
timotimo EUR 19,95/kg
on amazon :)
tony-o_ your CNS attacks the pollen instead of attacking your body, so it doesn't get rid of the problem but it makes your CNS not make you leak like a sieve or take it out on your body in other ways 00:16
timotimo that sounds awesome
i wish it'd help :)
but anything less than 1kg is pretty expensive, comparatively 00:17
tony-o_ most of that is speculation or a single pass reading of some medical document about why it works. i will say it does work for me, though 00:18
never thought about amazon
timotimo hehe 00:19
i might see if it helps me at all
tony-o_ i'd be interested to know the outcome 00:20
timotimo how much grams are in such a "heaping spoon"?
tony-o_ i've never measured 00:21
15-25g ?
00:21 tinyblak joined
timotimo i'm trying to figure out if it's an "esslöffel" or a "teelöffel" 00:21
tony-o_ about a tablespoon size, not sure if tablesppon is a universal thing
timotimo ah, tablespoon then 00:22
now, there's still a difference between putting a heap onto a tablespoon or removing any excess off the top so that the "heap" becomes flat, essentially 00:26
tony-o_ lol 00:27
00:27 kurahaupo1 joined
tony-o_ i'm not that scientific about it 00:27
00:27 kurahaupo1 is now known as kurahaupo 00:36 laouji joined 00:40 mtj_ joined 00:41 laouji left, mtj_ left, bjz joined, mtj_ joined 00:44 vendethiel joined 00:48 colomon left 00:49 colomon joined 00:50 laouji joined 00:58 tinyblak_ joined 01:02 tinyblak left, Akagi201 joined 01:05 vendethiel left 01:12 vendethiel joined 01:20 colomon left 01:23 ribasushi joined 01:24 colomon joined 01:33 vendethiel left 01:51 Ben_Goldberg joined 01:55 dayangkun joined 01:58 cognominal left 01:59 fhelmberger joined 02:00 Akagi201 left 02:03 fhelmberger left 02:04 cognominal joined 02:12 yqt left 02:19 vendethiel joined 02:30 AlexDaniel left 02:34 rmgk_ joined, rmgk is now known as Guest56335, Guest56335 left, rmgk_ is now known as rmgk 02:47 noganex_ joined 02:49 Ben_Goldberg left, zengargoyle left 02:50 noganex left 02:51 zengargoyle joined 02:55 kaare_ joined 03:19 raiph joined 03:26 inokenty left 03:34 vendethiel left 03:36 b2gills left 03:38 kurahaupo left 03:41 laouji left 03:42 inokenty joined, laouji joined 03:43 laouji_ joined 03:47 laouji left 03:48 laouji_ left, Sqirrel left 03:52 skids left
jdv79 oddly quiet 03:53
tony-o_ its eerie
almost sinister 03:54
m: garbage
camelia rakudo-moar c2a57e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/1aiSu3TC0W␤Undeclared routine:␤ garbage used at line 1␤␤»
tony-o_ m: GLOBAL::.hash.say
camelia rakudo-moar c2a57e: OUTPUT«␤»
tony-o_ m: GLOBAL::.hash.say; use Test;
camelia rakudo-moar c2a57e: OUTPUT«Test => (Test)␤»
jdv79 is like larry, jonathan, and patrick are colluding elsewhere and perl6 will just be done tomorrow 03:55
s/is/its/
raydiak
.oO( so quiet you can almost hear camelia growing intelligence and plotting terminator-style world domination )
03:57
jdv79 a killer butterfly. now that's sinister. 03:58
raydiak turns out the locusts in Revelation with breastplates "like iron" are really gonna be cybernetic hunter-killer butterflies :) 04:03
tony-o_ like hitlers cattle
04:15 anaeem1_ joined, anaeem1_ left 04:16 anaeem1_ joined 04:22 koo6 joined 04:25 inokenty left 04:27 laouji joined 04:28 Sqirrel joined 04:30 aborazmeh joined, aborazmeh left, aborazmeh joined 04:40 inokenty joined 04:47 quester joined 04:48 firefish5000 joined 05:02 anaeem___ joined 05:03 anaeem___ left, anaeem1__ joined 05:04 anaeem1_ left 05:08 b2gills joined 05:22 kurahaupo1 joined 05:23 mr-foobar joined 05:27 anaeem1__ left, anaeem1_ joined
TimToady back home, yosemite was pretty 05:35
tony-o_ where were you in yosemite? 05:36
i just got back from zion forest a few weeks ago
TimToady started at Mono Lake, came over the 120, had lunch up in the valley, afternoon at Glacier Point 05:37
tony-o_ oh very cool
TimToady good time of year for the waterfalls, despite the drought
120 isn't usually open this early, in fact
tony-o_ no i remember last year i tried getting in but it was closed off 05:38
did you just drive through or did you stay down there? 05:42
TimToady stayed last night on the west end of Mono Lake 05:43
(up from San Diego the night before)
05:44 domidumont joined
TimToady spent several hours going around the valley floor 05:44
05:45 Patterner joined, Psyche^ left 05:47 bjz left 05:48 domidumont left, domidumont joined
tony-o_ valley floor is awesome, fun swimming in that river down there too 05:49
dalek osystem: 9d54d37 | tony-o++ | META.list:
role for HTTP::Server so we can have start building out some servers with interchangeable backends
05:52
05:59 fhelmberger joined 06:04 fhelmberger left 06:12 Sqirrel left 06:16 diana_olhovik_ joined, _mg_ joined 06:17 raiph left 06:35 koo6 left
dalek on: 1e44a0f | moritz++ | lib/JSON/Tiny.pm:
Replace deprecated method .for by .flatmap, timotimo++
06:37
06:37 abraxxa joined
dalek on: 635a8ae | moritz++ | t/0 (5 files):
Replace deprecated test functions with appreciated ones
06:39
06:42 abraxxa left
Ulti doc.perl6.org/language/operators#infix_%25 <--- shouldnt that read 'returns' 06:46
06:50 RabidGravy joined 06:54 Foxcool joined
moritz yes 06:55
06:56 FROGGS joined
dalek osystem: 7145efa | tony-o++ | META.list:
Update META.list
06:56
06:56 abraxxa joined 07:00 agentzh left, agentzh joined, agentzh left, agentzh joined 07:02 jepeway left
tony-o_ too tired to see what is wrong with my metas.. 07:03
07:03 laouji_ joined, jepeway joined 07:07 laouji_ left, darutoko joined 07:08 amurf left 07:10 vendethiel joined
moritz nine: ecosystem-api.p6c.org/errors.json looks like Inline::Perl5's META.info isn't valid JSON 07:16
FROGGS moritz / nine: I PR'd it: github.com/niner/Inline-Perl5/pull/22 07:21
dalek line-Perl5: 5444f1d | FROGGS++ | META.info:
add missing comma
07:22
line-Perl5: c1b6df5 | lizmat++ | META.info:
Merge pull request #22 from FROGGS/patch-1

add missing comma
FROGGS \o/
07:23 virtualsue left, ab5tract_ joined, ab5tract1 joined
lizmat good *, FROGGS 07:23
yoleaux 26 May 2015 22:18Z <cygx> lizmat: github.com/perl6/roast/pull/60/files ; it's my first commit to roast, so please sanity-check
FROGGS morning lizmat
lizmat just saw it coming into my mail
DrForr Morning as well.
lizmat DrForr o/
FROGGS morning DrForr 07:24
DrForr: the RT ticket is missing the test file that triggers the error
DrForr I thought I attached both. 07:25
Apparently not though.
FROGGS only a Readline.pm is attached
TimToady: is there anything in the synopsis about a pragma that gives a (lexical) environment like the RESTRICTED setting would give me? 07:27
07:27 laouji left
DrForr Actually it's in the github repo, I think. 07:28
07:29 laouji joined
DrForr github.com/drforr/perl6-readline/b.../02-base.t 07:29
FROGGS TimToady: I'd like to do: my $foo = { use restricted; EVAL 'some foreign code' }() # this does not wipe my hard disk
DrForr: k, will try the code in the repo later
DrForr Simplest way to do that I think would just be to pull the module and run the test suite, should fail spectacularly, eventually. 07:30
FROGGS yes 07:31
DrForr yep, just discovered another failure mode as it happens. Free of invalid pointer. 07:32
07:36 vendethiel left 07:37 zakharyas joined 07:38 ab5tract1 left, ab5tract_ left
[Tux] OUCH gist.github.com/Tux/3cbe7b39d401c1060c19 07:39
FROGGS [Tux]: that got fixed just minutes ago
[Tux]: I::P5's META.info contained invalid JSON 07:40
[Tux] I git pull'd just seconds ago
i'll re-pull
lizmat is rebootstrapping
FROGGS [Tux]: you need to wait for the modules.json to get updated, which happens hourly IIRC
07:40 g4 joined, g4 left, g4 joined
[Tux] ah. rats :) 07:40
FROGGS and a 'panda update' might also be worth doing 07:41
[Tux] I rebuild everything from scratch every morning
DrForr Thanks for the reminder :) Say, who's going to make it for the p6 tutorial? I know Liz is... 07:44
07:45 abraxxa left
lizmat [Tux] FROGGS after a panda update, panda install Inline::Perl5 seems to work for me 07:45
07:45 abraxxa joined
[Tux] after a git clone, panda install . worked for me 07:46
#124298 still broken :(
07:48 telex left, _mg_ left, telex joined
[Tux] lizmat, I got *no* reply at all from perl6-users 07:49
lizmat perhaps it's a difficult question :-) 07:50
I won't have much time to dig into it in the next weeks, I'm afraid
lot's of travelling and preparations for travelling and meetings :-(
[Tux] I still see no serious speedups :/ 07:51
anyway, off to $work 07:52
lizmat that's because most of the GLR changes have been cosmetic, on the outside
pmichaud is working on the GLR internals changes, afaik
FROGGS there wont be any speedups until Somebody® rewrites our iterators me thinks 07:56
lizmat cygx++ # IO::Path tests 07:57
m: for ^10 { .say; next 42 } # what does the "next 42" mean ??? 07:59
camelia rakudo-moar c2a57e: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤»
lizmat std: for ^10 { .say; next 42 }
camelia std 28329a7: OUTPUT«ok 00:00 137m␤»
FROGGS m: my @a = do for ^10 { .say; next 42 }; say @a # this should contain 42's me thinks 08:00
camelia rakudo-moar c2a57e: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤␤»
lizmat why would it ?
FROGGS lizmat: because you can return data this way 08:01
lizmat you can ???
S02:4445 only mentions Mylable.leave(@results) 08:02
08:02 rindolf joined
jnthn FROGGS: I wasn't totally sure of that, tbh :) 08:03
yoleaux 26 May 2015 22:01Z <ab5tract1> jnthn: This async code will work more often than not, but if I do it 20 times in a row, I can get fairly consistent blowups at some point in the run gist.github.com/ab5tract/2c618fa8accc70464952
26 May 2015 22:03Z <ab5tract1> jnthn: also, I expected the output to be relatively uniform across 'frames', but sometimes the delay values to sleep don't seem to be taking effect
FROGGS S06:2756
lizmat / jnthn: design.perl6.org/S06.html#The_leave_function 08:04
hmm, this does not state it properly
08:05 firefish5000 left
FROGGS last 42 is, IIRC, like (with an implicit label FOO): FOO.next(42) 08:05
08:05 ab5tract_ joined
FROGGS err, FOO.last(42) 08:05
lizmat I was just wondering whether the else in the new 2nd candidate for next/last shouldn't just doe
*die
cause in my understanding next/last either take a Label or nothing at all 08:06
08:07 vendethiel joined
FROGGS ahh wait 08:07
last COUNT is equivalent to COUNT.leave 08:08
and COUNT.leave is a way to 'return' stuff
hmmm, looks like LABEL.leave does not take any arguments... 08:09
then I just misremember
08:10 PZt left
FROGGS ohh, I am not misremembering: 08:10
for 1..10 { leave $_ * 2 } # 2..20
read S05 line 2783 08:11
S06*
lizmat but, that's got nothing to do with next/last ?
FROGGS lizmat: leave LABEL is the same as last LABEL
and &?ROUTINE.leave(X) is the same as 'return X'
lizmat right, but what is next 42 or last 42 ? 08:12
FROGGS A C<leave>
from the inner loop block, however, merely specifies the return value for
that iteration:
so next 42 is nonsense, but last 42 isnt
I cant describe it better than: design.perl6.org/S06.html#The_leave_function 08:13
lizmat m: my @a = do for ^10 { .say; last 42 }; dd @a # so @a should have been [42]<> 08:14
camelia rakudo-moar c2a57e: OUTPUT«0␤@a = []<>␤»
FROGGS I think so, yes 08:15
lizmat ok, let's make sure that works post GLR :-)
FROGGS aye 08:16
lizmat meanwhile, I'm going to make 'next 42' fail
FROGGS a good fudge message might be 'LABEL.leave NYI'
lizmat ok, will do that as well...
08:19 firefish5000 joined 08:28 vendethiel left
dalek ast: 5844f9c | lizmat++ | S32-list/categorize.t:
Add some categorize :into / :as tests

And some additional tweaking
08:29
08:39 fhelmberger joined 08:44 dakkar joined 08:45 _mg_ joined 08:46 _mg_ left 08:47 [Sno] left 08:48 Ven joined, espadrine joined 08:51 quester left
Ven \o, #perl6 08:51
lizmat Ven o/ 08:52
08:54 spider-mario left 08:57 amurf joined
dalek kudo/nom: edadb1d | lizmat++ | src/core/control.pm:
Allow next/last/redo FOO only with Label

I'm not sure how you would create a label object at runtime, but if that is possible, then you could technically say "next $label" and have it work. If that is not supposed to be possible, then this check should probably be moved to compile time.
08:57
08:57 itz2 joined 09:00 andreoss joined 09:01 amurf left
jnthn writed a small blog post with a little update: 6guts.wordpress.com/2015/05/27/tak...ort-break/ 09:04
I'll only be about occasionally during the next ~week.
lizmat and a well deserved break it is! :-) 09:06
09:06 ssqq joined
FROGGS ohh! 09:07
jnthn: have a nice weekend then :o)
jnthn FROGGS: Thanks :)
dalek kudo/nom: 40b72ab | lizmat++ | src/core/ (2 files):
Add NYI for Label/Method/Sub.leave, FROGGS++
09:09
09:20 ssqq left, Ven left
[ptc] jnthn: congratulations! Hope you have a great weekend :-) 09:23
09:23 vendethiel joined
itz2 jnthn: yeah have a good one :) 09:24
Woodi hi today :)
moritz jnthn: congratulations!
lizmat afk&
Woodi jnthn: IMO civilized free time period in such circumstances is even a month :) GL ! 09:26
09:26 g4 left 09:29 smls joined
cognominal jnthn: congratulations. 09:31
09:31 zakharyas left 09:33 arnsholt left, arnsholt joined 09:35 nwc10 joined 09:38 g4 joined, g4 left, g4 joined 09:39 Ulti joined 09:40 rarara joined 09:42 zakharyas joined
tadzik jnthn: yayy, congratulations! 09:42
moritz Woodi: come on, a whole months without hacking? that sounds... boring :-)
09:45 AlexDaniel joined
jnthn Thanks, everyone :) 09:45
lunch & 09:46
tadzik It is :o Every time I'm on vacation without a computer I spend a lot of time planning on the projects I'll finally get to do when I get back 09:52
10:01 zakharyas left, _mg_ joined 10:02 zakharyas joined
Woodi I realy wandering is something like IT "calling" exists :) some ppls wants madly to be actors, singers or drivers :) 10:03
10:04 nowan joined
Juerd On vacation without a computer?! 10:05
tadzik I always wanted to be a programmer
Juerd tadzik: Me too 10:06
DrForr Don't, it's boring :)
10:09 _mg_ left 10:10 koo6 joined 10:13 vendethiel left 10:16 salva left 10:22 kurahaupo1 left 10:23 laouji left 10:24 salva joined 10:27 dayangkun left 10:30 vendethiel joined 10:37 laouji joined 10:38 grondilu joined
masak good afternoon, #perl6 10:42
yoleaux 26 May 2015 22:44Z <jdv79> masak: what of RT #109880?
26 May 2015 22:46Z <jdv79> masak: also what of RT #113040
10:42 laouji left
itz2 the only sensible computer to take on a real vacation is a kindle! (unless you jailbroke down to the linux) 10:43
10:46 azawawi joined
azawawi hi :) 10:46
10:46 amurf joined, andreoss left
masak jdv79: aye, rt.perl.org/Ticket/Display.html?id=109880 seems to be an invalid assignment. your variant looks better. I'm not sure that's the actualy problem described in the ticket, though. 10:47
jdv79: rt.perl.org/Ticket/Display.html?id=113040 looks closeable now. 10:48
10:50 amurf left 10:54 vendethiel left 10:59 zakharyas left
dalek c: 6f69701 | azawawi++ | t/pod- (2 files):
Fix deprecated API: eval_dies_ok and isa_ok
11:02
c: 320b2fb | RabidGravy++ | t/pod- (2 files):
Merge pull request #86 from azawawi/master

Fix deprecated API: eval_dies_ok and isa_ok
moritz azawawi: fwiw you can push directly to perl6/doc 11:03
azawawi moritz: i noticed :)
moritz IWBN if github showed a big "YOU HAVE WRITE ACCESS TO THIS REPO" button on repos that aren't in your own namespace
(and mayebe even on those)
azawawi forking is more fun though :) 11:04
RabidGravy or it could give you the option of merging directly when you go to create the PR 11:05
azawawi moritz: what about github.com/moritz/json/pull/16 ?
moritz azawawi: likely unnecessary by my last two commits 11:07
11:08 pochi_ left, pochi joined
RabidGravy can anyone think of anythink that changed between 2015.04 sometime and now that would change the way that IO::Socket::Async.bytes_supply behaves? Nothing in the class itself, Promise or supply appears to have changed in that time 11:10
azawawi any plans to add version support to panda?
11:11 bjz joined 11:13 Ven joined
Ven .u ॣ 11:13
yoleaux U+0963 DEVANAGARI VOWEL SIGN VOCALIC LL [Mn] (◌ॣ)
11:13 inokenty left
[ptc] RabidGravy: maybe the fact that Empty has replaced Nil in some places? 11:13
tadzik azawawi: yes :) 11:14
azawawi tadzik: cool :)
tadzik: when?
tadzik I think it's even ticketed 11:15
Getting module authors to version their stuff though, that's gonna be tough :!
azawawi github.com/tadzik/panda/issues/139 ?
[ptc] tadzik: oh ys 11:16
*yes
azawawi well warnings/deprecation notices will do the trick with time
tadzik azawawi: yep, that 11:17
RabidGravy [ptc], Hmm
[ptc] RabidGravy: there was a change from TimToady where Empty had to be used in the place of Nil when iterating over a (possibly empty) array 11:18
RabidGravy: or something like that
[ptc] waves hands vaguely in the air
FROGGS tadzik / azawawi: hoelzro is working on it atm 11:19
azawawi FROGGS: hi
FROGGS hi 11:20
11:20 Ven left
azawawi FROGGS: there was a discussion on #perl6 a while ago about perl6 error warning/messages as JSON 11:20
tadzik Awesome!
azawawi FROGGS:
timotimo masak: i'm not sure if it'll surprise you, but most of the time your subs-based send-more-money solver takes is spent in the array iteration bits
azawawi FROGGS: any progress on that? 11:21
tadzik (I'll go work at my lack of sleep :))
timotimo masak: on the other hand, i made a commit that made the loops version a bit faster
m: say 1 / 1.3
camelia rakudo-moar c2a57e: OUTPUT«0.769231␤»
timotimo shaved about 25% of run time off by making "next" less expensive 11:22
11:22 mtj_ left
timotimo lizmat: can you think of a reason why we would want to keep using a slurpy array argument to next/redo? 11:23
11:23 mtj_ joined
timotimo rather than just next(Label $l) ? 11:23
masak timotimo: I got a Perl 5 version this morning that seems to make a similar point. 11:24
timotimo: (it used hashes to emulate sets in Perl 5, and the program ran a lot faster)
11:24 gfldex joined
masak haven't had time to look at it yet, but I can imagine a similar thing'll speed up the Perl 6 version, too. 11:24
timotimo i wonder how well just using "combinations" would work for this 11:26
of course, that'd increase the number of times you'll calculate "send", "more" and "money" 11:27
and our implementation of :10[ ... ] could get optimized in cases where we know that its arguments cannot be evil WRT getting listified
(which i'm afraid may not work in your example code) 11:28
11:28 inokenty joined
timotimo masak: any way, i'd be glad if you could re-time your subs-based code against latest rakudo and see if it's much better on your end as well :) 11:28
FROGGS azawawi: about the error messages? not as far as I know 11:29
11:29 azawawi left
masak timotimo: will do. thanks. 11:31
timotimo did you see the comments up on hackernews? many other implementations and also the suggestion that whatever you used in perl5 to emulate sets is likely the culprit - which you already seem to know 11:33
11:35 zakharyas joined 11:36 azawawi joined, Vlavv left, azawawi left, azawawi joined, Vlavv joined
ribasushi morning 11:37
moritz \o ribasushi
ribasushi chatter from elsewhere - inquiring minds want to know: paste.scsys.co.uk/483340
11:38 tinyblak_ left
azawawi FROGGS: namely irclog.perlgeek.de/perl6/2015-05-19#i_10624752 11:38
11:38 tinyblak joined
DrForr multi operator infix<"︵╰(°□°)╯︵">( @down, @up ) { } # :) 11:39
operator:infix that is :)
FROGGS azawawi: yes, I remember... though, there was no progress on that front
ribasushi DrForr: neat ;) 11:40
azawawi FROGGS: any pointers to where i can start?
FROGGS azawawi: augment Failure, add a method 'to-json-error' that first marks it as handled and then jsonifies it correctly 11:41
azawawi FROGGS: working on it. Thanks :)
FROGGS azawawi: have fun 11:42
azawawi if you think of it, JSON::RPC and debug/error messages would make Perl 6 integration with IDEs/Editors far more easier
start one perl6 process with JSON::RPC and then compile/debug/run in a loop 11:44
11:45 cow-orke1 joined 11:48 ganiii joined
ganiii what's up guys? 11:48
DrForr Lots, I'm sure :) 11:49
FROGGS $dayjob... :o(
masak no no, it's spelled "$dayjob \o/" 11:50
(we're hiring) :P
itz2 IDEs? you mean like vim and emacs? :P 11:51
11:53 andreoss joined 11:54 gagalicious joined 11:55 pauluu joined, gfldex left 11:57 tinyblak left, tinyblak joined, ganiii left 11:58 FROGGS left, cognominal left, cognominal joined 11:59 cognominal left, cognominal joined 12:01 tinyblak left
Ulti those are only integrated if you are programming in viml or lisp respectively :P though most IDEs are light on the 'I' part now :( 12:03
AlexDaniel Hi! I've seen some examples of "async BLOCK" but for me it says that "async" is an undeclared subroutine, what am I missing?
m: async { say 'hello' }
camelia rakudo-moar c2a57e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/hKmCt__yXB␤Undeclared routine:␤ async used at line 1. Did you mean 'asin', 'asinh', 'asec'?␤␤»
timotimo you spell that "start" nowadays 12:04
where did you find these examples? maybe we can update them?
AlexDaniel timotimo: I have no idea, I'm following perl6 development for quite some time, it is from my memory 12:05
m: wait
camelia rakudo-moar c2a57e: OUTPUT«5===SORRY!5===␤Whitespace required after keyword 'wait'␤at /tmp/nIZeT_mos_:1␤------> 3wait7⏏5<EOL>␤Undeclared routine:␤ wait used at line 1. Did you mean 'await'?␤␤␤»
timotimo ah, ok
AlexDaniel is it right? wait is now await?
timotimo hasn't it always been await?
AlexDaniel I don't think so 12:06
but again, it is from my imperfect memory
12:07 _mg_ joined
AlexDaniel m: start { say 'XXX'; sleep 4; say 'YYY'; }; await; say 'ZZZ'; 12:09
camelia rakudo-moar c2a57e: OUTPUT«XXX␤ZZZ␤»
AlexDaniel this is not what I expected
12:09 [Sno] joined
AlexDaniel what am I doing wrong? 12:09
timotimo you have to await a promise 12:10
m: my $promise = start { say 'xxx'; sleep 4; say 'YYY' }; await $promise; say 'ZZZ'
camelia rakudo-moar c2a57e: OUTPUT«xxx␤YYY␤ZZZ␤»
AlexDaniel then what's the point of await without args?
12:12 pauluu left
AlexDaniel if it is unable to wait for all of the threads to finish, then why not a compile-time error? 12:13
12:13 aborazmeh left, tinyblak joined, _mg_ left
AlexDaniel but again, I feel like I've seen an example of async & await without args 12:14
hoelzro o/ #perl6
timotimo hm.
12:17 andreoss left
smls Getting a "JIT: No function for op 304 in op_to_func." error in one of my scripts :( 12:21
(with latest r-m installed via rakudobrew)
The error message claims it's from IO.resolve, though i'm having trouble golfing it 12:23
12:23 raiph joined
timotimo oops? damn. gimme a second. 12:24
oh yikes 12:26
we usually bump moar_revision for this kind of fix, right? 12:28
smls: can you get a latest moarvm master and retry?
timotimo will be AFK for a bit
12:32 _mg_ joined
masak "Go in Go". interesting talk about bootstrapping. talks.golang.org/2015/gogo.slide 12:42
dalek pan style="color: #395be5">perl6-examples: b9cfa48 | paultcochrane++ | / (2 files):
Disable Text::VimColour

Unfortunately Text::VimColour isn't installing correctly at present via panda, and since we're actually not using it currently for the examples, we can comment out its installation and its use for the time being.
12:49
12:49 newbie1 joined
masak .oO( vimcOUlor isn't instOUlling cOUrrectly ) :P 12:50
12:50 newbie1 left
AlexDaniel so what's up with await? 12:51
moritz hopes it waits for stuff 12:52
AlexDaniel moritz: scroll a little bit up
12:53 _mg_ left
[ptc] masak: actually it's hanging on my perl6, endlessly waiting for *something* 12:53
... when testing 12:54
[ptc] likes Text::VimColour's name though :-)
12:56 anaeem1_ left 12:58 FROGGS joined
itz2 its probably waiting on the "ex" shell call 12:58
I've seen it do that on linux although not OS X .. I'll likely to investigate next week 12:59
timotimo i did that moarvm commit very inelegantly
itz2 I'm going to have a lot more perl6 time RSN :) 13:00
moritz AlexDaniel: agreed, it should error out when called without args
(but not when called with an empty argument list, like my @a; await @a)
smls timotimo: The JIT error is still there after `rakudobrew build moar nom` 13:03
(Or is that not the right way to install moarvm master?) 13:04
13:05 grondilu left
timotimo it is not. incidentally, i broke MoarVM on master and i'm fixing it now :) 13:06
smls btw this reliably triggers the bug for me: touch aa; ln -s aa bb; perl6 -e '"aa".IO.resolve for ^26' 13:08
with ^25 or less it doesn't appear ;)
timotimo yeah, that's when the jit kicks in 13:09
13:10 tinyblak left
timotimo you can "rakudobrew triple nom master master" to get the very newest of all components 13:10
13:11 tinyblak joined, koo6 left
smls ah 13:12
AlexDaniel moritz: ok, but what's wrong with waiting for all existing threads? 13:15
moritz AlexDaniel: afaict await doesn't work on threads 13:17
AlexDaniel: but rather on promises, channels, supplies
AlexDaniel: and those aren't globally scoped
timotimo moritz: in DBIish we've still got a .for inside DBDish.pm6
AlexDaniel moritz: hmmm
13:18 azawawi left
timotimo in theory, the scheduler could get a method that'd let you wait for everything that belongs to it to terminate 13:18
that seems more useful than "wait for all global things"
and it'll still DTRT when you just use the default, outermost $*SCHEDULER
is $*SCHEDULER set up lazily, btw? does it take much time to create? 13:19
moritz: and also is_deeply in the 05-mock.t test file
i'll go ahead and make a PR for you :)
oh, i hadn't realized it's under the perl6/ namespace 13:20
moritz timotimo: yes, you should be able to push directly 13:23
timotimo has to rebootstrap panda locally to test if everything's all right
13:24 laouji joined
timotimo and JSON::Tiny is under perl6/, too, i assume 13:24
oh. that one isn't
but the fixes are already in, so that's fine 13:25
13:25 brrt joined 13:29 laouji left
dalek Iish: 519fbe1 | timotimo++ | / (3 files):
.for -> .flatmap
13:37
Iish: 36e66e8 | timotimo++ | t/ (4 files):
kebabcase subs from Test
timotimo wow ... the perl6-examples test could really use a bit of benchmarking and optimization ... 48 minutes for a travis-ci build :S 13:38
i wonder what this is all about: t/categories/best-of-rosettacode.t ......... 5/15 Unable to parse expression in balanced; couldn't find final ']' 13:39
13:39 domidumont left, [Sno] left
[ptc] timotimo: ah, that's a flappy test :-/ 13:40
timotimo: there are several examples which are quite computationally intensive, so yeah, they take a while 13:41
timotimo: and I've already stripped out the ones I thought took too long!
timotimo: the flappy test is the categories/best-of-rosettacode/balanced-brackets.pl example 13:42
timotimo: one of the versions of the balanced brackets algorithm uses grammars and for Some Reason (TM) doesn't always work *sigh* 13:43
timotimo just now i'm watching the euler.t counter tick up veeeeerrrrrryyy slowly :D
the test run exceeded 50 minutes and was killed :( 13:46
13:46 virtualsue joined
[ptc] aui 13:47
of course, moar, nqp and rakudo are all built and installed first before starting the perl6-examples tests. But still... 13:48
timotimo yeah 13:49
that takes ~400s 13:50
m: say 400 / 60
camelia rakudo-moar c2a57e: OUTPUT«6.666667␤»
timotimo a tiny amount, in comparison
(but if it had been replaced with just a wget + untar, it could possibly have caused this particular build run to succeed?)
13:53 virtualsue left 13:57 [Sno] joined
[ptc] no idea. The runs which didn't have any test failures all ran to completion afaik 14:00
timotimo OK
well, the next run will have fewer deprecation warnings, but i can't see that stealing more than a second, all in all
14:00 g4 left 14:01 ab5tract_ left
[ptc] timotimo: thanks for fixing the deprecation warnings :-) 14:03
must dash, commute &
14:03 g4 joined, g4 left, g4 joined
timotimo sure :) 14:04
it's one of the easier jobs
moritz: i don't have a test setup for mysql and pg on my machine; can you run a DBIish test with all test databases set up at some point?
moritz timotimo: sure; just push
14:06 skids joined
timotimo i already pushed. thank you very much :) 14:09
14:09 skids left 14:10 [Sno] is now known as Sno|Hase 14:18 FROGGS left 14:24 amurf joined 14:27 Sno|Hase is now known as hase 14:28 amurf left
dalek p: 00b1d1e | timotimo++ | tools/build/MOAR_REVISION:
bump MOAR_REVISION for missing op_to_func stuff in the jit
14:35
kudo/nom: 6b406bd | timotimo++ | tools/build/NQP_REVISION:
bump nqp for fixes in the MVM JIT for op_to_func
14:36
timotimo oh well. there and back again 14:37
dalek kudo/nom: ab4a5ef | timotimo++ | tools/build/NQP_REVISION:
Revert "bump nqp for fixes in the MVM JIT for op_to_func"

This reverts commit 6b406bd38839e5e39a2320766f6edae41f508e7c.
we are still waiting for a lazy deserialization fix to make asynchronous stuff stable again after the recent fix for 100% cpu consumption
14:38
15:01 g4 left
smls m: grammar G {rule TOP{g}}; class A {method TOP($/){ "a" ~~ /a/ }}; G.parse("g", :actions(A)); 15:05
camelia rakudo-moar c2a57e: OUTPUT«Cannot assign to a readonly variable or a value␤ in method TOP at /tmp/UKWk0rPmL4:1␤ in regex TOP at /tmp/UKWk0rPmL4:1␤ in block <unit> at /tmp/UKWk0rPmL4:1␤␤»
smls ^^Am I not allowed to use regexes in action methods? :( 15:06
b2gills m: grammar G {rule TOP{g}}; class A {method TOP($\ is copy){ "a" ~~ /a/ }}; G.parse("g", :actions(A)); 15:07
camelia ( no output )
smls thanks 15:08
b2gills it would probably be better to rename $\ though 15:09
PerlJam surely you mean $/
15:11 sue_ joined
smls yeah I think I'll go with method TOP ($match) 15:11
15:14 cognominal left 15:16 raiph left, fhelmberger left
lizmat timotimo: atm I can't think of any reason 15:19
[Coke] there's a syntax for creating a string using the name of the unicode character, yes? (I can't find it in S15) 15:20
found it in S02. 15:21
15:21 zakharyas1 joined 15:22 zakharyas left
[Coke] m: "S⃒".chars.say # Why isn't this 1? 15:23
camelia rakudo-moar c2a57e: OUTPUT«1␤»
15:23 diana_olhovik_ left
[Coke] ... because my perl6 is super old, I guess. 15:23
m: my S⃒boom;
camelia rakudo-moar c2a57e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/68clMWq5j9␤Malformed my (did you mean to declare a sigilless \S⃒boom or $S⃒boom?)␤at /tmp/68clMWq5j9:1␤------> 3my S⃒boom7⏏5;␤»
15:24 hase is now known as [Sno] 15:30 skids joined 15:31 tinyblak left 15:32 brrt left 15:35 tinyblak joined
itz2 [Coke]: also examples.perl6.org/categories/cookb...icode.html 15:39
Ulti m: say [~] "\c[SMILING CAT FACE WITH HEART-SHAPED EYES]" .. "\c[CRYING CAT FACE]" 15:50
camelia rakudo-moar c2a57e: OUTPUT«😻😼😽😾😿␤»
15:50 cognominal joined 15:51 zakharyas1 left
itz2 is there a cat face iterator? 15:53
Ulti map all integers onto the catface space 15:55
lizmat git diff 15:57
oops :-)
15:57 gfldex joined, captian-adequate joined
Ulti there's catfaces before heart shaped eyes but that one is more impressive 15:58
dalek kudo/nom: f86437c | lizmat++ | src/core/control.pm:
Simplify next/last/redo handling, timotimo++
geekosaur waits for the esolang composed solely of cat faces
lizmat afk again&
Ulti that's almost useful since you can look at the whole emoticon range and stuff say [~] "\c[GRINNING FACE]" .. "\c[PERSON WITH FOLDED HANDS]"; 16:03
without having to know the hex at least 16:04
PerlJam IS there some reason we're really strict about the letter case in those? Why wouldn't \c[grinning face]" also be acceptable? 16:05
Ulti I think it's convention, whenever you see it anywhere they are all caps 16:09
RabidGravy there wasn't a problem with IO::Socket::Async in what I was looking at earlier, it was a change in the flattening behaviour of the zip operator
16:12 vendethiel joined 16:13 inokenty left, laouji joined
tony-o_ hoelzro++ 16:15
16:16 cognominal left 16:17 raiph joined 16:18 laouji left 16:21 telex left 16:22 telex joined 16:28 inokenty joined 16:30 yubimusubi joined
smls I like how Perl 6 lets me express many thing without creating temporary variables 16:31
like my $string = "foo{ " ($_)" if $_ given STRING_EXPRESSION) }..."
16:33 abraxxa left, Possum left
smls well, I suppose this example could have been done done without temporary variables in Perl 5 as well, using sprintf 16:33
actually, no, I don't think it could have 16:34
so, (Perl 6)++
TimToady " ($_) " x (!!$_) 16:35
16:36 vendethiel left
smls damn :P 16:36
mst map " ($_) ", grep defined, $expression
TimToady well, didn't really need the parens
mst yeah, but the parens made it clearer than my usual idiom as well as shorter 16:37
... hrm, aiming for clarity over brevity might be the opposite of golf, but people are going to give me funnier looks than usual if I call it code flogging 16:38
TimToady lately I've taken to saying that we should achieve brevity in the domain of symbols rather than keystrokes 16:39
where by "symbol" I mean something closer to psychological chunking 16:40
smls "($_)" if .so given "STRING_EXPRESSION" -- don't even need to reference $_ twice :P 16:41
TimToady, since you're here: Can you explain to me what the purpose of the anonymous blocks is in rosettacode.org/wiki/Amb#Using_lazy_lists ? 16:44
16:44 dakkar left
smls (article history credits you as the author of that solution) 16:44
for that matter, what's the purpose of doing a gather/take here? 16:45
TimToady how you gonna backtrack without some form of thunking?
this is essentially how STD does backtacking, btw 16:46
smls i don't understand how the cause backtracking
*they
TimToady via the X 16:47
16:48 raiph left
smls so the exceptions thrown from the blocks affect X? 16:48
TimToady next is probably dropping the current cross product 16:49
been a while though...
16:50 vendethiel joined
smls still doesn't see how the presence of those blocks has an effect on that) 16:51
TimToady m: my infix:<op> ($a, $b) { next if $a.ord %% 2 == $b %% 2; "$a$b" }; say <a b c d e> Xop ^5
camelia rakudo-moar c2a57e: OUTPUT«5===SORRY!5===␤Type 'infix:<op>' is not declared␤at /tmp/G78ZfKMhPR:1␤------> 3my infix:<op>7⏏5 ($a, $b) { next if $a.ord %% 2 == $b %%␤Malformed my␤at /tmp/G78ZfKMhPR:1␤------> 3my infix:<o7⏏5p> ($a, $b) { next if $a.ord %% 2 ==…»
TimToady m: sub infix:<op> ($a, $b) { next if $a.ord %% 2 == $b %% 2; "$a$b" }; say <a b c d e> Xop ^5
camelia rakudo-moar c2a57e: OUTPUT«a0 a2 a4 b1 b3 c0 c2 c4 d1 d3 e0 e2 e4␤»
smls btw, this much simpler variant also works, although it compute all possible combinations of the search space: gist.github.com/smls/9f11b70574f7088c5922 16:52
TimToady with Xlf a next in one of the earlier lists trims a large part of the search space away 16:53
m: sub infix:<op> ($a, $b) { next if $a.ord %% 2 == $b %% 2; "$a$b" }; say <a b c d e> Xop ^5 Xop <x y z> 16:54
camelia rakudo-moar c2a57e: OUTPUT«Earlier failures:␤ Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏x' (indicated by ⏏)␤ in sub infix:<op> at /tmp/23geVMwPbT:1␤ in block <unit> at /tmp/23geVMwPbT:1␤␤Final error:␤ Cannot call Real(…»
TimToady m: sub infix:<op> ($a, $b) { next if $a.ord %% 2 == $b.ord %% 2; "$a$b" }; say <a b c d e> Xop ^5 Xop <x y z>
camelia rakudo-moar c2a57e: OUTPUT«a0x a0 a0z ax a az a2x a2 a2z ax a az a4x a4 a4z b by b b1 b1y b1 b by b b3 b3y b3 b by b c0x c0 c0z cx c cz c2x c2 c2z cx c cz c4x c4 c4z d dy d d1 d1y d1 d dy d d3 d3y d3 d dy d e0x e0 e0z ex e ez e2x e2 e2z ex e ez e4x e4 e4z␤»
16:55 ab5tract_ joined
[Coke] Is that your Final Error? 16:55
TimToady here it never tests the x y z fork if the a1 fork fails
[Coke]: I hope to not stop making errors any time soon...
smls: anyway, 'next' is serving as the cut operator here 16:56
smls I understand that part 16:57
but not why it works with { } in the list but not with, say, ''
which should also make the substr comparison fail and cause next
TimToady well, '' would fail the last/first criterion 16:58
smls removing blocks by trial & error, this is the minimum amount needed to make it still work: gist.github.com/smls/9f11b70574f70...tfile2-6pl
TimToady well, the thunks allow lazy throws of exceptions, but that is perhaps not utilized with this particular problem 16:59
STD actually uses 'die' in some of those cases 17:00
m: say 1,2,die "foo"
camelia rakudo-moar c2a57e: OUTPUT«foo␤ in block <unit> at /tmp/e2ZCT4wK62:1␤␤»
TimToady m: say 1,2,{die "foo"}
camelia rakudo-moar c2a57e: OUTPUT«12-> ($_? is parcel) { #`(Block|50676640) ... }␤»
TimToady we wouldn't need the {} if there were a listy form of thunks, which is more or less what masak wants when he says "do notation" 17:02
the intent has been to mutate semicolons into a more general form
but so far we've only got as far as lols 17:03
m: say (1,2,3; 4,5,6; 7,8,9).perl
camelia rakudo-moar c2a57e: OUTPUT«(1, 2, 3; 4, 5, 6; 7, 8, 9)␤»
TimToady with a lol we actually make 3 lazy lists here, but a bare semilist doesn't quite thunkify 17:04
smls Can you show a simpler example that needs the {} ?
TimToady I think we'd want a keyword of some sort to make it more monadic
17:05 espadrine left
smls also, isn't {} a Hash? And yet the example still works with it 17:05
tony-o_ m: .perl.say for (1,2,3;4,5,6;,7,8,9);
camelia rakudo-moar c2a57e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/lVMaYDG_7Q␤Preceding context expects a term, but found infix , instead␤at /tmp/lVMaYDG_7Q:1␤------> 3.perl.say for (1,2,3;4,5,6;,7⏏057,8,9);␤»
tony-o_ m: .perl.say for (1,2,3;4,5,6;7,8,9);
camelia rakudo-moar c2a57e: OUTPUT«$(1, 2, 3)␤$(4, 5, 6)␤$(7, 8, 9)␤»
tony-o_ m: .elems.say for (1,2,3;4,5,6;7,8);
camelia rakudo-moar c2a57e: OUTPUT«3␤3␤2␤»
tony-o_ didn't know that was valid, that's pretty cool 17:06
TimToady m: sub infix:<op> ($a, $b) { next if $a.ord %% 2 == $b.ord %% 2; "$a$b" }; say <a b c d e> Xop ^5 Xop 'x',die("oops"),'z' 17:07
camelia rakudo-moar c2a57e: OUTPUT«oops␤ in block <unit> at /tmp/rBeIL9Wevc:1␤␤»
smls I know that you need braces to pass around actual code. 17:10
Maybe we're talking past each other :)
Juerd Not with * 17:11
17:11 grondilu joined
smls I'm freaked out about the fact that in the previously linked gist, changing amb(<the that a>, { }) to amb(<the that a>) makes it no longer print the correct solution 17:11
and I don't see how it makes a difference 17:12
ooooh, { } makes a hash which has no postcircumfix:<( )> and thus throws an exception which goes through 'take', right? 17:14
vendethiel backlogs..
smls that's why it still worked after changing { die "oops" } to { } 17:15
and the exception somehow affects the X operator?
TimToady caught by the next if try
unless* 17:16
if you remove the try it'll fail harder
17:17 fhelmberger joined
TimToady this is the basic problem with 'try'--it's too general, and catches the errors you didn't anticipate as well as the ones you did 17:17
17:17 spider-mario joined
TimToady so real production code should generally use a CATCH with a specific case 17:17
smls ok, I'm starting to grok this now :) 17:18
TimToady and, in fact, the die that STD does has specific values that it checks for on the eval end 17:19
:D
dalek osystem: 771c56b | tony-o++ | META.list:
renamed HTTP::Server::Threaded::Router to HTTP::Server::Router

git repo changed
17:21 fhelmberger left
timotimo tony-o_: i approve of this re-ordering 17:23
tony-o_ timotimo: which re-ordering?
timotimo making things not rely on a specific HTTP::Server implementation 17:24
tony-o_ i kind of like the idea of the role based HTTP::Server series - i'm building out the requests/response skeletons in there. i think it will let us start building some web apps that we can swap in better servers as they become more stable / faster 17:25
at some point i'm going to need to do actual work today tho, sadly 17:26
17:26 itz2_ joined 17:27 ibo2perl6 joined
smls TimToady: Unfortunately the syntax for catching a single exception is not that pretty: CATCH { when ... { } } 17:28
so many braces...
maybe CATCH ... { } or something similar could be allowed for the single-condition case? 17:29
ibo2perl6 m: my $x = BagHash.new(); { my $y = $x; $y{42}++; $x (+)= $y }; say $x; # expected bag(42(1)) no? 17:30
camelia rakudo-moar c2a57e: OUTPUT«bag(42(2))␤»
TimToady I wouldn't modify the phaser; I'd be more inclined to have variants of try that were restricted to particular error types
ibo2perl6 m: my $x = BagHash.new(); for ^2 { my $y = $x; $y{42}++; $x (+)= $y }; say $x; #
camelia rakudo-moar c2a57e: OUTPUT«Cannot assign to an immutable value␤ in block <unit> at /tmp/ZFDaRrncde:1␤␤»
17:30 skids left
smls You mean like try:io {...} ? 17:30
TimToady maybe try itself should default to only catching AdHoc, for instance
[Coke] (too broad catch) java/cf code smell as well.
TimToady: given that we haven't done a review of all the exception types in core, I'd be leery of that. 17:31
lots of stuff happens to be adhoc, but maybe shouldn't be.
TimToady and vice versa :)
seriously, many of the exception types strike me as overly specific rather than overly generic... 17:34
dalek href="https://modules.perl6.org:">modules.perl6.org: 2e5b95c | (Zoffix Znet)++ | web/index.tmpl:
Fix searching for HTTP modules (Closes #8)

The search JS plugin erroneously picks up href="" attributes.
17:36
smls
.oO( Let's steal the Python exception classes; just replace the "Error" suffix with an "X::" prefix and no one will notice! )
17:37 diana_olhovik_ joined, ibo2perl6 left 17:38 diana_olhovik_ left 17:40 FROGGS joined, domidumont joined, brrt joined, diana_olhovik joined
tony-o_ m: role X { has $.str; }; class A does X { has $.str = 'default'; }; A.new.str.say; 17:42
camelia rakudo-moar c2a57e: OUTPUT«===SORRY!===␤Attribute '$!str' already exists in the class 'A', but a role also wishes to compose it␤»
tony-o_ m: role X { has $.str; has $.str2; }; class A does X { submethod BUILD (:$!str = 'default') { *; }; }; A.new.str.say; 17:45
camelia rakudo-moar c2a57e: OUTPUT«default␤»
tony-o_ m: role X { has $.str; has $.str2; }; class A does X { submethod BUILD (:$!str = 'default') { *; }; }; A.new(str2 => 'a').str2.say;
camelia rakudo-moar c2a57e: OUTPUT«(Any)␤»
tony-o_ m: role X { has $.str; has $.str2; }; class A does X { submethod BUILD (:$!str = 'default') { {*}; }; }; A.new(str2 => 'a').str2.say;
camelia rakudo-moar c2a57e: OUTPUT«Error while constructing error object:Could not locate compile-time value for symbol Comp::AdHoc␤===SORRY!===␤Error while compiling, type X::Comp::AdHocpayload: {*} may only appear in proto␤ at line 2, near "; }; }; A."␤»
tony-o_ m: role X { has $.str; has $.str2; }; class A does X { submethod BUILD (:$!str = 'default') { callsame; }; }; A.new(str2 => 'a').str2.say; 17:46
camelia rakudo-moar c2a57e: OUTPUT«(Any)␤»
tony-o_ hm
17:46 diana_olhovik__ joined 17:47 diana_olhovik left, skids joined, diana_olhovik__ left, diana_olhovik_ joined
masak hah! someone sent me a p5 version A that runs in 6 seconds! :P 17:50
porting it to p6 now.
17:50 koo6 joined, brrt left 17:51 itz2_ left
masak discovered a rakudobug! 17:53
m: sub foo { say &^fn }; foo(42)
camelia rakudo-moar c2a57e: OUTPUT«42␤»
masak hah!
I can't believe none of us has thought of that one before :P
masak submits it
raydiak nice...works with all the sigils 17:54
nwc10 j: sub foo { say &^fn }; foo(42)
camelia rakudo-jvm c2a57e: OUTPUT«42␤» 17:55
masak m: sub foo(&fn) { say &fn }; foo(42) 17:56
camelia rakudo-moar c2a57e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/tFD8nnr8OL␤Calling foo(int) will never work with declared signature (&fn)␤at /tmp/tFD8nnr8OL:1␤------> 3sub foo(&fn) { say &fn }; 7⏏5foo(42)␤»
masak not only is the ordinary form checked, it's *checked at CHECK time* and never even runs.
18:00 ab5tract_ left 18:02 amurf joined, laouji joined 18:06 amurf left 18:07 laouji left 18:08 ab5tract_ joined
ugexe if i have `class CompUnit2 is CompUnit`, a CompUnit2.new on a module that augments is returning a CompUnit instead of a CompUnit2. Is this expected behavior due to monkey typing, or bug caused by it? 18:10
tony-o_ need a better github ios app 18:11
PerlJam ugexe: I'm not quite sure what you mean by "CompUnit2.new on a module that augments ..." Can you show the code? 18:12
18:16 Peter_R joined
masak heh, the ->@* postfix dereference syntax is ugly even for p5. 18:17
dalek href="https://modules.perl6.org:">modules.perl6.org: 5a5bd04 | (Zoffix Znet)++ | web/lib/P6Project.pm:
Use proper JSON booleans (Closes #2)
18:19
vendethiel m: sub f(&a){say a}; f(42); #what's the cannon error message? 18:20
camelia rakudo-moar c2a57e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/eF2koEDInT␤Calling f(int) will never work with declared signature (&a)␤at /tmp/eF2koEDInT:1␤------> 3sub f(&a){say a}; 7⏏5f(42); #what's the cannon error message?␤»
masak my p6 port takes 15 minutes. 18:21
dalek href="https://modules.perl6.org:">modules.perl6.org: 28193b1 | (Zoffix Znet)++ | web/index.tmpl:
Fix the fix for href="" exclusion from searches (Issues #8)
ugexe PerlJam: looks like its when also using the module.. i.e. `use mod; CompUnit2.new("/path/to/mod.pm6")`
gist.github.com/ugexe/a9463c3ec6a1ae257ed2 18:22
without 'use mod' 18:23
it works
well, works as in it will return CompUnit2, not CompUnit
TimToady m: sub foo(&fn) { say foo(42) } 18:24
camelia rakudo-moar c2a57e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/i7N2klQgx4␤Calling foo(int) will never work with declared signature (&fn)␤at /tmp/i7N2klQgx4:1␤------> 3sub foo(&fn) { say 7⏏5foo(42) }␤»
FROGGS ugexe: rakudo probably caches CompUnit object by abspath
objects*
dalek pan style="color: #395be5">perl6-examples: 3380129 | andreoss++ | / (2 files):
[euler] problem 32
pan style="color: #395be5">perl6-examples: 4ff97f2 | andreoss++ | / (2 files):
[euler] problem 33
pan style="color: #395be5">perl6-examples: a115e2f | andreoss++ | / (2 files):
Merge branch 'master' of github.com/perl6/perl6-examples
pan style="color: #395be5">perl6-examples: ef0f149 | andreoss++ | / (2 files):
[euler] problem 38
18:26 muraiki joined 18:30 _mg_ joined
ugexe FROGGS: only happens when the CompUnit/module use MONKEY-TYPING, fwiw 18:30
FROGGS okay, then I am out of ideas 18:31
vendethiel timotimo++ #speeding up masak's script :D 18:36
vendethiel saw masak's commit mentioning it go through
18:40 tinyblak left
masak vendethiel: it's spooky to have someone read the commits of that repo :P 18:40
18:40 itz2_ joined
vendethiel masak: and as instantly as you push, to add! 18:40
18:40 tinyblak joined
masak vendethiel: also, I hope you've realized that by revealing yourself the other day, I'm now never going to push before I publish... :) 18:40
vendethiel hehehe 18:41
I get github notifications
masak I figured.
vendethiel (that's why I don't use github's following system which is 100% useless when you're watching ~300 repos)
18:44 tinyblak left 18:55 cygx joined
cygx o/ 18:55
where did S15 go: design.perl6.org/S15.html
18:56 pauluu joined
jercos >=comment Oh, this is in Pod6 format. Just so you know. 18:59
A notable entry not found in the other pod files... perhaps a hiccup in Text::SmartLinks detecting pod6? 19:00
19:00 brrt joined
jercos Or it could be choking on the UTF-8 character on line 22 if it's trying to read it with the wrong encoding >.> 19:01
19:04 rindolf left 19:05 bbkr_ joined 19:08 bbkr left
lizmat ugexe: for a given abspath, there can only be one CompUnit object at any time 19:10
19:13 ab5tract_ left
ugexe lizmat: i think it has to do with monkey-typing though. i can create new CompUnit for other modules that I am currently using. Its only if one of the used modules uses MONKEY-TYPING 19:13
lizmat did you post a gist already ? 19:14
ugexe gist.github.com/ugexe/a9463c3ec6a1ae257ed2
i can emulate the behavior of CompUnit2 with a role, and then do my $cu = CompUnit.new(whatever) but CompUnit2 and it works as well. So a runtime mixin seems to not have the problem either 19:15
lizmat fwiw, I didn't write CompUnit with subclassing in mind
I'm also wondering what you're trying to achieve :-) 19:16
19:18 koo6 left
ugexe im changing .precomp-path so it doesnt have to be /same/path/as/source.moarvm 19:18
19:19 skids left
ugexe .precomp takes $out as an argument, but from what i can tell its pointless as the method returns false unless $out matches its predefined definition of precomp-path 19:20
19:24 virtualsue joined 19:25 domidumont left
lizmat looks 19:25
no, if .precomp doesn't fail, it returns True always 19:27
19:27 diana_olhovik_ left
lizmat it *only* sets its internal attribute has-precomp if out actually matched the default output path 19:27
so Compunit.new("Foo.pm").precomp("Bar.moarvm") *should* just work 19:28
ugexe you shouldnt have to pass Bar.moarvm, thats the default right? 19:29
if you pass anything that isnt the default, then it wont pass $out eq self.precomp-path
lizmat CompUnit.new("Foo.pm").precomp # creates Foo.pm.moarvm
smls m: say (grammar {token TOP {.}}).parse("a", :actions(class { method TOP ($/) { $/.make: (2, 4, 6, 8) } })).made.perl
camelia rakudo-moar c2a57e: OUTPUT«$(2, 4, 6, 8)␤»
lizmat CompUnit.new("Foo.pm").precomp("Bar.moarvm") # create Bar.moarvm
smls ^^ $/.make in action method itemizes the returned AST 19:30
doesn't happen with the sub form of make, nor does it happen when called from isnide the grammar instead of the action class
bug, or feature?
19:31 raiph joined
ugexe so what about CompUnit.new("/some/path/lib/Foo.pm").precomp("/some/path/lib2/Foo.pm.moarvm") 19:31
lizmat that should work and create it in lib2
in fact, that is one of the features I want to use to allow multiple precomps to coexist for the same source installation 19:32
ugexe method precomp-path(CompUnit:D: --> Str) { "$!path.$!precomp-ext" }
lizmat aka, in CURLI, I think it would make sense to store precomps in a directory named by git describe tag 19:33
ugexe but in .precomp $!has-precomp = True if $out eq self.precomp-path;
lizmat yeah, I think maybe has-precomp is getting too confusing
ugexe $!path dirname is not the same as precomp-path dirname
ab5tract lizmat: that's an interesting use case indeed
lizmat perhaps it is a premature optimization
ugexe lizmat: im already doing that with curli :)
lizmat okidoki 19:34
so, maybe we need to get rid of has-precomp
ugexe or make precomp-path an attribute
lizmat yeah, but I only want 1 instance for every abspath 19:36
of the "source" 19:37
thing is, I want it also to be able to support an installation *without* any source files
biab 19:38
19:40 _mg_ left, H2O1 joined, espadrine joined 19:45 skids joined, H2O1 left
vendethiel I guess my "last $x = 5" will break with these latest commits :P 19:47
19:47 FROGGS left 19:48 cygx left
masak m: my $x = 0; for 1..3 { .say; last $x = 5 }; say $x 19:48
camelia rakudo-moar c2a57e: OUTPUT«1␤5␤»
masak vendethiel: nope.
vendethiel masak: how so? github.com/rakudo/rakudo/commit/f8...9bf3425R93 19:49
flussence What's the idiomatic p6 way to write «$SIG{WARN} = sub {$warned++};»? I'm a bit stumped and all I've got is a multi-line mess that causes an internal error.
m: for ^10 { warn if .is-prime; CONTROL { } }
camelia rakudo-moar c2a57e: OUTPUT«Warning: something's wrong in block at /tmp/Ti8qSE2Bl6:1␤Trying to unwind over wrong handler␤»
flussence that's the error golfed down a bit
TimToady m: for ^10 { warn if .is-prime; CONTROL { .say } } 19:50
camelia rakudo-moar c2a57e: OUTPUT«Warning: something's wrong␤ in block <unit> at /tmp/dGYxdelD2A:1␤␤Warning: something's wrong in block at /tmp/dGYxdelD2A:1␤Trying to unwind over wrong handler␤»
TimToady m: for ^10 { warn if .is-prime; CONTROL { when * { .say } } }
camelia rakudo-moar c2a57e: OUTPUT«Warning: something's wrong␤ in block <unit> at /tmp/XbXY5Dna9F:1␤␤Warning: something's wrong␤ in block <unit> at /tmp/XbXY5Dna9F:1␤␤Warning: something's wrong␤ in block <unit> at /tmp/XbXY5Dna9F:1␤␤Warning: something's wrong␤ in blo…»
masak vendethiel: oh, camelia is running on an old Rakudo.
TimToady m: for ^10 { warn if .is-prime; CONTROL { when * { .say; .resume } } }
camelia rakudo-moar c2a57e: OUTPUT«Warning: something's wrong␤ in block <unit> at /tmp/uNtO3aZOCE:1␤␤Warning: something's wrong␤ in block <unit> at /tmp/uNtO3aZOCE:1␤␤Warning: something's wrong␤ in block <unit> at /tmp/uNtO3aZOCE:1␤␤Warning: something's wrong␤ in blo…»
masak why is camelia running such an old Rakudo? several hours.
TimToady m: for ^10 { warn if .is-prime; CONTROL { when * { .resume } } }
camelia ( no output ) 19:51
masak no, yesterday's, even.
TimToady probably the "forgiven" nqp bump
masak oh :/
TimToady just guessing though... 19:52
itz_ is there an OS independent way of getting file path separator? 19:53
flussence oh, it's called CX::Warn now. I was testing for «when X::AdHoc» still...
ugexe m: say $*SPEC.dir-sep 19:54
camelia rakudo-moar c2a57e: OUTPUT«/␤»
TimToady CX looks like some kind of mario-universe critter
itz_ ugexe: ty 19:55
masak m: say CX.WHAT
camelia rakudo-moar c2a57e: OUTPUT«(CX)␤»
masak m: say CX.WHO
camelia rakudo-moar c2a57e: OUTPUT«Last => (CX::Last), Next => (CX::Next), Proceed => (CX::Proceed), Redo => (CX::Redo), Succeed => (CX::Succeed), Take => (CX::Take), Warn => (CX::Warn)␤»
19:56 stanrifkin joined
masak m: say CX.HOW 19:56
camelia rakudo-moar c2a57e: OUTPUT«Perl6::Metamodel::PackageHOW.new␤»
lizmat itz_: '/'
masak oh, "Control eXception".
itz_ lizmat: I was worried about VMS ;)
stanrifkin What do you use as filename suffix for perl6? 19:57
lizmat ah, do we need to worry about VMS?
itz_ probably not
masak even if we need to worry about VMS, '/' has won and should be the default.
VMS should take the perf penalty for not having the default.
lizmat as we don't have a IO/Spec/VMS
in any case, the newio branch assumes just '/' 19:58
std: for ^10 { next my $x = 42 }
camelia std 28329a7: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/75yooyof0g line 1:␤------> 3for ^10 { next my $x7⏏5 = 42 }␤ok 00:00 138m␤»
lizmat std: my $x; for ^10 { next $x = 42 } 19:59
camelia std 28329a7: OUTPUT«ok 00:00 139m␤»
lizmat m: my $x; for ^10 { next $x = 42 }; say $x
camelia rakudo-moar c2a57e: OUTPUT«42␤»
lizmat I was just going to commit a patch that would do: 20:00
$ 6 'for ^10 { next my $x = 5 }'
Cannot call next(Int); none of these signatures match:
()
(Label:D \x)
vendethiel lizmat: ... isn't that already the case? 20:01
I mean, since your patch 4hours ago
20:02 raiph left
lizmat yes, but then it would die at runtime 20:02
vendethiel oh :)
lizmat this would be at compile time (well, optimize time technically)
Perl 5 says: 20:03
$ perl -E 'my $x; while (1) { last $x = 42 }; say $x'
Label not found for "last 42" at -e line 1
so also not what you expect 20:04
yes...
(sorry, referring to "I guess that will break "last $a = 42" reference by vendethiel just now) 20:05
vendethiel I guess "$x = 42, last" is the correct way to put it? 20:06
lizmat vendethiel: is there something wrong with: $a = 42; last ?
vendethiel before of @a = , tho
lizmat: I just wanted a quick postfix if :)
lizmat yeah, "$x = 42, last if $foo" should work 20:07
and might as well be clearer as well ?
20:07 pauluu left
lizmat as well (hmm.... seem to be stuck as well) 20:08
dalek kudo/nom: 6b99119 | lizmat++ | src/core/control.pm:
Make next/last/redo foo fail at compile time

KISS really, having a MMD candidate that just dies, makes it a runtime error. Removing that candidate, makes it a compile time error.
20:14
lizmat hopes TimToady agrees with this last change to next/last/redo 20:15
20:16 colomon left, yubimusubi is now known as Possum
jercos okay, the other script error that goes up when throwing together a design.perl6.org clone, S26, is absent entirely from design.perl6.xyl.be/ but present in design.perl6.org/ so presumably hand-updated... 20:17
oh, cygx left :-\
ah well
20:23 captian-adequate left 20:24 darutoko left 20:26 mr_ron joined 20:27 firefish5000 left 20:28 firefish5000 joined
mr_ron where is flatmap documented. I don't see it in the synopses or docs.perl.org 20:28
rjbs I didn't know/think p6 had a flatmap. 20:30
I appear wrong at least going by backlog, though. 20:31
masak it's fairly new.
mr_ron can I add an RT that it needs to be documented?
masak I haven't grokked it well enough to understand whether it's the same as what the FP world calls flatMap
mr_ron: sure!
rjbs masak: I've used .flat.map a couple times, which already makes me predict confusion. : 20:32
20:33 colomon joined
itz_ [ptc]: I think I've fixed Text::VimColour now 20:33
RabidGravy that's weird, just rebuildin rakudo moar from scratch on FreeBSD 10.1 and interp.o took half an hour 20:35
itz_ RabidGravy: the issue is the version of clang .. try clang36
flussence I used to be able to backup $install/share/perl6/site/panda/state, and it'd automatically reinstall everything I had prior to a rakudo update, but that doesn't seem to work any more... did it stop using that file?
RabidGravy itz_, I'll try that when it's finished 20:36
dalek kudo/nom: 079de37 | lizmat++ | src/core/control.pm:
Make THROW a multi

So that simple Nil throws don't have to throw Nil
20:46
lizmat argh! I broked the JVM build 20:50
control operator crossed continuation barrier :-( 20:51
smls What's the best way to make a class Foo so that Foo.new($:name) returns the *existing* object with that $.name if it already exists?
A my-scoped hash in the class mapping names to known objects, together with a custom method new which checks and extends that hash? 20:52
20:52 laouji joined
RabidGravy yeah that would work 20:52
lizmat CompUnit.new does something like: %instances{$path} //= self.bless( 20:53
to prevent race conditions, it does it inside a lock.protect() block 20:54
20:55 mr_ron left
smls ok, thanks. 20:55
20:57 laouji left 20:58 Peter_R left
flussence oh, figured out the panda thing - my rebuild-rakudo script was looking for it in an ancient file path. never mind. 20:58
dalek kudo/nom: 08b0e97 | lizmat++ | src/core/control.pm:
Unbreak the JVM build

Using MMD for THROW was a bridge to far. So do the selections of the candidates manually by (different) name.
21:07
lizmat *too
21:07 koo6 joined
vendethiel lizmat: wow, that's a scary error message 21:08
does that make any perl6 concept unimplementable on the jvm, btw?
(continuations on the jvm?)
21:10 itz2_ left
lizmat well, in combination with such low level things as take / return / next / last / etc. 21:11
there are apparently a number of gotcha's there
the current solution is just not as clean, but essentially the same 21:12
vendethiel lizmat: I see, thanks. I guess that's the price to pay to run on a VM *not* designed for your very malleable language :) 21:13
lizmat guess so :-)
21:14 colomon left 21:22 brrt left 21:31 kurahaupo1 joined
masak night, #perl6 21:31
lizmat gnight masak 21:33
lizmat also calls it a night 21:36
21:39 kurahaupo1 left, muraiki left, amurf joined 21:40 vendethiel left 21:41 ShimmerFairy left 21:44 amurf left, kurahaupo1 joined 21:46 kaare_ left 21:47 skids left, vendethiel joined 21:50 dolmen joined 21:53 kurahaupo1 left 21:57 colomon joined 22:00 grondilu left, dolmen left 22:05 virtualsue left 22:11 vendethiel left 22:21 virtualsue joined 22:23 espadrine left 22:31 vendethiel joined 22:36 smls left 22:39 RabidGravy left 22:40 AlexDaniel left, virtualsue left 22:48 stanrifkin left, spider-mario left 22:49 laouji joined 22:54 ribasushi left 22:55 vendethiel left 22:59 ribasushi joined 23:00 vendethiel joined 23:02 telex left 23:04 telex joined 23:05 laouji left, spider-mario joined 23:09 gfldex left 23:13 skids joined 23:14 amurf joined, andreoss joined 23:22 vendethiel left 23:23 Ben_Goldberg joined, kurahaupo1 joined
timotimo lizmat: did you see # RT #122732 - control operator crossed continuation barrier 23:26
#?if jvm
right above the code you changed? :)
23:28 BenGoldberg_ joined
timotimo i like THROW-NIL 23:28
i mean
THROW with MMD would be nice, too. but having this is a good start
23:29 Ben_Goldberg left 23:30 Patterner left 23:31 Ben_Goldberg joined
dalek kudo-star-daily: 5322ff6 | coke++ | log/ (2 files):
today (automated commit)
23:31
rl6-roast-data: 5f323e2 | coke++ | / (9 files):
today (automated commit)
23:32 Patterner joined, kurahaupo1 left 23:34 BenGoldberg_ left, inokenty left 23:44 BenGoldberg joined 23:46 Ben_Goldberg left 23:48 ssqq joined 23:49 ssqq left, andreoss left 23:50 inokenty joined 23:51 tinyblak joined