»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
00:01 floutenvy joined 00:04 espadrine left 00:13 raschip left 00:16 floutenvy left, jraglin left 00:20 pyrimidine left
notviki That just reminds me of Karl Pilkington... 00:23
00:24 cpage_ joined, cpage_ left
AlexDaniel samcv: 1.3GB space remaining :) 00:25
00:26 jraglin joined 00:32 Actualeyes joined 00:33 aborazmeh joined, aborazmeh left, aborazmeh joined 00:34 troys is now known as troys_ 00:36 wamba left 00:37 dalek left, dalek joined, ChanServ sets mode: +v dalek
samcv heh 00:37
00:38 aborazmeh left 00:39 jraglin_ joined, aborazmeh joined, aborazmeh left, aborazmeh joined 00:41 pyrimidine joined 00:42 jraglin left 00:47 jraglin_ left, jraglin_ joined 00:50 cdg left 00:51 BenGoldberg joined 00:53 astj joined 00:57 cpage_ joined 01:01 cpage_ left 01:03 aborazmeh left 01:05 labster left 01:08 cpage_ joined 01:10 jraglin_ left, jraglin_ joined, aborazmeh joined, aborazmeh left, aborazmeh joined 01:11 Coleoid joined 01:13 troys_ is now known as troys 01:19 shayan_ left 01:20 shayan_ joined, shayan_ left 01:22 pyrimidine left 01:24 jraglin joined 01:25 shayan_ joined 01:26 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg 01:27 jraglin_ left
neewbie can i insert a char in a string giving the index where i want to put the char? 01:27
timotimo try for example substr-rw for that 01:28
neewbie thanks 01:29
but i want to add the char
TimToady you can assign to the substr-rw
garu where can I find the discussion for (or just the reasoning behind) the decision to remove the 'returns' form from the syntax (in the future)? 01:30
TimToady m: my $s = 'abc'; substr-rw($s,2,0) = 'd'; $s.say
camelia rakudo-moar 6703b4: OUTPUT«abdc␤»
garu not trying to push for or against it, I'm just curious
neewbie wow. thanks! 01:31
01:33 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg
TimToady garu: see irclog.perlgeek.de/perl6/2016-12-03#i_13674580 for some of it 01:36
01:43 geraud left 01:52 jraglin left, jraglin joined
neewbie how can i make this code look more like perl 6 gist.github.com/anonymous/742781d1...b8821f8209 01:57
?
02:00 Gasher left 02:03 _Vasyl joined 02:04 lizmat_ joined, labster joined
TimToady seems like perfectly fine p6 to me 02:04
02:05 pyrimidine joined, troys is now known as troys_
TimToady if I was gonna recognize more than just ( or ), I might consider binding to $_ instead of $v and using "when '('" etc. instead 02:06
but if it works, then it's sufficiently like perl 6 :) 02:07
neewbie but how could i use $_ if i want to use the index too? 02:12
TimToady -> $i, $_ works fine 02:13
neewbie i see, but in this case you're just renaming the variable, right? $_ is nothing more special than $v
TimToady except that 'when' implicitly matches against $_
neewbie hmmmmmm 02:14
TimToady so you don't have to say 'eq'
neewbie I'll try to refactor tomorrow 02:15
thank you very much for helping me
and sorry for annoying with stupid questions
bye
02:17 neewbie left 02:23 shayan_ left 02:30 pyrimidine left, pyrimidine joined 02:32 BenGoldberg left 02:33 kalkin- left 02:34 kalkin- joined
astj Hi. I found loading modules dynamically using `require` sometimes doesn't work in recent version of MoarVM. Does anyone know about this behavior? 02:34
02:34 geraud joined
astj Here are codes to reproduce : github.com/skaji/Crust-issue (Thanks to skaji_ ) 02:34
02:34 BenGoldberg joined
geekosaur it's been mentioned but I haven 02:37
t seen a ticket go by yet
huggable: rakudobug
huggable geekosaur, [email@hidden.address] or use perl6 query on rt.perl.org ; see github.com/rakudo/rakudo/#reporting-bugs
geekosaur believed to be related to lexical module loading 02:38
astj I think so too < believed to be related to lexical module loading
Oh I forgot to mention, those codes above works fine in 2016.11.
02:45 ilbot3 left
astj Should I report it to rakudobug? 02:45
02:47 ilbot3 joined
geekosaur yes 02:51
astj Ok, I'll do it. Thank you. 02:53
03:04 pyrimidine left 03:05 rpburkholder left 03:11 aborazmeh left 03:13 johnjohn101 joined
Geth osystem: dffeadfaee | faraco++ | META.list
update META.info to META6.json
03:13
03:20 xtreak joined 03:29 pyrimidine joined 03:31 labster left, labster joined 03:34 skids joined
astj Reported rt.perl.org/Public/Bug/Display.html?id=130535 03:34
geekosaur: Thank you for your advice! 03:35
03:36 troys_ is now known as troys
garu TimToady: thanks! sounds very reasonable 03:43
on a completely unrelated subject, anyone knows a simple way to dynamically name a "has"? 03:45
TimToady you could probably do something with 'method FALLBACK' 03:50
garu for example, if I have class A { submethod BUILD(*%args) { ... }} I'd like to "my $a = A.new( foo => 42 ); say $a.foo" and have it print 42
TimToady or maybe use 'handles' to delegate to a hash 03:51
garu I think I'm missing some basic perl 6 principles yet, sorry :(
I know about self.^add_attribute() but I don't think it's doing it for me 03:52
TimToady is there some reason you don't just want to derive from a Hash?
or compose one with 'has', then delegate unrecognized methods via FALLBACK 03:53
garu ah, that would probably work! 03:54
would it be idiomatic?
I mean
the fact that I can add a "has" inside a condition made me wonder if it would be ok to do something like if $attr-name { has $.{$attr-name} is ...; } 03:56
TimToady that's probably not doing what you think it's doing
garu of course, $.{$attr-name} does not do what I mean, I just wanted to get the idea across :) 03:57
TimToady 'has' is pure declaration, so it's gonna ignore any surrounding conditional
garu ah
dammit :)
I didn't know that, thanks!
TimToady that's why it's called a 'declarator', like 'my' 03:58
garu I'll just resort to FALLBACK then
thanks!
03:58 cpage_ left 04:00 geekosaur left 04:01 geekosaur joined
BenGoldberg m: class Foo { has $.x = 3; has $.y = 4; method bar($attr-name) { self."$attr-name" } }; Foo.new.bar("x").say; 04:04
camelia rakudo-moar 6703b4: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Quoted method name requires parenthesized arguments. If you meant to concatenate two strings, use '~'.␤at <tmp>:1␤------> 3thod bar($attr-name) { self."$attr-name"7⏏5 } }; Foo.new.bar("x").say;␤»
BenGoldberg m: class Foo { has $.x = 3; has $.y = 4; method bar($attr-name) { self."$attr-name"() } }; Foo.new.bar("x").say;
camelia rakudo-moar 6703b4: OUTPUT«3␤»
BenGoldberg m: class Foo { has $.x = 3; has $.y = 4; method bar($attr-name) { self."$attr-name"() } }; Foo.new.bar("y").say;
camelia rakudo-moar 6703b4: OUTPUT«4␤»
04:11 pyrimidine left 04:25 geekosaur left 04:26 llfourn joined 04:27 geekosaur joined, xtreak left 04:29 xtreak joined 04:32 BenGoldberg left 04:35 cpage_ joined 04:41 pyrimidine joined
dalek Iish: 6b4bb97 | (Kaare Rasmussen)++ | / (7 files):
POC Dynamic types
05:04
Iish: 416b4db | (Kaare Rasmussen)++ | / (2 files):
Change sub to callable.
Iish: 6223169 | (Kaare Rasmussen)++ | / (6 files):
Change the type identifier to be a type object instead of a string.
Iish: c070886 | (Kaare Rasmussen)++ | / (7 files):
Change the type conversion to hash association.
Iish: 92abd9b | (Salvador Ortiz)++ | / (6 files):
Merge pull request #83 from kaare/master

Dynamic types handling
05:14 pyrimidine left, pyrimidine joined 05:19 pyrimidine left 05:22 khw left 05:26 jraglin left 05:30 awwaiid left 05:36 pyrimidine joined 05:45 Cabanossi left 05:47 Cabanossi joined, shellseek joined
shellseek hi 05:48
05:48 jraglin joined
shellseek h 05:48
05:50 shellseek left 05:53 skids left 06:04 johnjohn101 left
AlexDaniel .tell MasterDuke pull request sent: github.com/MasterDuke17/Text-Diff-Sift4/pull/4 06:17
yoleaux AlexDaniel: I'll pass your message to MasterDuke.
06:21 CIAvash joined 06:27 llfourn left 06:28 troys left 06:30 cyphase left 06:31 bwisti left 06:35 cyphase joined 06:38 darutoko joined 06:39 xtreak left 06:40 bjz joined 06:42 xtreak joined 06:46 bjz left
AlexDaniel what was the module for “is cached”? 06:48
or… what was the actual problem with “is cached”…
samcv say(nqp::getstrbyname('Santa Claus: light skin tone')) #> 🎅🏻
i got it working :D
coming soon!
AlexDaniel found the module github.com/azawawi/perl6-memoize 06:49
samcv now just have to clean some things up
06:49 bjz joined
samcv can't believe I got it all working in a day but yey 06:49
06:52 RabidGravy joined 06:54 bjz left 06:56 Resol joined 07:00 jraglin left 07:03 wamba joined 07:05 domidumont joined, cibs left 07:07 cibs joined 07:10 domidumont left, domidumont joined 07:23 llfourn joined 07:28 Ven joined, ufobat joined, llfourn left 07:30 bjz joined 07:43 Resol left 08:06 llfourn joined 08:09 ufobat left 08:11 xtreak left 08:14 xtreak joined
lizmat_ clickbaits p6weekly.wordpress.com/2017/01/09/...erbotting/ 08:19
moritz lizmat_++
and lizmat++ too :-)
08:21 lizmat_ is now known as lizmat
lizmat :-) 08:21
08:22 wamba left 08:26 zakharyas joined
CIAvash lizmat++ 08:28
08:29 ufobat joined 08:35 wamba joined 08:44 pyrimidine left 08:45 g4 joined, g4 left, g4 joined 08:48 llfourn left 08:51 domidumont left 08:52 domidumont joined 08:58 hchienjo joined
hchienjo m: say 'Test'; 08:59
camelia rakudo-moar 6703b4: OUTPUT«Test␤» 09:00
hchienjo Hello guys. Why I am getting different outputs when I do this...
m: ('a'...'z').combinations(2).join('')
camelia ( no output ) 09:01
hchienjo m: ('a'...'z').combinations(2).join('').say
camelia rakudo-moar 6703b4: OUTPUT«a ba ca da ea fa ga ha ia ja ka la ma na oa pa qa ra sa ta ua va wa xa ya zb cb db eb fb gb hb ib jb kb lb mb nb ob pb qb rb sb tb ub vb wb xb yb zc dc ec fc gc hc ic jc kc lc mc nc oc pc qc rc sc tc uc vc wc xc yc zd ed fd gd hd id jd kd ld md nd od pd qd…»
hchienjo and this
m: say ('a'...'z').combinations(2).map({ .join('') });
camelia rakudo-moar 6703b4: OUTPUT«(ab ac ad ae af ag ah ai aj ak al am an ao ap aq ar as at au av aw ax ay az bc bd be bf bg bh bi bj bk bl bm bn bo bp bq br bs bt bu bv bw bx by bz cd ce cf cg ch ci cj ck cl cm cn co cp cq cr cs ct cu cv cw cx cy cz de df dg dh di dj dk dl dm dn do dp dq …»
hchienjo The first form has an 'a' and a 'z' at the beginning and at the end respectively. I don't know how they come about. 09:02
09:03 jonas1 joined
moritz m: say ('a' ... 'c').combinations(2).eager.perl 09:04
camelia rakudo-moar 6703b4: OUTPUT«(("a", "b"), ("a", "c"), ("b", "c"))␤»
moritz hchienjo: the .join simply stringifies the inner lists, which adds a space in the middle
so it's really "a b" ~ "a c" ~ "a d" which becomes "a ba ca da..." 09:05
09:09 pyrimidine joined
hchienjo moritz: You are right. Thanks. 09:11
09:13 dakkar joined 09:16 pyrimidine left 09:17 wamba left 09:23 zakharyas left 09:27 ggoebel left 09:30 CIAvash left 09:35 Unavowed left, freeze left, Unavowed joined, freeze joined 09:37 mst left, nine left, saki_ left, profan left, eater left, diego_k left, ilbelkyr left, musca left, jonadab left, Kaffe left, broquaint left, mspo left, jnthn left, Util left, kst left, jnthn joined, Util joined, jonadab joined, saki joined, diegok joined, profan_ joined, mst joined, nine_ joined, broquaint joined, mspo joined, Kaffe joined, ilbelkyr joined 09:38 eater joined, musca joined, jantore left, statisfiable6 left, bisectable6 left, benchable6 left, unicodable6 left, evalable6 left, committable6 left, revere left, tomaw left, Gothmog_ left, b2gills left, bitmap left, yeltzooo left, salparadise left, jervo left, revere joined, Gothmog_ joined, jantore joined 09:39 bitmap joined, camelia left, Alikzus left, forkbomb left, kmwallio left, captain-adequate left, pochi left, japhb left, ponbiki left, zoosha_ left, El_Che left, Hotkeys left, dylanwh left, cxreg left, eythian left, moritz left, rjbs left, luis left, yeltzooo joined, zoosha joined, moritz_ joined, ggoebel joined, cxreg2 joined, pochi joined, rjbs joined, Hotkeys_ joined, captain-adequate joined, dylanwh joined, salparadise joined, b2gills joined, Alikzus joined 09:40 eythian joined, kst joined, camelia joined, forkbomb joined, kmwallio joined 09:41 luis joined, hchienjo left, ggherdov left, PotatoGim left, ChanServ sets mode: +v camelia 09:42 BuildTheRobots left 09:43 PotatoGim joined, ggherdov joined 09:44 El_Che joined, ponbiki joined, japhb joined, ponbiki is now known as Guest34096 09:45 llfourn joined, BuildTheRobots joined 09:47 ggherdov left 09:48 ggherdov joined 09:50 llfourn left 09:55 xtreak left 09:58 kst left, xtreak joined 10:00 kst joined 10:04 committable6 joined, unicodable6 joined, evalable6 joined, ChanServ sets mode: +v committable6, bisectable6 joined, ChanServ sets mode: +v unicodable6, ChanServ sets mode: +v bisectable6, benchable6 joined, ChanServ sets mode: +v benchable6, statisfiable6 joined 10:08 g4 left 10:13 pyrimidine joined 10:20 rindolf joined 10:24 moritz_ is now known as moritz 10:32 RabidGravy left 10:43 xtreak left 10:46 llfourn joined, RabidGravy joined
AlexDaniel Geth: I have a gift for ya 10:47
10:48 g4 joined
AlexDaniel Geth: well… ok… 10:49
anyway, 15 commits: github.com/perl6/whateverable/commits/master ;)
10:54 darutoko left
AlexDaniel oh, I guess it wasn't json 10:55
10:55 lucasb joined
AlexDaniel commit: post-glr say 42 10:56
committable6 AlexDaniel, ¦«post-glr»: Cannot find this revision (did you mean “pre-glr”?)
AlexDaniel ;)
samcv: ah! 10:57
samcv hi AlexDaniel
AlexDaniel samcv: it now only includes useful tags
samcv yay
AlexDaniel samcv: zzz say 42
oops
commit: zzz say 42
committable6 AlexDaniel, ¦«zzz»: Cannot find this revision (did you mean “Linz”?)
AlexDaniel commit: Linz say 42
committable6 AlexDaniel, ¦«Linz»: 42
AlexDaniel \o/
lucasb AlexDaniel: is your name spelled correct in the weekly post?
AlexDaniel lucasb: that's… that's some wordpress nickname I guess 10:58
lucasb AlexDaniel: ah, ok :)
11:00 zakharyas joined
AlexDaniel lucasb: I've actually tweaked it a bit on wordpress so that it appears as just “AlexDaniel” now (e.g. here perl6advent.wordpress.com/2016/12/...n-awesome/ ), but not sure what's up with that post 11:01
in any case it is hilarious :)
huggable: princess :is: irclog.perlgeek.de/perl6/2016-11-30#i_13657698 11:02
huggable AlexDaniel, Added princess as irclog.perlgeek.de/perl6/2016-11-30#i_13657698
11:03 pyrimidine left
notviki 15 commits you say... 11:09
Geth ateverable/master: 15 commits pushed by AlexDaniel++
review: github.com/perl6/whateverable/comp...79df620961
notviki <3 Geth 11:10
11:13 AlexDaniel left
jnthn notviki: Just switched MoarVM to use Geth also :) 11:13
notviki++
11:15 faraco joined
faraco howdy 11:15
notviki jnthn: it seems to be glitching though? For some of the commits in #moarvm, I don't see it report a review link? 11:16
11:17 labster left
notviki hm... and I don't see any flood warnings from freenode in log :/ 11:17
jnthn notviki: Only the very latest report was from Geth 11:20
I changed it like 10 mins ago
So some in recent backlog will be dalek
I only see the glitch in the dalek output
notviki Oh hah 11:21
faraco quit
notviki *phew*
faraco oops
when look at this `->`, it reminds me to elixir anonymous function. 11:22
looking* 11:23
11:24 TEttinger left 11:25 Geth left 11:30 gearchef left 11:38 pyrimidine joined, captain-adequate left 11:41 Geth joined, ChanServ sets mode: +v Geth 11:45 pyrimidine left 11:48 lucasb left 11:51 captain-adequate joined 11:54 lukaramu joined 11:55 raschip joined 11:59 bjz left 12:06 bjz joined 12:09 gearchef joined 12:11 aborazmeh joined, aborazmeh left, aborazmeh joined 12:15 pmurias joined 12:21 llfourn left 12:29 hchienjo joined 12:30 hchienjo left
faraco Is Perl 6 generally ready in production use? At least, sysadmin work? 12:34
DrForr Sure. 12:37
raschip faraco: Yes.
faraco Awesome. 12:38
12:40 curt_ joined 12:42 pyrimidine joined 12:46 pyrimidine left 12:47 cibs left
Woodi hi today :) 12:48
raschip o/
12:48 cibs joined
Woodi so now we need #perl6 own blockchain to easily share tuits via IRC... 12:49
m: my @tuits = 't' X~ 1..* # it needs to keep current state somehow ;) 12:50
camelia ( no output )
DrForr hmm. I was reading about blockchains a few weeks ago ina book sample... 12:53
12:54 bjz left, azawawi joined
azawawi hi 12:54
raschip oi!
azawawi :) 12:55
DrForr Local afternoon!
12:55 bjz joined
raschip faraco: perl6 is the best language for system admin today. It's a way better glue language, by far. 12:56
azawawi Been busy last year in Swift land and had not any time for perl6
github.com/azawawi/SwiftyZeroMQ :) 12:57
now im back
lizmat azawawi welcome back!
azawawi takes a look at Net::ZMQ 12:58
DrForr So what have you brought back for us from Swift? :)
azawawi perl6 is for fun. Swift is for work :)
arnsholt azawawi: Not much done 12:59
azawawi also the try statement in swift... i hate it :)
arnsholt There's a PR, but I got some weird errors with it (and then I ran out of time that day)
azawawi DrForr, lizmat: we should learn a thing or two from Swift's native bindings 13:00
arnsholt: libzmq 4.2.1 is up. I wonder how many distributions are using it. 13:02
arnsholt: packages.debian.org/sid/libzmq3-dev 13:03
arnsholt azawawi: The versioning for ZMQ was maddening 13:09
azawawi arnsholt: i know. Going to fix that :)
arnsholt Also: libzmq3-dev, depends on libzmq5 (which is apparently 4.2.1-2)???
13:11 wamba joined
El_Che azawawi: hi, good to see you 13:11
azawawi arnsholt: that's Debian for you :)
El_Che: thx
notviki faraco: what's the actual failures with IRC::Client? 13:14
raschip: why is it the best? 13:16
raschip: considering half the distros don't even have a recent enough version available in repos. 13:17
raschip Well, recent distros have recent versions. 13:18
notviki So it's not the best :P
13:18 faraco left
raschip Better than P5, even. 13:19
Outdated software doesn't bother sysadmins.
notviki uhuh... my distro has rakudo 2011.07 in it... 13:21
raschip which distro are you using?
notviki LTS
Doesn't matter which.
raschip Mine has 2016.12-1 13:22
arnsholt azawawi: Also, what cool things have you discovered in Swift's FFI? 13:23
azawawi arnsholt: well, for one thing, you include zmq.h and get all function signature translated into swift on the fly 13:25
arnsholt Well, that's cool, but a *massive* amount of work
azawawi arnsholt: i.e. no need to write nativecall layer
arnsholt Not to mention: does that also handle #define constructs? 13:26
raschip azawawi: The problem with not having to write a nativecall definition is that the interfaces don't take advantage of P6's features then.
azawawi arnsholt: it seems to get that for free because of llvm
arnsholt ('cause getting those right is several kinds of hairy)
Sounds like something somewhere gets compiled to C first then (or Objective-C, I guess) 13:27
azawawi clang.llvm.org/docs/Modules.html#li...eclaration
raschip I can see it would be useful to have another interface that does it, but it's a lot of work and does not substitute nativecall. 13:28
[Coke] samcv: please don't add trailing whitespac to trigger a rebuild. it causes 'make xtest' to fail.
(docs)
arnsholt azawawi: That's a link thing. Not the same at all
notviki [Coke]: samcv the proper solution is to teach the build script to watch for updates in atom highlighter repo too github.com/perl6/doc/blob/master/u...d-sync#L16 13:30
[Coke] notviki: aye.
azawawi arnsholt: clang.llvm.org/docs/Modules.html#he...eclaration # my bad 13:31
notviki wonders what's this about: github.com/perl6/doc/blob/master/u...nd-sync#L5
Bug in rakudobrew? 13:32
Or someone forgot to run rehash...
13:32 raschip left
azawawi arnsholt: also developer.apple.com/library/conten...CH8-XID_13 13:32
arnsholt: UnsafePointer<Type> is cool 13:33
notviki that path ain't even there no more
Geth c: 1f3eaf145b | (Zoffix Znet)++ | util/update-and-sync
Remove some sort of rakudobrew bug workaround

By what it does, sounds like there was never any bug but someone simply forgot to run `rakudobrew rehash`. The added path is no longer even there, so out this goes.
13:35
notviki
.oO( why doesn't rakudobrew run rehash automatically after installing any module... )
13:36
moritz because panda installs the modules, not rakudobrew
[Coke] notviki, samcv : I updated 'make xtest' to ignore that file for trailing whitespace for now.
notviki Ah right
moritz or zef, for that matter
13:36 raschi joined
Geth c: 535015c16d | (Will "Coke" Coleda)++ | doc/Language/5to6-perlvar.pod6
use non-breaking space
13:37
c: 9e9ad84e63 | (Will "Coke" Coleda)++ | xt/trailing-whitespace.t
Don't test file that specifically asks for trailing space.
notviki
.oO( why doesn't rakudobrew install a wrapper around panda/zef that would run rehash :P )
moritz it would be awesome if panda and zef had some kind of hooks where rakudobrew could subscribe to notifications of changed modules
arnsholt azawawi: That does look neat, but it's going to be really hard to implement
notviki sounds like overengineering.. From what I see, rakudobrew already installs zef as a wrapper 13:38
arnsholt And I'm pretty sure it doesn't use the LLVM module stuff, since it says this works for C in general
notviki with a comment "# I AM RAKUDOBREW. ALSO POSSIBLY SPARTACUS. OUTLOOK CLOUDY, ASK AGAIN LATER." in it ... :o
timotimo like everything it makes available through bin/, no?
DrForr I AM RAKUDOBREW, DESTROYER OF BUILDS. LOOK ON MY COREDUMPS O MIGHTY AND DESPAIR. 13:39
notviki suspects DrForr just finished making a Rakudobrew bomb... 13:40
timotimo I AM RAKUDOBUG
DrForr (crossing the streams a bit there, obviously Xanadu had some rocky waters.)
ufobat YAY, my company pays for my trip to the fosdem :) whee
notviki heh lucky
timotimo fantastic 13:41
ufobat i am looking forward for it. i need a perl6 sticker for my new notebook :)
DrForr So will I, come to think of it - At least I'm planning to acquire a new notebook whilst there. 13:42
notviki college ruled? :)
timotimo who rules the college? 13:43
DrForr "You *deserve* to be ruled." "Like five-subject college notebooks is what I'm saying."
13:51 bjz left 14:01 cpage_ left, shayan_ joined 14:03 cpage joined, cpage_ joined 14:05 faraco joined
azawawi any ideas how to exit from a blocking GTK::Simple app? # need it for writing tests for GTK::Scintilla 14:05
jnthn exit?
(exit does a real OS exit so should tear the process down fine enough...) 14:06
14:07 kurahaupo__ joined
notviki faraco: I don't see any error messages in your update.... 14:07
just copy-pasted original text that describe the issue as "fails everywhere" 14:08
pmurias raschi: re having the FFI take a header you can combine both approaches use the tool to spit out something that you can tweak from the header
raschi pmurias: Yes, they're not mutually exclusive. 14:09
14:13 pyrimidine joined 14:16 aborazmeh left
[Coke] so, doc building still basically broken here for me; anyone else building with a very recent rakudo seeing a slowdown on "Writing programs document for Perl 6" ? Seems like just me atm. 14:16
14:17 pyrimidine left
azawawi jnthn: i.e. on shown exit the app (for ci testing custom-made gtk widgets and stuff like that) 14:18
14:18 skids joined 14:19 cdg joined 14:20 azawawi left, cdg left 14:21 cdg joined 14:22 pyrimidine joined 14:23 azawawi joined
azawawi jnthn: got it... GTK::Simple::Scheduler.new.cue: {$app.exit} :) 14:24
jnthn Ah :)
14:25 awwaiid joined
notviki RabidGravy: are you around? 14:28
14:30 jdmmmmm joined
[Coke] I have a lookup hash. Is there a good way to have a MAIN arg declaratively be one of those keys? 14:30
14:31 rindolf left
notviki or ugexe, are you around? 14:32
moritz [Coke]: uhm, uhm, uhm, probably not
[Coke] ah. enum STUFF (%stuff.keys); # was missing the parens.
then I can use enum in the MAIN.
moritz that would have been my next attempt :-) 14:33
14:33 telex left
notviki m: say v0.0.9 before v0.0.11 14:33
camelia rakudo-moar ed5c86: OUTPUT«True␤»
14:34 telex joined
notviki ugexe: RabidGravy for some reason `zef install Test::META` attempts to install META6:ver('0.0.9') instead of the latest META6:ver('0.0.11'): gist.github.com/zoffixznet/81fbd81...cce7522e8b 14:34
14:35 wamba left
notviki I don't see where Test::META is req'ing any particular version... is zef incorrectly calculating latest version and thinks 0.0.11 is earlier thatn 0.0.9? 14:35
14:36 newbie1 joined 14:37 rindolf joined
faraco guys, I try to install IRC::Client from zoffixznet repo with `zef`. However, I failed to do to. Is anyone installing it triggers the same error? 14:38
14:38 aindilis joined 14:39 azawawi left
notviki faraco: just force install it 14:39
faraco is it supposed to failed with zef? 14:40
notviki faraco: it's not failing. it's Test::META that's failing.
faraco but..travis-ci.org/faraco/perl6-IRC-Client 14:41
panda and prove worked..?
notviki heh 14:42
raschi "just force install it" Oh, you're gonna have a lot of angy users because of that, if that's how it's supposed to work.
notviki refrains from making a mean response. 14:43
raschi You should, though.
notviki Yeah, if both of you read what I said 8 minutes ago you may avoid making dumb comments or spamming my GitHub Issues 14:45
14:45 shayan_ left
timotimo m: say v0.0.11 cmp v0.0.9 14:45
camelia rakudo-moar ed5c86: OUTPUT«More␤»
14:45 shayan_ joined
timotimo right, it should consider 0.0.11 more than 0.0.9 14:45
i don't see the how testing actually fails there at all o_O 14:47
like ... "ok. failed!" 14:48
notviki right even zef install META6 tries to fetch 0.0.9
timotimo whoops. 14:50
time to release META6 0.1.0
notviki :}
faraco urm 14:51
is notviki == zoffixznet?
notviki Yes
faraco well, xD. I'm busted. 14:52
14:56 bwisti joined
[Coke] aw, I thought we had better enum support for MAIN args. 14:58
notviki [Coke]: which version are you on?
Made a zef issue: github.com/ugexe/zef/issues/124
faraco: ^ I suspect when that is resolved, your issue with IRC::Client will resolve too 14:59
14:59 jdmmmmm left
faraco notviki: I'm sorry for that dumb issue. and how do you actually view the subtest in each file? 15:00
because, I don't want to repeat what I just did last time, if I can in the future.
15:01 ggj_ joined 15:03 zakharyas left 15:06 cschwenz joined
notviki faraco: I ran zef install . in IRC::Client and it aborted on Test::META. In your travis build, I see you're installing deps first with `panda` but then trying to install IRC::Client with zef. So that's why it likely didn't report an issue with Test::META, but I don't know why it still fails with IRC Client. 15:07
[Coke] notviki: head. 15:08
notviki faraco: hm, actually, even if I install all the prereqs `zef test .` fails, even though prove -e 'perl6 -Ilib' -vlr t/ succeeds.
Oh, I have a guess on why
[Coke] notviki: ish, anyway: 2016.12-266-ged5c866
faraco notviki: I actually ran 3 builds. first build, only add `placeholder` in the README.md passed, second, I add script: zef install . in .travis.yml, third, I add `panda install .` before zef install . to make sure if both failed. 15:09
notviki faraco: and zef test . actually fails due to a bug in TAP::Harness: rt.perl.org/Ticket/Display.html?id=130518 15:10
faraco oh, I see
15:10 bubbleup joined
notviki So seems you encountered two bugs...:) 15:10
15:11 shayan_ left
notviki I guess I can fix TAP::Harness bug now... 15:11
[Coke]: what enum support is missing then? 15:12
IIRC we didn't do the enum guessing for slurpies 15:13
[Coke] sub MAIN (enumType $input) {} ... perl6 thing.pl not-an-enum-type; doesn't show the valid types.
15:14 shayan_ joined
[Coke] writes up a gist. 15:14
raschi Should show <enum1|enum2|enum3|...> 15:15
notviki [Coke]: right, ATM it only shows that for named args 15:16
15:16 jdmmmmm joined
faraco raschip: thanks, I think I need to learn perl6 regex grammar. :P5 option doesn't run 100% perl 5 regex unfortunately. 15:17
15:17 jdmmmmm left, jdmmmmm joined
raschi Is there are a way to have muttually exclusive named args? 15:17
I have seen it do <namedarg1> <namedarg2> <namedarg3> ... 15:18
notviki m: sub (*% where :so) {}
camelia ( no output )
timotimo more like :!so, no?
well, :not
notviki raschi: yeah, I guess you could d ^ that and do checks in where
raschi But then it wouldn't show in usage, right? 15:19
notviki hm, right
raschi: then you could do two multies, I guess
raschi Multies will show up as multiple lines, which can be confusing, because users expect different enough modes of operation when that happens. 15:20
moritz then it's your job as an author to either implement similar behavior in the same multi, or supply your own sub USAGE 15:21
raschi Well, it would be very nice if enums showed up as mutually exclusive option in the usage.
options* 15:22
15:23 jdmmmmm left
raschi E 15:23
notviki m: my class D {}; sub (:$foo where { $bar === D && $foo !=== D or $foo === D && $bar !=== D }= D, :$bar where { $foo === D && $bar !=== D or $bar === D and $foo !=== D } = D) {}(:42foo)
camelia rakudo-moar ed5c86: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$bar' is not declared␤at <tmp>:1␤------> 3my class D {}; sub (:$foo where { 7⏏5$bar === D && $foo !=== D or $foo === D ␤»
notviki all that typing...
m: my class D {}; sub (:$foo = D, :$bar = D, :@ where { $bar === D && $foo !=== D or $foo === D && $bar !=== D }) {}(:42foo) 15:25
camelia ( no output )
notviki m: my class D {}; sub (:$foo = D, :$bar = D, :@ where { $bar === D && $foo !=== D or $foo === D && $bar !=== D }) {}(:42foo, :44bar)
camelia rakudo-moar ed5c86: OUTPUT«Constraint type check failed for parameter '<anon>'␤ in sub at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
notviki m: my class D {}; sub (:$foo = D, :$bar = D, :@ where { $bar === D && $foo !=== D or $foo === D && $bar !=== D }) {}(:44bar)
camelia ( no output )
notviki huzzah?
ugexe notviki: can you real quick try with `--/cached`
i think its about time to make the cache disabled by default
notviki and IIRC the :@ won't show up in USAGE... and if it will, there's some named anon thing that doesn't (maybe :%) 15:26
ugexe otherwise it sees you're essentially asking for META6:ver<*> (e.g. META6), and the first thing it hits it will keep (which is the cache)
15:26 shayan_ left
ugexe cache isn't working well with this model 15:26
[Coke] notviki: gist.github.com/coke/f9584108f0f50...1b24df4fee 15:27
notviki I'd say the "first thing it hits" isn't working with this module :P
*model
ugexe: yeah with --/cached it's installing 0.0.11
[Coke] notviki: (named args) ... ARG. that is actually what I wanted it for, but assumed that if it didn't work one way, it wouldn't work the other. 15:28
ugexe i switched to that because otherwise it has to make a network request for every 'zef install whatever'. which it *used* to do, but someone opened an issue that their network was slow and that it should use the cache first
raschi It would be very nice if it said: "Usage: foo.p6 <cat|dog|sheep>"
notviki ugexe: hehe :)
raschi: well volunteered!
raschi I will, but only at night. I'm at work behind a stupid firewll right now. 15:29
15:29 shayan_ joined
notviki raschi: this is the part that does it for named args, I suspect it's something similar for positionals: github.com/rakudo/rakudo/blob/nom/...#L122-L126 15:29
perlpilot_ raschi: while you're at it, make the generated usage available in $?USAGE too :)
raschi right. 15:30
15:30 ggoebel left 15:33 shayan_ left 15:38 shayan_ joined 15:46 jonas1 left 15:48 domidumont left 15:52 shayan_ left, lukaramu left, Celelibi joined 15:58 AlexDaniel joined 15:59 shayan_ joined, shayan_ left 16:02 domidumont joined 16:04 zakharyas joined 16:08 wamba joined 16:10 g4 left 16:14 confundus joined 16:17 revdiablo joined
notviki faraco: zef test . is now fixed on HEAD rakudo for those IRC::Client files that were full-file skipped... 16:20
faraco notviki: nice, gonna sync the repo and install again. 16:22
notviki faraco: and if you run zef with --/cached the other issue won't happen either 16:23
raschi ugexe: is there a command to invalidate the cache? Users are used to it: "apt update && apt upgrade". 16:25
ugexe raschi: --/cached will disable it, or `zef nuke StoreDir` will delete it 16:28
the cache isn't invalid in the proper brought up today, its just that it fulfills the request before it considers the ecosystem 16:29
s/proper/problem/
i.e. `zef install "META6:ver<0.0.11>"` would have worked
raschi You should change the documentation and tell users to nuke the cache before installing anything.
notviki :|
ugexe im just going to fix the cache
raschi OK. 16:30
16:31 hchienjo joined
ugexe the root of the problem is `use META6;` is the same as `use META6:ver<*>`, so when zef looks to see if `META6` is installed or available in an ecosystem/cache its asking 'is any version of META6 available?' 16:31
raschi It shouldn't try and rebuild it every time, that would be very painful.
I though you were goin g to just reverse the changes you made when you made using the cache the default. 16:32
16:33 khw joined
ugexe nah, just that it should consider all "ecosystems" when searching (instead of stopping when it finds something that fulfills the request). Although at the moment this means repeatedly parsing an ever-growing json file from the ecosystem 16:34
so i'll problem end up mirroring the ecosystem using a format that can be parsed faster 16:35
(or a module that converts the ecosystem json to this faster format)
raschi and when are you going to fetch this?
notviki Where is it getting 0.0.9 META6 from tho? It's a fresh install 16:36
ugexe notviki: did you nuke ~/.zef ?
i know you usually do but thats what i would expect to cause this
notviki update-perl6 is aliased to `rm -fr ~/.perl6; rm -fr ~/.rakudobrew/; git clone github.com/tadzik/rakudobrew ~/.rakudobrew; rakudobrew build moar; rakudobrew build zef;'
And I just ran update-perl6; and then zef install . in IRC::Client's checkout 16:37
oh crap
Yeah, the update alias is missing rm -fr ~/.zef on this box
Too many boxes! :)
ugexe i renamed your issue to reflect the problem as I understand it btw 16:38
raschi what's the issue number?
ugexe github.com/ugexe/zef/issues/124
raschi Oh, I see, I thought it looked directly on what you called "ecosystem", which is the package list. 16:41
"the problem as I understand it btw". You aren't sure of it? 16:43
Or aren't sure of the solution? 16:45
16:53 obfusk joined 16:54 hchienjo left 16:56 loveperl joined
loveperl ¿Cómo hacer una solicitud de ajax? 16:57
How to make an ajax request?
16:57 zakharyas left
notviki hah 16:57
AlexDaniel hmmm… 16:58
notviki loveperl: api.jquery.com/jQuery.ajax/
loveperl: or you mean you want to simulate one from a Perl 6 script? 16:59
16:59 obfusk left, zakharyas joined
notviki loveperl: just use dev tools in the browser to see what HTTP request is being sent out and send the same one via HTTP::UserAgent or something similar 16:59
16:59 obfusk joined 17:00 loveperl_ joined
notviki (press F12) 17:00
loveperl_ ??
notviki loveperl: just use dev tools in the browser to see what HTTP request is being sent out and send the same one via HTTP::UserAgent or something similar 17:01
17:02 loveperl left 17:05 obfusk left 17:06 obfusk joined 17:18 rindolf left
ugexe raschi: as I understand it meaning the current behavior could be considered correct by some (although probably not many) 17:20
raschi Define "correct"
It's not correct because it breaks expectations. 17:21
17:21 rindolf joined 17:23 zakharyas left
TimToady I've learned over the years that not everyone expects the same thing. :) 17:24
loveperl_ I do not understand ajax requests
raschi What software behaves like zef is doing right now?
notviki loveperl_: they're just regular HTTP requests
loveperl_: what are you trying to do exactly? 17:25
ugexe My::Module is the same as My::Module:ver<*>, which translates to "whatever version of My::Module" - and in this regard it currently accomplishes that
notviki Are you trying to make a request or respond to one?
17:25 zakharyas joined
raschi @a[*] sould behave like @a.pick, then? 17:28
ugexe use My::Module:ver<*>; should load all versions of My::Module then?
TimToady ugexe: well, the "whatever" concept isn't meant to imply "take a random guess", but "you figure out something smart", but I can see how some people would read it the other way 17:29
ugexe and while I agree it should instead treat it as 'get whatever is the newest' its current behavior is not without benefit - it allows you to order your module sources such that you can earlier sources can be considered as the 'main source' and later ones as fall backs
notviki the "whatever version" feels very wrong to me and I'd never intend it as such. To me, it's "latest available"
why the hell would I want whatever version? That's like asking for rakudo:ver<*> and getting teh 2011.07 release. 17:30
raschi "you figure out something smart" -> Exactly.
AlexDaniel .оО( use My::Module:ver<∞> :D )
raschi When installing, it should be the newest version, otherwise it's a security bug.
17:30 sunnavy joined
TimToady well, could be, if it's a security fix 17:31
loveperl_ I want to send variables from javascript to perl
TimToady I do agree that most recent is a reasonable default assumption 17:32
notviki loveperl_: ok. Try HTTP::Server::Tiny
buggable: eco HTTP::Server::Tiny
buggable notviki, HTTP::Server::Tiny 'a simple HTTP server for Perl6': github.com/tokuhirom/p6-HTTP-Server-Tiny
notviki loveperl_: the variables will be in $env<QUERY_STRING> and you can get them (roughly) with use URI::Encode; my %query = $_ ?? () !! .split(/<[=&]>/).map(*.&uri_decode) given $env<QUERY_STRING>; 17:33
loveperl_: or if it's a POST, then somewhere else in $env; just dump it; dd $env 17:34
17:34 jordman joined, cschwenz left
loveperl_ $.ajax funciona? 17:35
raschi well, could be, if it's a security fix: If it isn't this one time, it will be in the future.
notviki loveperl_: si
raschi Installing outdated software without the user asking for it specifically is certainly a security bug, see the way Linux Mint does kernel updates. 17:37
ugexe i don't think anyone disagrees with you. i was merely explaining the rational behind its current behavior 17:38
TimToady If someone would figure out a way to monetize violent agreement, we'd all be rich. :) 17:40
raschi Well, it's called a cult. 17:41
TimToady If so, that's the point at which I kick our cult over on its ear, and hope it evolves into culture. :) 17:43
CIAvash[m] TimToady: Did you see my question? irclog.perlgeek.de/perl6/2017-01-07#i_13876301 17:44
raschi I didn't mean we're a cult, just that it's a way to monetize violent agreement.
I don't think we should monetize our violent agreement.
TimToady we're a bit of a cult, but mostly only in nice ways, so far
it's something I simultaneously encourage and discourage... 17:45
raschi I think we're using different definitions for cult.
17:46 xinming left
TimToady sure, I have multiple definitions my own self 17:46
CIAvash[m]: yes, and was thinking about it
raschi Have you taken people away from their familes, punished them for questioning the truths of perl 6, taken their assets so that they have a hard time running away, etc? That's the definion I was using.
TimToady ranges can be destructured with named args representing methods, I suspect 17:47
17:47 Tonik joined
CIAvash[m] TimToady: ok, just thought you might have missed the messages 17:47
notviki star: use LWP::Simple; dd LWP::Simple.post: "geth.perl6.party/?chan=%23perl6", {"X-GitHub-Event" => "push"}, '{"repository":{"name":"fakety-fake", "full_name":"fakety-fake"},"ref": "refs/heads/meows","commits":[{"message":"Zoffix was here", "id":"meowmeow", "added":["fakety.fake"],"author":{"name":"fake Zoffix"}}]}'
Geth kety-fake/meows: meowmeow | (fake Zoffix)++ | 2 files
Zoffix was here
camelia star-m 2016.10: OUTPUT«"OK"␤»
notviki giggles 17:48
TimToady seems like sequences oughta be destructuralable in a head/tail fashion
17:48 hankache joined
hankache hello #perl6 17:48
notviki \o
TimToady CIAvash[m]: when you ask hard questions, sometimes the silence means I'm thinking "hmm..."
and sometimes it means I'm asleep :) 17:49
notviki loveperl_: did you figure it out?
17:49 zakharyas left
CIAvash[m] :) 17:49
loveperl_ Not yet is not that I have it very clear, but thanks for the answer 17:50
TimToady raschi: sure, but defining something by its most extreme forms can also be a way of not recognizing the tendencies, sort of the opposite of a slippery slope argument, as it were 17:53
raschi Does use My::Module:ver<0.1 < * < 1.0> works?
m: use URI::Encode:ver<0.1 < * < 1.0> 17:54
camelia rakudo-moar aee7af: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unable to parse expression in quote words; couldn't find final '>'␤ ␤at <tmp>:1␤------> 3use URI::Encode:ver<0.1 < * < 1.0>7⏏5<EOL>␤ expecting any of:␤ pair value␤ q…»
TimToady m: use URI::Encode:ver(0.1 < * < 1.0)
camelia rakudo-moar aee7af: OUTPUT«WhateverCode object coerced to string (please use .gist or .perl to do that)␤ in any load_module at src/Perl6/World.nqp line 1194␤WhateverCode object coerced to string (please use .gist or .perl to do that)␤ in any load_module at src/Perl6/World.nq…»
TimToady that would be a better syntax, if supported
raschi TimToady: If i didn't use the most extreme definion, the joke wouldn't work.
TimToady m: use URI::Encode:ver(v0.1 < * < v1.0)
camelia rakudo-moar aee7af: OUTPUT«WhateverCode object coerced to string (please use .gist or .perl to do that)␤ in any load_module at src/Perl6/World.nqp line 1194␤WhateverCode object coerced to string (please use .gist or .perl to do that)␤ in any load_module at src/Perl6/World.nq…»
TimToady only with versions, not Rats :)
raschi: are you questioning my authority? ;) 17:55
raschi Why would I?
This is your playground, after all. 17:56
TimToady
.oO(You job is to question authority. My job is to authorize questions.)
*Your 17:57
17:58 pyrimidine left 17:59 pyrimidine joined
raschi right 17:59
TimToady but yes, I agree that the nice thing about words is that they scale up and down in their destructive power; that's also the nasty thing about words. :)
raschi No, I mean. 18:00
CIAvash[m] TimToady: How would named args work for ranges?
TimToady m: sub foo($range (:$min, :$max)) { say "$min $max" }; foo ^10 18:01
camelia rakudo-moar aee7af: OUTPUT«0 10␤»
TimToady or are you looking for something more head/tail-y
?
18:02 dakkar left
[Coke] expected: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' got: '08x08x0x10fffd88x88x0x10fffd2Ex2Ex0x10fffd29x29x0x10fffd09x09x0x10fffd09x09x0x10fffd0Fx0Fx0x10fffdCDEFGHIJKLMNO08x08x0x10fffd4Dx4Dx0x10fffdRQSTUVWXYZ' 18:02
...huh
CIAvash[m] Yes
raschi m: sub foo($range (:$a, :$b)) { say "$a $b" }; foo ^10
camelia rakudo-moar aee7af: OUTPUT«2 unexpected named arguments passed (min,max) in sub-signature of parameter $range␤ in sub foo at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
ugexe m: use Test:ver(v0.*..v7.*) 18:03
camelia ( no output )
ugexe figured v6.* would catch 6.c too but I guess not
(at least as part of a range) 18:04
18:04 pyrimidine left
TimToady m: say v6.c ~~ v6.* 18:04
camelia rakudo-moar aee7af: OUTPUT«True␤»
TimToady seems like it oughta
ugexe right, use Test:ver(v6.*) works
notviki loveperl_: are you still around? 18:05
TimToady but smartmatch is a bit different from cmp semantics
v6.* isn't actually orderable
notviki loveperl_: here's a working version: gist.github.com/zoffixznet/1b34ed9...eda5e47f75
ugexe m: use Test:ver(v0.* < v6.*) 18:06
camelia ( no output )
notviki loveperl_: note that you'd need to decode <p6sgi.input> differently if you're using file uploads or GET form request
use Test:ver<whatever>
m:" use Test:ver<whatever>
m: use Test:ver<whatever>
camelia rakudo-moar aee7af: OUTPUT«===SORRY!===␤Could not find Test:ver<whatever> at line 1 in:␤ /home/camelia/.perl6␤ /home/camelia/rakudo-m-inst-1/share/perl6/site␤ /home/camelia/rakudo-m-inst-1/share/perl6/vendor␤ /home/camelia/rakudo-m-inst-1/share/perl6␤ Comp…»
ugexe m: require Test:ver<whatever>; # :( 18:07
camelia ( no output )
loveperl_ ok tankyou novitike
novitiki 18:08
TimToady m: sub foo($range, @range ($a, *@b) = $range.list) { say "$a then @b[]" }; foo ^10
camelia rakudo-moar aee7af: OUTPUT«0 then 1 2 3 4 5 6 7 8 9␤»
TimToady CIAvash[m]: ^^^ there's a way to fake it
notviki m: sub foo($range, @range ($a, *@b) = $range.list) { say "$a then @b[]}; foo ^10, [] 18:09
camelia rakudo-moar aee7af: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unable to parse expression in double quotes; couldn't find final '"' ␤at <tmp>:1␤------> 3.list) { say "$a then @b[]}; foo ^10, []7⏏5<EOL>␤»
notviki m: sub foo($range, @range ($a, *@b) = $range.list) { say "$a then @b[]"}; foo ^10, []
camelia rakudo-moar aee7af: OUTPUT«Too few positionals passed; expected at least 1 argument but got only 0 in sub-signature of parameter @range␤ in sub foo at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
notviki neat 18:10
TimToady sure, it's fragile
18:11 loveperl_ left
notviki m: sub foo(*@ ($a, *@b)) { say "$a then @b[]" }; foo ^10 18:11
camelia rakudo-moar aee7af: OUTPUT«0 then 1 2 3 4 5 6 7 8 9␤»
CIAvash[m] interesting :)
18:12 Ven left
[Coke] www.web2generators.com/text-related...pside-down - look at the flipped char for "P" - (my cut and paste is borked in tmux, so I can't paste it in here, but if I do that char, .NFKD.list.say, I get: (1114109 120 68 52 1114109 120 56 48) 18:12
raschi u: Ԁ 18:13
unicodable6 raschi, U+0500 CYRILLIC CAPITAL LETTER KOMI DE [Lu] (Ԁ)
notviki m: "Ԁ".NFKD.say
camelia rakudo-moar aee7af: OUTPUT«NFKD:0x<0500>␤»
notviki m: "Ԁ".NFKD.list.say
camelia rakudo-moar aee7af: OUTPUT«(1280)␤»
notviki Is that the one?
[Coke] yes, if I cut and paste from here instead of the URL, i get the same listing. 18:14
18:14 xinming joined
[Coke] weird. 18:14
SmokeMachine if it resolves with the last version, how could some one do something like -Idir-with-old-version of the module on newer version is installed?
notviki m: "Ԁ".NFKD.list.say
camelia rakudo-moar aee7af: OUTPUT«(1280)␤»
notviki ^ c-p from site
[Coke] wonder if it's something about my terminal on macos 18:15
raschi m: " Ԁ".NFKD.list.say
camelia rakudo-moar aee7af: OUTPUT«(32 9 1280)␤»
CIAvash[m] TimToady: but it can't work with infinite ranges, can it? 18:16
TimToady m: sub foo($range is copy ($a, *@b) where <-> $_ { .=list }) { say "$a then @b[]" }; foo ^10 18:17
camelia rakudo-moar aee7af: OUTPUT«Parameter '$_' expected a writable container, but got Range value␤ in sub foo at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
TimToady m: sub foo(@range ($a, *@b)) { say "$a then ", @b }; foo 1..* 18:18
camelia rakudo-moar aee7af: OUTPUT«Too few positionals passed; expected at least 1 argument but got only 0 in sub-signature of parameter @range␤ in sub foo at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
18:18 _Vasyl left
ugexe SmokeMachine: yeah thats pretty much the rational behind zef's current behavior (acting like CUR where it takes the highest version *of the first CUR/ecosystem* that fulfills the request) 18:18
thanks for mentioning that
TimToady m: sub foo($range, @range ($a, *@b) = $range.list) { say "$a then ", @b }; foo 1..*
camelia rakudo-moar aee7af: OUTPUT«Too few positionals passed; expected at least 1 argument but got only 0 in sub-signature of parameter @range␤ in sub foo at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
TimToady m: sub foo($range, @range ($a, *@b) = $range.list) { say "$a then ", @b }; foo 1..10 18:20
camelia rakudo-moar aee7af: OUTPUT«1 then [2 3 4 5 6 7 8 9 10]␤»
TimToady weird
raschi m: (1..*).list
camelia ( no output )
raschi m: dd (1..*).list 18:21
camelia rakudo-moar aee7af: OUTPUT«(1, 2, 3, 4, 5, 6, 7, 8, 9, 10... lazy list)␤»
TimToady m: (1..*).list[^10]
camelia ( no output )
TimToady m: (1..*).list[^10].say
camelia rakudo-moar aee7af: OUTPUT«(1 2 3 4 5 6 7 8 9 10)␤»
TimToady would appear that subsig binding can't reify at that level
raschi It should warn about it, then. 18:22
SmokeMachine ugexe: Would be possible to -I and use lib means: search the modules on this dir if do not find it, do the normal, else use this one, do not try the others? 18:27
If so, :ver<*> would have no problem meaning the highest version... I think 18:28
ugexe SmokeMachine: thats how it currently works. -Ilib puts ./lib at the front of the repo chain - if a `use Module::Name` is found in that repo it will be chosen and no other repos will be looked at
notviki m: my ($range, @ ($a, *@b) = $range.list) = 1..*; say "$a then ", @b;
camelia rakudo-moar aee7af: OUTPUT«Cannot call method 'Stringy' on a null object␤ in block <unit> at <tmp> line 1␤␤»
18:29 Gasher joined
SmokeMachine ugexe: yes, but it uses the first version it founds... 18:29
18:29 pyrimidine joined
SmokeMachine I mean: :ver<*> search all versions and use the newest unless it founds it on a dir settled by -I... 18:30
raschi SmokeMachine: We're talking about installing modules, not about what to 'use'. We only test the "use" because zef should do the same thing as P6. 18:31
When using them, <*> should use the first one it founds, allowing the admin to manipulate the search path. 18:32
ugexe SmokeMachine: yes, thats what it does now for the most part. the "doesn't load the highest version" problem requires multilpe :auth<> to be used as well
SmokeMachine raschi: I know! I'm "trying" to change the use behavior to continue to do the same thinking when installing modules and don't loose the -I when use()ing... 18:33
I don't really want to try anything... I'm just wondering... 18:35
*to change
notviki :( organazier of Toronto Perl Mongers just stepped down... one of the reasons: "I'd been 18:38
hoping to do a maker themed thing this month but got no responses
18:39 pyrimidine left
notviki oh first draft of LP6 is available. 18:39
I guess we're not allowed to share it, right? 18:40
faraco hi 18:44
raschi o/
Geth albot: a0734fa4c1 | (Zoffix Znet)++ | evalbot.pl
Teach camelia to ignore Geth
faraco raschi: :D 18:45
18:45 camelia left, camelia joined
raschi notviki: do you have a link to the log where what motivated that commit happened? 18:46
DrForr notviki: I wouldn't think so. <looks/>
18:47 ChanServ sets mode: +v camelia, camelia left 18:48 camelia joined
notviki DrForr: :) 18:48
I guess I shouldve went for "friends and femily" reward :)
18:49 ChanServ sets mode: +v camelia, andrzejku joined
[Coke] notviki, samcv (others): gist.github.com/coke/6b627a81301d0...a7740e631b - here's my weird CYRICLLIC CAPITAL LETTER KOMI DE issues. 18:51
18:54 pyrimidine joined
DrForr 'CYRICLLIC' has an extra 'C' assuming that's a direct copy :) 18:54
notviki [Coke]: I get 0000000 80d4 in od too 18:55
[Coke] DrForr: hand typed, sorry 18:56
notviki: does the cut and paste-o happen to you?
notviki m: dd "\x[80d4]"
camelia rakudo-moar aee7af: OUTPUT«"胔"␤»
notviki m: dd "\x[d4]"
camelia rakudo-moar aee7af: OUTPUT«"Ô"␤»
DrForr No need to be sorry, I was just thinking it might be one of those "caught by someone else" things.
[Coke] m: var $my-variable; say $my-variable; # wonder if this could give some love for our JS friends. 18:58
camelia rakudo-moar aee7af: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$my-variable' is not declared␤at <tmp>:1␤------> 3var 7⏏5$my-variable; say $my-variable; # wonder␤»
faraco m: my $sub = &foo; 18:59
camelia rakudo-moar aee7af: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared routine:␤ foo used at line 1␤␤»
19:00 Geth left 19:01 Geth joined, ChanServ sets mode: +v Geth
RabidGravy notviki, I wasn't around but I am now :) 19:07
19:07 tomaw joined
notviki RabidGravy: it's OK, turns out the issue is in zef not in Test::META :) 19:07
19:08 labster joined, Gasher left, Guest34096 is now known as ponbiki 19:09 Gasher joined 19:12 confundus left
CIAvash[m] TimToady: My curiosity started with this question[stackoverflow.com/questions/392659...n-perl-6]. I wanted to try and see if it's possible to implement it the way it's done in Haskell. So I wrote it like this[gist.github.com/CIAvash/a02ea4c1c5...4d42f352], but it didn't work for (infinite) ranges and sequences. 19:13
RabidGravy Harr! 19:17
19:17 pyrimidine left 19:18 pyrimidine joined 19:21 lukaramu joined
perigrin w 23 19:22
19:22 pyrimidine left 19:30 zakharyas joined 19:33 faraco left 19:34 cdg left, hankache left
lucs wingo! 19:46
19:46 MilkmanDan left, dontbe^2 left, adhoc left, mtj_ left, raydiak left, alnewkirk left, charsbar______ left, adhoc joined, alnewkirk joined, raydiak joined, MilkmanDan joined, charsbar______ joined 19:47 mtj_ joined
notviki $ perl6 -e '"Ԁ".uninames.say' 19:50
(<Plane 16 Private Use> LATIN SMALL LETTER X LATIN CAPITAL LETTER D DIGIT FOUR <Plane 16 Private Use> LATIN SMALL LETTER X DIGIT EIGHT DIGIT ZERO)
[Coke]: ^ that's what I get on copy-paste
19:56 ufobat left
notviki bisectable6: "Ԁ".uninames.say 19:56
bisectable6 notviki, On both starting points (old=2015.12 new=e182deb) the exit code is 0 and the output is identical as well
notviki, Output on both points: (CYRILLIC CAPITAL LETTER KOMI DE)
notviki what the...
weird 19:57
m: "Ԁ".uninames.say
camelia rakudo-moar e182de: OUTPUT«(CYRILLIC CAPITAL LETTER KOMI DE)␤»
AlexDaniel the one you pasted into IRC is different?
notviki is it?
They look identical to me 19:58
And I made it by 0x500.chr.print
AlexDaniel m: 0x500.chr.print
camelia rakudo-moar e182de: OUTPUT«Ԁ»
notviki m: 0x500.chr.uninames.say
camelia rakudo-moar e182de: OUTPUT«(CYRILLIC CAPITAL LETTER KOMI DE)␤»
notviki m: "Ԁ".uninames.say 19:59
camelia rakudo-moar e182de: OUTPUT«(CYRILLIC CAPITAL LETTER KOMI DE)␤»
notviki same copy-paste buffer..., but it gives me the weird private use stuff in another terminal
AlexDaniel maybe your terminal is adding it for its own purposes? 20:00
notviki though it's worth pointing out my locale is busted on this terminal. It keeps thinking it's chineese or something "LC_NAME=zh_CN.UTF-8"
AlexDaniel hmmm
notviki huggable: windows utf8 :is: chcp 65001 20:01
huggable notviki, Added windows utf8 as chcp 65001
AlexDaniel should bisectable run 「commit: 6c …」 with the same code if the output on 2015.12 and HEAD is identical?
20:02 bjz joined
notviki lmao... I copy-pasted that Ԁ into windows terminal and ran uninames on it and it tells me "(QUESTION MARK)" :P 20:04
char looks like a box tho
Well, and the other data point: $ perl6 -e '0x500.chr.say' | od -h 20:05
0000000 80d4 000a
0000003
is that normal? that it's 80d4?
m: "\x[80d4]".uninames.say
camelia rakudo-moar e182de: OUTPUT«(<CJK Ideograph>)␤»
20:06 raschi left
[Coke] notviki: so you can duplicate my issues. it's weird, neh? 20:06
notviki [Coke]: yeah
[Coke]: what does echo $LC_NAME give you? 20:07
I got it as zh_CN.UTF-8
[Coke] notviki: not set.
notviki shrugs
gonna try it at home too
[Coke] got LANG=en_US.UTF-8 20:08
AlexDaniel m: 0x500.chr.say
camelia rakudo-moar e182de: OUTPUT«Ԁ␤»
AlexDaniel m: 0x500.chr.encode.say
camelia rakudo-moar e182de: OUTPUT«utf8:0x<d4 80>␤»
notviki my lang is the same
AlexDaniel++
AlexDaniel m: “\x[500]\n”.encode.say 20:09
camelia rakudo-moar e182de: OUTPUT«utf8:0x<d4 80 0a>␤»
notviki reads LP6 draft... 20:11
AlexDaniel wants to take a look too, but was not given the opportunity
notviki did a $50 kickstarter thing 20:12
Says "Do not share" on the copy
AlexDaniel sure-sure, I'm not asking for anything
DrForr has other ways :) 20:13
notviki I'll give you my rating of it when I'm done :P
AlexDaniel I'd just search for more rakudo bugs then rather than trying to review the book
which is a much better idea
notviki :)
Well, I'm not reviewing it. I'm merely trying to decide whether I should stfu about dissing that book :P 20:14
20:21 setty1 left
notviki :( well, it's already making me sad 20:21
[Coke] notviki: hey, um. 0x500 is working here now.
I'm so confused. :|
notviki Well, the 0x500 is also working for me here. But if I copy-paste that output into a string, the uninames gives me weird stuff 20:22
[Coke]: oh and as AlexDaniel showed above, the `od` output makes sense 20:23
20:23 setty1 joined, pyrimidine joined 20:24 gruwall joined 20:27 ufobat joined 20:28 pyrimidine left 20:29 setty1 left 20:30 domidumont left, setty1 joined 20:32 gruwall left
notviki lol... LP6 says MoarVM has "fatest compile time, the fatest runtime 20:34
:P
tailgate it's tremoudously fast
tremendously. 20:35
notviki but is it fat?
:)
20:35 Tonik left
masak tremudiously 20:35
notviki Do we want rakudobrew mentioned in the book? 20:37
samcv i have the best VM, the greatest VM. A lot of really smart people are telling me, and believe me people, MoarVM is just tremendous, just tremendous
notviki samcv: are you in US?
samcv yes
:(
notviki haha :)
[Coke] notviki: #perl6 has steered people away from it; too complicated for the average user. 20:42
notviki maybe LP6 should too...
20:42 shayan_ joined
[Coke] I would, esp. since we'll end up having to support it. :) 20:43
samcv brb ~2 hour
20:43 shayan_ left
notviki /o\ 20:44
20:45 shayan_ joined 20:50 pyrimidine joined 20:54 bjz left, espadrine joined, pyrimidine left 20:57 pyrimidine joined 20:59 cdg joined 21:03 obfusk left, obfusk_ joined 21:04 bjz joined 21:05 Gasher left, gcole left 21:06 john51 joined 21:07 bstamour` joined 21:08 john51_ left 21:10 bjz left
AlexDaniel RT #130494 \o/ 21:10
u: onehusneoahu 21:11
unicodable6 AlexDaniel, Found nothing!
21:11 shayan_ left
AlexDaniel actually, I no longer see any leaks on these bots 21:14
maybe a bit on statisfiable…
21:14 TEttinger joined 21:16 committable6 left 21:17 esh joined, benchable6 left, bisectable6 left, unicodable6 left, evalable6 left, statisfiable6 left 21:18 bisectable6 joined, unicodable6 joined, evalable6 joined, ChanServ sets mode: +v bisectable6, ChanServ sets mode: +v unicodable6, benchable6 joined, ChanServ sets mode: +v benchable6, statisfiable6 joined 21:22 setty1 left
masak .oO( ironic that a bot called "satisfiable" keeps wanting more and more memory ) 21:24
Geth cosystem: 07099c41cd | (Jonathan Stowe)++ | META.list
rename meta on Sys::LastLog
21:25
21:25 hattakhomma joined, bjz joined
lizmat cues "I can't get no satisfaction" 21:26
21:27 pyrimidine left 21:28 pyrimidine joined
AlexDaniel hm, looks like there are some issues still… 21:28
but could be my fault too 21:29
21:32 pyrimidine left 21:33 pyrimidine joined 21:34 andrzejku left 21:35 bjz left
RabidGravy there all but one of my modules green on travis again 21:35
21:42 committable6 joined, ChanServ sets mode: +v committable6
RabidGravy and the last one may just be a big TODO as I don't fancy building the right dependency from scratch 21:44
21:50 pmurias left
[Coke] samcv: my problem with docs was because there is a new async parameter that isn't tied to the original parameter, and it's enabled by default. 21:51
samcv wait what?
problem with what? not sure why you're messaging me but it is something that i want to know about 21:52
but seems you're responding to something i said?
21:54 setty1 joined
[Coke] I'm telling you because you added it. 21:54
just opened docs#1127
samcv oh ok 21:55
i edited the async page?
[Coke] *facepalm*
no, you added --no-proc-async as an option to htmlify 21:56
samcv oh. oooooooooooooooooooooooh
now it all makes sense
21:56 alimon joined
[Coke] when I run with --no-proc-async, I now get: 21:56
Highlights is reading /Users/williamcoleda/sandbox/perl6-doc
Error: EISDIR: illegal operation on a directory, read
samcv ah ok 21:57
21:57 alimon left
samcv so i need to fix the --no-proc-async option. got it 21:57
will fix that today
21:57 alimon joined
[Coke] samcv: github.com/perl6/doc/issues/1128 21:59
22:01 pyrimidine left
notviki AlexDaniel: well, I give the book 8/10. Impossible for me to judge as I abhor absolute-beginner programming writing, but at least I never felt the need to shout "OH GOD! WHAT IS THIS GUY DOING!" :) 22:01
m: $_ = 'foo'; dd /'bar'/ 22:02
camelia rakudo-moar 9a11ea: OUTPUT«/'bar'/␤»
22:02 pyrimidine joined
notviki m: $_ = 'foo'; dd m/'bar'/ 22:02
camelia rakudo-moar 9a11ea: OUTPUT«Nil $/ = Nil␤»
AlexDaniel 8/10! Wow!
notviki hm
In the book it says failed match returns Any :/
oh wait, in the REPL it does print an ANY
along with Nil 22:03
Well, I guess one challenge that I forsee it small changes like these showing up.
[Coke] notviki++ 22:04
RabidGravy that's always the problem with paper books 22:05
[Coke] samcv: I made you some tickets: github.com/perl6/doc/issues/assigned/samcv :) 22:07
22:08 shayan_ joined 22:12 skids left 22:16 zakharyas left
SmokeMachine is there a way to create a multi sub that if I do, for example: my $i = 42; my-multi-sub($i); calls one function and if I do: my-multi-sub(42); calls the other one; like: multi my-multi-sub($a #`{its a var}) {...}; multi my-multi-sub($a #`{its a literal}) {...}; ? 22:17
22:20 faraco joined, gearchef left
lizmat m: 42++ 22:20
camelia rakudo-moar 9a11ea: OUTPUT«Cannot resolve caller postfix:<++>(Int); the following candidates␤match the type but require mutable arguments:␤ (Mu:D $a is rw)␤ (Int:D $a is rw)␤␤The following do not match for other reasons:␤ (Bool:D $a is rw)␤ (Bool:U $a is rw…»
faraco m: say "Perl 6".ords;
camelia rakudo-moar 9a11ea: OUTPUT«(80 101 114 108 32 54)␤»
22:21 RabidGravy left
lizmat m: multi a($a is rw) { say "writable" ); multi a($a) { say "constant" ); a my $; a 42 22:22
camelia rakudo-moar 9a11ea: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing block␤at <tmp>:1␤------> 3multi a($a is rw) { say "writable" 7⏏5); multi a($a) { say "constant" ); a my ␤ expecting any of:␤ postfix␤ statement end␤ statemen…»
lizmat m: multi a($a is rw) { say "writable" }; multi a($a) { say "constant" }; a my $; a 42
camelia rakudo-moar 9a11ea: OUTPUT«writable␤constant␤»
SmokeMachine lizmat: thanks!
lizmat SmokeMachine: ^^^
Geth oc: d5cd240ad5 | faraco++ | doc/Type/Cool.pod6
changed int code

say "Perl 6".ords; # => (80 101 114 108 32 54)
notviki vaguelly recalls a bug with the above
lizmat wasn't that fixed about 2 months ago ? 22:23
notviki Was it?
It was an optimzier bug, I recall.
lizmat it's used in the core for postfix:<++> afaik
notviki Well, I guess this is a good excuse for me to bother to rebuild perl6.fail to find ticket :P
faraco argh, I want to pull request. accidentally direct edit. 22:24
notviki m: 160 .chr.uniname.say 22:25
camelia rakudo-moar 9a11ea: OUTPUT«NO-BREAK SPACE␤»
22:25 setty1 left
notviki faraco: it's probably best to change that string to something else. 22:25
faraco but what I did is wrong, or no?
22:25 kyan left
faraco because, I don't really mess something up. 22:26
want*
notviki faraco: basically, currently our policy is to write "Perl 6" with non-breaking space (and I think there's even a test that checks for that) but having that in the string is confusing, as you've just encountered.
m: say "Camelia".ords
camelia rakudo-moar 9a11ea: OUTPUT«(67 97 109 101 108 105 97)␤»
notviki ¯\_(ツ)_/¯
faraco oh, so should I change it to that? I gonna pull request.
notviki faraco: just commit directly.
faraco ah okay. :)
let me check the return number first 22:27
22:27 wamba left
faraco m: say "Camelia".ords; 22:27
camelia rakudo-moar 9a11ea: OUTPUT«(67 97 109 101 108 105 97)␤»
notviki FWIW some of those issues assigned to samcv looks like they can be fixed by anyone. 22:30
perlpilot_ And deprive samcv of her glory?!?
notviki I rather she hacks on all the fancy unicode stuff in rakudo :P
22:31 sean` joined
AlexDaniel bisect: multi a($a is rw) { say "writable" }; multi a($a) { $a = 99 }; a my $; a 42 22:31
bisectable6 AlexDaniel, Bisecting by output (old=2015.12 new=9a11eac) because on both starting points the exit code is 1
AlexDaniel, bisect log: gist.github.com/a8b9fde5fa8def88f8...959f85b177
AlexDaniel, (2016-11-29) github.com/rakudo/rakudo/commit/39...7bf1c48b4d
notviki takes #1130 to put money where the mouth is or whatever that saying is
AlexDaniel nah that's not it 22:32
22:32 lukaramu left
Geth oc: c3f1dadd54 | faraco++ | doc/Type/Cool.pod6
changed string and int code

Replaced "Perl 6" with "Camelia" and the returned int code.
22:32
notviki hm, something's up with RT... my db rebuild says "Found 0 total tickets" :(
22:33 kurahaupo__ left
notviki [Coke]: I get the same weirdness on my home box with 0x500 when copy-pasting the char into terminal and running .uninames on it :S 22:34
And it's a different OS/terminal
22:35 setty1 joined
faraco a question. If almost 266 users given push access to the repositories, ain't that dangerous, if someone troll or abuse the power? 22:35
22:36 setty1 left
gfldex that's what git is for 22:36
faraco oh yeah, revert. 22:37
22:37 labster left
perlpilot_ faraco: mistakes are far more likely that abuse and that hasn't swamped us yet. 22:37
Geth oc: 2493a48e3b | (Zoffix Znet)++ | htmlify.p6
Remove unused var and conditional

Fixes #1130
22:38
faraco still standing strong 22:39
notviki faraco: the benefits outweight the risks. People are far more likely to contribute if they don't have to bother someone with PRs for every change. 22:40
Though that does bring up a point: the new policy gives users push to all repos in perl6/ but our bots watch only a few of them. 22:41
by new policy I mean the new default setting for new members (I don't even know if it's really new....)
faraco I agree with that too. I would want to contribute if I got direct access to the source too. 22:43
gfldex it's much easier to clean up behind one troll then to clean up loads of PRs every day 22:44
faraco you have a point.
that will take a lot of people to review them one by one. Slowing the development. 22:45
gfldex there are so many nice big target for vandals on the internet, it's unlikely they will ever spot us :) 22:46
22:47 pyrimidine left, pyrimidine joined 22:48 AlexDaniel left 22:54 raschip joined
sean` Is there a convenient way to collapse runs of the same element in a list? For example, to turn <a a a b c c> into (<a a a>, <b>, <c c>), or (a => 3, b => 1, c => 2), or some such? 22:54
raschip sean`: yes, a Bag
22:54 pyrimidine left
notviki sean`: does it need to remain ordered? 22:55
sean` Yes.
notviki sean`: and <c c c a a a b c c> would turn into <c c c> ... <c c> ? instead of them all being together 22:56
sean` Exactly.
Like Haskell's Data.List.group function.
raschip Yeah, a Bag loses the order. 22:57
SmokeMachine m: role Bla {}; multi infix:<||>(Bla $, Bla $) {"OK"}; say (42 but Bla) || (1 but Bla) 22:58
camelia rakudo-moar 9a11ea: OUTPUT«42␤»
SmokeMachine why isn't it using my sub?
notviki m: role Bla {}; multi infix:<zzz>(Bla $, Bla $) {"OK"}; say (42 but Bla) zzz (1 but Bla) 22:59
camelia rakudo-moar 9a11ea: OUTPUT«OK␤»
notviki prolly some magicks tucked on || to make it shortcurcuit
m: role Bla {}; multi infix:<||>(Bla $, Bla $) is default {"OK"}; say (42 but Bla) || (1 but Bla)
camelia rakudo-moar 9a11ea: OUTPUT«42␤»
notviki shrugs
SmokeMachine notviki: its happening with ||, &&, and and or 23:00
notviki ...and all of them shortcurcuit
SmokeMachine notviki: but should that happens? 23:01
raschip sean`: I don't think there's any builtin special way of doing it.
23:02 shayan_ left 23:03 shayan_ joined
notviki sean`: the closest thing I can think of is .squish() maybe there's some trick that can be done with its :as{} param 23:03
sean` Bummer. Oh well, thanks. 23:05
raschip sean`: make a module so that other people can use it. 23:06
That takes a list and returns the list of pairs.
faraco say <80 101 114 108 160 54>.chrs; # Perl 6
chrs routine
should I edit this too? 23:07
notviki yes
faraco ah okay
samcv [Coke], ah this problem is caused by os x not using the #! in that file. will fix
raschip samcv: It's not os x anymore, apple now calls it MacOS 23:08
samcv it's still version 10 tho :\
oh well.
unless they came out with 11 and i wasn't paying attention
raschip The X didn't mean 10 for a long time already. 23:10
faraco m: say "Camelia".chrs 23:11
camelia rakudo-moar 9a11ea: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5Camelia' (indicated by ⏏)␤ in block <unit> at <tmp> line 1␤␤Actually thrown at:␤ in block <unit> at <tmp> line 1␤␤»
faraco m: say "Camelia".odr;
camelia rakudo-moar 9a11ea: OUTPUT«No such method 'odr' for invocant of type 'Str'␤ in block <unit> at <tmp> line 1␤␤»
faraco m: say "Camelia".odrs; 23:12
camelia rakudo-moar 9a11ea: OUTPUT«No such method 'odrs' for invocant of type 'Str'␤ in block <unit> at <tmp> line 1␤␤»
geekosaur did you mean .ords?
faraco oh
m: say "Camelia".ords;
camelia rakudo-moar 9a11ea: OUTPUT«(67 97 109 101 108 105 97)␤»
geekosaur (I think there's an open bug for having it suggest those the way it does for subs?)
faraco m: say say <67 97 109 101 108 105 97>.chrs 23:13
camelia rakudo-moar 9a11ea: OUTPUT«Camelia␤True␤»
faraco thanks geekosaur
raschip The True in the end is because you doubled "say". 23:14
SmokeMachine notviki: it the actual behavior of that code right or wrong?
Geth oc: 5bc6285938 | faraco++ | doc/Type/Cool.pod6
changed chrs routine input and returned string
23:15
notviki m: dd [<c c c a a a b c c>] Z&push [<c c c a a a b c c>]
camelia rakudo-moar 9a11ea: OUTPUT«(all("c", "c"), all("c", "c"), all("c", "c"), all("a", "a"), all("a", "a"), all("a", "a"), all("b", "b"), all("c", "c"), all("c", "c")).Seq␤»
notviki What's it doing? junctioning the return value of push? 23:16
SmokeMachine: the || thing? No idea
m: role Bla {};sub infix:<||>(Bla $, Bla $) is default {"OK"}; say (42 but Bla) || (1 but Bla)
camelia rakudo-moar 9a11ea: OUTPUT«42␤»
SmokeMachine I was going to ask about that push returning a junction...
notviki: for me, it looks like a bug... what do you think? 23:17
notviki m: role Bla {}; sub infix:<||>(Bla $ where :so, Bla $ where :so) is default {"OK"}; say (42 but Bla) || (1 but Bla) 23:19
camelia rakudo-moar 9a11ea: OUTPUT«42␤»
notviki s: &infix:<||> 23:20
SourceBaby notviki, Sauce is at github.com/rakudo/rakudo/blob/9a11...ol.pm#L106
SmokeMachine whats :so?
notviki checks for turth
*truth
m: sub infix:<||>(42, 42) {"OK"}; say (42 || 42) 23:21
camelia rakudo-moar 9a11ea: OUTPUT«42␤»
notviki m: multi infix:<||>(42, 42) {"OK"}; say (42 || 42)
camelia rakudo-moar 9a11ea: OUTPUT«42␤»
notviki haha
SmokeMachine: yeah, I'd say it's a bug
SmokeMachine :)
23:21 PotatoGim left
notviki but no idea which "it's" it is :P 23:21
raschip SmokeMachine: It casts it to Bool, I'd say.
SmokeMachine ok so casts to Bool... but :so? 23:22
23:22 jkva left
SmokeMachine is it like {.so} ? 23:22
notviki
.oO( casts to Bool? )
SmokeMachine: yeah
23:22 mithaldu_ left
notviki m: say 42 ~~ :so 23:22
camelia rakudo-moar 9a11ea: OUTPUT«True␤»
notviki m: say (42 but False) ~~ :so
camelia rakudo-moar 9a11ea: OUTPUT«False␤»
SmokeMachine is it a special syntax or is a adverb?
notviki no idea 23:23
23:23 ufobat left, labster joined, tbrowder left
notviki s: &infix:<~~>, \(42, :so) 23:23
SourceBaby notviki, Something's wrong: ␤ERR: Could not find candidate that can do \(42, :so)␤ in sub sourcery at /home/zoffix/services/lib/CoreHackers-Sourcery/lib/CoreHackers/Sourcery.pm6 (CoreHackers::Sourcery) line 37␤ in block <unit> at -e line 6␤␤
notviki s: &infix:<~~>, \(42, "so" => True)
SourceBaby notviki, Sauce is at github.com/rakudo/rakudo/blob/9a11...Mu.pm#L829
notviki s: &infix:<~~>, \("so" => True, 42)
SourceBaby notviki, Sauce is at github.com/rakudo/rakudo/blob/9a11...Mu.pm#L829
notviki eh
m: dd :so
camelia rakudo-moar 9a11ea: OUTPUT«block <unit>␤»
notviki m: dd [:so] 23:24
camelia rakudo-moar 9a11ea: OUTPUT«[:so]␤»
23:24 jkva joined
notviki no idea 23:24
it parses just like any colonpair... 23:25
23:25 PotatoGim joined
SmokeMachine :) 23:25
notviki So... anyone figured out how to squish <c c c a a a b c c> ? :)
raschip m: say 42 ~~ :not
camelia rakudo-moar 9a11ea: OUTPUT«False␤»
raschip (:not).perl 23:26
m: (:not).perl
camelia ( no output )
23:26 tbrowder joined
raschip m: say (:not).perl 23:26
camelia rakudo-moar 9a11ea: OUTPUT«:not␤»
raschip m: say (:so).perl
camelia rakudo-moar 9a11ea: OUTPUT«:so␤»
23:26 mithaldu_ joined
SmokeMachine m: sub by2 {.grep: * %% 2}; <1 3 5> ~~ :by2 23:27
camelia rakudo-moar 9a11ea: OUTPUT«No such method 'by2' for invocant of type 'List'␤ in block <unit> at <tmp> line 1␤␤»
SmokeMachine it calls a method!
notviki oh right 23:28
SmokeMachine++
s: &infix:<~~>, \("so" => True, 42)
SourceBaby notviki, Sauce is at github.com/rakudo/rakudo/blob/9a11...Mu.pm#L829
notviki Oh right, I should've followed that along the method thing is on Pair.ACCEPTS
SmokeMachine m: use MONKEY-TYPING; augment class Int{ method by2 {.grep: * %% 2}}; <1 3 5> ~~ :by2 23:29
camelia rakudo-moar 9a11ea: OUTPUT«No such method 'by2' for invocant of type 'List'␤ in block <unit> at <tmp> line 1␤␤»
SmokeMachine m: use MONKEY-TYPING; augment class List{ method by2 {.grep: * %% 2}}; <1 3 5> ~~ :by2
camelia rakudo-moar 9a11ea: OUTPUT«Use of uninitialized value of type Any in numeric context␤ in whatevercode at <tmp> line 1␤»
23:30 faraco left
notviki s: "by2" => True, 'ACCEPTS', \(<1 3 5>) 23:31
SourceBaby notviki, Sauce is at github.com/rakudo/rakudo/blob/9a11...air.pm#L36
SmokeMachine m: use MONKEY-TYPING; augment class List{ method by2 {self.grep: * %% 2}}; <1 3 5> ~~ :by2
camelia ( no output )
SmokeMachine m: use MONKEY-TYPING; augment class List{ method by2 {self.grep: * %% 2}}; say <1 3 5> ~~ :by2
camelia rakudo-moar 9a11ea: OUTPUT«False␤»
SmokeMachine m: use MONKEY-TYPING; augment class List{ method by2 {self.grep: * %% 2}}; say <1 3 5 2> ~~ :by2
camelia rakudo-moar 9a11ea: OUTPUT«True␤»
notviki \o/
SmokeMachine that works!
23:31 faraco joined
notviki yeah, neat 23:31
raschip but why? 23:33
notviki raschip: 42
SmokeMachine raschip: because...
notviki m: say WHY 'Life, the Universe and Everything':
camelia rakudo-moar 9a11ea: OUTPUT«42␤»
SmokeMachine :)
raschip Is the question of Life, The Universe and Anything, "why?"? 23:34
SmokeMachine raschip: en.wikipedia.org/wiki/42_(number) 23:35
notviki Oh god... raschip questions even the ultimate question! :D
raschip Well, one of the premises of the books is that they want the answer to "The Question", and the answer is 42. But they don't actually know what the question is. 23:36
samcv m: say WHY 42 23:37
camelia rakudo-moar 9a11ea: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared name:␤ WHY used at line 1␤␤»
samcv m: say WHY '42'
camelia rakudo-moar 9a11ea: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared name:␤ WHY used at line 1␤␤»
notviki points to : at the end
samcv m: say WHY 'Life, the Universe and Everything':
camelia rakudo-moar 9a11ea: OUTPUT«42␤»
samcv m: say WHY 42:
camelia rakudo-moar 9a11ea: OUTPUT«(Any)␤»
samcv m: sub w ( $thing ) { 23:38
camelia rakudo-moar 9a11ea: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing block␤at <tmp>:1␤------> 3sub w ( $thing ) {7⏏5<EOL>␤»
samcv oop
SmokeMachine notviki: how about the || problem?
notviki What about it?
I was still trying to figure out the squish thing
SmokeMachine do you think I should open a bug report? 23:39
notviki there gotta be some clever thing for it
sean` Hmm. If I have my list in a named array @a, I can do: @a.squish.map({ grep * eq $_, @a }). Might be the most concise way to do it.
notviki m: role Bla {}; sub infix:<||>(Bla $ where {True}, Bla $ where {True}) is default {"OK"}; say (42 but Bla) || (1 but Bla) 23:40
camelia rakudo-moar 9a11ea: OUTPUT«42␤»
notviki m: role Bla {}; sub infix:<||>(Bla $ where {True}, Bla $ where {True}) {"OK"}; say (42 but Bla) || (1 but Bla)
camelia rakudo-moar 9a11ea: OUTPUT«42␤»
notviki m: role Bla {}; sub infix:<||>(Bla $ where {True}, Bla $ where {True}) {"OK"}; say (0 but Bla) || (1 but Bla)
camelia rakudo-moar 9a11ea: OUTPUT«1␤»
notviki m: role Bla {}; sub infix:<||>($ where {True}, $ where {True}) {"OK"}; say (0 but Bla) || (1 but Bla)
camelia rakudo-moar 9a11ea: OUTPUT«1␤»
notviki m: role Bla {}; sub infix:<||>($ where {True}, $ where {True}) {"OK"}; say (0) || (1)
camelia rakudo-moar 9a11ea: OUTPUT«1␤»
notviki m: sub infix:<||>($ where {True}, $ where {True}) {"OK"}; say (0) || (1) 23:41
camelia rakudo-moar 9a11ea: OUTPUT«1␤»
notviki Ok, I misread one of my previous results.
m: sub infix:<||>($ where {True}, $ where {True}) {"OK"}; say (0) [||] (1) 23:42
camelia rakudo-moar 9a11ea: OUTPUT«1␤»
notviki m: sub infix:<||>($ where {True}, $ where {True}) {"OK"}; say (0) &[||] (1)
camelia rakudo-moar 9a11ea: OUTPUT«all(0, 1)␤»
notviki neat
SmokeMachine: yeah, open it. Thought I can see the answer "these are special and you can't define customs for them" as one possible answer.
m: sub infix:<||>($ where {True}, $ where {True}) {"OK"}; dd &infix:<||>(0, 1) 23:43
camelia rakudo-moar 9a11ea: OUTPUT«"OK"␤»
SmokeMachine !
worked!
notviki But I called it as a sub not like an op....
I suspect it'll also work in [] thing
SmokeMachine right...
notviki m: sub infix:<||>($ where {True}, $ where {True}) {"OK"}; dd [||] 0, 1 23:44
camelia rakudo-moar 9a11ea: OUTPUT«"OK"␤»
raschip Any Pair test object attribute ?."{X.key}" === ?X.value (e.g. filetests)
notviki screw it... 23:45
If anyone figures out a nice consice way to turn <c c c a a a b c c> into (c => 3, a => 3, b => 1, c => 2) ping me
23:46 sean` left
TimToady m: say gather for <c c c a a a b c c>.rotor(2 => -1, :partial) -> ($a, $b = '') { state @s; push @s, $a; if $a !eqv $b { take @s; @s = () } } 23:46
camelia rakudo-moar 9a11ea: OUTPUT«([c c c] [a a a] [b] [c c])␤»
notviki oho
TimToady it's not very concise, so I didn't ping you :)
notviki :D
TimToady++
raschip "$ ~~ :so" is "if $.so === True" 23:47
TimToady Pair.ACCEPTS treats the key as a method name to be evaluated for Bool
notviki raschip: $.so.Bool === True 23:49
raschip: it's this one: github.com/rakudo/rakudo/blob/9a11...air.pm#L37
TimToady note $.so is not the same as ($).so 23:50
notviki ah, right :D
23:53 buggable left
ugexe m: say <c c c a a a b c c>.categorize({$_}).map({.key => .value.elems}) 23:53
camelia rakudo-moar 9a11ea: OUTPUT«(a => 3 c => 5 b => 1)␤»
23:53 buggable joined, ChanServ sets mode: +v buggable
ugexe doh 23:53
23:56 pecastro left