»ö« 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.
TEttinger bogosort in your dreams 00:00
timotimo it sometimes feels that way, yeah
recently i had a dream where i had a pimple on my forehead. when i tried to get rid of it, a piece of strawberry came out.
that feels like "i'm just throwing concepts together to see what sticks" 00:01
TEttinger I had unpleasant dreams where I was in some kind of RPG but my characters kept backstabbing each other and I had a progressively smaller and smaller group to use in battle. then there was a rock and roll battle but no one had any idea how to play instruments
Juerd Did the piece of strawberry stick?
RabidGravy I actually find I do about 5 or six useful hours of actual programming in a day, I may think about it for another ten hours but actually writing code five or six
lizmat lichtkind: "whenever IO::Notification.watch-path('.') { ..." better written as ".".IO.watch"
Juerd RabidGravy: I usually get only 2 to 3 of them, and then only on good days. 00:02
timotimo RabidGravy: yeah, i hear the brain also does problem solving in the background "for free"
lichtkind ah thanks
00:02 lucasb left
lizmat lichtkind: well, actually "whenever ".".IO.watch { ... " :-) 00:02
lichtkind lizmat, but this way its clearer what it does
rjbs Hm, when I rakudobrew build-panda on my newly build moar p6, I get: Function CompUnit::Repository needs parens to avoid gobbling block at bootstrap.pl:30
Any tips?
lizmat nuke install and try again ? 00:03
timotimo rjbs: it doesn't give the extra line about "undefined package"?
eiro hello anf congratulations everyone
RabidGravy yeah or "rakudobrew self-upgrade"
woolfy wendyga.wordpress.com/2015/12/25/w...e-answers/
rjbs I did not see "undefined package"
00:03 Phagus joined
rjbs gives another go 00:03
TEttinger timotimo: that's not far from my life. one time I had a large piece of honeydew rocket out of my nostril. (I knew it was in there because everything on the right half of my nose smelled like honeydew)
timotimo then your rakudo must be out of date actually :)
check to see if it's accidentally using another "perl6" binary somewhere in your system 00:04
rjbs It doesn't use a fully qualified path to the known target?
RabidGravy I think I'm going back to doing more music in 2016
timotimo m: given 1 { when Heres::A::Thing { say "oh!" } }
camelia rakudo-moar ec386e: OUTPUT«5===SORRY!5===␤Function 'Heres::A::Thing' needs parens to avoid gobbling block (or perhaps it's a class that's not declared or available in this scope?)␤at /tmp/hm_qaVnWYZ:1␤------> 3n 1 { when Heres::A::Thing { say "oh!" }7⏏5 }␤Missing b…»
TimToady most of us have had to nuke our old install in the last day or two
timotimo rjbs: it should look more like that ^ 00:05
00:05 Phagus left
rjbs Okay. I'm rebuilding. 00:05
lichtkind rjbs++ thanks for patience 00:06
rjbs no worries
the real need for patience will come when I see how my code that worked in july is doing :)
timotimo uh-oh :) 00:07
TimToady pre-GLR is, like, a different language...
RabidGravy oh mate you're fucked 00:08
lizmat lichtkind: maybe point out that you can also quote special characters, ratther than having to \ each one of them
rjbs I did a bit of updating of it between now and then. We'll see. ;)
stmuk .flat.list as an editor macro
RabidGravy rjbs, I made some modules this year some of them are already at a version 9 without new features 00:09
timotimo everything magically changes from today on!
stmuk doesn't magically change! surely? 00:10
much
rjbs timotimo: You mean "stops changing" R^Hright? :)
Let me tell you what, people hate it when you changed "released" software. Believe you me...
lichtkind lizmat, the only spote where i deliberatly quoted something , it was about that space are not allowed in so many places anymore
rjbs panda is installed properly after I 'git clean'ed ~/.rakudobrew 00:11
timotimo well, i mean ... the situation module authors find themselves in
rjbs BTW, I didn't say yet:
Congratulations on the big announcement!
timotimo oh, rakudobrew has a "nuke" option :)
ZoffixWin \o/
rjbs First report from running my summer code: 00:12
Use of the 'pack' function is experimental; please 'use experimental :pack'
I'll do more with this another time. I'm going back to basking in Christmas cheer. ;)
cxreg the collective formation of idiomatic perl 6 begins now 00:13
lizmat m: my $a = "ݻ"; say $a ~~ /ݻ/ # lichtkind: any other char that's considered alphanumeric according to unicode, is ok also
camelia rakudo-moar ec386e: OUTPUT«「ݻ」␤»
lizmat .u ݻ 00:14
yoleaux U+077B ARABIC LETTER YEH BARREE WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE [Lo] (ݻ)
lichtkind good timing now php7 was released and also swift went open source recently
timotimo rjbs: i found a use of pack in URI::Encode that was 100x more idiomatic without pack, so maybe you can do something there?
ZoffixWin Apparently the announcement has been banned from hackernews lol :)
sivoais Congrats to all and your hard work (even on Christmas, no less) is much appreciated! 00:15
00:15 labster joined
timotimo as if, ZoffixWin 00:15
lichtkind lizmat sur ebut i didnt even went into that , p6 is so huuge and i only took waht really new, the concepts, less so the syntax, but more article will follow
timotimo i don't believe that :)
ZoffixWin timotimo, well, that's what _sri says irclog.perlgeek.de/mojo/2015-12-26#i_11778153
RabidGravy timotimo, I may work up the xbase thing I've got to exercise .unpack/.pack - it works 00:16
woolfy Message from the Perl6 page on Facebook: "Great news. Smooth build on Mac and Raspberry Pi2. My existing P6 code (a few hundred lines) is all working great."
timotimo wtf.
RabidGravy: i have no idea what "xbase" means?
RabidGravy yoof!
Juerd woolfy: Ooh, there's a Perl6 page on Facebook? *joining*
woolfy: Thanks for accepting my join request :) 00:17
woolfy And since I'm an admin, I accepted your request in mere seconds!
Juerd Yeah, that was FAST.
woolfy :-)
RabidGravy timotimo, ancieunte "database" format based on Ashton-Tate's dBase IV but more widely used with foxpro and stuff. 00:18
rjbs timotimo: Maybe, but I'm packing numbers into 'n' for storaging in a binary format. pack seems right.
timotimo oh, huh.
Juerd rjbs, RabidGravy, ZoffixWin: Any comments on gist.github.com/Juerd/ae574b87d40a66649692 are welcome
timotimo rjbs: right, that sounds like what you'd use.
Juerd (Only harrassing you because you mentioned pack/unpack :P)
timotimo okay, i'm off to bed!
gnite, friends!
Juerd Good night timotimo :) 00:19
ZoffixWin Juerd, did I? :)
woolfy timotimo++ deserves the rest
timotimo nah, i just want to be off the 'net when all the trolls and haters notice :)
Juerd ZoffixWin: Oh, I seem to have misread somehow.
lizmat gnight timotimo
Juerd laughs at the trolls and haters 00:20
ZoffixWin Juerd, that stuff's over my head, but looks better than all the P5's codes in unpack though, so I like it. Those are my 2 cents :)
lizmat lichtkind: ok, then just maybe say "everything that unicode does not consider alphanumeric, needs to be escaped by either \ or quoting
Juerd Even in the absolute worst case, that nobody dares to use Perl 6 for actual production, this language will definitely change computing as we know it. Future languages will all borrow features from it. 00:21
ZoffixWin nods
lizmat agrees
echo echo echo :-)
Juerd say say say ;)
[Coke] Thanks to everyone who made today's release pretty boring in terms of getting it cut. 00:22
00:22 kjs_ left
RabidGravy Juerd, what I'd like to see is something similar to NativeCall CStruct where you can define a class that has sufficient information to pick the bits out of a blob 00:22
woolfy [Coke]++
RabidGravy I can fake this now using .unpack but more fun built in
lizmat [Coke]: I *did* try to make it interesting :-)
Juerd RabidGravy: I've thought about that but I can't think of any syntax for byte length and count prefixes. 00:23
[Coke] lizmat: troublemakers like you aside...
seriously, thanks for the last minute cleanups from you.
lizmat takes that as she heads off to bed
[Coke]: you're welcome
Juerd RabidGravy: Structs are fixed size, unpack does things where the size is encoded in the data itself
lizmat good night, #perl6!
TimToady night, thanks!
00:23 hidden_noob joined
Juerd Good night 00:24
Hello hidden_noob
RabidGravy Juerd, I've gone for traits
Juerd RabidGravy: Do traits work on groups of attributes, though? :)
RabidGravy but yeah the case that you mention is actually better handled by raw .unpack 00:25
Juerd RabidGravy: Protocol and file formats may very well encode stuff like "following right now are 5 blocks of this structlike data"
Although a substruct might work...
RabidGravy think about that again
Juerd What do you mean? 00:26
RabidGravy there will have to be ^some^ code
lichtkind lizmat, i did said that, but without the word unicode
did say
00:27 labster left
Juerd RabidGravy: I don't understand. Some context could perhaps help. 00:27
skids The cstruct/unpack/pack thing should be as declarative as possible, under the same general priciple of semanic markup -- you don't want to tie it to a particular use case. 00:28
RabidGravy so say a MIDI file, it has a header which says how many tracks there are
skids (IMHO)
RabidGravy so the header is read and then you read n tracks 00:29
Juerd skids: I agree but I don't know what that means for its implementation.
RabidGravy based on the hreader
00:29 adhoc left, raiph left
skids I think we need to try a bottom up implementation and then rework it form the top down. It's not going to "spring fully formed" from anything. 00:29
cxreg now to summan The Damian to produce piles of antipatterns 00:30
RabidGravy yeah
Juerd skids: So what's the bottom and what's the top?
00:30 raiph joined
skids Bottom is ints, sized types, endianness, TLVs. 00:31
00:31 adhoc joined
Juerd I may be poisoned by Perl 5's pack too much. 00:32
I've used it quite a lot and the only itch I have to scratch is syntax, really :|
RabidGravy I think the two things I have in flight I may re-implement withought using unpack
and see where that takes me
the standard MIDI file is quite a good example 00:33
jberger Congratulations everyone, keep it up
ZoffixWin \o/ 00:34
jberger And be sure to share around the interwebs
skids Top is more dynamic and self-referential things: selecting from among various structures via tags, dealing with fragment reassembly, and working well with class/role constructs to share declarations between codebases.
RabidGravy: I'm coming from the network packet side of things -- lots of overlap, perhaps more encapsulation than data formats. 00:36
00:38 rurban joined
RabidGravy I think it's make the stuff we want without Buf.unpack and then see how it converges 00:38
anyway I've gotta crash
virtualsue it's about that time
RabidGravy it is 00:39
00:39 devop left 00:40 rurban1 left 00:43 RabidGravy left
woolfy I go to sleep. Snoring time. Thank you all for a great night, excellent work, wonderful result. Perl6++ 00:45
00:46 davercc joined 00:47 TomLeg left 00:48 woolfy left 00:50 vendethiel left
TimToady Congratulations everyone. Tomorrow we move to stage 3: then they fight you. :) 00:51
grondilu jnthn wrote that the priority will be performance and stuff, but I kind of was hoping that he would help pmurias with the javascript backend. 00:52
00:52 hidden_noob left
TimToady no, that's *your* job :) 00:52
then we can put alternate JS entries on rosettacode that just call into Perl 6 :) 00:53
then we do that for all the other languages, and we're done 00:54
00:57 raiph left
lichtkind god night 00:57
TimToady o/
00:57 raiph joined 01:00 raiph left 01:01 raiph joined 01:02 lichtkind left 01:03 lustlife left 01:04 lustlife joined 01:08 raiph left 01:09 raiph joined, kid51 left 01:12 virtualsue left 01:13 kid51 joined 01:14 raiph left 01:20 Dragon_ joined 01:21 BenGoldberg_ left 01:22 BenGoldberg_ joined 01:23 Dragon_ left, christkind left
Juerd I just realized... I haven't seen it called PERL 6 yet. :) 01:31
diakopter that question comes every year or two here
"how is PERL 6 going" 01:32
Juerd Well, once every two years is a pretty good score :)
01:53 leont joined 01:55 atweiden left
richi235 Hi, is it okay to ask questions on "rakudobrew build-panda" failing, when i couldn't find anything on google? 02:01
or is thera an extra channel for "user" questions? 02:02
cxreg what's the error?
ZoffixWin richi235, this is the channel. 02:03
richi235 cxreg:
Could not find MONKEY-SEE-NO-EVAL in:
/home/richi/.rakudobrew/moar-nom/panda/ext/File__Find/lib
/home/richi/.rakudobrew/moar-nom/panda/ext/Shell__Command/lib
cxreg sounds like the rakudo build is older than the panda build 02:04
ZoffixWin richi235, sounds like you could benefit from nuking ~/.rakudobrew and ~/.perl6 and starting from scratch
cxreg possibly just "rakudobrew build moar"
if not, then wipe and start over
richi235 cxreg, ZoffixWin: that sounds fitting i did "rakudobrew build moar 2015.12" before 02:05
so they don't match
but possibly you also should upgrade the instructions on perl6.org/downloads/ 02:06
well, I'll try out and come again if I fixed it 02:07
thanks 02:08
TimToady the instructions are somewhat optimized for people who are starting new, not folks who've tried it before, I guess
02:11 Alpha64 joined, Ben_Goldberg joined
grondilu maybe an efficient dist-clean entry should be added to the Makefile. 02:11
with all the directories created for install, cleaning everything manually is not trivial. 02:12
cxreg that would help
grondilu I mean I have /usr/local/share/perl6, $HOME/.perl6/, and certainly others 02:13
02:13 svetlana left
grondilu it's quite a mess 02:13
02:13 BenGoldberg_ left
grondilu tries bootstrapping panda and is not optimistic 02:14
richi235 well deployment is often not easy and anoying 02:16
I sometimes think it's the most uncomfortable part of software development (given you don't have to deal with customers :) )
02:16 herby_ joined
herby_ Good evening, everyone! 02:17
TimToady howdy!
richi235 Hi
02:17 nemsys left, ftrain2000 left
grondilu yeah, it failed as expected. Lots of MONKEY-SEE-NO-EVAL messages 02:19
dalek kudo-star-daily: b5ccf19 | coke++ | log/ (8 files):
today (automated commit)
grondilu I guess I should rm /usr/local/share/perl6/sources/* 02:20
bpmedley Congratulations
[Coke] Thank you 02:21
richi235 btw what does the nom stand for in moar-nom ?
TimToady New Object Model 02:22
not so new anymore :)
richi235 :) thx
grondilu see S99
flussence it's new until it needs replacing, thankfully it doesn't :)
richi235 like new-technology in windows NT :p 02:23
TimToady that why Oxford still has a New College?
02:24 colomon joined
grondilu New-York is not such a new city either :P 02:24
ZoffixWin We clearly need to rename it to New New York, to keep up with Futurama 02:25
richi235 okay "rakudobrew build-panda" works after "rakudobrew build moar" ; but it doesn't work after "rakudobrew build moar 2015.12"
02:26 FROGGS_ joined
TimToady curious 02:27
grondilu anybody knows who's made the rakudo debian package? It's terribly old, hopefully they'll make an other one soon. 02:28
TimToady might possibly need a rakudobrew switch or some such
Juerd 245 retweets of @TimToady's announcement. I wonder if Twitter at some point stops sending email notifications for those, or if TimToady now has a few hundred retweet emails... 02:29
grondilu it probably batches them
02:30 FROGGS left
grondilu on debian jessie, the version of rakudo is 2014.07-4 02:30
not that I worry much about it as I use the git repo, but still it'd be nice to have an updated debian package.
02:31 zengargo1le left
AlexDaniel grondilu: not really 02:33
grondilu: first of all, it is 2015.09-2 in unstable
richi235 Dominique Dumont [email@hidden.address]
metadata.ftp-master.debian.org/chan..._changelog
AlexDaniel and secondly, I emailed him :)
he said that he will work on it “next week” 02:34
grondilu yeah, my bad. Somehow I did not even consider the unstable branch.
02:35 zengargoyle joined
AlexDaniel I do agree that Debian package is needed, and I do agree that it is too bad that it will only come next week… But I'm not sure if we can do something about it besides what was already done 02:36
geekosaur with debian? not a whole lot 02:38
diakopter perl6 -V is, like, eww
perl6::language_version=6.c 02:39
perl6::codename=
perl6::release-number=
AlexDaniel diakopter: how did you find it? :) 02:40
geekosaur debian's still shipping ghc 7.6.3; current is 7.10.3 and 8.0.1 is in release engineering
diakopter AlexDaniel: how did I find the -V flag?
AlexDaniel diakopter: yes
diakopter muscle memory from installing perl 02:41
AlexDaniel hah!
diakopter why teh such funny
AlexDaniel diakopter: it just makes me wonder how many undocumented flags are there 02:42
grondilu AlexDaniel: yeah debian packaging is not simple matter. Not much can be done apart from politely noticing those who can do it. 02:46
AlexDaniel grondilu: I'm happy that somebody is taking care of it
grondilu: even if it is delayed all the time
grondilu yep, agred. 02:47
leont I'm not sure the new default compilationunit-repo is compatible with debian's ideas of how and where to install things
grondilu maybe they should be considered as librairies and put in a lib/ directory somewhere. 02:49
though it's porbably more complicated than that 02:50
richi235 Hmm, I just tried: 02:56
% rakudobrew build moar 2015.12
% rakudobrew build-panda
on my clean server (debian stable) there build-panda works
so jep, on my notebook it seems to be some leftover from the previous version ~/.rakudobrew which rakudobrew doesn't cleanly isolate 02:57
dalek c: ee5c39e | (Wenzel P. P. Peppmeyer)++ | doc/Language/operators.pod:
doc Sequential Operators and Zip Operators
02:58
c: 95a0aab | (Wenzel P. P. Peppmeyer)++ | doc/Language/operators.pod:
Merge pull request #270 from gfldex/master

doc Sequential Operators and Zip Operators
grondilu panda works for me now. I did have to remove all /usr/local/share/perl6/. 03:02
03:05 leont left 03:10 xpen left, Devop joined 03:11 labster joined
dalek c: 97cdd3d | (Wenzel P. P. Peppmeyer)++ | doc/Language/operators.pod:
doc Nesting of Meta Operators
03:11
c: 258811b | (Wenzel P. P. Peppmeyer)++ | doc/Language/operators.pod:
Merge pull request #271 from gfldex/master

doc Nesting of Meta Operators
03:12 zhi joined 03:13 vendethiel joined 03:15 Devop left
grondilu hum not so fast. I thought it was working fine but it doesn't: 03:15
===SORRY!=== Error while compiling /usr/local/src/panda/.panda-work/1451098568_4/lib/Shell/Command.pm 03:16
Malformed parameter
at /usr/local/src/panda/.panda-work/1451098568_4/lib/Shell/Command.pm:47
------> sub cp($from⏏ as Str, $to as Str, :$r) is export {
expecting any of:
constraint
03:17 ozmq left
grondilu wth is this syntax? sub foo($thing as Type) {...} 03:17
03:17 ab6tract joined, jasanj left
TimToady old syntax for Type() $thing 03:17
hobbs Merry Christmas!
TimToady and that's an old Shell::Command
that was fixed yesterday or so
grondilu should I wipe the .panda-work dir or somthing? 03:18
03:18 Sgeo joined
TimToady yeah, mebbe 03:18
03:18 noganex_ joined 03:21 noganex left 03:23 atweiden joined 03:24 ab6tract left
atweiden can anyone explain what tools/build/install-core-dist.pl does exactly? 03:30
in rakudo tree
is it compiling anything?
flussence looks like that's *all* it does, actually
llfourn it's installing the core modules 03:31
03:31 colomon left
llfourn like Test, NativeCall etc 03:31
atweiden llfourn installing as in `cp` to path, or is it running perl6?
TimToady if you set RAKUDO_LOG_PRECOMP=1 it'll say what it's doing, though the filenames are all sha-1 hashes
it's precompiling and saving bytecode 03:32
03:32 raiph joined
TimToady so, for instance, when all the Tests say 'use Test', you don't really want to recompile Test.pm6 every time 03:33
grondilu well that's just weird : I did rm .panda-work, pulled the latest panda, and still I get the same error in Sell/Command.pm
TimToady this way, you don't
03:33 yqt left
atweiden i see 03:33
dalek Iish: e14cda2 | (Aleks-Daniel Jakimenko-Aleksejev)++ | lib/DBDish/Role/ErrorHandling.pm6:
“Rais” → “Raise”

Just a typo
03:35
atweiden are all modules supposed to be precompiled now?
03:35 rurban left
AlexDaniel dammit, it is “Error”, not “Errors” 03:36
03:36 vendethiel left
atweiden i've been installing them to /usr/share/perl6/vendor by simple `cp` 03:36
e.g. aur.archlinux.org/cgit/aur.git/tre...r-debugger
llfourn atweiden: pretty much anything you load will be precompiled if it can I think. The core dist stuff is just precompiled before you even use it. 03:37
I think there might be a right way to do that now rahter than just cp 03:38
(though that should work in terms of precomp anyway)
atweiden dang! i had such a nice system going with pacman
richi235 An short question: Every perl6 example i looked at didn't have an "#!/usr/bin/env perl6" line on the top, just: "use v6;" 03:39
like in github.com/perl6/perl6-examples/bl...ys-date.pl
does this have a particular reason?
dalek Iish: 2181b11 | (Aleks-Daniel Jakimenko-Aleksejev)++ | lib/DBDish/Role/ErrorHandling.pm6:
“RaiseErrors” → “RaiseError”

Another “just a typo”
03:39 labster left, colomon joined
llfourn atweiden: I have no knowledge of distribution pkg maintainers best practices or whether anyone does :) 03:39
grondilu shebangs are necessary only if you want to make your file executable 03:40
that's not specific to perl 6
03:40 zhi left
AlexDaniel But I'd say that you should have a shebang no matter how you run it (unless it is a lib) 03:40
grondilu AlexDaniel: I disagree
AlexDaniel grondilu: perhaps! Why? 03:41
grondilu I don't see why you'd put a shebang everywhere. Looks like a security hazard to me.
llfourn if it's in /bin it should have a shebangs I guess
richi235 grondilu: I know that, ah so all the examples simply weren't designed to be used as executables
llfourn richi235: nope 03:42
AlexDaniel richi235: well, basically all examples are just code examples, not file examples :)
llfourn perl6 myscript.p6 is the way they are meant to run :)
AlexDaniel richi235: there no one universal way to write a shebang anyway
atweiden flussence: i weep with this rel, i even install vim plugins with pacman :) 03:43
grondilu is not even sure shebangs work on all OS
richi235 im quite happy with the #!/usr/bin/env thing
AlexDaniel grondilu: they don't
grondilu richi235: yes you can't go wrong with /usr/bin/env
AlexDaniel grondilu: but in such case they are just treated as comments, so no problem
atweiden it appears the solution may be rakudobrew 03:44
geekosaur even on unixlikes, you can find very old ones that won't support them
flussence wants to dig into the innards of the compunit stuff anyway, and have an entire repo of ebuilds autogenerated from META.list some day...
AlexDaniel grondilu: but what is this security hazard thing you are talking about?
geekosaur and there's a sting in the tail there: those systems often come with an ancient csh that will take first-char-of-script being # to mean it's csh instead of sh
llfourn is working on something to build docs from META.list
geekosaur (you can on those csh version work around that with "alias shell" though0
AlexDaniel geekosaur: jeez…
grondilu AlexDaniel: nvm, I was probably just wrong. I'm no expert whatsoever in these stuff. 03:45
grondilu sadly thinks that he's no expert in anything 03:47
geekosaur note also though that anyone on those systems *already* has to work around shebang issues to use anything produced after 4.3BSD shipped
the env hack has a potential security issue
AlexDaniel there are downsides to “/usr/bin/env perl6” too. Basically it means “whatever perl6 is”, but sometimes you want “the one that was actually installed”, in which case it might make sense to hardcode it to /usr/bin/env for example
oops
to /usr/bin/perl6
geekosaur since it searches $PATH and one of the reasons to use a shebang is to ensure that a known-safe executable is run
instead of trusting the user's $PATH 03:48
03:48 Ben_Goldberg left
flussence wonders what #!/usr/bin/env $foo does that #!$foo doesn't (have seen both forms, but the latter is rare) 03:49
geekosaur well, let me correct that "anything produced after" --- the 4.3 one was when csh stopped thinking sh didn't have # comments (because it didn't until 4.3BSD). it's older System III/System V that will lack shebang
AlexDaniel richi235: ↑ so even if we really wanted to include a shebang everywhere… You see? :)
geekosaur but we're talking machines that are around 20 years old now
richi235 AlexDaniel: yeah there's no 100% solution^^
geekosaur flussence: maybe some OSes will do PATH search for an unqualified filename there. Most won't 03:50
AlexDaniel geekosaur: perhaps a good rule of thumb is to ignore everything that is older than Perl 6? :)
richi235 but then we would have to ignore emacs :(
geekosaur in particular anything BSDish won't (including free/net/open and OS X) 03:51
AlexDaniel richi235: don't worry about emacs, it will take care of itself. perl6-mode is working great, by the way
03:51 herby_ left
llfourn perl6-mode is awesome. ++whoeverisresponsible 03:53
grondilu what's perl6-mode?
geekosaur flussence, also if you are thinking of Perl scripts with #!perl at the top, that is a hack for perl 5
03:54 mempko joined
llfourn grondilu: github.com/hinrik/perl6-mode 03:54
richi235 ah thx, *switching to emacs package manager*
geekosaur as a backward compatibility shim for systems without #! in the kernel, it will look at a shebang line and exec the program named there --- unless the program named there is "perl" (possibly with some underscores)
richi235 uhh with flycheck support :)
grondilu oh, ok. It so happens that I looked into emacs lately. Thought I would have to look for a perl6 mode at some point. 03:55
geekosaur so some perl scripts have "#!perl" to avoid perl doing something weird at them
(this was designed originally for use with the ancient-csh "alias shell" feature, iirc --- you aliased "shell" to your perl executable, and unknown scripts would then be passed to perl to run, which would interpret the shebang) 03:56
llfourn absorbs the knowledge of the ancients from geekosaur 03:57
geekosaur that's a waste of neurons imo :p 03:58
03:58 labster joined
geekosaur if this is useful information to anyone, they really need to find an environment that isn't over 20 years old 03:58
llfourn removes the knowledge of the ancients to save neurons
geekosaur also I dearly hope at least some of that cruft has been removed from modern perl5 versions 04:00
(more than 20 years old --- "alias shell" should have been pretty much obsolete by 1986, so 30 years!) 04:01
llfourn is glad he 04:02
llfourn glad he's born in the age after alias shell
hobbs nope, it's used on what are still supported platforms 04:03
the "exec a totally different interpreter" thing not so much, but the switch parsing is definitely needed
geekosaur switch parsing, yes, but that's different
exec-ing different things unless those things are perl, perl_, perl__, etc. --- ugh 04:04
hobbs yeah, that probably causes more confusion than benefit by now
04:05 cognominal joined
hobbs perl5 generally doesn't like to break anyone's running system, but the overlap between people who depend on that feature, and people running a perl <10 years old is probably very small :) 04:06
AlexDaniel hobbs: perl 5.8 is still a thing 04:10
TimToady 5.6 is best forgotten, since that's the last Perl TimToady worked on before Perl 6 :) 04:11
TimToady was still feeling he way into Unicode at that point
AlexDaniel hobbs: 5.8.8 is more popular than 5.8.0 though, but that's exactly 10 years
TimToady *his way 04:12
llfourn I met a guy who couldn't get his company to upgrade > 5.8.x the other day :(
flussence better > than >=... 04:13
AlexDaniel this is probably not the best graph, but take a look: files.progarm.org/perl-versionsM.png . This is what we got when we looked at Oddmuse users this year. 04:14
hobbs AlexDaniel: yeah, I'm well aware :)
geekosaur supports enterprise level customers who refuse to install upgrades to stuff like that unless they come from the OS vendor. rhel6 is still perl 5.8.x 04:15
flussence looks like a debian-ish graph
AlexDaniel flussence: sure, no surprise there 04:16
flussence recalls debian getting most of 5.10..5.20 before gentoo :)
hobbs AlexDaniel: and that's sort of my point. Keeping backcompat is sometimes less important than it seems, because the people you would be inconveniencing are perpetually on 5.8.8 anyway :)
if not 5.005_04 :) 04:17
geekosaur my last job, the supported perl was 5.005_03
AlexDaniel hobbs: well, once we bumped the lowest supported version of perl to v5.10 (from v5.8.8) there were some people who came in and complained, soo… 04:18
geekosaur I did manage to get a newer one on some platforms (5.8ish) but we still had to assume 5.005_03 for anything intended to run on any supported machine :/
(then again I was still cleaning the occasional pmax_ul4 cruft out of support before I left) 04:20
(that's DECsystem 5000/25 and 5000/30 running Ultrix 4.x) 04:21
richi235 When all the example are thought to be run with "perl6 example.pl" anyway, then what's the "use v6;" line for? 04:28
deleting it produces no error
llfourn richi235: in case you try to run it with perl 5 :P
richi235 ahh okay, lol
AlexDaniel has anybody tried writing scripts that are compatible with both perl5 and perl6? 04:29
llfourn I don't use v6 much though come to think of it are we meant to be writing use v6.c now?
04:32 kid51 left
geekosaur just remembered another hideous use of #!perl 04:33
magic option that caused perl to skip until it saw that, so stuff before could be lines of hacks to get various systems to feed it to perl
(-S, I think?) 04:35
04:35 kanishka joined
hobbs oh yeah :) 04:35
04:37 myu joined
dalek doc/autarch/use-perl6-org-design: 698bba7 | (Dave Rolsky)++ | doc/ (2 files): 04:37
doc/autarch/use-perl6-org-design: Rename doc/HomePage.pod -> doc/index.html
doc/autarch/use-perl6-org-design:
doc/autarch/use-perl6-org-design: The file is basically all HTML, so pretending its Pod doesn't really make
doc/autarch/use-perl6-org-design: anything easier.
04:37 dalek left 04:38 dalek joined, ChanServ sets mode: +v dalek
geekosaur actually -x. I think -S was a path search so perl could try to find the script after the system command processor passed it a basename 04:40
TimToady well, -x was really intended to allow people to pipe their Usenet news articles to perl -x to run the embedded script :) 04:41
people were more trusting those days... 04:42
hobbs were they? Think how many sites have you curl | perl or curl | sh something :)
(for dev stuff anyway) 04:43
llfourn curl | sh is the best part of devops
is it any worse than installing a perl pacakage from cpan from someone you don't trust? 04:45
either way you have to trust the code you are going to be executing whether it's in a usenet article, a cpan module or a curl|sh 04:46
hobbs yeah, not incredibly much 04:48
actually there *was* more trust back then, which is why perl modules have a build process that's entirely impossible to lock down :)
llfourn I suppose cpan modules can have author signatures? so that might protect againt man in the middle...
atweiden breakage of Config::TOML occured between 2015.11 and 2015.12, but I can't make heads or tails of this error message: 04:49
expected Array[Str] but got Array[Str].new("<a>")
it's supposed to return an array of strings, and the first element is "<a>"
type checker doesn't like it
llfourn m: sub (Array[Str]:U) { }.(Array[Str].new("<a>")) 04:50
camelia rakudo-moar ec386e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/IaJAcy9Dyc␤Invalid typename 'U' in parameter declaration.␤at /tmp/IaJAcy9Dyc:1␤------> 3sub (Array[Str]:U7⏏5) { }.(Array[Str].new("<a>"))␤»
llfourn m: sub (Array[Str:U]) { }.(Array[Str].new("<a>"))
camelia rakudo-moar ec386e: OUTPUT«Type check failed in binding <anon>; expected Array[Str:U] but got Array[Str]␤ in sub at /tmp/WiZKj0b0P_ line 1␤ in block <unit> at /tmp/WiZKj0b0P_ line 1␤␤»
04:50 loren joined
llfourn atweiden: mmm what you are seeing looks like a bug 04:51
hobbs llfourn: they can, but very little is signed.
llfourn m: say sub (Array[Str]) { }.(Array[Str].new("<a>")) 04:53
camelia rakudo-moar ec386e: OUTPUT«Nil␤»
llfourn hobbs: I like curl | sh, one of my Perl 6 projects is a slang that compiles shell scripts. like File</etc/conf.cfg>->remove compiles to rm /etc/conf.cfg 04:56
plan is to have some kind of web service that returns you dynamic shell scripts based on HTTP request
hobbs that's pretty cool 04:57
I need to come up with something interesting to do with Perl 6, I never really dig into a language otherwise
I have nine free days to do it in, just need the right inspiration :) 04:58
atweiden llfourn: the good news is, this one bug is the cause of all Config::TOML failing tests 04:59
llfourn atweiden: see if you can golf it then [email@hidden.address] :) 05:00
hobbs: I don't know but I think that hacking the p6 grammar is pretty fun :) 05:01
also there's lot's to explore in metaprogramming 05:02
05:04 araujo left 05:05 araujo joined
ugexe dumping the entire JSON structure for a json parsing exception seems a little overzealous 05:19
05:22 thomax joined
AlexDaniel llfourn: well, but what are the alternatives? Installing a package from your distribution repository might sound like a good idea, but nobody said that the package maintainer will be executed if one day he decides to include a bunch of evil stuff. I don't really remember such incidents though 05:25
MITM attacks when curling something into sh? Well, there's HTTPS nowadays, soo… even though it is not perfect, the risk is kinda minimized 05:26
llfourn AlexDaniel: I totally agree. I'm not saying they're bad I'm just saying neither is curl |sh.
though author pub keys can be pre-distributed so technically they are another check on top of ssl 05:27
hobbs servers that a lot of people install things off of are targets for attack
you don't need to MITM it when you can be the man-at-the-end :)
signing generally makes that harder 05:28
AlexDaniel llfourn: but then again, how would you know that it is a pub key of the author? :)
05:28 Alpha64 left
llfourn AlexDaniel: if your downloading it in the same env as the one you are downloading the pkg you wouldn't but you *could* already have it 05:29
so the attacker would be unable to sign with they key you already trust even if they were able to plant a corrupt one.
AlexDaniel true, true. 05:30
llfourn though tbh I've never worked with any of this in practice just what I guess is the rational 05:31
AlexDaniel llfourn: well… in practice it is all about “ah screw it, here is a link that you can pipe into bash” 05:32
05:32 Sm4rkey joined
llfourn curl http:// | sudo bash :D 05:32
but nowadays I am often doing this kind of stuff on short lived VPS for my own experiments so for me it's no so serious 05:34
(or docker) 05:35
AlexDaniel and also, there is a high chance that this little package that you want to install will have 50 dependencies, so somehow you have to make sure that there's nothing wrong with all of them… it's such a pain
llfourn: docker is actually very promising
llfourn AlexDaniel: exactly! and .sh is quite easy to inspect
05:37 mempko left 05:38 raiph left
llfourn AlexDaniel: I just remember that you install docker via curl |sh 05:42
or used to at least
get.docker.com/
awwaiid so I should rakudobrew 2015.12 rather than v6.c? 05:48
[Coke] I would, yes. 05:49
AlexDaniel what's the difference?
awwaiid what's the diff, why we have both?
[Coke] there is a v6.c tag, but it's basically, "this is the release we started supporting this compiler"
awwaiid maybe some of those rakudobrew list results should be trimmed :)
[Coke] er, sorry, "this language version"
We did it with v6.b, I just continued the tradition.
05:49 xpen joined
TimToady Rakudo comes in 2015s, Perl comes in 5's and 6's 05:50
awwaiid mmm. So are they identical?
TimToady apples and orangatans
awwaiid ah. delicious and fuzzy how i like it
TimToady one is a compiler, the other is a language
awwaiid ya, makes sense. But v6.c is listed as an option in rakudobrew is what was surprising me 05:51
TimToady in January you'll rakudobrew 2015.01, but it'll still be 6.c (we sincerely hope) 05:52
s/be/implement/
er 2016.01
awwaiid s/2015.01/2015.01/ ya.
er
even better
loren 2016 ..
TimToady just can't type that number yet, any of us
awwaiid so if I rakudobrew install v6.c can I just er... update it at random? 05:53
(like I do with nom nom nom)
TimToady it should say "I don't know any rakudo version 6.c
well, it'd be build rather than install anyway 05:54
awwaiid ya, is what I meant
05:54 Cheung left
TimToady it'll presumably continue to default to the latest version 05:54
awwaiid oh? I thought it was defaulting to nom when you do "rakudobrew build moar" 05:55
TimToady: this whole thing -- language, release-event, community, all that -- is great. Thank you :) 05:57
TimToady you're welcome, I don't know what else I'd've done with my life if not this :) 05:58
ZoffixWin :D
awwaiid It's best to keep busy :)
ZoffixWin \o/
loren ..Great!! 05:59
TimToady well, I'd probably have ended up an orchestra director
awwaiid Not a bad alternative, sounds fun too. 06:00
or maybe they're basically the same? hmmmmm 06:01
TimToady they both involve playing people like an instrument :)
awwaiid hehe 06:02
llfourn probably less receptive to LOTR references though
TimToady and both of them work best with just the right amount of direction, not too much, not too little 06:03
both involve anticipating things just in time
awwaiid llfourn and ZoffixWin since I have two doc types here -- has anyone thought about some way to tie/verify roast w/ doc? I'm slowly noodling something like what rakudo does, where doc maybe pulls in roast and can take some hints from it to know how the low-level doc coverage is doing
06:03 Sm4rkey left
TimToady both involve understanding large-scale structure and what has to happen right now 06:03
autarch but one involves _way_ more tuxes and fewer hawaiin shirts 06:04
I look forward to the next State of the Onion done in a tux though!
TimToady sometimes just looking at a group of performers is enough to cue them; sometimes you have to be more obvious
06:04 mempko joined
TimToady both of them require a degree of self-caricature to get results 06:05
llfourn awwaiid: what is roast be used for? to see what we are missing in terms of doc coverage?
awwaiid llfourn: yes
llfourn: might mean some annotations in roast 06:06
(and some annotations in doc)
llfourn awwaiid: interesting idea. How do you tell if something has or hasn't been doc'd from roast?
awwaiid well. I haven't actually worked it out yet :)
just noodling a bit. I'll see if I can come up with a proof of concept. One of the things that has been bothering me is not just our weak doc coverage but the lack of progress-meter 06:07
llfourn well if it's possible it would be cool! but I'm not sure how it works...
awwaiid: a "what is known to be undocumented" page in the docs themselves would be great IMO both for users and contributors 06:10
06:16 nige1 joined
hobbs llfourn: maybe Larry could have grown up to be Howard Shore! :) 06:16
llfourn didn't think of that
06:17 jberger left 06:18 khw left 06:20 kaare_ joined
dalek c: daae6df | (Wenzel P. P. Peppmeyer)++ | doc/Language/5to6-nutshell.pod:
interpolation for hash (slices) has changed too
06:29
c: 98deab8 | (Wenzel P. P. Peppmeyer)++ | doc/Language/5to6-nutshell.pod:
Merge pull request #272 from gfldex/master

interpolation for hash (slices) has changed too
thomax ok, now i need a p6 job. best way to learn a new language ;-)
06:32 atweiden left, myu left 06:33 myu joined
thomax i just hope epic, the eclipse perl integration, will adopt p6. would be a ++ for the language. 06:34
llfourn thomax: last time I used that it didn't work properly for p5 :\ 06:35
I think the atom editor has p6 highlighting which is cool 06:36
thomax llfourn: for me it is a big help! running vrapper + epic in eclipse is a big time saver
06:36 vivek joined, xpen left, vivek is now known as Guest24124
llfourn looks up vrapper 06:36
thomax oh,it's vi. more or less. 06:37
llfourn oh why don't you just use vim?
gfldex vim can be confused both by p5 and p6 code 06:38
AlexDaniel Hmm, what about Perl 6 editor written in Perl 6? At least it will be relatively easy to parse code this way.
gfldex may be a little slow for large files
and it would need to be able to handle slangs that come from modules 06:39
llfourn yeah I think outsourcing the highlighting to perl6 somehow would be cool
thomax because it's easier using eclipse with all the svn/git integration, jump between modules (just by clicking method names) and such. when i test something on shell, i use vi (well, i'm a friend of old-school nvi, so, no vim)
llfourn interesting.. I didn't think anyone used eclipse for perl 5 or 6 06:40
that kind of thing works with p5 in eclipse?
llfourn uses emacs for all the things 06:41
thomax llfourn: i use it in bigger projects.
AlexDaniel I can jump to definition most of the time in emacs perl-mode. Magit for git. Sooo…
thomax emacs? na.
AlexDaniel well, actually I use spacemacs 06:42
llfourn magit is awesome :)
AlexDaniel which is something you might like if you are used to vi/vim keys
llfourn I wonder... what would happen with a perl6 grammar parsing when someone types something. Would you have to reparse the whole thing on every key stroke? 06:43
AlexDaniel llfourn: yeah, probably reparse everything when the user has stopped typing or something.
thomax hehe. "each statement changes the language" :-) 06:44
llfourn AlexDaniel: maybe there could be a way to only invalidate part of the match and sort of restart from some preserved state.
AlexDaniel llfourn: sure, maybe. Great idea, who's going to implement this? :) 06:45
llfourn someone a tad smarter than me!
06:46 ChoHag joined
thomax i mean, a good suport of common ide's is essential for the success. am i wrong? 06:46
llfourn thomax: You are probably right. Though maybe not the focus at this stage.
gfldex there is padre padre.perlide.org/ 06:47
06:50 pierre-vigier joined
thomax yes. i tried it some while back. but a ide can do more. like git integration, remote editing and things like that 06:50
crux can't install rakudo. install-core-dist.pl script didn't respect $(DESTDIR) :( 06:51
06:51 regreg joined
llfourn has never used DESTDIR 06:55
06:56 Guest24124 left 06:58 Elronnd joined
japhb . 07:13
llfourn do we have fork(2) at all in p6? 07:15
japhb I know I'm late to the party but: Congratulations, everyone! It was *really* nice to see that 6.c announcement on the advent calendar. :-)
jdv79 llfourn: doc.perl6.org/language/5to6-perlfunc#fork 07:16
so depends 07:17
llfourn jdv79: sweet that'll do it
jdv79 jnthn++ # cool guts post 07:18
07:20 CIAvash joined
ChoHag So who had to miss Christmas dinner to get it out yesterday? 07:21
awwaiid ChoHag: I think cross-timezone efforts helped avoid that to a degree :) 07:22
ChoHag Well congratulations. 07:25
thomax i hope there will be a posix star 07:27
for those people who read german: www.heise.de/developer/artikel/Larr...55947.html 07:30
07:30 vividsnow joined
thomax found also this intro: learnxinyminutes.com/docs/perl6/ 07:35
07:37 nige1 left
ChoHag This build has taken to melting my CPU. 07:38
Om nom nom! 07:39
And what happened to Attribute.has-accessor?
07:40 CIAvash left
lizmat ChoHag: Attribute.has_accessor 07:40
07:40 xpen joined
lizmat and good morning, #perl6! 07:41
ChoHag Oh _ is back en vogue now? :) 07:42
07:43 jjjj joined
ChoHag By the way attempting to run the debugger keeps forking moar moar processes. 07:43
07:43 jjjj left
ChoHag And whatever this precomp stuff is, it's broken. 07:45
07:48 mempko left, mempko joined
lizmat ChoHag: have you tried nuking install and rebuilding from scratch? 07:50
breakfast&
ChoHag Yes. 07:51
07:51 pierre-vigier left
ChoHag Well, moving the old one out of the way so I can easily switch back by way of a symlink when something inevitably breaks and I'm more interested right now in fixing my code than the platform it's running on. 07:52
I've been down this road before...
Anyway it hangs on this:
===SORRY!===
Constraint type check failed for parameter '$precomp-id'
07:53 pierre-vigier joined
ChoHag And doesn't create the .deps file associated with the module which causes it. 07:53
This might be because I have circular dependencies and so had to stuff everything in that same file. 07:54
Oh god the .precomp files hang around. 07:55
07:56 xpen left
ChoHag Can I just turn that off? I've always had that sort of crap cause more trouble than its worth. 07:56
07:56 mempko left
llfourn ChoHag: no precompilation; at the top of your file will do it 07:56
ChoHag And it smells like premature optimisation.
No I mean just turn precompilation off entirely. 07:57
llfourn there might be an env variable
07:58 CIAvash joined
ChoHag Oh for fuck's sake it created one in the installation directory. 07:59
08:02 nige1 joined 08:03 skids left
ChoHag Who's bright idea was it to ejaculate all over the filesystem? 08:03
You've probably pissed off every sysadmin who might consider using perl 6, and definitely pissed off this one. 08:04
Especially considering there's no clearly marked "stop fucking doing that" option anywhere.
08:05 pierre-vigier left, pierre-vigier joined 08:06 joydon joined 08:09 xtreak29 joined 08:14 xfix joined 08:16 protium joined 08:17 Xor_ joined 08:20 eunice_ joined 08:24 mindos joined 08:27 pierre-vigier left, st_iron joined
lizmat ChoHag: making precomp work was the main thing for 2015.12 ... making it more manageable will probably be in 2016.01 08:27
st_iron good morning my friends 08:28
AlexDaniel I understand the pain though. Mixed emotions! Although I'm happy with the speedup that is given by precomp, I'm not really happy with everything else :) 08:29
ChoHag To make it managable there needs to be a way to turn it off.
Surely everyone knows the rules of optimisation? 08:30
lizmat ChoHag: may I point out that without precomp, starting perl6 would take well over a minute ?
instead of the .1 second it takes now?
ChoHag Let me clarify that, which I'm attempting to do in a bug report except I can't find out how to report bugs (yes this has annoyed me so much I'm actually reporting an official bug rather than (just) ranting). 08:31
To make it managable there needs to be a way to turn AUTOMATIC precompilation off.
lizmat send a mail to [email@hidden.address]
08:32 labster left
ChoHag Basically, when running perl (from the cmdline and/or environment) and when building rakudo, there needs to be options to not use precompilation at all, not create any new precompilation files unless explicitely told to but use what's there, and put/look for precompilation files in a specific location. 08:33
AlexDaniel ChoHag: honestly, I don't think that anybody will be against this change if you implemented it. If not, then just open a bug report and wait till somebody gets his hands on it (though no precompilation at all is not something a lot of people are interested in) 08:36
ChoHag I tried looking through the code to see where I could turn it off, but it's a bit too hairy for me to grok before breakfast. 08:37
stmuk one suggestion was a RAKUDO_PRECOMP_DISABLE env var. I did look but, as you say, the code is hairy 08:39
AlexDaniel perhaps this could help: gist.github.com/jnthn/47a42b2e86e7e552b2e2
jdv79 what is the use case for no precomp? 08:40
ChoHag The fact that the premature optimisation code is hairy is a big red flag in and of itself by the way.
jdv79: It broke.
stmuk it's not very premature .. it was in panda originally and then removed (which was painful in terms of slowdown) 08:41
jdv79 ok. what how is it premature optimization?
AlexDaniel ChoHag: I don't really understand how that is a premature optimization though…
08:42 labster joined 08:43 domidumont joined
ChoHag Its automatic nature is premature. 08:43
stmuk I'd see disabling precomp as a short term hack and debugging aid 08:44
ChoHag Yes? 08:45
AlexDaniel besides that, it is just in time 08:46
08:47 domidumont left, domidumont joined
AlexDaniel otherwise we'd see folks here saying “I did 「perl6 -e 'say ‘hello world’'」 and I am waiting for two minutes, why is it so slow?” 08:48
ChoHag Where are bugs as sent to [email@hidden.address] tracked? 08:49
08:49 spider-mario joined
AlexDaniel rt.perl.org/ 08:50
ChoHag: click “public interface” and then “perl6”
ChoHag Ah there it is. 08:51
The 'public interface' button, that is.
08:52 kaare_ left
AlexDaniel in fact, I feel like precompilation is a bit too late. I wish there was a way to get it precompiled (which is what Debian package is going to do, maybe?) 08:54
09:00 TeamBlast joined 09:01 darutoko joined 09:06 telex left 09:07 telex joined 09:08 kjs joined
lizmat afk until late tonigh& 09:11
09:11 lizmat left
stmuk AlexDaniel: I think the best way of shipping perl 6 as binaries is probably docker which works cross-platform 09:14
there is an official rakudo star docker image and I'vebeen working on a "Jumbo Perl" docker image which ships Perl 5 and 6 together with many modules 09:15
09:16 xtreak29 left
Woodi hi #perl6 on Day 1 :) 09:16
09:16 firstdayonthejob joined 09:17 tef left 09:19 regreg left 09:20 jasabella left
Woodi geekosaur: debian have ghc in versions: 7.10.3 7.8.4 and 7.6.3; problem probably is that "stable" is long-term-maintanance-with-patches-only... 09:20
stmuk although debian is an excellent the history of vendor perls hasn't been good 09:22
Woodi about Perl6 as "language [that] will definitely change computing as we know it": maybe trend of functional features everywhere (eg. C++11) is already (partly) Perl6 fault ? :) 09:24
09:25 kjs_ joined
Woodi stmuk: what was a problem(s) ? 09:26
[Tux] test 50000 24.046 23.925 09:29
test-t 50000 13.876 13.754
csv-parser 50000 51.588 51.466
09:29 kanishka left
stmuk Woodi: well distros like RHEL and Debian tend to release at different times to Perl 5 which together with their long support cycles means often people end up using perls which are old and vendor supported rather than upstream supported 09:31
also they tend to patch perl 5 (and use threads etc not recommended upstream) and split up coreperl into packages 09:32
09:32 xtreak29 joined
stmuk its even more unlikely they can keep up with fast perl6 changes 09:32
[Tux] Oh, and thanks to all of you for enriching the programming culture! TimToady, jnthn, masak, lizmat, FROGGS_, nine, and all people that I nagged the past 1½ year with stupid questions and timeing issues 09:36
09:36 rindolf joined
Woodi stmuk: right, packages in distros are another layer of problems :) but I must say that after switching to debian (straight from RH9) I never needed to compile kernel (it's a bit humiliating to me...). just never needed it. probably some ppls don't need newest Perl :) 09:39
[Tux]++ :)
stmuk: actually this is strange/interesting... fear of changing to new version or a *bit* of work is needed (or bit of cash to spend) ? 09:41
09:42 mj41 joined
stmuk Woodi: they stick with old versions due to the scale of maintance issues with dependencies and because that's what most people in enterprises want 09:42
vendor perls are probably ok for some users but don't play well with installing your own modules from CPAN
mj41 Hello. And thank you all. 09:44
btw www.perl6.org/compilers/features is probably outdated ... Compact arrays, Shaped arrays/hashes, Basic module versioning, ... 09:46
09:46 kjs left
mj41 152 features ... 89% implemented, 5% partial, 6% missing ... github.com/mj41/Perl6-Analytics-re...d-features 09:47
09:50 xinming joined
[Tux] somehow I feel proud to have played a tiny role in this story 09:51
masak emerges briefly from the loving clutches of family and celebration 09:52
happy release, #perl6!
(I assume. haven't backlogged) :)
09:52 RabidGravy joined
ChoHag vendor perls can play well with installing modules from CPAN if there is some - any would be nice - co-ordination. 09:52
09:52 rurban joined
ChoHag But the programming world is full of prima donnas and NIHtivists. 09:53
masak jnthn++ # 6guts.wordpress.com/2015/12/26/ref...g-forward/
09:54 xinming_ left
spider-mario rakudo’s install scripts don’t seem to completely respect DESTDIR anymore 09:55
./perl6-m tools/build/install-core-dist.pl
Failed to open file /usr/share/perl6/repo.lock: permission denied
09:55 xinming_ joined
spider-mario DESTDIR seems lost along the way 09:55
ChoHag The install process is a bit shit all roung. 09:56
I've been telling myself to fix it for a while now.
stmuk ChoHag: there are technical solutions (local::lib) but anyone capable of installing CPAN in parallel with vendor perls isn't likely to bother but just install their own perl with perlbrew
llfourn spider-mario: you are the second person I have seen mentioning this today. Sounds like it's worth sending a email to [email@hidden.address]
ChoHag stmuk: Installing your own perl is in general an awful idea in pretty much any even vaguely enterprisey environment. 09:57
stmuk ChoHag: it depends on the environment and your requirements
ChoHag I have enough to maintain thanks with the idiot developers shitty code and the myriad CPAN modules they depend on.
I don't want to have to maintain my own perl as well. That's what vendors are *for*. 09:58
09:58 xinming left
llfourn ChoHag: I disagree. In enterprise it's especially important to lockdown your perl to specific version and isolated environment. 09:58
ChoHag Yes.
Hence, the vendor-supplied perl. 09:59
llfourn that doesn't let you do custom build arguments
spider-mario it does if the vendor is the enterprise
llfourn think he is confused with what vendor means 10:00
ChoHag If you want to do custom build arguments and perl itself is not your business, you're doing enterprise wrong.
10:00 xinming joined, xinming_ left
ChoHag Above all, minimise moving parts. 10:01
Building your own X is another moving part, for any X.
stmuk if its a small perl shop with light perl 5 use a vendor perl might be fine .. if you are using mojo, DBIXC etc its rarely an opion
llfourn that's what docker is for
ChoHag If your business doesn't directly depend on X, don't move it.
stmuk llfourn: yes I agree docker is the best solution
ChoHag Pah.
Docker's a solution looking for a problem.
stmuk no it means we can compile one perl6 and it runs on linux, mac and windows 10:02
10:02 pierre-vigier joined
llfourn it means I can test perl6 on debian without having to build a new VM 10:03
ChoHag Unless docker gained a hypervisor while I wasn't looking, there's no way that's true.
And if it did: Yay! Yet Another Hypervisor!
llfourn eh? it uses virtualbox? 10:04
stmuk ? it usually uses vmware on non-linux platfotms
ChoHag Is that new wheel round this time?
stmuk virtualbox I mean
spider-mario I’m going to try and bisect the issue
10:07 pierre-vigier left 10:09 virtualsue joined 10:10 pierre-vigier joined 10:11 kjs_ left 10:12 zakharyas joined 10:21 xpen joined 10:25 xinming_ joined, kjs_ joined 10:28 xinming left 10:31 nige1 left, kjs_ left 10:32 xpen left 10:33 Begi joined
spider-mario “Which backend(s) to use (or ALL for all of them)” 10:35
[insert “Use ALL the backends!” meme here] 10:36
ChoHag Oh that's just wonderful. Bug disappears when I insert 'say <number>' between each line it's potentially on. 10:37
10:39 station6945 joined, vendethiel joined
stmuk does windows have issues with directories containing dots? 10:40
10:40 xinming joined
RabidGravy shouldn't do, but that may not apply to cmd.exe/powershell whatever 10:41
spider-mario no issue that I know of 10:42
stmuk I was probably thinking of MSDOS years ago
10:43 xpen joined
stmuk so moar-v6.c is probably ok on windows rakudobrew? 10:43
vendethiel spider-mario: is Perl 6 an allowed language for prologin? :P
10:43 xinming_ left
spider-mario I think not, unfortunately. :p 10:43
it is for spoj, though 10:44
(but possibly an outdated version)
10:45 ChoHag left
spider-mario (and apparently not all problems) 10:45
for problem “FCTRL”, for example: 10:46
Languages:All except: NODEJS PERL 6 VB.net
10:46 personp joined
spider-mario not sure what their “All” list includes 10:46
10:47 joydon left
spider-mario but probably at least perl 6 :p 10:47
dalek href="https://perl6.org:">perl6.org: d3af479 | (Steve Mynott)++ | source/downloads/index.html:
better to track xmas than hard code a monthly release
10:48 xpen left, kjs_ joined 10:49 zakharyas left 10:51 ChoHag joined, xinming_ joined
vendethiel huh, okay. not sure why then 10:52
uruwi I'd like to document role parameters in perl6/doc, but I'm not sure where to add the text. 10:53
stmuk w00t! top of www.reddit.com/r/programming/ 10:54
10:54 xinming left
uruwi Would it be in the section on objects? 10:54
stmuk generally better comments than hackernews I think as well
RabidGravy uruwi, there's already some in doc.perl6.org/language/objects#Para...ized_Roles 10:55
uruwi Also, can classes use parameters ore are they limited to roles? 10:56
10:56 labster left 10:57 station6945 left
RabidGravy classes can't now 10:58
or no 10:59
ChoHag I heard that the semantics of ~~ with Pairs are unusual, and they seem to have changed in the last month so ... where can I find out what those semantics are?
stmuk backlogging and trial and error? :) 11:01
ChoHag Or: How can I use given/when on a Pair?
11:01 kjs_ left 11:03 personp left 11:04 virtualsue left, pierre-vigier left 11:06 kjs_ joined 11:07 pierre-vigier joined
timotimo o/ 11:07
stmuk \o 11:09
timotimo smart matching against a pair used to mean "call the method called .key and see if the result is equal to the .value"
if you want to smart match "is the thing equivalent to the pair", you'd do something like * eqv "bar" => 123
ChoHag I want to check both the key and value. 11:10
11:10 bpmedley_ joined
ChoHag given $foo.key { when "FOO" { given $foo.value { ... } when "BAR" { given $foo.value { ... } } etc. 11:10
But given $foo { when "FOO" => "?" { ... } when "BAR" => "!" { ... } } looks nicer. 11:11
RabidGravy m: say (f => 1) ~~ ( f => 1); say (f => 1) ~~ ( f => 2)
camelia rakudo-moar ec386e: OUTPUT«True␤False␤»
spider-mario hm, the build script also ignores the choice of nqp executable 11:12
Using /tmp/sdk/usr/bin/nqp-m (version 2015.11-20-g19073a7 / MoarVM 2015.11-19-g623eadf).
/usr/bin/nqp-m tools/build/gen-cat.nqp moar src/vm/moar/ModuleLoaderVMConfig.nqp src/Perl6/ModuleLoader.nqp > gen/moar/m-ModuleLoader.nqp
11:12 eunice_ left
ChoHag Oh it seems like it's falling down where I care about the key and value sometimes but only the key in others. 11:12
when foo => 1 { ... }; when foo => 2 { ... }; when bar => * { ... } 11:13
What does it do to/with the * in this case?
11:13 mj41 left, bpmedley left
RabidGravy is something weird about the moar repo? rakudobrew seems to be struggling to download it 11:14
ChoHag Pair's ACCEPTS with a Hash (or, since the 18th, another Pair) falls back to the value's ACCEPTS. Which ACCEPTS gets called when the value is a *? 11:15
RabidGravy ChoHag, it may well just be a Whatever
(i.e. it doesn't generate a closure there), but I don't know for sure 11:16
timotimo yeah, it doesn't ACCEPTS the value, i find that a bit sad, too
that's why i wrote a "supersmartmatch" function at some point %)
ChoHag m: given foo => 2 { when foo => 1 { say "foo" }; when foo => 2 { say "FOO!" }; when bar => * { say "bar?" }; when baz => "bing" { say "BingBong" }; default { say "Bugger..."} }
camelia rakudo-moar ec386e: OUTPUT«FOO!␤»
ChoHag m: given foo => 42 { when foo => 1 { say "foo" }; when foo => 2 { say "FOO!" }; when bar => * { say "bar?" }; when baz => "bing" { say "BingBong" }; default { say "Bugger..."} } 11:17
camelia rakudo-moar ec386e: OUTPUT«bar?␤»
timotimo github.com/MoarVM/MoarVM/blob/mast...p6#L49-L65
ChoHag m: given baz => "bing" { when foo => 1 { say "foo" }; when foo => 2 { say "FOO!" }; when bar => * { say "bar?" }; when baz => "bing" { say "BingBong" }; default { say "Bugger..."} }
camelia rakudo-moar ec386e: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5bing' (indicated by ⏏)␤ in block <unit> at /tmp/88QSDMNFf7 line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/88QSDMNFf7 line 1␤␤»
ChoHag That's a fun one... 11:18
Huh. Seems when any of the when clauses is a Pair with a number in its value slot, it tries to treat the value of the given expression as a number. 11:21
I think I'll put smartmatching Pairs squarely in the "not ready yet" category. 11:22
11:22 kaare_ joined
araujo anybody knows if there are perl6 bindings for clutter? 11:22
RabidGravy Isn't that behaviour exactly what was described above? 11:23
araujo, what's clutter?
Hrmph "fatal: unable to access 'github.com/perl6/nqp.git/': TCP connection reset by peer"
ChoHag RabidGravy: Me? 11:24
RabidGravy yes
calling the ACCEPTS on the value with the LHS
ChoHag Yes but I was expecting strings and numbers to magically interoperate. 11:25
timotimo clutter is a GTK thing for opengl-backed canvas stuff and putting widgets onto that, IIRC 11:26
ChoHag m: given "string" => "string" { when "string" => "string" { say "this works" } }
camelia rakudo-moar ec386e: OUTPUT«this works␤»
11:26 Sound joined
ChoHag m: given "string" => "string" { when "string" => "string" { say "this works" }; when "string" => 42 { say "this doesn't" } } 11:26
camelia rakudo-moar ec386e: OUTPUT«this works␤»
ChoHag m: given "string" => "string" { when "string" => 42 { say "this works" }; when "string" => "string" { say "this doesn't" } }
camelia rakudo-moar ec386e: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5string' (indicated by ⏏)␤ in block <unit> at /tmp/R9NorrBDoW line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/R9NorrBDoW line 1␤␤»
timotimo araujo: we only really have a primitive GTK binding, but if someone could implement support for the gtk introspection, we could have raw bindings for all gtk libraries "for free" 11:27
then it'd just be a matter of going in and implementing some sugar on top of these raw bindings
for people who don't want to use the raw bindings
RabidGravy is it possible that some kind of github "rate limiting" has killed rakudobrew? 11:30
11:30 kjs_ left 11:31 Sound left
ChoHag RabidGravy: While it would be nice, I don't think perl6 is that popular. 11:31
And I'm able to clone nqp fine.
At 1MiB/s 11:32
And climbing, somehow...
RabidGravy Hmm it just doesn't want to play here 11:33
11:34 xtreak29 left, Skarsnik joined 11:35 xtreak29 joined
timotimo have you tried turning the internet off and on? 11:37
no, not your internet. *the* internet!
11:37 rurban1 joined 11:39 rurban left 11:41 kjs_ joined
araujo timotimo, aah I see ... we need gir first 11:42
ok
timotimo it's not a "need" 11:43
you can write clutter bindings manually, of course
it could just be a bit more work :)
araujo right
timotimo, so, we don't have any on going work for gir bindings?
_nadim Good Morning 11:44
11:44 xpen joined
ChoHag araujo: They've literally only just got the language itself to work. 11:44
Like, yesterday.
araujo RabidGravy, wiki.gnome.org/Projects/Clutter 11:45
ChoHag, uh?
11:46 virtualsue joined
nine ChoHag: thanks for calling my work of the past three months, where I scaled down social calls to a minimum and usually just came home from work to hack till late at night "shit". Especially on this day of celebrations. 11:46
ChoHag Any time.
timotimo your interpretation of the release is ... interesting 11:48
there's nothing that'd have stopped someone interested to build a gir binding a year or two ago
ChoHag For the record, as detailed in the bug report, the problems with it are its automatic nature coupled with the inability to "just turn it off" (as a user, not as a developer - I know of the no precompilation pragma), and its penchant to spew files all over the place.
timotimo nine: personally, i think you've achieved more than i would have expected 11:49
11:50 xpen left
ChoHag timotimo: I mean the language itself is still cooling down from its time in the kiln - anything more would be great, and in many cases is actually present, but can hardly be expected. 11:50
nine ChoHag: I must admit, I'm really buffled why if you have such strong opinions about this, you completely ignored the public review of the design written by jnthn++, the discussions on this channel, the publicly available branch that was there for 1 1/2 months, just to wait for the release to voice your concerns.
_nadim I have a question about captures. I am going to link to an example, I will rewrite it with multis, but it is a good example of what I wonder about when it comes to captures. here it inopaste.linux-dev.org/?907490 11:51
ChoHag I didn't see any public review happening. Unfortunately my social calls are non-negotiable.
11:51 FranklyBogus joined
araujo well, I don't think it is totally accurate to say that the language just got to work yesterday :P 11:51
ChoHag Or forunately, depending on one's opinion of family.
nine ChoHag: I guess some people just like to shit all over other people's work instead of engaging in a constructive manner. Well, I don't have to understand everyone.
araujo I can't find any gir binding project around, that's why I ask here 11:52
FranklyBogus Calendar-specific non-judgemental greetings to you all
ChoHag And, again, I have no problem with the idea of precompilation, nor even most of its implementation, just with the assumption that the world is a perfect place.
11:52 Psyche^ joined
_nadim the question is, is it possible to call filter with some arguments missing, you can see that depending on phas the last sequences has different amount of elements 11:52
virtualsue ChoHag: why don't you chill out
FranklyBogus Would one of you very smart people be able to explain why this doesn't work?
m: sub ∑(\x) {[+] x} ; ∑ 1..9
camelia rakudo-moar ec386e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/W6vVKkDL83␤Missing block␤at /tmp/W6vVKkDL83:1␤------> 3sub7⏏5 ∑(\x) {[+] x} ; ∑ 1..9␤ expecting any of:␤ new name to be defined␤»
RabidGravy araujo, sounds like a great project for someone to pick up :)
llfourn nine++ release would not have been the same without it. I'm currently using the new compunit interface to do cool things :). Thank you!
ChoHag I'm entirely chill.
virtualsue you rant a lot for a chill person then.
ChoHag That's how I stay chill. 11:53
virtualsue you are pissing other people off
RabidGravy that's nice.
araujo RabidGravy, yeah, I might take a look at this
:)
Congrats for the release!
RabidGravy araujo++ # do it! do it!
virtualsue nine++ # stepped up and did a fabulous amount of work
araujo :D
ChoHag That, I'm afraid, is not my problem. 11:54
I don't get pissed off with things not under my control, and things under my control I fix so that they don't piss me off. 11:55
virtualsue <shrug> well i suppose jerks would hit this channel eventually
11:55 Psyche^_ left
llfourn awaits ChoHag's patch to fix all the things he complains about 11:56
11:56 jasanj joined
FranklyBogus m: sub Σ(\x) {[+] x};Σ 1..9 11:56
camelia ( no output )
FranklyBogus m: sub Σ(\x) {[+] x};say Σ 1..9
camelia rakudo-moar ec386e: OUTPUT«45␤»
FranklyBogus ah, wrong sigma. Never mind me then. Carry on.
11:57 pierre-vigier left
ChoHag If nine chooses to see offense rather than criticism, that's his lookout. 11:58
llfourn m: sub t { say $*d }; my $*d = 1; await do for ^100 { start { t() }} # looks like a bug
camelia rakudo-moar ec386e: OUTPUT«1␤Memory allocation failed; could not allocate 15192 bytes␤»
llfourn hmm well I get: Dynamic variable $*d not found 11:59
ChoHag: people can differentiate easier between offence and criticism if you don't call things "shit" fyi 12:00
RabidGravy llfourn++ 12:01
FranklyBogus llfourn: I get Cannot invoke this object (REPR: Null) 12:02
\o/
also then the repl crashes 12:03
llfourn FranklyBogus: if you do perl6 -e '..'?
timotimo god, the repl ;_;
12:04 pmurias joined
FranklyBogus llfourn: then I get Dynamic variable $*d not found... actually, 2nd time around the repl gives the same and didn't crash, so ... yeah. Oddness 12:04
llfourn FranklyBogus: cool. yeah thready code can do weird things I guess. 12:05
m: sub t { say $*d }; my $*d = 1; await do for ^1 { start { t() }} # looks like a bug 12:06
camelia rakudo-moar ec386e: OUTPUT«Dynamic variable $*d not found␤ in block <unit> at /tmp/vYXdaHqO8S line 1␤␤»
llfourn turns out you don't even need the 100
12:06 pmurias left
llfourn m: sub t { say $*d }; my $*d = 1; await start { t() } 12:06
12:06 rurban1 left
camelia rakudo-moar ec386e: OUTPUT«1␤» 12:06
llfourn but you do need the for loop :P
m: sub t { say $*d }; my $*d = 1; await do { start { t() } }
camelia rakudo-moar ec386e: OUTPUT«Dynamic variable $*d not found␤ in block <unit> at /tmp/ns2kWcTZYG line 1␤␤»
12:06 pmurias joined 12:07 vendethiel left
llfourn that will be the rt :) 12:07
12:08 TEttinger left
FranklyBogus m: sub t { say $*d }; my $*d = 1; await t() 12:09
camelia rakudo-moar ec386e: OUTPUT«1␤Must specify a Promise or Channel to await on (got a Bool)␤ in block <unit> at /tmp/OYWlDBr_er line 1␤␤»
RabidGravy :)
FranklyBogus hmm... that gave me `Dynamic variable $*d not found` as well, so I thought it was hitting that error before the await one
but apparently I'm just a freak
> sub t { say $*d }; my $*d = 1 1 > t() Dynamic variable $*d not found in sub t at <unknown file> line 1 in block <unit> at <unknown file> line 1 12:10
RabidGravy should that even compile? 12:12
llfourn FranklyBogus: loo
FranklyBogus: looks weird
FranklyBogus ... I pasted from the repl again. It just cut out the line breaks 12:13
12:13 AlexDani` joined
llfourn FranklyBogus: .... you're right dynamic variables are broken in repl 12:14
RabidGravy ah
12:14 zengargoylew left
llfourn probably not the same thing as the thread thing 12:14
12:14 zengargoylew joined
FranklyBogus probably not, no 12:14
12:15 loren left
llfourn the question is: have they ever worked? 12:15
FranklyBogus ¯\_(ツ)_/¯ 12:16
nine llfourn: can you tell me more about those cool things? :)
12:16 AlexDaniel left
llfourn nine: I was/am using it to precompile the .pod in the docs. 12:17
the htmlifying that is. And introducing some concurrency with start until I ran into the above bug. 12:18
12:18 pmurias left
llfourn right no htmlify will reparse everything every time you build the docs :\ 12:18
12:19 ChoHag left
llfourn nine: the only gnarly bit about it was having to use nqp to do: my $pod = nqp::atkey($handle.unit,'$=pod')[0]; 12:19
12:20 pmurias joined
peteretep Does anyone know if installation works on directories with spaces in the names? 12:22
RabidGravy Okay, that's weird rakudobrew can get the stuff now, but it appears that the RPi can get on with it but the other little computer can't get libuv
nine llfourn: I wonder why you need nqp for that?
llfourn nine: $handle.unit returns a knowhow
thomax found an error in DBIish. when $sth.allrows(:array-of-hash) i get a failure for float values.
nine llfourn: ah, of course, it's a lexpad
thomax with fetchall_arrayref it gets the values right 12:23
RabidGravy peteretep, I for one have never tried 12:24
llfourn nine: yep, being able to access arbitrary stuff in UNIT is probably going to be a use case so some p6izing would be cool :)
(if that's even the correct term here :P) 12:25
thomax and why am i forced to write 'if (cond)' or 'if cond' and can't use 'if(cond)'. it is like pythons indent.
nine llfourn: I think the proper term is "hllizing" which ought to be specializable to "p6izing" ;)
llfourn gotcha 12:26
12:26 ChoHag joined
peteretep RabidGravy: Well, time to try again :-) I'll give it a whirl 12:26
ISTR it fails late in the game too, which has been particularly irritating the other few times I've tried it
RabidGravy: Also, merry xmas gellyfish :-) 12:27
nine llfourn: CompUnit::Handle lets you access several keys that have information needed for proper loading of the module, but there's no generic way to access a key. Maybe we can come up with a good interface.
RabidGravy :)
merry xmas to you too
12:28 loren joined
peteretep OK, rakudobrew was pretty quick to build 12:28
tha's nice
llfourn nine: yes! it's great. I am also writing an autodoc tool that takes everything in META6.json and does .export-package etc and then uses .WHY on all the stuff it there then => "this module exports the following symbols.." in README.md
peteretep Wait, did "rakudobrew build moar v6.c " install Perl6? 12:29
nine llfourn: wow, that sounds amazing :)
RabidGravy thomax, it's not like pythons indent at all, at some point there has to be unamibiguous syntax
peteretep That was literally unbelievably fast...
llfourn nine: it's working out pretty well so far :)
RabidGravy peteretep, yes it will have installed it in somewhere you have to add to your path, but it installed it 12:30
peteretep I am skeptical of the ~3m build time
nine .tell ShimmerFairy I think I never told you directly how much I respect you for the public apology you posted back then. Takes great courage to do that. Thank you!
yoleaux nine: I'll pass your message to ShimmerFairy.
nine peteretep: 3 minutes sounds about right 12:31
on a somewhat decent machine
peteretep OK
awsome.
12:31 lucasb joined, xtreak29 left
peteretep ISTR last time I tried this it took hours, but maybe I am misremembering 12:31
or maybe that was an old machine
RabidGravy well it's somewhere in the region of twenty minutes on the RPi2 but yeah
thomax RabidGravy: i'm forced to change the way i write code. right? bad idea. the same argument you use, is also right for the indent thingy of python.
peteretep That's not at all bad 12:32
nine peteretep: I'm glad, I only joined the core team when compilation time was way down already. I'm too impatient and much too used to quick hack-compile-try cycles :)
peteretep heh
OK, I wonder if I have any sufficiently simple modules to port 12:33
nine I've got about 90 minutes of hacking time. Any urgent fixes needed?
thomax nine: also on modules?
peteretep What's the Perl6 name for AUTOLOAD?
as in sub AUTLOAD 12:34
RabidGravy method FALLBACK
nine thomax: if I have a commit bit, I may be able to do something
thomax nine: found an error in DBIish. when $sth.allrows(:array-of-hash) i get a failure for float values.
RabidGravy as in
thomax nine: should be an easy one. 12:35
peteretep RabidGravy: Does Perl6 make: search.cpan.org/~sargie/Class-ConfigHash-0.001/ irrelevant?
Or is that a useful thing for Perl6 too?
nine thomax: do you have an easy test case for me to reproduce? Some SQL to set up the db and some failing code?
RabidGravy m: class Foo { method FALLBACK(*@f) { say @f } }; Foo.new.foo
camelia rakudo-moar ec386e: OUTPUT«[foo]␤»
peteretep Is 'new' a magical method? Is there any way to rename it? 12:36
nine: I'd like "doc.perl6.org/type/Hash" to have made 'is Map {}' clickable :-D
thomax nine: use the sqlite.p6 from the examples, change the fetchall_arrayref into allrows and use dd on the return values
nine peteretep: you can still call your constructor whatever you like. However all classes inherit a default .new from Mu 12:37
peteretep Can I kill that some how, if I should so wish?
Hrm, I could redefine new() presumably
RabidGravy peteretep, the module could be useful, but I'd go with making a new anon class on the fly rather than FALLBACK
_nadim Is there a way to query if a multi will match aset of arguments? Rather than calling it and catching an exception.
peteretep tries 12:38
llfourn _nadim: yes. \(stuff) ~~ &the-dispatcher.signature 12:39
timotimo i washed my car and it didn't start raining ... something's wrong here
RabidGravy there's still a 'bless' (albeit a method) or you can go deeper with CREATE and stuff
llfourn _nadim: wait forget that..
peteretep That's sad, no Perl6 syntax for SublimeText 12:40
_nadim llfourn: I am waiting :)
nine thomax: how do I notice that something's wrong? What would be the expected value?
RabidGravy Stage parse : 187.668 # gigabyte brix with two core celeron
llfourn _nadim: you probably want. &the-dispatcher.candidates.first: { \(stuff) ~~ .signature } 12:41
nine timotimo: worry!
RabidGravy it's grey here but no rain
12:42 Skarsnik_ joined
_nadim RabidGravy, peteretep: if Iunderstand it right, that module is just to add sugar so one can write it with one -> rather than a {}, in that case, wouldn't an operator bne better? 12:42
thomax nine: it write and reads price and amount field from the db, with allrows(:array-of-hash) the value is always 'failure' with fetchall_arrayrefs() it get's the correct values
_nadim llfourn: i write that in a corner of the file and I'll get back playing with it later, thanks
timotimo FranklyBogus: i'd like to improve the error you got for the "wrong sigma"; clearly we could have said "this is not a valid name for a sub" instead of "missing block"
RabidGravy _nadim, well one could augment Hash with a FALLBACK which would be fun, but then all your hashes get that behaviour 12:44
nine _nadim: my $arrayref = $sth.allrows(:array-of-hash); dd $arrayref; # doesn't give me any failure? 12:45
12:45 kjs_ left, Skarsnik left
_nadim nine: sure that was for me? 12:45
12:46 Skarsnik_ is now known as Skarsnik
Skarsnik thomax, hm what is the error? 12:46
peteretep _nadim: It's slightly more complicated, in that it dies with useful error messages
nine thomax: my $arrayref = $sth.allrows(:array-of-hash); dd $arrayref; # doesn't give me any failure? 12:47
_nadim RabidGravy: I found out about Augment yesterday, I must admit that I am more than suspicious about that one, spcially if one can not track where things have been augmented.
nine _nadim: no, I was just confused :)
_nadim peteretep: noting stops the operator to die with a good error messsage too. my description of what it did was simple to keep it short, not to reduce its usefulness
nine: aren't we all :)
thomax nine: wow! right! than it might be a bug in Data::Dump. 12:48
nine: wait, i pastbin the outputs
peteretep _nadim: I think the problem with implementing it as an operator is that it needs context of previously invocations
Perl 5: $object->foo->bar->baz - the final -> needs to know it was reached via foo->bar
12:49 kjs_ joined
peteretep is just playing 12:49
_nadim peteretep: I wrote search.cpan.org/~nkh/Config-Hierarc...rchical.pm for a heavy config have a look
peteretep: no problem with that, you just need to return something for each ->. EG: ->foo returns an object you can apply -> on 12:50
peteretep Does that have an advantage over using .?
_nadim I wouldn't know :)
12:50 nige1 joined
peteretep OK 12:50
Skarsnik Oh yes Data::Dump can't display float
_nadim but it is how $object.perl.say works, chaining calls 12:51
peteretep nige1: Merry Xmas
That I think is closer to the Prel5 version?
thomax nine: pastebin.com/QJ7S6rSP
cognominal When trying to install WebSocket, panda blows up trying to install HTTP::Server::Tiny with a "Cannot unbox a type object" which points at github.com/tadzik/panda/blob/maste...ler.pm#L61 12:52
nine: as a panda expert, do you have a clue ?
Skarsnik Try running it again/ 12:53
?
nine cognominal: upgrade. I fixed that one yesterday
thomax nine: for sure i would fix it myself. but these are my first steps after install p6. and i'm still puzzled with 'how i can i debug a package before it gets precompiled and vanish behind a anonymous hash-named file as a binary) 12:54
nine thomax: the file names you see in error messages are still the names of readable source files, despite the weird names 12:55
cognominal thx, Already upgraded, I suspect I must erase ~/.perl6 again
Skarsnik I made a PR to fix Data::Dump and numeric display x) 12:56
ShimmerFairy nine: thanks :) also, backlogging a bit, was there any reason the .precomp directory couldn't have just been in some central location like ~/.perl6 instead of always the current directory? (I'd guess either "not all OSes have a good choice of location" and/or "centralizing CURLF-y stuff would've been too interesting for the time constraint")
yoleaux 12:30Z <nine> ShimmerFairy: I think I never told you directly how much I respect you for the public apology you posted back then. Takes great courage to do that. Thank you!
thomax Skarsnik: so, you mean it's a know bug. right? but it works in one dump, in the other it didn't (see the pastebin above)
Skarsnik Look closer at the type :) 12:57
12:57 tef joined
FranklyBogus timotimo: grand, thanks. Although I'd also like apple to change 'alt+w' to give the unicode variant :) 12:57
Skarsnik The first one work because all the fetch_ return stuff as Str
nine ShimmerFairy: precomp files _do_ get written to ~/.perl6 unless you use "use lib", "-I" or "PERL6LIB". Then we create a .precomp directory in the lib directory you included and load from and write to there.
timotimo thomax: i don't know if anybody told you, but you can use Slang::Tuxic which will allow you to use if(...) like if (...) and if ... 12:58
thomax Skarsnik: ah, yes. now i see what you mean. but it's know already?
timotimo among other things
nine ShimmerFairy: the rationale for that is given in gist.github.com/jnthn/47a42b2e86e7e552b2e2 (I think under the Precompilation heading)
thomax timotimo: aah! that sounds cool.
FranklyBogus m: sub infix:<Σ>( \x, &fn ) {[+] map &fn, x} ; my $a = (1..9000) Σ { 1 / $_² } ; my $b = π² / 6 ; say ($b - $a).Rat
camelia rakudo-moar ec386e: OUTPUT«0.000111␤»
Skarsnik thomax, Data::Dump is not really that used since we have a .perl or a dd already in Core. I just saw this bug 3 days ago while trying to debug DBIish tests ~~ 12:59
timotimo is still catching up on backlog
nine cognominal: if you need to erase ~/.perl6 to get something going, that's a bug I'd like to hear about
cognominal: preferably before you erase :) Otherwise it will be hard to diagnose
cognominal nine: too late 13:00
13:00 hankache joined
thomax Skarsnik: if one have really huge data structure, i think, dd is not really helpful. 13:01
hankache Hello #perl6
Skarsnik Is there a way to repport NC/Test related issue outside RT? It could be useful to have better visibility on this stuff that is not really "core"/less critical 13:02
13:02 shibly joined
Skarsnik thomax, there is a Data::Pretty that maybe work better? 13:03
shibly Will perl6 be unsupported in future?
ShimmerFairy nine: I think what you're looking for is perhaps under "CompUnit::Repository::FileSystem". But in any case it still seems like a LTA solution to me. fwiw one small perl6 thing I have has a .precomp at the top level, *and* in an otherwise-empty lib/ I don't recall creating.
Skarsnik unsupported?
ZoffixWin shibly, what do you mean, in the future?
spider-mario I may be wrong, but I have the impression that nqp’s Configure.pl translates ~ in --prefix to $HOME, but Moar’s doesn’t
(I ended up with a directory named '~', literally)
13:03 halto joined
ShimmerFairy (lib/.precomp is a bit older than the top-level one, so who knows?) 13:03
shibly Will perl5 be unsupported in future? 13:04
sorry that will be perl5
timotimo shibly: it'll be distinctly hard to find people to support perl6 for you once the earth has been swallowed up by the sun, unless humans have traveled beyond our current solar system
ZoffixWin shibly, in a distant future, yes
timotimo perl5 will still be supported for the forseeable future.
Skarsnik shibly, maybe? perl6 and perl5 are quite detached in a sense perl6 is not here to replace perl5 (now)
shibly When will perl5 start to be unsupported?
ZoffixWin shibly, this is a wrong channel to ask that question. Perl 5 is a different language with a different set of developers. 13:05
timotimo shibly: probably in 60 or 100 years
nine ShimmerFairy: ah, now I have it: gist.github.com/jnthn/47a42b2e86e7...positories the first bullet point
thomax Skarsnik: can't install Data::Pretty, it fails on tests
llfourn shibly: it will become unsupported a decade or so after fortan in my estimations
fortran*
cognominal nine: I changed the --prefix option what happens if many different Perl 6 compiled with different prefixes ends up sharing the same ~/.perl6 ? Seems a recipe for disaster 13:06
timotimo why are people worrying about perl5 becoming unsupported? aren't we blasting the "perl5 and perl6 are being developed independently" message at full volume across all channels already?
ZoffixWin spider-mario, are you sure you didn't quote it? The translation would happen by bash, before it got to anything
hankache ZoffixWin is it too much of a burden to make doc.perl6.org/ *look like* perl6.org? 13:07
hello cognominal
llfourn cognominal: precomp is stored seperately for each build I think
spider-mario I used the exact same command line for both moarvm and nqp
cognominal salut hankache
ShimmerFairy nine: ah I see. To be clear my idea would be something like ~/.perl6/localthings/... , not to mingle it with the "normal" ~/.perl6/version/lib stuff :)
spider-mario fish probably didn’t translate it for either because of the --prefix= before
hankache cognominal long time no see
spider-mario (confirmed using echo) 13:08
but nqp’s Configure still translated it, apparently
llfourn cognominal: ie github.com/rakudo/rakudo/blob/nom/...ile.pm#L42
cognominal lifourn++, nice to know 13:09
thomax timotimo: use Slang::Tuxic; if(True) { say "true"; } # didn't work for me
nine cognominal: jnthn++ thought about that issue ahead :)
spider-mario I don’t mind not translating ~ in addition to the shell, but it might be better if it were consistent among all Configure scripts
nine It's really amazing how many issues he's forseen and taken into account properly.
13:10 loren left
cognominal jnthn deserves his architect hat :) 13:10
13:10 loren joined
nine ShimmerFairy: yes, I guess we could for example take a sha hash of the lib's path and create a subdirectory named after this hash in ~/.perl6 to store the precomp files. 13:10
ShimmerFairy: of course, that assumes that we do actually have a writable ~/.perl6 :) It's really hard to predict what people's systems are like 13:11
cognominal hankache, long time no C too except messing with MoarVM
timotimo thomax: in that case i must have been mistaken about Tuxic. i thought it was there specifically to allow no-space after if and other keywords :(
thomax nine: everything is better than anonymous file names :-)
hankache what is the state of Pod6?
llfourn nine: I can easily see that directory piling up with a bunch of stuff though. Some of it would never get deleted.
ShimmerFairy nine: yeah, or something like ~/.perl6/something/home-projects-p6-foobar-lib :P . My main concern is the idea of .precomp sneaking into git repos and zip files (I'm reminded in particular of OSX hidden file DS_STORE garbage sneaking into zip files) 13:12
thomax timotimo: np, but this would be worth to look after for my own slang >:)
llfourn hankache: it's not yet to spec but it does the job for some situations at least
ZoffixWin hankache, it looks the same if you squint just right! :) 13:13
TBH, I'm kinda fine with the way the current docs.perl6.org look
llfourn hankache: C<> is not space preserving for example, S<> and T<> don't exist, pod doesn't work in #|
ShimmerFairy Ah, that reminds me, I should get back to that SUPERNOVA thing of mine :P
13:14 FranklyBogus left
hankache ZoffixWin ;) 13:14
ZoffixWin hankache, I'd think it'd be pretty easy to convert it to same look as perl6.org tho, probably all that needs to be done is the header/footer templates to be changed to what's on perl6.org
Skarsnik Pod6 need a documentation outside the spec x)
llfourn Skarsnik: we sure do :)
13:15 shibly left
llfourn (especially since the spec was 403 when I looked last!) 13:15
nine ShimmerFairy: I would love to see people crowding together and collecting such use cases and thoughts in a central location, so we can iron out an updated design. After implementing jnthn's design, I actually feel competent enough to speculate about future design in this area.
ZoffixWin #|? ... What's that?
13:15 timotimo left
hankache ZoffixWin well my argument is: having a persistent look & feel across all of perl6.org 13:15
nine thomax: to be clear, I do think that we can improve those unreadable file names (at least in error messages)
llfourn m: #|{ looks some docs } sub wee { }; say &wee.WHY; 13:16
camelia rakudo-moar ec386e: OUTPUT«looks some docs␤»
ZoffixWin hankache, yeah, I think at some point I wanted to make doc.perl6.org look same, but then stopped
llfourn ZoffixWin: ^^
ZoffixWin #| is literally a "hash pipe" lulz
13:16 kjs joined
cognominal now I have the dreadful ===SORRY!=== 13:16
Could not find Shell::Command in:
/Users/cog/.perl6/2015.12
llfourn m: #|{ looks C<i should work> } sub wee { }; say &wee.WHY.perl;
camelia rakudo-moar ec386e: OUTPUT«Pod::Block::Declarator.new(WHEREFORE => sub wee () { #`(Sub|55814656) ... }, config => {}, contents => [])␤»
nine cognominal: freeze!
hankache llfourn indeed I already gave pod6 a try
13:16 pierre-vigier joined
nine cognominal: please, can you upload your ~/.perl6, your install/share/perl6 and any terminal output of your installation process somewhere? 13:17
cognominal I guess I once fixed that by removing the installed executable and downloading a fresh rakudo.
nine cognominal: do you use rakudobrew?
hankache I would love to rewrite perl6intro.com in pod6. As a matter of fact i started in pod6 but dropped it after the 4th chapter
thomax ZoffixWin: is a hash pipe a shebang++ ?
cognominal nine, I don't use rakudobrew 13:18
hankache ShimmerFairy++ #SUPERNOVA
ZoffixWin thomax, hash is a drug: en.wikipedia.org/wiki/Hashish
.... that you can smoke with a pipe....
thomax ZoffixWin: i know
ZoffixWin k
13:18 pierre-vigier left
cognominal nine: next time, I run into it I will send you everything :) 13:18
llfourn gets it now
hankache: I'm working on it a bit so hopefully it will be getting better :) 13:21
RabidGravy "Stage parse : 560.782" # RPi2
hankache llfourn excellent news keep up the good work 13:22
++llfourn
13:22 pierre-vigier joined
_nadim how do I get all the arguments a sub/method was called with. ala @_, the capture I guess. 13:23
llfourn _nadim: that's how I do it 13:24
Skarsnik hm, where is the announce for perl6 release. Is that the advent post on rakudo?
thomax yepp
13:24 timo2timo joined
timo2timo seems like the server my irc client runs on fell off the 'net 13:25
_nadim llfourn: with @_ ?
timo2timo thomax: it seems like Slang::Tuxic wants exactly the opposite of what you want
gfldex hankache: i may be able to help you getting perl6intro.pod rendered in html. Do you still got the .pod-file laying around?
llfourn nine: I admit I have never used @_ 13:26
_nadim: ^^
nine _nadim: sub foo(|c) { say c.list, c.hash; }
thomax nods @ timo2timo
hankache gfldex i used Pod::To::HTML at the time. Unfortunately only the first 3-4 chapters are in pod. afterwards i moved to sciidoctor 13:27
88asciidocotr
**asciidoctor
13:28 kid51 joined
_nadim nine: thanks 13:28
hankache gfldex what do you have in mind?
13:28 pierre-vigier left
Skarsnik We fail to have 500 modules for x-mas x) 13:29
hankache gfldex i encountered many issues with pod6, a lot of stuff wasn't possible
13:29 cdg joined
_nadim nine: althoug I stee want the sub to have a signature sub foo($, $, ...) {call_another_sub(@_ish) } 13:29
13:30 kjs_ left
llfourn hankache: it is a known area of neglect -- most of it hasn't been touched since 2011 13:30
there are just more important things to work on for the core devs I'd say
13:30 kjs left
timo2timo yeah, i've touched Pod6 a little bit, with equally little success 13:31
llfourn I've made a PR github.com/rakudo/rakudo/pull/651/files to make some improvements -- if I get some encouragement I'll keep going :)
timo2timo however, ShimmerFairy is currently putting a lot of work into pod parsing with the project i forgot the name of
shimmeryfairy.wordpress.com/2015/1...supernova/ - check it out! 13:32
ShimmerFairy SUPERNOVA, I'm just now getting back into it since I was reminded :)
_nadim sends encouragments to llfourn
timo2timo did i overpromise? :)
ShimmerFairy++ # pod6 work
ShimmerFairy timo2timo: nah, just me bouncing around a million different projects that makes me leave stuff alone at times :P 13:33
13:33 st_iron left
llfourn oh cool I didn't even know about this 13:33
hankache sends encouragements to llfourn and ShimmerFairy
13:34 mj41 joined
llfourn I was thinking that pod should be it's own LANG. 13:34
thomax ++
gfldex design.perl6.org/S26.html is producing "Forbidden
You don't have permission to access /S26.html on this server."
ShimmerFairy atm I'm going to work on the AST side of the basic table parsing I did last time 'round.
RabidGravy Skarsnik, but 483 isn't too far off the mark
ShimmerFairy llfourn: yeah, one of my goals is that the Pod stuff is its own thing on the language braid, instead of being a part of the $~MAIN stuff. 13:35
Skarsnik I am curious why no body wrote a ORM using .WHY x)
hankache if we can have something a la asciidoctor.org/ that would be splendid
llfourn ShimmerFairy: you've made my day! I thought I was all alone in that endevour :D
and you've already done all this work!
Skarsnik Should be even easier now with typed value on DBIish x)
RabidGravy Skarsnik, because there is a world shortage of the required drugs? 13:36
Skarsnik ?
ShimmerFairy llfourn: thank you :) . I knew my work was never going to make 6.c, but perhaps 6.d (which is my guess for the next version)?
llfourn ShimmerFairy: lets make it happen :D
13:37 rindolf left
llfourn gfldex: re the 403 -- I know I have pestered moritz a bit about it 13:38
stmuk I wonder what the pull graphs look like for rakudo today? 13:39
timo2timo gfldex: i just fixed the permissions; dunno if i also have to change them on the source system where it gets rsynced from.
nine cognominal: bash-3.2$ panda bootstrap.pl
cognominal: that should have been "perl6 bootstrap.pl" :)
13:39 halto left 13:40 nige1 left, pierre-vigier joined
cognominal oops 13:40
13:42 xpen joined 13:43 st_iron joined, xpen left 13:44 timo joined
cognominal nine, on the other hand, a summary message like "possibly out of sync panda" would have clued me in. 13:45
13:45 timo is now known as timotimo
hankache timotimo :) 13:45
timo2timo it's a me! 13:46
timotimo
tadzik hm, I get "cannot unbox a type object" when installing HTTP::UA
timotimo: :D
timo2timo tadzik: already reported. how about you fix it? :)
tadzik :o
cognominal nine, anyway I get the exact same error after doing "perl6 bootstrap.pl"
tadzik I wanted a peaceful day of writing an http client, not hard, necessary stuff! :P 13:47
13:47 xpen joined
nine tadzik: are you on current panda master? 13:47
13:47 xpen left
cognominal nine, I mean the perl6 bootstrap.pl goes fine. But panda install WebSocket whines 13:47
tadzik nine: I thought so. Let me see 13:48
nine cognominal: which begs the question, where the hell panda's bootstrap.pl installed to
hankache what are we using to highlight Perl 6 code on doc.perl6.org?
nine cognominal: if we can solve this question, we can fix the bug
thomax what is websocket? implementation for the js vm?
nine cognominal: can you send me the current info package?
Skarsnik Websocket are... websocket, some kind of socket using HTTP 13:49
tadzik nine: oh, I see the patch. That's odd that it's needed, innit?
nine tadzik: absolutely!
13:49 mj41 left
nine tadzik: more so as it works without most of the time despite hitting the exact same code path again and again. But it fails at the same point every time. E.g. I have to nuke install/share/perl6, run bootstrap.pl and install Task::Star and it fails at Grammar::Debugger 13:50
tadzik o_O
13:51 xpen joined, pierre-vigier left
jdv79 anyone know if this person has been in here?: thespokedblog.com/2015/12/18/perl-6...well-8230/ 13:52
13:52 mj41 joined, leont joined
cognominal nine: which info package? 13:53
13:53 xpen left
nine cognominal: same as you emailed before 13:54
cognominal ok 13:55
RabidGravy jdv79, of course not, the sport of "writing a whining blog post about Perl 6 without engaging the community" is increasingly popular
jdv79 .tell lizmat i saw your ticket about spec'ing packages(mods,classes,etc) vs dist - was there any further movement on that? 13:56
yoleaux jdv79: I'll pass your message to lizmat.
RabidGravy that one does seem to be particularly mighty in it's complete mis-understanding of the issue, how CPAN works and what is being proposed though
jdv79 I wasn't sure if i missed them cause the backlog did get crazy lately and i gave up largely
timotimo jdv79: that's a spam post
jdv79: it scooped up ShimmerFairy's post from like 2 years ago, reposted it. 13:57
jdv79 oh, thanks ShimmerFairy:)
13:57 mj41 left
timotimo you can find the original post, which is also about 2x as long, on the "rakudo deathstar" 13:57
jdv79 haha
timotimo if it seems like it's completely mis-understanding the current situation of rakudo and such ... yeah, that explains it 13:58
jdv79 i thought it seemed a little famililar but couldn't be sure
thanks
13:58 itaipu joined
hankache people can whine as much as they want. Not that it makes a difference 13:59
on that note, can't we create our own CPAN? 14:00
14:00 pierre-vigier joined
llfourn is anyone suggesting we put perl6 modules on cpan? 14:00
Skarsnik I don't think modules are ready to be on CPAN 14:01
pierre-vigier m: my Numeric @a[2,2] = (1,2),(3,4);my Numeric @b[2,2] = (1,2),(3,4);say @a ~~ @b; 14:04
camelia rakudo-moar ec386e: OUTPUT«Partially dimensioned views of arrays not yet implemented. Sorry. ␤ in block <unit> at /tmp/JtgvIfLh6p line 1␤␤»
pierre-vigier :(
m: my Numeric @a[2,2] = (1,2),(3,4);my Numeric @b[2,2] = (1,2),(3,4);say @a eqv @b; 14:05
camelia rakudo-moar ec386e: OUTPUT«Partially dimensioned views of arrays not yet implemented. Sorry. ␤ in block <unit> at /tmp/B6GiAUdn0Z line 1␤␤»
Skarsnik I don't think Numeric is a real type x)
nine Darn...have to leave now for celebrating with the next family, so I'm out for today. Have fun!
Skarsnik Have fun nine
RabidGravy Have fun! cya later
hankache have fun
thomax bye nine
pierre-vigier have fun 14:06
my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4);say @a ~~ @b;
m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4);say @a ~~ @b;
camelia rakudo-moar ec386e: OUTPUT«False␤»
pierre-vigier i'm even more confused :)
14:07 st_iron left
pierre-vigier m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4);say @a;say @b;say @a eqv @b; 14:07
camelia rakudo-moar ec386e: OUTPUT«[[1 2] [3 4]]␤[[1 2] [3 4]]␤Partially dimensioned views of arrays not yet implemented. Sorry. ␤ in block <unit> at /tmp/vvqggBoAmR line 1␤␤»
14:08 hankache left
RabidGravy well I thought that I could spend a quiet day making a pure perl 6 OSC implementation but I can't get to opensoundcontrol.org right now 14:10
gfldex m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4);say @a Z~~ @b;
camelia rakudo-moar ec386e: OUTPUT«(True True True True)␤»
gfldex pierre-vigier: ^^^
m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4);say @a == @b;
camelia rakudo-moar ec386e: OUTPUT«True␤»
pierre-vigier m: my int @a[2,2] = (1,2),(3,4);say @a == 4; 14:11
camelia rakudo-moar ec386e: OUTPUT«False␤»
pierre-vigier @a == does not return the number of elements , strange
cognominal nine++ # for his support, moral and technical
pierre-vigier thanks!
for the Z~~ 14:12
timotimo to be fair, raiph has already been tricked by that very same article, jdv79
gfldex m: my int @a[2,2] = (1,2),(3,4);say +@a == 4; 14:13
camelia rakudo-moar ec386e: OUTPUT«False␤»
pierre-vigier my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,5); say @a == @b;
m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,5); say @a == @b;
camelia rakudo-moar ec386e: OUTPUT«True␤»
pierre-vigier == does not work :)
lucasb the number of elements in @a is 2, not 4, right?
pierre-vigier my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,5); say @a z~~ @b;
m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,5); say @a z~~ @b;
camelia rakudo-moar ec386e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/sqqdMvAX4B␤Two terms in a row␤at /tmp/sqqdMvAX4B:1␤------> 3,4);my int @b[2,2] = (1,2),(3,5); say @a7⏏5 z~~ @b;␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ …»
pierre-vigier m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,5); say @a Z~~ @b; 14:14
camelia rakudo-moar ec386e: OUTPUT«(True True True False)␤»
timotimo pierre-vigier: == coerces both arguments to Numeric, keep that in mind
llfourn wow it went red
lucasb blinking red :) first time I saw this
pierre-vigier m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,5); say so @a Z~~ @b;
timotimo it doesn't blink on my screen :(
camelia rakudo-moar ec386e: OUTPUT«(True)␤»
14:14 espadrine joined
pierre-vigier m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4); say so @a Z~~ @b; 14:14
camelia rakudo-moar ec386e: OUTPUT«(True)␤»
llfourn is overcome by the redness
timotimo m: my int @a[2,2] = (1,2), (3, 4); say +@a
camelia rakudo-moar ec386e: OUTPUT«2␤»
gfldex m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4);say [&&] @a Z== @b; 14:15
camelia rakudo-moar ec386e: OUTPUT«True␤»
timotimo huh, so that pretends to be a list of lists when +'ified?
gfldex pierre-vigier: ^^^ meta operators recurse into lists of lists
timotimo m: my int @a[2,2] = (1,2), (3, 4); .perl.say for @a
camelia rakudo-moar ec386e: OUTPUT«1␤2␤3␤4␤»
gfldex m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4);say [and] @a Z== @b; 14:17
camelia rakudo-moar ec386e: OUTPUT«True␤»
gfldex m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,5);say [and] @a Z== @b;
camelia rakudo-moar ec386e: OUTPUT«False␤»
gfldex [and] may be better in combination with meta ops
pierre-vigier so taken 2 shaped array, what would be the correct way to check if they are equivalent?
gfldex lucky me i wrote that doc or i would not know!
in an ideal world Z== would be clever and memcmp all the things 14:19
timo2timo watch out, Z short-cuts to the shorter of both lists
m: say (1, 2, 3, 4, 5) Z== (1, 2);
camelia rakudo-moar ec386e: OUTPUT«(True True)␤»
14:20 pierre-vigier left
gfldex m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4); say @a cmp @b; 14:21
camelia rakudo-moar ec386e: OUTPUT«Cannot call Real(array[int]: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at /tmp/4yxjNTnU2Q line 1␤␤»
14:21 fabi3550 joined, pierre-vigier joined 14:22 fabi3550 left 14:25 espadrine left
gfldex m: my int @a[2,2]; @a.^methods.say; 14:25
camelia rakudo-moar ec386e: OUTPUT«(pick iterator STORE AT-POS unshift EXISTS-POS join permutations combinations reverse rotor roll push prepend append rotate shape ASSIGN-POS plan perl Method+{<anon|79031296>}.new splice Method+{<anon|79031296>}.new gist shift Method+{<anon|79031296>}.new …»
gfldex m: my int @a[2,2]; @a.shape.say;
camelia rakudo-moar ec386e: OUTPUT«(2 2)␤»
pierre-vigier m: my int @a=(1,2);my int @b=(1,2);say @a eqv @b; 14:27
camelia rakudo-moar ec386e: OUTPUT«True␤»
pierre-vigier m: my int @a=(1,2);my int @b=(1,3);say @a eqv @b;
camelia rakudo-moar ec386e: OUTPUT«False␤»
RabidGravy THROW SOME SHAPES!
pierre-vigier yes, with shapes, does not work :(
ambs shars?
sharks...
pierre-vigier m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4);say @a eqv @b; 14:28
camelia rakudo-moar ec386e: OUTPUT«Partially dimensioned views of arrays not yet implemented. Sorry. ␤ in block <unit> at /tmp/QlkhDbybts line 1␤␤»
14:28 jast joined
pierre-vigier i will wwait for implementation :) 14:29
gfldex m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4); say so @a.shape eqv @b.shape & @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«Lists on either side of non-dwimmy hyperop of infix:<==> are not of the same length␤left: 1 elements, right: 2 elements␤ in block <unit> at /tmp/VqbJylugKh line 1␤␤»
gfldex rakudobug?
14:30 im joined, s_kilk joined
gfldex m: my int @a = (1,2),(3,4);my int @b = (1,2),(3,4); say so @a.shape eqv @b.shape & @a >>==<< @b; 14:30
camelia rakudo-moar ec386e: OUTPUT«This type cannot unbox to a native integer␤ in block <unit> at /tmp/iuYvkxzF4J line 1␤␤»
gfldex m: my int @a = (1,2),(3,4);my int @b = (1,2),(3,4); say so @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«This type cannot unbox to a native integer␤ in block <unit> at /tmp/AZruoUj8wL line 1␤␤»
gfldex m: my @a = (1,2),(3,4);my @b = (1,2),(3,4); say so @a >>==<< @b; 14:31
camelia rakudo-moar ec386e: OUTPUT«True␤»
gfldex m: my @a = (1,2),(3,4);my @b = (1,2),(3,5); say so @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«True␤»
pierre-vigier m: my @a = (1,2),(3,4);my @b = (1,2),(3,5); say @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«[(True True) (True False)]␤»
pierre-vigier m: my @a = (1,2),(3,4);my @b = (1,2),(3,4); say @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«[(True True) (True True)]␤»
gfldex m: my @a = (1,2),(3,4);my @b = (1,2),(3,5); say [&&] @a >>==<< @b; 14:32
camelia rakudo-moar ec386e: OUTPUT«(True False)␤»
gfldex m: my @a = (1,2),(3,4);my @b = (1,2),(3,5); say all @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«all((True True), (True False))␤»
gfldex m: my @a = (1,2),(3,4);my @b = (1,2),(3,5); say so all @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«True␤»
pierre-vigier m: my @a[2,2] = (1,2),(3,4);my @b[2,2] = (1,2),(3,4); say @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«Type check failed in binding @dims; expected Positional but got Any␤ in block <unit> at /tmp/5_kNErWRlC line 1␤␤»
pierre-vigier my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4); say @a >>==<< @b; 14:33
m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4); say @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«(True True True True)␤»
pierre-vigier m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,5); say @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«(True True True False)␤»
14:34 im left
RabidGravy say 0x1F41F.chr # almost a shark 14:34
m: say 0x1F41F.chr # almost a shark
camelia rakudo-moar ec386e: OUTPUT«🐟␤»
pierre-vigier m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,5); say [and] @a >>==<< @b; 14:35
camelia rakudo-moar ec386e: OUTPUT«False␤»
timotimo pierre-vigier: doesn't eqv work on two arrays?
pierre-vigier on non shaped array it's working
14:35 timo2timo left
timotimo that's bad, then :) 14:35
>>==<< should be a pretty good approximation 14:36
pierre-vigier m: my @a = (1,2,3);my @b = (1,2,3); say @a eqv @b;
camelia rakudo-moar ec386e: OUTPUT«True␤»
pierre-vigier m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4); say @a eqv @b;
camelia rakudo-moar ec386e: OUTPUT«Partially dimensioned views of arrays not yet implemented. Sorry. ␤ in block <unit> at /tmp/3ovyw50a5F line 1␤␤»
pierre-vigier my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4); say [and] @a >>==<< @b; 14:37
RabidGravy right, one more raspberry pi to build rakudo on
pierre-vigier m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4); say [and] @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«True␤»
pierre-vigier m: my int @a[2,2] = (1,2),(3,4);my int @b[2,3] = (1,2,6),(3,4,6); say [and] @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«Lists on either side of non-dwimmy hyperop of infix:<==> are not of the same length␤left: 4 elements, right: 6 elements␤ in block <unit> at /tmp/JfOHvOh6Xz line 1␤␤»
pierre-vigier [and] @a >>==<< @b; seems to b the best solution for now 14:38
timotimo ideally, eqv on shaped arrays would be implemented :)
gfldex m: my @a = (1,2),(3,4);my @b = (1,2),(3,5); say [&&] @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«(True False)␤»
pierre-vigier i'm sure it will :)
gfldex m: my @a = (1,2),(3,4);my @b = (1,2),(3,5); say [&&] [&&] @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«(True False)␤»
gfldex it refuses to double reduce :(
timotimo how could it? 14:39
oh, right, because hyper ops want to create the same shape as their inputs
gfldex m: my @a = (1,2),(3,4);my @b = (1,2),(3,5); dd @a >>==<< @b; 14:40
camelia rakudo-moar ec386e: OUTPUT«[(Bool::True, Bool::True), (Bool::True, Bool::False)]␤»
gfldex m: say [&&] [(Bool::True, Bool::True), (Bool::True, Bool::False)];
camelia rakudo-moar ec386e: OUTPUT«(True False)␤»
gfldex m: say [&&] [&&] [(Bool::True, Bool::True), (Bool::True, Bool::False)];
camelia rakudo-moar ec386e: OUTPUT«(True False)␤»
timotimo i think in the past, comparing the sizes (should be: shapes) and then using Z== would be recommended
but only use == if you're working with numbers
pierre-vigier m: my @a = (1,2),(3,4);my @b = (1,2),(3,5); say [&&] ([&&] @a >>==<< @b).flat; 14:41
camelia rakudo-moar ec386e: OUTPUT«False␤»
gfldex m: my int @a = (1,2),(3,4);my int @b = (1,2),(3,4); say so @a.shape eqv @b.shape & @a >>==<< @b;
camelia rakudo-moar ec386e: OUTPUT«This type cannot unbox to a native integer␤ in block <unit> at /tmp/Ic6As1GVBZ line 1␤␤»
timotimo you want && instead of & 14:42
gfldex m: dd [&&] $(Bool::True, Bool::False);
camelia rakudo-moar ec386e: OUTPUT«$(Bool::True, Bool::False)␤»
gfldex m: my int @a = (1,2),(3,4);my int @b = (1,2),(3,4); say so @a.shape eqv @b.shape && @a >>==<< @b; 14:43
camelia rakudo-moar ec386e: OUTPUT«This type cannot unbox to a native integer␤ in block <unit> at /tmp/5zIt_VyzFg line 1␤␤»
gfldex i do rakudo doesn't :)
timotimo m: my int @a = (1,2),(3,4);my int @b = (1,2),(3,4);
camelia rakudo-moar ec386e: OUTPUT«This type cannot unbox to a native integer␤ in block <unit> at /tmp/bgtnkxeid0 line 1␤␤»
timotimo you can't put lists of lists into a flat int array
you need to define a shape for that
gfldex m: my int @a[2,2] = (1,2),(3,4);my int @b[2,2] = (1,2),(3,4); say so @a.shape eqv @b.shape & @a >>==<< @b; 14:44
camelia rakudo-moar ec386e: OUTPUT«Lists on either side of non-dwimmy hyperop of infix:<==> are not of the same length␤left: 1 elements, right: 2 elements␤ in block <unit> at /tmp/205wjXf5Im line 1␤␤»
pierre-vigier m: my int @a[2,2]= (1,2),(3,4);my int @b[2,2]= (1,2),(3,4); say so @a.shape eqv @b.shape & ([and] @a >>==<< @b);
camelia rakudo-moar ec386e: OUTPUT«False␤»
pierre-vigier m: my int @a[2,2]= (1,2),(3,4);my int @b[2,2]= (1,2),(3,4); say so (@a.shape eqv @b.shape) & ([and] @a >>==<< @b); 14:45
camelia rakudo-moar ec386e: OUTPUT«True␤»
timotimo you still have a & in there
14:45 firstdayonthejob left
timotimo which really wants to be a && instead 14:45
gfldex m: dd [and] $(Bool::True, Bool::False); 14:46
camelia rakudo-moar ec386e: OUTPUT«$(Bool::True, Bool::False)␤»
gfldex m: dd [and] |$(Bool::True, Bool::False);
camelia rakudo-moar ec386e: OUTPUT«Bool::False␤»
pierre-vigier m: my int @a[2,2]= (1,2),(3,4);my int @b[2,2]= (1,2),(3,4); say @a.shape eqv @b.shape && ( [and] @a >>==<< @b); 14:47
camelia rakudo-moar ec386e: OUTPUT«True␤»
pierre-vigier m: my int @a[2,2]= (1,2),(3,4);my int @b[2,2]= (1,2),(3,5); say @a.shape eqv @b.shape && ( [and] @a >>==<< @b);
camelia rakudo-moar ec386e: OUTPUT«False␤»
pierre-vigier m: my int @a[2,2]= (1,2),(3,4);my int @b[2,3]= (1,2,4),(3,4,4); say @a.shape eqv @b.shape && ( [and] @a >>==<< @b);
camelia rakudo-moar ec386e: OUTPUT«False␤»
pierre-vigier it seems to be working with that
gfldex have another dimention and it will stop working 14:48
because you can't chain reduction operators (what may be a bug) 14:49
14:50 firstdayonthejob joined
leont My rakudo is 4 days old, yet too old for a module I need… :-o 14:50
14:50 gtodd joined, gtodd left
RabidGravy leont, tricky one that 14:51
14:52 rurban joined, xpen joined
loren about @array X~~ @other, is result be a lazy list ? 14:54
pierre-vigier m: my int @a[2,2,2]= ((1,2),(3,4)),((1,2),(3,4));my int @b[2,2,2]= ((1,2),(3,4)),((1,2),(3,4)); say @a.shape eqv @b.shape && ( [and] @a >>==<< @b); 14:55
camelia rakudo-moar ec386e: OUTPUT«True␤»
pierre-vigier looks to be ok on shape (2,2,2)
loren If is not, i think [and] operator will be slowly .. 14:56
timotimo actually ...
m: my int @a[2,2,2] = ((1,2),(3,4)),((1,2),(3,4)); say @a.values.perl 14:57
camelia rakudo-moar ec386e: OUTPUT«(1, 2, 3, 4, 1, 2, 3, 4).Seq␤»
timotimo ^- you can use this after comparing the shapes
14:57 pierre-vigier left, pierre-vigier joined
pierre-vigier m: my int @a[2,2,2]= ((1,2),(3,4)),((1,2),(3,4));my int @b[2,2,2]= ((1,2),(3,4)),((1,2),(3,4)); say @a.shape eqv @b.shape && ( @a.perl eqv @b.perl); 14:58
camelia rakudo-moar ec386e: OUTPUT«True␤»
14:58 minde joined
pierre-vigier m: my int @a[2,2,2]= ((1,2),(3,4)),((1,2),(3,4));my int @b[2,2,2]= ((1,2),(3,4)),((1,2),(3,4)); say @a.shape eqv @b.shape && ( ~@a eqv ~@b); 14:59
camelia rakudo-moar ec386e: OUTPUT«True␤»
14:59 xpen left
timotimo no, don't use .perl 15:00
don't use ~ either
use .values
pierre-vigier oh, indeed, i misread 15:01
m: my int @a[2,2,2]= ((1,2),(3,4)),((1,2),(3,4));my int @b[2,2,2]= ((1,2),(3,4)),((1,2),(3,4)); say @a.shape eqv @b.shape && ( @a.values eqv @b.values);
camelia rakudo-moar ec386e: OUTPUT«True␤»
timotimo ok :)
pierre-vigier thank you, i'll use that until eqv is implemented 15:02
timotimo good good
pierre-vigier trying to switch that: github.com/pierre-vigier/Perl6-Math-Matrix 15:03
to use shaped array
timotimo BBIAB 15:04
gfldex loren: it's not lazy [\~~] to get lazy see bottem of chapter: design.perl6.org/S03.html#Reduction_operators 15:05
RabidGravy gosh I'd forgotten how slow it was building rakudo moar on a Rev B RPi
Skarsnik timotimo, what do you think of having Test outputing got/expected in a format closer to Data::Dumper? I mean like with value.typeInformation instead of just using .perl
loren gfldex, em thanks 15:08
15:09 cosarara_ joined
loren but i think you misunderstand me , i mean cross operator 'X' not '[]', gfldex 15:12
gfldex since i'm quite good ad misunderstandings, that's very well possible 15:13
15:13 rindolf joined
gfldex that "ad" comes from the fact that i'm reading a german perl 6 article on heise.de 15:14
loren flaviusb, :)
gfldex heise is the german it news site
every 2nd sentence got something wrong :)
15:14 s_kilk left
gfldex what in turn means that our docs suck :( 15:16
loren em .. 15:17
will be better later ..
15:17 hankache joined
loren someday soon .. 15:18
15:18 IonutVan joined 15:19 secwang joined
hankache timotimo are you here? 15:19
RabidGravy it's tricky, write code or write docs
hankache, he went out for a bit
hankache RabidGravy ah ok 15:20
.tell timotimo pdf for perl6intro is ready what should i do to include it in the next rakudo star ? 15:22
yoleaux hankache: I'll pass your message to timotimo.
15:23 hankache left 15:24 nemsys joined 15:35 IonutVan left
RabidGravy still compiling on the RPi rev B 15:36
15:38 jandrew left
Skarsnik good luck 15:40
I should install crouton to try perl6 on my arm chromebook x)
15:41 vendethiel joined 15:42 secwang left
grondilu Skarsnik: I have a chromebook. I do perl6 stuff on my RPi via SSH 15:44
no crouton installed
Skarsnik Crouton seem like a bad idea for power consuption if you can't properly shutdow/suspend the system in the chroot 15:46
15:48 pierre-vigier left, kjs_ joined 15:49 minde left
dalek rl6-roast-data: ac8d691 | coke++ | / (7 files):
today (automated commit)
15:56
15:57 leont left, znpy joined
[Coke] I am thinking we should remove the v6.x tags on the rakudo repository; they are going to cause more confusion than they were worth. Any feedback. 16:01
16:03 llfourn left
tadzik boooo 16:03
I have just 'rakudobrew build moar v6.c' to keep the 'official released' version around
Skarsnik tadzik, did you merge (or commit yourself) fix the for null value in J::U? 16:04
tadzik Skarsnik: no; I checked, and it seems like the tests passes even without the patch :) I wrote it to you yester- or yesteryesterday
16:05 LLamaRider joined
tadzik so we're going to need a more strict check on that 16:05
kaare_ Performance Q; This pastebin.com/xc3AagqH takes 2.3 secs to run. Anything obvious I'm doing wrong?
Skarsnik let see if I can install h:ua x)
Skarsnik do the dayly/hourly rakudobrew nuke && rakudobrew build moar ~~ 16:06
tadzik hah :) 16:07
HTTP::UA worked for me today
kaare_: nothing wrong with it; Perl 6 is just not a speed deamon just yet :) 16:08
kaare_: you may be able to workaround it a bit by using native integers
RabidGravy I may revert the changes I made to deal with with the run_alt thing later and see how it goes
tadzik or "unrolling" the range into a regular for-like loop
RabidGravy what do we reckon on the "Stage Parse" - over 500? 16:09
kaare_ tadzik: It' like two orders of magnitude slower than perl 5. There's a bit to catch up :-) 16:11
ZoffixWin kaare_, well, Perl 5 had a decade of a head start :P 16:12
tadzik kaare_: yes, it's being closely monitored and profiled as time goes :) Let me look something up for you
Skarsnik perl5 has like 20+ years of work on it x)
flussence RabidGravy: it's about that slow on my netbook. Hopefully brrt++ will save us all with a JIT that runs on more than one CPU :)
mst kaare_: the focus for 6.c was on 'optimisable' not 'optimised'
mst approves of this focus 16:13
tadzik timotimo: where's that website with fun grahps with speed of things/
16:13 kjs_ left
ZoffixWin kaare_, in the past month, I did notice quite a huge improvement in the start up, so I'm quite optimistic improvement will arrive eventually, once the devs start focusing on optimization 16:13
RabidGravy got to leave something for the new kids to do
ZoffixWin Alright, time to resume drinking \o/ Happy Holidays \o/ 16:14
RabidGravy I've cracked the xmas keg
kaare_ ZoffixWin: Sounds great 16:15
The quick improvements in startup speed
16:16 ppp__ joined
Skarsnik I should replace Practice with Coding in perl 6 on this www.alttp-wiki.net/index.php/File:1...1853_n.jpg 16:16
16:17 ppp__ left
flussence thinks the process of obtaining a vanilla rakudo-2015.12 tarball via perl6.org is next to impossible right now 16:17
Skarsnik I am curious of what UA does with IO::Simple::Capture. since run output a proc that make it easy to read stderr/stdout
16:17 quux joined
quux hi how to get perl 6 on arch linux? 16:17
tadzik quux: I use rakudobrew
quux thanks
tadzik github.com/tadzik/rakudobrew
Skarsnik perl6.org/downloads/ 16:18
[Coke] flussence: too many downloads?
ZoffixWin quux, I think these are the instructions: perl6.org/downloads/
quux perl 6!!!!
ZoffixWin \o/
flussence [Coke]: not enough; the only clickable download link is for Star and you have to read the entirety of rakudo.org/how-to-get-rakudo/ to notice it mentions an (old) URL in an example
RabidGravy well it's been well over an hour so far on this RPi 16:19
ZoffixWin yikes
What do people use these Raspberry things?
[Coke] flussence: see the "download" button in the lower left hand side?
ZoffixWin *what for
RabidGravy single slow core, 512mb, no JIT 16:20
Skarsnik Result: PASS
==> Installing JSON::Unmarshal
JSON::Unmarshal:ver<0.03>:auth<>:api<> already installed
Still that with panda? :(
flussence [Coke]: yeah, that's exactly what I'm talking about
ZoffixWin Skarsnik, still what?
[Coke] btw, can someone switch the "Jump in" and "perl 6 advent" blocks on perl6.org - we want the download button more visible.
Skarsnik The already installed stuff
should it check before trying to install
timotimo tadzik: what website are you refering? 16:21
yoleaux 15:22Z <hankache> timotimo: pdf for perl6intro is ready what should i do to include it in the next rakudo star ?
Skarsnik Now I am not sure if upgrade it or not
[Coke] flussence: the perl6.org/downloads was jsut asdded eysterday; I'm sure we can reword it a bit.
tadzik timotimo: hmm, I thought it's your doing. It has graphs with performance comparisons between perl6, perl5,sometimes perl6-native etc
16:22 ellybelly joined
timotimo yeah, i have a whole bunch of graphs up on t.h8.lv/p6bench/ 16:22
but not all .html files are linked at the moment
i didn't bother writing a script that automates that stuff
RabidGravy ZoffixWin, for me it's a half way house between a microcontroller thing like an AVR and a full up computer
timotimo so at some point i just copy-pasted the output of "ls" into vim and macro'd it into some html :P
flussence also, having all star downloads available over port 80 is a bit suboptimal imo... not sure anyone currently around can do anything about that though
16:23 quux left
[Coke] flussence: why is that suboptimal? 16:23
ZoffixWin it's possible to change what you're downloading and install malicious stuff 16:24
16:24 znpy left
ZoffixWin If you're a 1337 hax0r 16:24
flussence (or have a prepackaged tool a la firesheep...) 16:25
16:25 bop joined
Skarsnik should alias apt-get install M::D to panda install 16:25
flussence dinner&
16:26 nemsys left
mst flussence: so long as checksums are available over https I don't see the problem 16:26
ZoffixWin But how many people bother checksumming? 16:27
lucasb if it was a md5 or sha checksum, I would check... but I never tried with an .asc file 16:28
dalek blets: 71eba22 | (Herbert Breunung)++ | docs/appendix-b-grouped.txt:
B nav completed
Skarsnik I should create a HTTPS::UserAgent module that just depend on H:UA and SSL x)
dalek href="https://perl6.org:">perl6.org: 982e9cc | (Zoffix Znet)++ | source/index.html:
Switch around Jump In/Advent blocks
ZoffixWin Well... I hope that was OK 16:29
Edited on GitHub and no preview... 'cause I'm hardcore like that
16:29 regreg joined
Skarsnik wow ssl test are slow x) 16:29
cognominal I see in WebSocket a call into a missing &on function? Was that something in a previous rakudo? What is this now?
RabidGravy ZoffixWin, go you
Skarsnik cognominal, if you are courageous you should rewrite websocket (client) with supply x) 16:30
cognominal Skarsnik, supply x) ? 16:31
ZoffixWin cognominal, docs.perl6.org/type/Supply
We need a bot that will give URLs to docs.perl6.org
Skarsnik or write a websocket::client::async maybe x) 16:32
Write it!
RabidGravy Skarsnik, I'm after an EventSource client if you're bored ;-)
cognominal ho x) is an emoticon ?
ZoffixWin I will, but I'm busy drinking
dalek kudo/nom: a563e89 | coke++ | docs/release_guide.pod:
Claim January's release.

Will probably need to revisit release guidelines so we don't break Christmas.
ZoffixWin cognominal, yes, with eyes like >_<
RabidGravy drinking *and* making software is the way to go 16:33
Skarsnik ==> Installing IO::Socket::SSL
==> Successfully installed IO::Socket::SSL
that took like 5 min
that's weird
cognominal before going on a rewrite, I did a pull request to update it. I am stuck on the &on function.
tadzik Skarsnik: that's the compiling time 16:34
Skarsnik link the line? x)
compiling what?
cognominal Really, so far, it is cargo cult. I have not yet studied the module.
tadzik the modules
precompiling, actually :)
Skarsnik well 5 min is slow lol
and I though it was already done before starting the test
RabidGravy it precompiles it for the test and then precompiles it when it is being installed 16:35
16:36 esh left
ZoffixWin That seems redundant 16:37
16:38 AlexDani` left
RabidGravy probably 16:38
16:39 dotness joined
RabidGravy Oh we so have a winner here. 16:39
16:39 esh joined
RabidGravy "Stage parse : 2076.654" # RPi rev B 16:39
lucasb a tiny suggestion for downloads/index.html would be to remove the indentation from the <pre> element and remove the "%" prompt as well
16:40 nemsys joined
[Coke] lucasb: if you make a PR, I'd apply that. 16:40
lucasb and maybe change 'v6.c' to 2015.12 in the 'rakudobrew build moar' line?
Skarsnik tadzik, hm could you print the json in J:U errors "Cannot unmarshal Any to type Int
" it's not fun to find what field is faulty when I get a big json string x)
[Coke] lucasb: yes, perhaps "2015.12 # Christmas" instead of v6c. 16:41
dalek href="https://perl6.org:">perl6.org: 5b68398 | (Zoffix Znet)++ | source/downloads/index.html:
remove the indentation and %
lucasb ZoffixWin++ did that :)
RabidGravy ZoffixWin++ # JFDI 16:42
ZoffixWin I didn't do the 2015.12 stuff... wasn't someone having an issue with that last night?
Was that fixed?
16:43 zostay left, rjbs left
TimToady I think it was just an old install interfering, as usual 16:43
16:43 simcop2387 left
ZoffixWin Ah 16:43
[Coke] Don't knoww what the issue was - but v6.c is a fixed point, there are going to be 2016.01 which still targets v6.c, but won't have that tag. so using that tag is going to keep peopel stuck at 2015.12 when they probably mean the latest.
tadzik Skarsnik: oh, absolutely, that's a great idea
16:44 geekosaur left
lucasb [Coke]: yes, I can see the confusion 16:44
[Coke] the old v6.b tag in rakudo came before we had any plan about roast's branching.
16:44 bop left
stmuk I changed 2015.12 to v6.c because I thought it better to suggest targetting the v6.c rather than us having to manually bump the month after every release 16:44
16:44 Su-Shee joined
stmuk oh you arent moving the tag? 16:44
I think there needs needs to be a moving tag which targets the last v6.c 16:45
RabidGravy I only just realised this this morning:
m: use v6.d;
camelia rakudo-moar ec386e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/X46trQmbg5␤No compiler available for Perl v6.d␤at /tmp/X46trQmbg5:1␤------> 3use v6.d7⏏5;␤»
dalek href="https://perl6.org:">perl6.org: a6085bb | (Zoffix Znet)++ | source/downloads/index.html:
Change 6.c to 2015.12
TimToady well, isn't build moar gonna target the latest?
RabidGravy m: use v6.c;
camelia ( no output )
[Coke] isn't moving tags bad? 16:46
TimToady and we don't really need "last v6c" till there's a v6d
TimToady should probably wake up before saying much moar...
[Coke] if moving tags is ok, then sure.
stmuk is nom always going to be 6.c and not 6.d? 16:47
lucasb when explaining to the outside world the difference between specification/implementation, people could explore more the relationship with the same situtation in Common Lisp/Scheme languages. one thing is the language... other thing is the implementation.
[Coke] TimToady: did I see you were doing something musical yesterday?
RabidGravy that's fine, I think everyone is mostly doing gibberish anyway
16:47 brrt joined
TimToady night before 16:47
lucasb *situation 16:48
brrt merry christmas!
or boxing day
i guess
RabidGravy do they do boxing day in other-than-Britain ? 16:49
[Coke] TODAY I'm in a car for a 3 hour drive to in laws. :)
RabidGravy: canada, mebbe?
stmuk I still think there should be a tag or branch which tracks the last rakudo release 16:50
16:50 musca joined
RabidGravy oh yeah, probably all manner of dodgy colonials 16:50
stmuk and that manually updating source/downloads/index.html every month is bad
TimToady gets a 6 hour drive, twice as good
and away fromm the in laws :) 16:51
aenaxi RabidGravy: what exactly does 'doing boxing day' mean? its a holiday in sweden too, but name is different
ZoffixWin stmuk, wouldn't `rakudobrew build moar` do what we want, without anything extra?
Get the latest and what not
RabidGravy we get a half hour drive over the river to the relatives
ZoffixWin aenaxi, it's a day when people go insane over rigged deals in stores 16:52
stmuk ZoffixWin: no because half way through a month the end user gets work in progress rather than a maybe more stable release at the month end
[Coke] we have many rivers to cross.
ZoffixWin And also, a day of major traffic jams
RabidGravy and beer
diakopter drove from Utrecht to Hamburg today
ZoffixWin stmuk, then it sound like having some sort of a movable "stable" tag is a good idea. 16:53
TimToady ZoffixWin: maybe the default should be latest monthly, and devs have to say dev or HEAD or some such
ZoffixWin TimToady, or that
16:53 simcop2387 joined
brrt no, this is just the second-christmas-day in nl 16:53
stmuk yes that's what I mean
TimToady we do have triple, even though (afaik) it is still busticated
ZoffixWin OTOH, is rakudobrew the... um... "recommended" way to install P6 for end users? I'd think R* download should be for that and rakudobrew is for those who want the bleeding edge stuff 16:54
Skarsnik tadzik, wait actually I think it already does it, but I get Any for JSON
TimToady ZoffixWin: point
dalek c/autarch/use-perl6-org-design: 33670f6 | (Dave Rolsky)++ | lib/DocSite/Generator.pm:
Remove unused arguments from !process-one-pod
16:55
c/autarch/use-perl6-org-design: 4834c08 | (Dave Rolsky)++ | lib/DocSite/Generator.pm:
Use File::Find instead of our own implementation of recursive find
16:55 rjbs joined
RabidGravy yeah, it's "boxing day" because traditionally people would give "christmas boxes" to the tradespeople 16:55
16:55 zostay joined
RabidGravy as we don't really have tradespeople any more it's moot 16:55
TimToady approaches the backlog with trepidation and sticks a toe in
mst TimToady: somebody used AUTOLOAD. you now have one less toe.
ZoffixWin: and the R* download will then build how? 16:56
stmuk ZoffixWin: probably means downloads/index.html should be a * quick start after the next release
mst I mean, rakudobrew only *currently* uses specific branches by default
making it capable of scuttering tags shouldn't be hard
stmuk mst: its a tarball with perl Configure.pl
ZoffixWin mst, whoever's making the R* release will build correct stuff
RabidGravy mst, I looked at Pete's config thing - it would be about twenty lines of MOP-munging
mst right, but rakudobrew is basically "a thing that runs condfigure, make, make install" 16:57
I don't see why it can't do that for a tarball -or- a tag -or- a branch head
RabidGravy nary an AUTOLOAD or FALLBACK in sight
stmuk rakudobrew doesn't really support --prefix whereas the usual configure.pl does
mst yet.
Skarsnik tadzik, I need the thing that check for defined to have my code to work
ZoffixWin mst, what do you mean "for a tarball"?
16:58 geekosaur joined
mst perlbrew can, IIRC, build both releases and blead 16:58
stmuk the use of tarballs is probably better long term since it moves off github
ZoffixWin mst, I don't think end users *need* to have rakudobrew at all. I think they'd just download an executable that installs the latest stable perl
ZoffixWin shrugs 16:59
mst ...
16:59 cdg left, sjn_phone joined
mst "I don't think end users need to have rakudobrew, they'd just download rakudobrew" 16:59
17:00 llfourn joined, Tonik joined
ZoffixWin mst, do they? 17:00
mst, I only used R* on Windows, and it's a downloadable executable file that I just run and poof, I have perl 6
Whereas when I used rakudobrew I had to mess with path variables and run commands
stmuk R* is usually source .. windows is the only binary build 17:01
17:01 sjn_phone left, sjn_phone_ joined
ZoffixWin ah 17:01
k
mst ZoffixWin: that's the .msi sure 17:02
like strawberry provides a .msi for perl5
17:02 jcrespo joined
mst but I usually use perl-build to get my *n?x perls 17:03
17:03 sjn_phone_ left, sjn_phone_ joined 17:04 sjn_phone_ left, sjn_phone_ joined 17:05 llfourn left 17:07 loren left, brrt left
RabidGravy in about a few weeks Fedora will have the 2015.12 as a package 17:07
17:07 sjn_phone_ left, bitmap left 17:08 ugexe left
Skarsnik If I was distribution I will only release a rakudo star version x) 17:08
RabidGravy they've been pretty likity split on the releases
stmuk RabidGravy: so in 2 years time RHEL gets exactly that version for the next 5 years :) 17:09
RabidGravy yeah
LLamaRider m: say ([1,2],[3,4]).flatmap({$^x}).perl; say ([1,2],[3,4]).flat.flatmap({$^x}).perl;
camelia rakudo-moar a563e8: OUTPUT«($[1, 2], $[3, 4]).Seq␤(1, 2, 3, 4).Seq␤»
17:09 kjs_ joined
LLamaRider any clue why there is a difference? I was expecting flatmap does an implicit flat 17:09
RabidGravy which is why whoever it was that was saying you should only use the vendor packages is entirely wrong 17:10
mst ZoffixWin: basically, for people doing ~/ installs, a way to have a single command for 'figure out latest stable, download and build that for me' would be nice
especially if you can re-run it later
ZoffixWin yeah
stmuk that doesn't need code changes just a policy about git tags and branches
mst I don't see anybody proposing code changes except to rakudobrew 17:11
RabidGravy bloody hell, "Stage mast : 1142.558"
mst basically - I always used to build me own perls via 'sh Configure -Dprefix=... -des && make test && make install'
stmuk I don't see that needs a rakudobrew code change just a git change
mst but I've noticed that people are much less scared of just running perl-build
ZoffixWin m: say ((1, 2), <a b>).flatmap(&uc).join('|');
camelia rakudo-moar a563e8: OUTPUT«1 2|A B␤»
mst so I think we should ensure they have an equivalent
stmuk also people can use git without rakudubrew to track the last stable if it's just a tag or branch 17:12
ZoffixWin LLamaRider, seems like a bug... or at least the description and output in the docs doesn't match reality.
peteretep mst: Be nice to have a fool-proof Jenkins and deploy recipe top 17:13
too
RabidGravy the latter is probably more likely
17:13 ugexe joined 17:14 bitmap joined
RabidGravy the pace of change since October has been such that the docs have been mostly out of date for long periods 17:14
mst stmuk: yes. they *can*
I'm talking about making things *easier*
LLamaRider ZoffixWin: ok, so I didn't lose my sanity. That's good. What's the best way to report the issue?
ZoffixWin LLamaRider, I've just done it: rt.perl.org/Ticket/Display.html?id=127036 17:15
17:15 Begi left
LLamaRider another interesting novelty is that I get a runtime error if I .shift on an empty error. I am patching a p6 module I made some time ago to match the latest rakudo 17:15
empty array* sorry
ZoffixWin LLamaRider, and this is how to report bugs in the future: github.com/rakudo/rakudo#reporting-bugs
m: my @a; @a.shift
camelia rakudo-moar a563e8: OUTPUT«Cannot shift from an empty Array␤ in block <unit> at /tmp/rAITi2u2sF line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/rAITi2u2sF line 1␤␤»
ZoffixWin Seems this is expected behaviour.... 17:16
17:16 jcrespo left
ZoffixWin m: my @a; my $x = @a ?? @a.shift !! 'Nada'; say $x 17:16
camelia rakudo-moar a563e8: OUTPUT«Nada␤»
ZoffixWin m: my @a = ^10; my $x = @a ?? @a.shift !! 'Nada'; say $x
camelia rakudo-moar a563e8: OUTPUT«0␤»
17:17 kjs_ left
stmuk mst: I think you missunderstand .. I want to use the same git command to track the last stable which isn't currently possible 17:19
something like the FreeBSD STABLE branch 17:20
mst stmuk: right, and I'm talking about allowing people to install from tarballs as well
not sure why you think what I'm suggesting is a bad thing
stmuk its not bad just not of particular interest to me
[Coke] working on a patch to give docs.perl6.org categorized search buckets. 17:22
RabidGravy I'm with both, make it happen
mst stmuk: ok, then don't phrase your "I want a different feature" as a criticism of the feature I'm proposing and things will be less confusing :)
stmuk I didn't .. anyway I'm leaving this convo since it doesn't seem to be progressing 17:23
RabidGravy Oh, stmuk++ you remind me, next up so if I can build this on freebsd 8.4
El_Che wow. Perl 6 is really released if we're fighting over infrastructure :)
good evening :)
flussence is trying to make sense of how CUR works 17:24
RabidGravy magic pixie dust
that's my working hypothesis anyway 17:25
dalek c/autarch/use-perl6-org-design: ee97173 | (Dave Rolsky)++ | t/typegraph.t:
Fix typegraph.t test
RabidGravy wow! the RPi build finally finished 17:26
[Coke] I will see if I can get the macport stuff resolved by new years. I had been putting it aside until I had time to figure out jvm vs. moar backends... but I am just going to do it for moar, can always add jvm later.
LLamaRider got it, thanks a bunch ZoffixWin ! and thanks for filing the bug report
mst 65 17:28
17:28 rurban1 joined
TimToady At the moment my hypotheses don't seem to be working... 17:29
stmuk is anyone looking at pkgsrc packaging BTW?
flussence yeah, atw<tab><tab>... bah
TimToady In fact, I think they're broken...
flussence atweiden++ is trying to do an arch package, I'm trying to do gentoo, both are blocked on precomp write permission issues 17:30
I've been trying to figure this out for about a fortnight but I'm getting nowhere
17:30 rurban left
RabidGravy nope that's not going to work 'cc1: error: unrecognized command line option "-Wno-logical-op-parentheses"' 17:31
don't think there's anyway out of that without some hacking 17:32
17:32 khw joined
ChoHag Precomp write permission issues, eh? 17:35
ChoHag grabs popcorn
flussence if a single other person had bothered to test this in the real world back then, maybe I would've gotten noticed and all this could be avoided. 17:37
mst is this precomp going into the final install root rather than the fake root?
flussence yeah 17:38
every other thing in that bit of the makefile uses $DESTDIR
ChoHag Pah! This is _open source_!
mst that's why the prototypes for my perl5 builder always use a fake install root for everything
even when there's no reason to whatsoever
ChoHag You don't test your code, you just commit it.
mst means I catch that sort of mistake automatically 17:39
well, y'know, TimToady promised a perl6 compiler for christmas.
and it does, indeed, compile - so they shipped it :D
ChoHag Mission accomplished.
flussence also predicted there'd be a lot of annoying whiners who aren't helping -- irclog.perlgeek.de/perl6/2015-12-13#i_11708393 17:40
[Coke] We've said all along there's more work to do. Please be sure to file tickets for any issues you find so we can continue to improve.
mst I ... don't see anybody whining. ChoHag's being slightly silly 17:41
[Coke] Someone should bring the hug bot back.
mst I'm talking about general concepts
flussence sorry mst, just a bit frustrated... like nine was above 17:42
ChoHag Don't get frustrated.
Computers don't care to spare one's feelings. 17:43
mst flussence: yes. it's aggravating that nobody tested this
but there's -bound- to be things you'll find that nobody tested
this always happens
I was commenting on "for things like that, people often don't, so it's often worth trying to make it so that code path is always followed"
TimToady flussence: I like the way you did it better than the way other people didn't. :)
mst this was meant to be a measure of solidarity, because I did that on my most recent toolchain project, specifically because I'd run into the same problem of lack of testing previously 17:44
mst also shouted at TimToady when he decided to tell us ~~ in perl5 was completely wrong the day *after* 5.10.0 shipped ;)
TimToady :D 17:45
[Coke] Perhaps that was part of his secret plan!
flussence thing is, I *was* testing this stuff. But the one person writing all of it was already overworked and couldn't figure out how to reproduce it, and I couldn't convince anyone else to take a look :(
mst yeah, and that's a shame
flussence oh well
mst I have a list of things I'm going to do to rakudobrew that I significantly wish I'd done months ago 17:46
but I didn't have time or motivation to do them months ago
flussence I would've been fine if it was just me having problems, but seeing other people hitting the same thing really bothers me
mst so, uh, yeah. welcome to open source. people are awesome. people are terrible. real life gets in the way sometimes.
well, yes, watching other people having trouble configuring CPAN.pm for ~ installation is why I invented local::lib 17:47
so I do rather apprecaite the POV ;)
TimToady It's not what you do, it's what you do next.
flussence makes a mental note to be slightly more loud and annoying next time something breaks
LLamaRider ZoffixWin: I may be hitting another gotcha 17:48
stmuk I think we need less loud and annoying rather than more
ChoHag Personally I'd have liked to be more useful than throwing faeces from the sidelines, but I've been somewhat busy moving country and building a house.
LLamaRider m: sub test {my Int @a = (2,3); return (1,@a) }; my ($one, @b) = test(); say @b.perl;
camelia rakudo-moar a563e8: OUTPUT«[Array[Int].new(2, 3),]␤»
ChoHag flussence: The squeaky wheel gets the grease.
LLamaRider m: sub test {my Int @a = (2,3); return (1,@a) }; my ($one, Int @b) = test(); say @b.perl;
camelia rakudo-moar a563e8: OUTPUT«Type check failed in assignment to @b; expected Int but got Array[Int]␤ in block <unit> at /tmp/6xgdXHsGr7 line 1␤␤»
flussence (is 2015.12 in Anyone Else's Distro yet?)
Skarsnik Probably not
17:49 rurban1 left
mst flussence: hrm, you said DESTDIR is everywhere 17:49
Skarsnik maybe create a perl6-distrib ml and invite package people to talk in there? x)
mst flussence: I was assuming it was doing install-to-PREFIX
flussence mst: m-install target specifically
mst flussence: is it instead doing install-to-DESTDIR-but-fail-when-moved-to-PREFIX ?
sorry, I've no idea if I can help here, but this is the sort of problem I quite enjoy at the logical level :) 17:50
flussence everything else is going in DESTDIR, but it looks like tools/build/install-core-dist.pl gets its paths from whatever moar/nqp are installed to
tries to put precomp stuff there, boom
mst ooooh, right 17:51
there's a lot of things being dependent on other things' paths around
rindolf wonders if his Python->Perl 6 code translation a few days ago would go more smoothly if he added type annotations.
mst if I run 'perl bin/rakudobrew build moar' rather than adding bin/ to $PATH first, the shims don't turn up
(which was me not following the instructions right and I don't expect anybody except me to try and fix that one but still ;)
17:52 lucasb left
flussence I guess I could work around this with a lot of Makefile patching and manual precomp running... *shudder* 17:53
mst there's got to be an easier way
Skarsnik remove precomp? x) 17:54
mst patching that script to take DESTDIR and PREFIX might be an option
actually
looks to me like the trick would be to get .repository-for-name('perl') to get the one in DESTDIR? 17:55
flussence is tempted to ping the guy who wrote the current perl6 gentoo stuff and ask if he knows any clever hacks for this kinda thing (I know he's here, but don't want to bother him this time of year :) 17:56
mst aha!
if CompUnit::RepostioryRegistry doesn't find a config file, it picks defaults based on $inst#prefix
%custom-lib<perl> = "inst#$prefix" 17:57
ah, and $prefix comes from nqp::backendconfig->{'prefix'} 17:58
so ... either find a more suitable heuristic for that
or supply a config somehow
should both, I -think-, get to the right goal
which of those is better I'm not 100% sure
probably depends how relocatable things are
flussence I did see something in the backlog about setting PERL6LIB= causing precomp stuff to be written to $PERL6LIB/.precomp, that might be an option 17:59
mst wait wait wait hang on 18:00
Skarsnik precomp seen like to solve a weird user case that actual real world case, or it's just my feeling about it?
mst argh
LLamaRider ZoffixWin: apparently it was a gotcha. I kind of get it, but not really. Here it is working:
mst flussence: there's actually code for # starting up for creating precomp
LLamaRider m: sub test() {my Int @a = (2,3); return (1, @a) }; my ($one, Array[Int] $b) = test(); say $b.perl;
camelia rakudo-moar a563e8: OUTPUT«Array[Int].new(2, 3)␤»
mst flussence: if %ENV<RAKUDO_PRECOMP_WITH> ->
flussence: top of setup-repositories() 18:01
18:01 llfourn joined
ChoHag Skarsnik: Precompilation isn't the problem. Blind, magic precompilation is the problem. 18:01
Rotwang Hi, what is the dir() equivealent from python? I'd like to list all methods available from the instance of a class.
ChoHag If it had more control knobs, it'd be fine. 18:02
flussence ^+1
mst but then that doesn't set up %custom-lib<perl>
I think 'fix and use that code path' is probably going to work
Skarsnik Rotwang, Class.^methods ?
flussence huh, it looks like RAKUDO_PRECOMP_WITH overrides everything (below that line) completely 18:03
Rotwang Skarsnik: thanks
flussence yeah, it skips %custom-lib entirely
mst yeah, I think I'm lying actually
flussence might give that a try and see what happens
mst and that code path is for PrecompilationRepository to trigger
look at line 76 of that or so 18:04
RabidGravy mst++ # setting a mildly irritated mst on a less than easily tractable problem is always the way to go :)
18:04 rurban joined
mst ooh, and precompile() is doing - my $io = self.store.destination($*PERL.compiler.id, $id); 18:04
flussence I'm just relieved someone smarter than me's looking at it :D
japhb [Coke]: Your claim for the January release didn't actually claim the January release -- it claimed Christmas, which you already did. :-)
mst sooo ... what's self.store 18:05
flussence mst: that looks like something that writes to ~/.perl6/$version/
18:05 llfourn left, jme` joined
flussence CompUnit/RepositoryRegistry.pm line 112ish 18:06
mst flussence: that will, I think, depend upon configuration
flussence right, that's just custom-lib<home>
mst ok, so PrecompliationStore::File has a method destination 18:07
but that returns self.prefix
that's probably fine though 18:08
since we're going to copy the entire precomp thing from destdir to prefix during package install
18:08 s_kilk joined
s_kilk Is there supposed to be a difference in behaviour between using `$some-string ~~ $some-regex` vs `$some-string.match($some-regex)` ? I've just updated to the latest release of rakudo and had a failing test for one of my libraries. 18:10
specifically, the ~~ used to return a match object, but now returns the boolean True. If I change to using .match the old behaviour returns 18:11
flussence s_kilk: ~~ overwrites $/, .match returns a Match object without setting $/
s_kilk ah, cool.
flussence (also $/ defines $0..$n also, so those aren't overwritten if you use .match) 18:12
s_kilk so ~~ is now semantically closer to "does match", with the side-effect of setting the $/ var, while .match is more imperative "match this and give me the matching values"
Thanks :) 18:14
mst oh poo. I don't control where setup-repositories is called.
hrm
flussence Process.pm 18:15
mst yes
ok, I'm overcomplicating this, I think
flussence (oh, so *that's* why CU::RR just has "$*REPO" in sink context) 18:16
18:17 gist_nb joined
flussence m: multi sub INITIALIZE_DYNAMIC('$*FROB') { PROCESS::<$FROB> := 'meow' }; say $*FROB # just curious 18:17
camelia rakudo-moar a563e8: OUTPUT«Dynamic variable $*FROB not found␤ in block <unit> at /tmp/RdjbNjX0mf line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/RdjbNjX0mf line 1␤␤»
flussence m: multi sub INITIALIZE_DYNAMIC('$*FROB') { PROCESS::<$FROB> := 'meow' }; our $*FROB; say $*FROB
camelia rakudo-moar a563e8: OUTPUT«(Any)␤»
18:17 s_kilk left
flussence oh, not as simple as it looked 18:17
mst yeah, its referencing $*REPO forces the setup method to be called 18:18
18:18 gist_nb left
mst aha, aha, aha, aha, I miiiight know the answer here 18:19
18:19 andreoss joined
mst yeeeeesssss 18:19
ZoffixWin \o/
andreoss .seen masak
yoleaux I saw masak 09:53Z in #perl6: <masak> jnthn++ # 6guts.wordpress.com/2015/12/26/ref...g-forward/
Tonik perl6 is pretty awesome. When can we expect to make it into the repositories of popular Linux distros? 18:20
Skarsnik Not now
mst flussence: ok, so, having dug
I believe
flussence 10 minutes if we're lucky...
RabidGravy Tonik, already in fedora
flussence oh, *popular* distros... nm :)
Tonik RabidGravy, sweet
Skarsnik I give it a month x)
mst flussence: CompUnit::RepositoryRegistry.repository-for-spec("inst#$full_prefix").install(
Tonik <Ubuntu RedHat CentOS> 18:21
hoelzro it's in Arch's AUR as well
mst flussence: and get $full_prefix by making the Makefile pass $DESTDIR$PREFIX as an arg to install-core-dist.pl
18:21 skyl4rk joined, s_kilk joined
mst flussence: might do the trick 18:21
flussence: can you try that? (and show me how you tested it, since I'm not 100% sure how to test it right, and if I test it wrong we'll be here all day ;)
flussence i'm on it
mst that way we bypass all the setup logic and just use the thing it uses -after- picking "inst#$wrong_prefix" 18:22
18:22 bsmk joined
cosarara_ this month's version doesn't build for arch though 18:23
make DESTDIR="$pkgdir" install is broken :(
mst cosarara_: that would be what flussence and I are current swearing at, yes :)
Skarsnik The last rakudo in debian 18:24
Package: rakudo
Version: 2015.09-2
Tonik is there finally a sweet syntax for "element" in @array? 18:25
RabidGravy [jonathan@coriolanus ecosystem]$ /usr/bin/perl6 -v
This is perl6 version 2015.11 built on MoarVM version 2015.11
mst cosarara_: hopefully once we get it nailed you can cherry pick the fix as a vendor patch to build an otherwise-vanilla 2015.12
vendethiel Tonik: any(@array) eq "el"?
Tonik oh wow
so that's what these any's are about
crux mst: also you need to run ./perl6 with param -Iinst#$(DESTDIR)$(PERL6_LANG_DIR)
vendethiel pretty much :-)
Tonik awesome
cosarara_ mst: oh nice 18:26
crux already done this task some hours ago )
mst crux: oooh, of course, or push it onto @INC some other way
flussence okay, let's see what that patch does to it...
skyl4rk hello, I am a little confused by modules.perl6.org listing IO::Socket::SSL, but not IO::Socket::INET, is this a case of a working SSL socket version being prioritized? anyone wanna fill me in?
mst crux: um. you already have a patch for install-core.pl ? if so, can we please have it rather than flailing towards our own? :)
flussence skyl4rk: INET is built in
RabidGravy what flussence said 18:27
18:28 bsmk left
crux mst: ok, but there is another issue with precompiled modules... 18:28
18:28 zengargoyle left
thomax hm. how do i manually install p6 packages with panda. i've learned with panda look i'm able to see and edit the package source code, but when i leave the shell opened via look, nothing changed. so where to go? 18:28
mst crux: ok, well, explain it and what you did to fix it?
LLamaRider Good luck with wrapping up the distro work everyone! My tiny perl6 module has now caught up with v6.c and the latest rakudo, happy I dusted it off (github.com/dginev/perl6-Lingua-EN-Sentence ) 18:29
mst crux: we can't get solutions upstream if we know neither the problem nor the solution, and knowing the problem is at least a start :D
flussence thomax: if you know the package name, `panda install $foo`. if you're already in that directory, `panda install .`
thomax flussence: i tried panda install . in the shell opened by look but i interrupted it because it took to long. 18:30
skyl4rk flussence, RabidGravy: huh, thanks, I guess then I'm either doing something wrong when trying to use it, or I did a bad install...the search continues...
18:30 anaeem1_ joined, anaeem1_ left
crux mst: git.altlinux.org/people/crux/packag...7485f8ba0d 18:30
andreoss .tell masak I've made some PRs for 007. You might want to consider them. 18:31
yoleaux andreoss: I'll pass your message to masak.
mst heh, yep, I think that's exactly what I was expecting once you pointed out I'd forgotten -I
flussence: ^^ I think crux's patch is basically what we were trying to write
18:31 andreoss left
RabidGravy m: IO::Socket::INET.^methods>>.^name.say 18:31
camelia rakudo-moar a563e8: OUTPUT«List␤»
mst crux: so, what was t'other problem?
RabidGravy m: IO::Socket::INET.^methods>>.say
camelia rakudo-moar a563e8: OUTPUT«FALLBACK␤gist␤new␤»
flussence ooh, that looks saner yeah 18:32
18:32 LLamaRider left
TimToady I would like to publicly thank nine for his monumental efforts over the last several months. In the larger scheme of things, the few remaining flaws are completely dwarfed by the magnificence of what he's accomplished, and in any case can be completely blamed on me for rushing things. :) 18:33
RabidGravy TimToady++ nine++ everyone++
flussence retrying build now... 18:34
mst blame is showing that the fact there's code there to debug seems to be mostly nine and lizmat's faults
18:34 jme` left
crux mst: precompiled modules stored at /usr/share/perl6/precomp but not used, perl6 recompile them at first run in $HOME/.perl6 and load from there 18:34
Skarsnik err that sucks
thomax flussence: can it be that a running panda look blocks/locks a concurrent panda install . ?
TimToady yes, hearty ++ to everyone who actually Did The Work
mst crux: curious 18:35
18:35 devop joined
mst this may indicate more debugging of setup-repositories being required 18:35
TimToady as they say, you can steer a moving ship
flussence thomax: how much CPU% is it showing? if it's hovering around 20ish, that's probably a locking bug
ZoffixWin -_- the perl6.org homepage looks a bit outta whack
mst I hear some guy edited it without preview. blame him.
cognominal if we judge by all the features crammed in Perl 6 this last year, it is gathering steam.
thomax flussence: no cpu usage
ZoffixWin mst, XD
flussence yeah, I think that's "the" locking bug people have been getting :( 18:36
thomax flussence: ok, i removed the .lock and now it does like expected 18:37
ChoHag Speaking of bugs as a person not Doing The Work, has anyone else commented on the fact that perl6-debug-m keeps respawning moar? 18:38
flussence ugh, portage is whining about this new patch even though it's exactly the same git-diff format I tried 5 minutes ago...
ChoHag I've been out basically all day and haven't had a chance to either find out more information or report it.
thomax flussence: fixed a bug in Data::Dump, ty :-)
skyl4rk allright, I found what my error was, I assumed (from p5) that I needed to 'use IO::Socket::INET;' 18:39
uruwi How to look into a type object? 18:40
18:40 pierre-vigier joined
RabidGravy skyl4rk, yeah all the types described on docs.perl6.org are comiled in 18:41
compiled
mst aha
I think we might be able to skip the -I stage
RabidGravy uruwi, doc.perl6.org/language/mop 18:42
mst $*REPO.use-repository(CompUnit::RepositoryRegistry.repository-for-spec($spec));
flussence: ^^ maybe worth trying that as cleaner
crux: clearly it would help if they were used, but "installed at all" would be a start :)
skyl4rk RabidGravy: ah I see, thanks again 18:43
uruwi RabidGravy: as in if I have an Array[Int], then I want to know the type parameter.
flussence mst: is that while leaving the makefile as-is? 18:44
Skarsnik hm good question uruwi
thomax i know, it's not the best place for 'official bug fixes' but i don't care. pick it or not: pastebin.ca/3303075 fixes, that Num didn't get displayed in Data::Dump
mst flussence: the makefile will still need to pass $DESTDIR$PREFIX or whatever it is as the first ARGV
RabidGravy uruwi, in that case:
m: say Array[Int].of
camelia rakudo-moar a563e8: OUTPUT«(Int)␤»
flussence oh right, that's what $spec is...
mst flussence: you just don't need to duplicate it that way, because the -I would I think happen internally
Skarsnik thomax, ? Numeric work for me to display Num
mst flussence: yarr
uruwi Thanks 18:45
thomax Skarsnik: well, for me it displays 'failure'
TimToady I would also like to publicly thank ChoHag for toning down his natural Flair For The Dramatic :) 18:46
flussence and toning it up 18:47
nine Sad truth is that e can't use the precomp files generated during install most of the time due to the $HOME repo being in front of the chain
ChoHag There's nothing natural about it.
Skarsnik root@testperl6:~/piko/perl6-data-dump# perl6 -MData::Dump -I lib -e 'say Dump({a => 4.0e0})' --> {
a => 4e0.Num,}
ChoHag It's finely honed. 18:48
18:48 domidumont1 joined, seetho joined, thowe left
mst nine: ok, how come that stops use of precomp? (this may be a stupid question but) 18:48
nine I will need a couple of quiet hours to find a proper solution which I just won't find in Christmas time
18:48 molaf joined
mst I mean, this is precompiling the core, which is generally third after site and vendor anyway 18:48
nine mst jnthn's gist should explain this quite well 18:49
mst so ... if it's being loaded from that repository, wouldn't a precomp in that repository be a candaiddte?
ok,, I've been flailing through the source from the error messages up, as I always do
it's been quite pleasant to flail through, mind :)
nine: where would I find that? :) 18:50
nine I sneaked away from family to check on thecchannel and have to go back now. Will have more time in a couple of hours
Skarsnik It's fine ^^
18:50 seetho left
stmuk gist.github.com/jnthn/47a42b2e86e7e552b2e2 18:50
Skarsnik don't rush things :)
mst nine: I'm having fun anyway :D
nine: you know I'm a weirdo and like hating toolchain code :) 18:51
18:51 domidumont left
b2gills m: say eager ^100 .hyper.map: {$_ if .is-prime} 18:51
camelia rakudo-moar a563e8: OUTPUT«(67 71 73 79 83 89 97 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61)␤»
TimToady is no longer a weirdo, he's up to weirdz or weirea by now... 18:54
ChoHag Well weirdo *is* so 80s... 18:55
18:55 thowe joined
Ulti O M G "This is Rakudo version 2015.12-1-ga563e89 built on MoarVM version 2015.12 implementing Perl 6.c." yay! Amazing holiday efforts! 18:55
thowe Hi. I was just nattering on to mst about how I think there should be a Camelia 2015 tree ornament to remember the occasion by... 18:56
18:56 pierre-vigier left
Ulti after Diwali is it going to be Eid? are there enough holiday names... 18:56
TimToady m: my $w = 'weirdo'; $w++ xx 2015 - 1987; say $w 18:57
camelia rakudo-moar a563e8: OUTPUT«weireq␤»
mst nine: right, yeah, elgibility is going to be interesting when stacking repositories ...
nine: I think ... the trick will be to keep the resolutions with the precompilation, so when you're in repo X atop Y, if Y has a precomp unit, you rerun its dep resolutions against X+Y and then if those all return the same thing, the precomp is still eligible 18:58
18:59 colomon left
Ulti right now the spec is set I can fix all the bugs in my BioInfo modules and get the tests running again >:3 think I did a lot of the GLR ones but hashes changed around when I gave up keeping up the pace set in this channel :P 18:59
mst nine: as soon as you e.g. install a dual life version in X (or whatever, using p5 terms) then that would resolve and that'd invalidate the recomp and you'd rebuild it for X
flussence hm, I think I ballsed that one up. $spec is "inst#$(DESTDIR)$(PREFIX)" but I get «Method 'use-repository' not found for invocant of class 'CompUnit::Repository::Installation'»
mst flussence: oh huh, maybe I got this totally wrong, sec
18:59 pierre-vigier joined
mst flussence: argh. ok. that's a registery method, I suck 19:00
19:00 llfourn joined
Ulti P6.c is genuinely the best xmas present I've had this year, thanks 19:00
mst flussence: CompUnit::RepositoryRegistry.use-repositoriy(CompUnit::RepositoryRegistry.repository-for-spec($spec));
flussence: barring I can't spell repository
flussence: looks about right
nine: note if the above waffle sounds about right I'd be happy to talk it over a bit more later (heading out fairly soon for social stuff) 19:01
flussence just tried that, it brings me back to the original permission errors: «Failed to create directory '/usr/share/perl6/dist' with mode '0o777': Failed to mkdir: 13»
command line I'm using is `~/code/rakudo $ ./perl6-m --ll-exception tools/build/install-core-dist.pl install-foo/usr`
mst can I see the exact code you have now in dist.pl? 19:02
19:03 devop left
flussence gist.github.com/flussence/19627ee76cdd15f20a54 there's the diff 19:03
...and now I realise where I did it wrong 19:04
19:04 llfourn left
mst flussence: oh? 19:04
flussence think I needed a s/inst#/file#/ here 19:05
nm, that just gives me a method not found
thomax Skarsnik: oh, i see. someone else fixed it in betewwn :-)
19:05 domidumont1 left
thomax betweem... 19:06
argl
mst flussence: why ... why is it trying to ... 19:07
19:07 Milijus joined, domidumont joined
Milijus Happy Birthday P6! 19:08
mst use-repository definitely returns the repo object
the code relies on that
flussence: is $spec definitely what you think it is/
note "Precompiling core into $spec"; strikes me as maybe a good thing to add 19:09
flussence if I have inst# in there, «dd CompUnit::RepositoryRegistry.repository-for-spec($spec);» output looks sane
i.e. CompUnit::Repository::Installation.new("/home/ant/code/rakudo/install-foo/usr")
mst right, and use-repository should set .next-repo on it, set $*REPO to it, and return the new $*REPO 19:10
flussence yeah, that bit looks right too...
and then for whatever reason CUR just goes off and tries to mkdir something totally unrelated ¯\_(ツ)_/¯
mst CUR? 19:11
oh *my*
oh my oh my oh my
19:11 rurban left
mst I think I know why it's broken 19:11
TimToady m: my int @a[2,2]; say @a.shape
camelia rakudo-moar a563e8: OUTPUT«(2 2)␤»
TimToady m: my int @a[2;2]; say @a.shape
camelia rakudo-moar a563e8: OUTPUT«(2 2)␤»
mst the precomp stuff will instantiate precomp handling stuff for the further-up things in the repo chain 19:12
TimToady hmm, that was supposed to error on comma and point you to semicolon, oh well
mst and then the precomp handling tries to mkdir its directories
TimToady we wanted to reserve comma for lists of keys for hashes
mst bet if you could write to PREFIX it'd create empty dirs in there, then correctly build into DESTDIR
note that I know that doesn't help you exactly
wait, no, 'dist' is not 'precomp' 19:17
19:18 colomon joined
mst flussence: oh my. 19:18
flussence: fetching !dist-dir() on an Installation creates the 'dist' directory if not present
flussence: and we'll be searching the earlier ones 19:19
dalek k-simple: 9ab87a7 | RabidGravy++ | lib/GTK/Simple.pm6:
Adjust the usage of Supply per latest implementation
k-simple: 69b1ee4 | RabidGravy++ | lib/GTK/Simple.pm6:
Merge pull request #21 from jonathanstowe/master

Adjust the usage of Supply per latest implementation
flussence I have a feeling most of those mkdirs shouldn't be there...
mst right. time to break out the shovel.
yes. but equally, we don't need to do this.
sec
RabidGravy that's got a lot of users that are tracking a recent rakudo then ;-)
19:20 colomon left
mst flussence: PROCESS::<$REPO> := CompUnit::RepositoryRegistry.repository-for-spec($spec); 19:20
flussence: $*REPO.install(...);
flussence: I think
19:20 pierre-vigier left
mst since we actually -want- to only have that core repo in the list 19:20
since installation -target- directories shouldn't be participating in setup AFAICS 19:21
19:21 colomon joined
flussence that... that's doing something other than erroring immediately 19:21
mst excellent. that means if we've still broken it, we've at least broken it *interestingly* 19:22
which is totally progress :D
flussence it worked in my local checkout, lemme see what happens when I try to make the OS install it
skyl4rk I think I found a tiny bug in in the perl6 learnxinyminutes tutorial, anybody wanna give me a reality check? (commit to fix the bug, as well as description: github.com/tlvb/learnxinyminutes-d...diff-57db)
mst crux: thanks very much for the initial hints, if you run into this stuff again, please, please, show us what you did, you already made life noticeably easier today :D 19:23
I do, however, think the mkdirs are absolutely the wrong thing, since it should be possible to put a path you can't create into @INC just in case it's there 19:24
I don't, however, think that what I'd been trying that triggered that was the right thing to do anyway ;) 19:25
flussence afaik the makefile already puts those there correctly anyway
Ulti is there any way to get the size in memory of a given variable?
mst flussence: more importantly, it shouldn't blow up in general
flussence: PERL6LIB=/no/you/are/spooned/my/son 19:26
flussence: shouldn't result in a die-on-failed-mkdir, no matter what
flussence well, it installed. put all the files in the wrong place on the live filesystem, but it installed :D 19:28
flussence tweaks the makefile a bit
19:28 xfix left
mst flussence: anything else you want me to curse at? 19:32
flussence almost there, it's just chewing through `make test` before install 19:33
mst cool. I'm about to start prepping to move, is all
flussence I think I can finish it up from here :D
RabidGravy mst++ flussence++ # hunt that sucker down 19:34
mst ... I just realised, that's the first line of actual perl6 I've ever written.
flussence mst++ did most of the hard work, I'm just a volunteer guinea pig :)
RabidGravy squeeeeeeeeeee
flussence 14/17 test files...
colomon mst++ 19:36
flussence ~ $ perl6 --version
This is Rakudo version 2015.12 built on MoarVM version 2015.12
implementing Perl 6.c.
🙌
uruwi How to convert native types from unsigned to signed and vice versa?
Skarsnik what do you call native type?
Skarsnik think that type for NC should be specific/renamed 19:37
uruwi For example, uint8 <--> int8
mst flussence: so it that "the package works" ?
flussence that's /usr/bin/perl6 19:38
19:38 lizmat joined
TimToady m: my uint8 $a = 200; my int8 $b; $b = $a; say $b 19:38
camelia rakudo-moar a563e8: OUTPUT«===SORRY!===␤Unknown coercion case for int8; got: 17␤»
mst flussence: \o/
flussence \time perl6 -e 1 looks like the precomp stuff went in correctly too
mst flussence++ # clear problem report, patient guinea pig
19:38 s_kilk left
Skarsnik m: my int8 $a = 250; my uint8 $b = $a: say $b; 19:38
camelia rakudo-moar a563e8: OUTPUT«5===SORRY!5=== Error while compiling /tmp/d1cOSrwCtB␤Confused␤at /tmp/d1cOSrwCtB:1␤------> 3my int8 $a = 250; my uint8 $b = $a:7⏏5 say $b;␤ expecting any of:␤ colon pair␤»
Skarsnik m: my int8 $a = 250; my uint8 $b = $a; say $b;
camelia rakudo-moar a563e8: OUTPUT«250␤»
flussence now I just gotta write up a blog post in the form of a pull request :) 19:39
uruwi I know that works, but was looking for a method that doesn't require a temporary variable
mst tell me when it's up and I'll tweet it
Skarsnik m: my int8 $a = 250; my uint8 $b = $a; say $a; say $b;
camelia rakudo-moar a563e8: OUTPUT«-6␤250␤»
mst I probably have a few followers who appreciated a good bit of toolchainish masochism
19:39 ork_ joined, Begi joined
flussence will be a while, I want to get this right if a bunch of people are gonna see it 19:39
Skarsnik m: my uint8 $a = 200; say $a.uint8; 19:40
camelia rakudo-moar a563e8: OUTPUT«Method 'uint8' not found for invocant of class 'Int'␤ in block <unit> at /tmp/XY2yoM4cb4 line 1␤␤»
mst flussence: so long as you get the patch in first, you can take as long as you like on the write up
BUT
ork_ p6: say 3 + 10;
camelia rakudo-moar a563e8: OUTPUT«13␤»
mst I would seriously suggest showing the first draft to people
they will often say "just ship that, it's already good"
33
I basically always post my first draft, because I've concluded that two 85% good posts are better value to somebody than one 95% good post 19:41
TimToady in general, in Perl 6 native types are only storage locations, and temporaries happen in full precision 19:42
flussence I'm a terrible writer, I'm absolutely not sending this in without some second opinions :)
b2gills thomax: if(...) is for calling a subroutine named &if, or for coercing to a class named ::if
uruwi Agh, can't have native types for hash values.
Skarsnik how native str are encoded?
19:43 wolphin joined 19:44 domidumont left 19:45 woolfy joined
uruwi What methods do I need to implement to extend Cool? 19:48
TimToady whatever methods Cool uses to auto-coerce things 19:49
uruwi So Str and Num?
19:49 domidumont joined
TimToady I dunno, read the class :) 19:49
uruwi * Str and Int
TimToady at a guess, it probably uses Numeric and Stringy and such 19:50
woolfy Interesting approach to Perl 6: be an early adopter, it's good for your CV: programming.tudorconstantin.com/201...began.html 19:52
RabidGravy yeah I'm not entirely convinced by that but we'll see :) 19:53
dalek kudo/nom: 07fecb5 | (Dave Rolsky)++ | docs/announce/2015.12.md:
I appreciate the thanks, but once is enough
19:54
kudo/nom: 446a3ca | lizmat++ | docs/announce/2015.12.md:
Merge pull request #652 from autarch/patch-1

I appreciate the thanks, but once is enough
Skarsnik I want my SO poinnts! 19:55
I did not even found that much job offer for perl, I don't see the point of putting perl6 on my CV x)
19:56 pdcawley joined
RabidGravy yeah, if an employer was interested in Perl 6 enough they'd know ;-) 19:57
19:58 domidumont left, Elronnd left
uruwi Any way to convert a Blob to the number it represents other than by operating on the bytes themselves? 19:59
woolfy It's not "interested right now". You never build up a CV with interesting stuff for now. You build a CV to help you at some point in life. It might be right now, and it might be at a moment where it confuses you, makes a mess of your life, or be like a needed miracle.
Havind Perl 6 on your CV is not a bad thing. Having some modules for Perl 6 (and/or Perl 5!) is not a bad thing. Having modules that lots of people use, makes you interesting, and some companies might even modify a job so you could fit in. 20:00
20:01 llfourn joined
ilmari uruwi: .List 20:01
m: Blob.new(123,103).List[0].WHAT.say 20:02
camelia rakudo-moar a563e8: OUTPUT«(Int)␤»
uruwi As in if I have Blob.new(1, 2, 3, 4) then I want 0x01020304
Even better, doing it for floating-point types as well. 20:03
m: 256:<1 2 3 4>
camelia rakudo-moar a563e8: OUTPUT«5===SORRY!5=== Error while compiling /tmp/d42tEScoHx␤You can't adverb 256␤at /tmp/d42tEScoHx:1␤------> 03256:<1 2 3 4>7⏏5<EOL>␤»
ilmari unpack?
uruwi m: Blob.new(1, 2, 3, 4).unpack("I") 20:04
camelia rakudo-moar a563e8: OUTPUT«Use of the 'unpack' method is experimental; please 'use experimental :pack'␤ in block <unit> at /tmp/1_pju2G87H line 1␤␤»
20:04 CIAvash left
RabidGravy m: say Blob.new(1, 2, 3, 4).unpack("N") 20:04
camelia rakudo-moar a563e8: OUTPUT«Use of the 'unpack' method is experimental; please 'use experimental :pack'␤ in block <unit> at /tmp/SkxVmo5kQO line 1␤␤»
uruwi m: use experimental :pack Blob.new(1, 2, 3, 4).unpack("N")
camelia rakudo-moar a563e8: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Ol51FAttGy␤Two terms in a row␤at /tmp/Ol51FAttGy:1␤------> 3use experimental :pack7⏏5 Blob.new(1, 2, 3, 4).unpack("N")␤ expecting any of:␤ infix␤ infix stopper␤»
uruwi m: use experimental :pack ;Blob.new(1, 2, 3, 4).unpack("N")
nine mst: the nice part of the current implementation is that we don't have to re-run the dependency resolution for a precomped module. Once we identified the right precomp file, we can load all its transistent dependencies directly without going through all repos again.
camelia ( no output )
RabidGravy m: use experimental :unpack; say Blob.new(1, 2, 3, 4).unpack("N")
camelia rakudo-moar a563e8: OUTPUT«5===SORRY!5=== Error while compiling /tmp/sHU3e2eni8␤Error while importing from 'experimental': no such tag 'unpack'␤at /tmp/sHU3e2eni8:1␤------> 3use experimental :unpack7⏏5; say Blob.new(1, 2, 3, 4).unpack("N")␤»
RabidGravy m: use experimental :pack; say Blob.new(1, 2, 3, 4).unpack("N")
camelia rakudo-moar a563e8: OUTPUT«16909060␤»
uruwi m: use experimental :pack; say Blob.new(1, 2, 3, 4).unpack("N").base(16); 20:05
camelia rakudo-moar a563e8: OUTPUT«1020304␤»
dalek blets: ecf9fdc | (Herbert Breunung)++ | docs/appendix-a-index.txt:
A +ops: (cont) (elem), fix links to B
20:05 edehont joined
uruwi Never aware that I could use that. 20:05
20:05 domidumont joined, lichtkind joined
RabidGravy people don't like it, so it's "experimental" 20:05
flussence github.com/rakudo/rakudo/commit/fb...242997878c # okay, here's a commit with a crudely cobbled together wall of text. lemme know if it needs improving :) 20:06
if not, I'll go hit the pull request button in a few minutes
uruwi So should I not expect for it to stay?
20:06 llfourn left, darutoko left
Skarsnik uruwi, I think someone was working out a better API for Blob 20:07
RabidGravy well it will either get improved or replaced
20:07 shlomif joined
uruwi m: say Blob.new(80, 80, 80, 80).unpack("N"); 20:07
camelia rakudo-moar a563e8: OUTPUT«Use of the 'unpack' method is experimental; please 'use experimental :pack'␤ in block <unit> at /tmp/llktbYtZiq line 1␤␤»
uruwi m: use experimental :pack; say Blob.new(80, 80, 80, 80).unpack("N"); 20:08
camelia rakudo-moar a563e8: OUTPUT«1347440720␤»
RabidGravy it's possible that something different will come from module space
uruwi m: use experimental :pack; say Blob.new(128, 128, 128, 128).unpack("N");
camelia rakudo-moar a563e8: OUTPUT«2155905152␤»
uruwi m: use experimental :pack; say Blob.new(200, 128, 128, 128).unpack("N");
camelia rakudo-moar a563e8: OUTPUT«3363864704␤»
20:08 rindolf left 20:09 shlomif is now known as rindolf, domidumont left
RabidGravy flussence, seems cool to me 20:10
20:13 LLamaRider joined
Rotwang can I have short options with MAIN sub? Without multisub MAIN? 20:14
20:14 Khisanth left
flussence Rotwang: something like :o(:$option) works iirc 20:14
Rotwang eg. sub MAIN(:$verbose) {...} # would accept ./prog -v and ./prog --verbose
20:15 ork_ left
timotimo o/ 20:16
what did i miss half of today?
RabidGravy harr!
Skarsnik A lot x) 20:17
flussence timotimo: mst wrote a line of perl6 code :D
20:17 vendethiel left
timotimo wow, holy crap 20:17
flussence now I'm just figuring out if the same sort of workaround is needed to make `make test` run properly... 20:19
tadzik . o O ( the most misunderstood 'say "hello world"' ever )
20:20 khw left
Rotwang flussence: indeed it does work, but not sure how, so :ident("something") is equivalent to ident => "something" and :$ident is equivalent to ident => $ident, so :o(:$option) is equivalent to o => option => $option ? 20:20
gfldex m: sub MAIN (:v(:verbose($v))) {}
camelia ( no output )
gfldex that $v could be named differently ofc 20:21
flussence okay, looks like I *do* need something for `make test`... 20:23
b2gills Rotwang: Yes exactly. It's a bit of special cased usage of a general syntax 20:24
20:26 nemsys left
timotimo are JRuby and Jython still actively developed at all? 20:26
gfldex m: sub MAIN (:v(:verbose($vee)) = False ) { $vee.WHAT.say };
camelia rakudo-moar 446a3c: OUTPUT«(Bool)␤»
dalek kudo/nom: d031905 | lizmat++ | src/core/Date (3 files):
Put in some Date opts that didn't make 2015.12
20:27
timotimo seems so
Rotwang flussence: b2gills: thanks 20:28
dalek blets: e2bf5f1 | (Herbert Breunung)++ | docs/report.pl:
report file size in kb
20:29 jeturcotte joined, Tonik left
flussence if I do RAKUDO_PRECOMP_WITH=$(mktemp -d) I can get the nativecall sanity tests to run, but it ain't pretty, nor using automatic precomp. 20:30
jeturcotte pff, even after yesterday's change to io::socket::async it doesn't talk well to ye olde telnet client, but INET does 20:31
timotimo i'm surprised we're not getting drowned by trolls right now 20:33
dalek kudo/nom: cb2db79 | lizmat++ | docs/release_guide.pod:
Sorta voluntell Coke, japhb++
20:34
RabidGravy merifully quiet really
flussence timotimo: social media acts as a sponge for that sort of thing, I think
RabidGravy mercifully
timotimo mhm mhm
woolfy: i think that one pingback to your "why should i use perl 6" post is spam 20:35
lizmat told woolfy 20:36
yoleaux 13:56Z <jdv79> lizmat: i saw your ticket about spec'ing packages(mods,classes,etc) vs dist - was there any further movement on that?
jeturcotte should I just have understood that io::socket:async listening shouldn't be useful in talking to a telnet client, or can it and I'm just doing sump'n stupidly wrong?
lizmat .tell jdv79 not sure what ticket you mea
yoleaux lizmat: I'll pass your message to jdv79.
flussence appears to be confused 20:37
woolfy thanks timotimo, I trashed the comment, and reported it as spam. 20:38
flussence setting RAKUDO_PRECOMP_WITH seems to disable precomp and break module loading entirely. That gets `make test` through most of the stuff but the last few actually «use Test;»
ohh... if I set it to file#lib it works 20:39
20:39 espadrine joined
lizmat RAKUDO_PRECOMP_WITH is only intended for internal use only 20:39
not sure what you guys are trying to achieve here...
Skarsnik Hm, is there a way to add multi sub in an already loaded module?
flussence lizmat: trying to get rakudo's `make test` to work when nqp is installed to /usr/bin 20:40
lizmat should 'make test' precomp at all ?
Skarsnik flussence, hm, it does not work after a make?
flussence make doesn't precompile Test.pm, make install does that... 20:41
20:42 Khisanth joined
jeturcotte pff, i just started rereading some dragonlance the other day 20:42
20:43 pierre-vigier joined
timotimo only 5.4k visitors on the advent calendar today and 5.9k yesterday 20:45
would probably have been 10x that if we had announced something super scandalous instead :)
RabidGravy but it's still early
timotimo like "perl 6 is in reality the project to create a huge space ark that catapults programmers into space towards a previously unpublicised extrasolar earth-like planet" 20:46
"larry wall unveils perl 6 has been about environment control and takes his position as sovereign ruler of the earth by immobilizing america's army with a gigantic swarm of butterflies" 20:47
20:47 mrsolo left
jast is that scandalous? 20:47
20:47 lucasb joined
RabidGravy jeturcotte, gist your code or is it just the example from the doc page? 20:47
timotimo jast: it is to all those people not being taken away
jast right, makes sense
timotimo because right now that ark is already launching! 20:48
tune in to spaceX tv to see it launch!
jast iff the extrasolar planet is super great
RabidGravy if the latter it's probably my fault as I wrote the example :)
jast e.g. with trees made of solid gold
20:48 mrsolo joined
timotimo you should read about the "counterweight continent" :) 20:49
also, it will look that much greater once the citizens of the "first world countries" get to see what it's like to have swarms of "tropical insects" and illnesses at their doorstep, etc etc
RabidGravy it does amuse me that there is just so much whining and bitciness about the logo 20:50
timotimo there's really not that much
also, don't forget that go has a dopey-looking gopher
RabidGravy "well actually it's a test to check if you're the kind of person we want"
timotimo yeah :) 20:51
jeturcotte hey, RabidGravy; just the sample from perl6.org... before and after yesterday's update, the INET version will echo to a connected telnet client but the async one will not... when I dig alittle deeper, it notices and holds the connection but it's like they aren't actually talking to each other
jast I was going to check out Perl 6 but then I saw it didn't have one of those generic, instantly forgotten logos everyone has these days, and now I'm going to go look at PHP instead
RabidGravy I never tested the example with telnet :) 20:52
nine flussence++ # taking on sucky installation problems
jeturcotte i was meaning to use this to teach myself perl6... make a little asnync/concurrent mud engine... it works up to that point; they just don't talk so far as I can tell
timotimo cool, a mud engine :) 20:53
lucasb $ perl6 -v #=> This is Rakudo ... built on MoarVM ... <NEWLINE> implementing Perl 6.c.
is that newline really intended? :)
flussence nine++ # giving me something to do this weekend :)
timotimo i think so 20:54
20:55 movl joined
jeturcotte conversely, I haven't yet made the INET edition play nice with the tic loop; probably my lack of familiarity with start, await, whenever, et cetera 20:55
RabidGravy I'll look in a minute 20:56
lucasb ok, then. I see other warnings/errors with newlines embedded. I don't understand the need to manually break lines, since the terminal already will do so.
nine flussence: FWIW I'm not sure why we actually need to change install-core-dist.pl. It uses exactly the same logic to find the installation directory that perl6 will later use to load the installed modules. So if we just change the script, how will perl6 find the installed modules?
20:57 edehont left, xfix joined
flussence the problem is they *haven't* been installed at that point, so all that logic doesn't help, and the mkdir stuff is actively harmful because it kills the process 20:57
nine flussence: that the modules are not installed yet is no issue, but CompUnit::RepositoryRegistry.repository-for-name('perl') should really give the same repo before and after installation. And when we install the CORE dist, we really ought to have write permission to the target directory. 21:00
flussence: I guess I really need a quick intro on how the $DESTDIR thing works in rakudo's build system. I've never used it or seen it used. 21:01
flussence I think distro people would take issue with a build process wanting write access to /usr/share...
nine But make install is not the build process?! It's installation 21:02
21:02 labster joined, llfourn joined 21:03 pierre-vigier left
nine How would installation without write permission ever work? 21:03
flussence yeah, it installs to DESTDIR, and on gentoo (and apparently arch too) the contents of DESTDIR gets copied out of a limited-privilege sandbox to the live filesystem
21:03 rindolf left
nine Now _that_ sounds broken to me. 21:04
tadzik m: multi foo { }; &foo.HOW.perl.say 21:05
camelia rakudo-moar cb2db7: OUTPUT«Perl6::Metamodel::ClassHOW.new␤»
jeturcotte for the room in general, what concurrency command might I be overlooking where I can just tell perl6... hey go do this function over here until told otherwise? 21:06
nine Can precompiled files even be moved around freely?
jeturcotte edit: independently, that is, except for share memory
timotimo tadzik: yeah, routine is a class that you can derive from and mix into 21:07
21:07 llfourn left
tadzik yep 21:08
lucasb timotimo: seriously? or are you joking about the bug? :)
tadzik timotimo: with Skarsnik we're exploring a possibility of adding a new candidate to a multi, post-factum
timotimo sorry, what exactly?
lucasb that subroutines are classes...
tadzik no, it's the truth :)
timotimo they are ... classes?
not objects?
tadzik well, tehy're objects
of class Routine 21:09
lucasb oh, ok. objects! sorry for the confusion :)
flussence nine: whoa whoa, which part are you saying is broken? This is the exact same routine every other thing with a ./configure&&make&&make install dance or similar gets installed with on gentoo, moar and nqp included.
tadzik m: sub foo { }; &foo.^methods
Skarsnik well create the multi seem not that bad, the tricky part is too inject it to a module x)
camelia ( no output )
tadzik m: sub foo { }; &foo.^methods.perl.say
camelia rakudo-moar cb2db7: OUTPUT«(ForeignCode.new, ForeignCode.new, ForeignCode.new, method soft (Routine $: *%_ --> Nil) { #`(Method|62988160) ... }, ForeignCode.new, ForeignCode.new, method yada (Routine $: *%_) { #`(Method|62988616) ... }, method perl (Mu $: | is raw) { #`(Method|62987…»
lizmat jeturcotte: does that code take any input ?
jeturcotte aye; i'm trying to set up a socket listener that takes input and deposits them in a buffer/queue without blocking a logic loop that consumes that buffer/queue 21:10
lizmat if so, you could set up a Supplier taking that input, and then create a Supply from that and then throttle that
timotimo since throttle is so well known for being stable and reliable :P 21:11
lizmat jeturcotte: you need to look at Supply.throttle, I think it will do exactly what you need and then some
jeturcotte sounds good; I shall read then.
lizmat timotimo: well, I think the issue is really a race condition in Promise.then
nothing to do with supplies per se 21:12
jeturcotte im not nearly sophisticated enough yet to know
hence, play
timotimo OK 21:13
nine flussence: please note that my goal is understanding, rather than arguing.
flussence alright, alright
I think another source of problems might be install-core-dist is being run too late in the process 21:14
nine flussence: one difference between rakudo and those other packages is that I don't have a clue how systems other than openSUSE build packages and that I actually know very little of rakudo's own build process.
Maybe even the whole idea of having install-core-dist.pl as Perl 6 script is bad. It was just the first thing that worked and got me a step further. 21:15
timotimo if what you're saying is "i was basically just winging it", the result we got for our release was still pretty darn good :) 21:16
flussence for gentoo, the tldr is: «su portage -c 'perl Configure.pl; make; make DESTDIR=$foo install' && rsync $foo /» (or thereabouts)
nine That's the joke! For me most of the work was discovery rather than design. I literally discovered what jnthn's design was about while implementing it and only in some places extended on his ideas :) 21:17
lucasb m: 42 but sub {}
camelia ( no output )
TimToady --> NorCal &
Skarsnik m: my &foo = sub(Int $a) {say $a}; say &foo.ACCEPTS(42); 21:18
camelia rakudo-moar cb2db7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/CCPmFyciz0␤Unable to parse expression in argument list; couldn't find final ')' ␤at /tmp/CCPmFyciz0:1␤------> 3my &foo = sub(Int7⏏5 $a) {say $a}; say &foo.ACCEPTS(42);␤ expecting any of:␤ …»
timotimo my &foo = sub (Int $a) {say $a}; say &foo.ACCEPTS(42) 21:19
m: my &foo = sub (Int $a) {say $a}; say &foo.ACCEPTS(42)
camelia rakudo-moar cb2db7: OUTPUT«42␤True␤»
Skarsnik Erf it get called x)
21:19 rurban joined
nine The whole mkdir fiasco was just me not having the time to think about at which point we actually want to create those directories. It was never meant to stay that way. 21:19
timotimo well, at least it tries to make a call there
huh. what does this person mean? Say what you want about the tenets of Perl 6, at least it's an ethos doc.perl6.org/language.html 21:20
Skarsnik No idea x) 21:21
timotimo like "wow the language is so big that they have like 10 chapters of language documentation"?
nine flussence: what do you think about an override for $prefix in CompUnit::RepositoryRegistry::setup-repositories? That way we can use a different, non-final $prefix during build and install. And it would keep the repo paths synchronous between installation and loading. 21:24
21:26 LLamaRider left
dalek kudo/nom: f909a06 | lizmat++ | src/core/Date (3 files):
Give !ymd-from-daycount a new API

Instead of returning 3 values, it now sets the 3 values directly on the 3 variables specified. This makes things like Date.later 25% faster.
21:28
timotimo whoa, 25%
21:28 billN1VUX joined
stmuk www.fysh.org/~zefram/prog_lang/emp...e_demo.txt 21:29
"unimpressed" by ^^^
21:29 araujo left 21:30 riatre joined 21:31 BloodShura joined, pierre-vigier joined
lucasb m: my Int $x = module Foo {}; say $x 21:31
camelia rakudo-moar f909a0: OUTPUT«(Foo)␤»
lucasb m: my Int $x = role Foo {}; say $x 21:32
camelia rakudo-moar f909a0: OUTPUT«(Foo)␤»
21:32 araujo joined
lucasb it's not just CORE 21:32
^^ about what zefram showed in its talk 21:33
timotimo stmuk: to be honest, the $a = CORE dropped my jaw a little
stmuk timotimo: yes that was the worst 21:34
21:34 rey joined
nine So we have a bug. What's new? 21:34
timotimo i disagree with his idea of how "identity map" should work; if he wants to do an identity thingie without iterating, he'd use something other than iterating with map
nine: his point isn't "there's crazy bugs", it's "there's no way in hell these people will be able to write tests for all corner cases" 21:35
stmuk "here are ~4 bugs in a new lang" didn't seem to support his basic arg
timotimo actually, it's more "here's 4 examples of where i just combined two basic features and got an explosion out of it" 21:36
the small size of his examples is a big point here
he doesn't need to bend over backwards to get something b0rked
nine timotimo: which is true, so what? It's easy to point out that a solution to a complex problem is not perfect. So Perl 6 implementations may be inconsistent in such totally contrieved details. I can live with that a whole lot better than "Perl is what perl does"
stmuk he is a scheme reductionist 21:37
he previousily wrote his own "zlisp" in parrot maybe he will do the same in nqp
nine stmuk: then how the hell did he end up in Perl? Perl has never been a small language :)
stmuk nine: yes that occured to me 21:38
timotimo stmuk: your App::ecoreadme seems to have p6-app-p6tags as a heading below the actual readme text
stmuk timotimo: almost as if I used one as a template for the other :) 21:39
I'll fix
flussence nine: a proper override sounds exactly what's needed
lucasb m: my @a = (3,4);my int @b[2,2] = (1,2),(3,5); say @a foo
camelia rakudo-moar f909a0: OUTPUT«5===SORRY!5=== Error while compiling /tmp/TPm0H2nJdt␤Two terms in a row␤at /tmp/TPm0H2nJdt:1␤------> 3,4);my int @b[2,2] = (1,2),(3,5); say @a7⏏5 foo␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ …»
lucasb ^^ only my irssi does this crazy thing? or yours too?
flussence more importantly, that'll add a way to have distro-installed modules with working precomp :)
RabidGravy well it's in unreadable green on red here 21:40
nine timotimo: what we should learn from his ramblings is, that while our test suite is an epic achievement, we really should not delude ourselves with regard to it's completeness.
lucasb RabidGravy: is it blinking? :)
RabidGravy no blinking
flussence huh, not just me then
21:40 Zero_Dogg joined
timotimo fair enough 21:41
lucasb I think this is some escape code thing... I'm trying to golf, but I can't
flussence (I swapped urxvt for st this week, was wondering if that was rendering camelia's output wrong...)
nine flussence: RAKUDOPREFIX or PERL6PREFIX then? Or sprinkle some underscores?
lucasb flussence: is it blinking in yours? 21:42
RabidGravy flussence, no this is in xchat
nine Well, probably RAKUDO_PREFIX. We shouldn't claim PERL6 names for our implementation details.
flussence lucasb: don't think this term supports that
lucasb ah, ok. I'm on xterm
flussence nine: +1 to that
timotimo flussence, no this is in patrick
flussence /o\
stmuk it is probably possible to "fuzz" bugs by combining features automatically
timotimo yeah 21:43
flussence it's an acidic xmas palette in urxvt too, so I guess camelia's acting up here
timotimo i'd love to have some automated fuzzing done, but it's not terribly easy :)
i think a big important part about automated fuzzing is to have feedback about at what point branches are taken and what could make other branches be taken
nine flussence: so can you make it work with this?
- my $prefix := nqp::p6box_s(
+ my $prefix := %ENV<RAKUDO_PREFIX> // nqp::p6box_s(
in src/core/CompUnit/RepositoryRegistry.pm 21:44
timotimo so we might want to put in an istrumentation based thing into moarvm that can give a fuzzer the required feedback
also, that'll be excruciatingly slow
lizmat timotimo: feels like a special version of the debugger to me
flussence sure, gimme a few mins to try that out
timotimo if we just fuzz moarvm based on giving it .moarvm files until it blows up, that'll be *ridiculously* problematic
colomon anyone know about installing to “bin” via panda? 21:45
timotimo lizmat: i'm not sure about that; please elaborate?
lucasb nobody ever got interested in running AFL with moar? sure it would find lots of bugs on its own
RabidGravy colomon, it just works
timotimo lizmat: the thing is we'd probably want the fuzzer to reach deep into the written-in-nqp parts of rakudo
stmuk colomon: Star does it I think
colomon RabidGravy: it just doesn’t work as of yesterday
lizmat timotimo: ah, ok... scratch that then
RabidGravy stick something in bin and it gets installed
stmuk colomon: I mean panda itself is in bin .. do you mean things installed by panda? 21:46
timotimo lizmat: it'd be lovely to build it very similarly to the debugger, but that has its limits :(
colomon colomon: things installed by panda
errr, stmuk, I mean, obivously.
stmuk :)
Woodi nine: I installed R2015.12 some hours ago but installation have repo.lock file in it - it should be there whole time or just during operations on repo ?
RabidGravy colomon, works here 21:47
21:47 pierre-vigier left
RabidGravy [jonathan@coriolanus JSON-Infer]$ which p6who 21:47
~/.rakudobrew/bin/p6who
21:47 BenGoldberg joined, mj41 joined
stmuk rakudobrew uses shims 21:47
colomon RabidGravy: huh, just worked for me, too. wonder what went wrong when I tried it a day or two ago 21:48
21:48 woolfy left
mj41 commits analytics updated ... I like this one github.com/mj41/Perl6-Analytics-re...rr-authors the most. 21:48
stmuk RabidGravy: I don't think that's p6
autarch could someone give me a clue what this means - P6M Merging GLOBAL symbols failed: duplicate definition of symbol Test 21:49
flussence those shim scripts come from CompUnit stuff
RabidGravy stmuk, eh?
stmuk RabidGravy: look at that script
colomon realizes his test a second ago was on the wrong computer 21:50
stmuk I think there are rakudobrew shims and compunit ones (?)
RabidGravy stmuk, yes it's a shim script around the p6who that is installed with Sys::Utmp
timotimo hmm. one kind of shim to make switching between rakudo versions possible, one to make switching between installed distributions possible 21:51
21:51 rey left
flussence nine: `RAKUDO_PREFIX=install/usr/share/perl6 make DESTDIR=install install` worked with that :D 21:52
ugexe and a third shim to switch between -j -m installed by rakudo itself
flussence let's see if it works on make test too
timotimo oh, ah 21:53
stmuk the 'brew shims are perl5 and used to be shell scripts
RabidGravy oh I see what you mean now
flussence results there looking good too
t/04-nativecall tests take ages...
stmuk "you are lost in a twisty maze of shims" :) 21:54
autarch you have to do the shimmy to get out
timotimo all named some long hexadecimal hash
RabidGravy y'know I didn't even notice it was Perl 5
Skarsnik Good night #perl6 21:55
autarch speaking of those long hex hashes - any reason they can't be something like Module-Name-HASHGOESHERE ? that'd be a bit friendlier
Skarsnik I think rakudo should resolve the file name when displaying error ~~
timotimo i think it should at the very least display both file names 21:56
one to let you know where it's reading stuff from, one to let you know what it's trying for
flussence All tests successful.
Files=43, Tests=553, 213 wallclock secs ( 0.19 usr 0.01 sys + 209.77 cusr 2.95 csys = 212.92 CPU)
Result: PASS
21:56 leont joined, AlexDani` joined, AlexDani` is now known as AlexDaniel
timotimo since our installation folders don't have to be content-addressed, it'd actually be enough to disambiguate things with the same name by applying a short hash (as long as it needs to be to not collide with something already put in there) 21:57
AlexDaniel shorter hashes? Yes!
21:58 Skarsnik left
lucasb m: $().Slip 21:59
camelia rakudo-moar f909a0: OUTPUT«Use of Nil in string context in block <unit> at /tmp/hIxTROan0X line 1␤»
ugexe m: my $json = q|"a" : 1,| x 100; say from-json(q|{| ~ $json ~ q|}|); # in the majority of cases i dont think its not helpful to dump the entire json 22:00
camelia rakudo-moar f909a0: OUTPUT«Invalid JSON: {"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"a" : 1,"…»
ugexe s/not//
22:01 wolphin left 22:03 TEttinger joined
lucasb what do you mean? that from-json should cut it's output in the middle? 22:03
22:03 lizmat left
ugexe that its pretty much pointless to dump any of it 22:03
lucasb *its output
timotimo just discussed a bit on twitter about "oh no perl 6 switched for and loop around, it's bass-ackwards and a backwards compatibility epic-fail" 22:04
ugexe you A. almost certainly have the string you used and B. you can just handle the exception and get it from there. there is no reason to print it out
22:04 llfourn joined
timotimo ugexe: also please note that the built-in from-json isn't supposed to be used by users anyway and i think it should disappear into Rakudo::Internals 22:04
lucasb ah, I didn't see it already was an exception. nevermind what I said :)
flussence timotimo: wonder if they have the same complaint about Swift doing the same...
22:05 lizmat joined, lnrdo joined
BloodShura lucasb: BR? 22:05
colomon is utterly baffled about what is going on with his panda
ugexe timotimo: the internal use is reading manifests which is certainly pointless to dump like that since they are larger than a couple lines 22:06
Ulti p6 doing well on front page of HN news.ycombinator.com/news
lucasb BloodShura: yes, I am
22:06 sd_ joined
timotimo ugexe: good point, too 22:06
sd_ hi
timotimo heyo sd_
22:07 sd_ is now known as Guest77407
BloodShura @lucasb Nice! It's really cool to see I'm not the only brazilian on this underground 22:07
timotimo one brazillion perl 6 programmers? that's a lot!!
(how much is a brazillion, exactly?)
BloodShura Two now hahah
22:07 Guest77407 left
lucasb BloodShura: not just two... there's more brazilians here :) 22:08
22:10 llfourn left 22:11 hankache joined
hankache good evening everybody 22:11
timotimo hello hankache
did i actually reach you because of the pdf thing?
hankache hi timotimo
timotimo i think it'd be fine if you put a PR up for github.com/rakudo/star that adds the .pdf into docs/
Ulti "==> Successfully installed Task::Star" \o/
timotimo perhaps there needs to be an entry into the MANIFEST or Makefile or some kind of list of things 22:12
22:12 BloodShura left, BloodShura_ joined
hankache was away for a bit i didn't check the logs yet 22:12
RabidGravy jeturcotte, just pushed IO::Socket::Async doc with an example that works with telnet
is dalek broken?
22:12 virtualsue left
flussence huh, think it is 22:13
22:13 X-Scale joined
RabidGravy but a much nicer example anyway 22:13
timotimo dalek: sup wit'chu? 22:14
hankache dalek: wake up
22:14 yqt joined, nebuchadnezzar joined
hankache timotimo will github let me upload a file on the web? or i have to do it locally? 22:15
timotimo i think you'd have to do it locally, actually
do you already have hub.github.com installed?
it's quite handy
is the perl6 emacs mode good? 22:16
hankache no i don't have and it
22:16 virtualsue joined
hankache let me look at it 22:16
timotimo i still have the previous version installed that was written in ruby ... 22:17
nine Woodi: the repo.lock file stays there. It's the flock operation that counts
hankache i never used git from the the command line, i'll have to actually learn how to do it
jeturcotte oooh, nice RabidGroovy
(was nearly asleep therE)
autarch does anyone know how Pod::Raw is supposed to work? the parser doesn't produce raw blocks under any circumstances, AFAICT
timotimo hankache: try.github.com gives you a nice introduction 22:18
hankache timotimo on it.
jeturcotte wehew, pod errors! 22:20
lucasb m: my @a = $(); say @a.perl # itemized empty list turns into a string?
camelia rakudo-moar f909a0: OUTPUT«Use of Nil in string context in block <unit> at /tmp/vB9WHtpZSC line 1␤[""]␤»
nine autarch: the "Merging GLOBAL symbols failed" usually means that something precomp related broke :/
timotimo lucasb: actually, $() is special syntax for $/.ast // ~$/ or something
m: my @a = $( ); say @a.perl
camelia rakudo-moar f909a0: OUTPUT«[(),]␤»
timotimo m: "foobar" ~~ /f../; my @a = $(); say @a.perl 22:21
camelia rakudo-moar f909a0: OUTPUT«["foo"]␤»
timotimo i don't quite know why that exists myself, but it's there
lucasb ah, thanks, timotimo++; sorry for the mistake
flussence is currently figuring out a good place to stick RAKUDO_PREFIX... it works fine as a command line var but it'd be better living in the makefile somewhere
timotimo it's not your mistake :)
nine flussence: great! I take it that we are a lot closer now to distro packages? 22:22
RabidGravy jeturcotte, while the doc server is thinking about it the example is now gist.github.com/jonathanstowe/41a2...7f2cc9fd57
flussence if this works my workload's going to explode... next job will be a thing to convert the ecosystem list to distro build scripts :) 22:23
jeturcotte =) ... was lookin' at raw
just now that is, not back at the err page 22:24
nine autarch: to be precise: a module seems to export a "Test" when there's already there. That usually is caused by the module loader failing to detect that the Test module is already loaded. Maybe once precompiled and once from source. 22:25
RabidGravy I don't know why it doesn't work with an ordinary tap
22:25 pierre-vigier joined
nine autarch: do you by chance happen to have a "use lib" in a module? Or a "use lib" after a different "use" statement? 22:25
autarch nine: yes, the latter was what seemed to be the issue 22:26
22:26 mj41 left
jeturcotte confirmed, btw 22:27
nine @all: good rules of thumb: put your "use lib" _before_ loading any modules. Never do a "use lib" in a module. 22:28
22:30 dotness left, pierre-vigier left
stmuk nine: apart from Tests? 22:31
nine stmuk: tests? 22:32
autarch is there a method that Array & Seq share that I can use to iterate over their values? 22:33
stmuk I was thinking of foo.t having 'use lib 'lib'' but that's not a module and not compiled anyway I guess
autarch like if I have a $thing and I know it's an Iterable and want to do something to one value at a time I call $thing.??? 22:34
RabidGravy yeah y'know those annoying .t files put with their modukes
nine autarch: .map? You can also do for @array just as easily as for $seq
autarch if I write "for $thing" I seem to get $thing, not it's values
RabidGravy for $thing.list then :) 22:35
timotimo yeah, $ is how you say "iterate once, please"
or for @$thing
that's synonymous
nine stmuk: scripts (and .t files are scripts) may use lib. It should just come before any module loading. Because if you load a module and then use lib, we have to turn off precompilation right there.
dalek kudo/nom: 2cf1234 | lizmat++ | src/core/Date (3 files):
Give Date/DateTime their own !VALID-UNIT check

And change the API slightly. This makes e.g. Date.later 10% faster
22:36
RabidGravy I've been taking it out of the tests that don't need it
nine RabidGravy: you know, I'm actually the one who implemented the for $seq and for $seq.list distinction, yet I fall into that trap every single time :)
timotimo nine: didn't that part not even change during GLR? 22:37
RabidGravy :)
nine timotimo: we lost the distinction when we made for loops just .map calls underneath and restoring the distinction was one of the last pieces of the GLR.
timotimo ah! 22:38
good good
nine I guess, it's just that I never write for $seq... myself. It's usually something like for $foo.map(...) or for $foo.grep(...) where you don't even notice the Seq involved.
jeturcotte many thanks btw, for the example; I will collapse into a heap now 22:39
timotimo good heapin', jeturcotte :) 22:40
jeturcotte *bow*
22:40 jeturcotte left
RabidGravy I've been in a heap all day 22:40
chansen_ lizmat: is Perl6 to slow for the standard lib? Looks strange that efforts is made to move to nqp for the standard library
RabidGravy occassionally interrupted by the need for more beer
timotimo chansen_: please be more specific? 22:41
chansen_: all things have to terminate in an NQP op at some point, except the most basic pieces of syntax
22:41 kaare_ left
chansen_ github.com/rakudo/rakudo/commit/2c...12386d738a 22:41
stmuk went for a bracing country walk all healthy but that led to a pub
timotimo so especially in CORE we'd be using a lot of nqp:: ops
lizmat chansen_: at one point in the future, the optimizer would have known what to do with the code before my last commit 22:43
flussence went for a walk and thought of something: adding RAKUDO_PREFIX will fix this thing, but if it's used for compiling modules then it'll hide any existing precompiled stuff from rakudo. will probably need an extra thing like PERL6LIB, but prepending an ::Installation instead of a ::Filesystem. Does that make sense?
22:43 itaipu left
lizmat but we're not there yet: so I'd rather have a faster Perl 6 now 22:43
autarch I think I may have the doc site working with my rewrite of Pod::To::HTML - which is step 1 towards making the site have nicer HTML, generating pages in parallel threads, and other improvements 22:44
now I just have to wait approximately forever while I generate a copy of the site with the new & old code to compare ;)
22:44 cygx joined
chansen_ lizmat: ok 22:44
cygx o/
timotimo yo cygx
22:44 xfix left
lizmat chansen_: also, I don't think it makes the code that much less readable 22:45
finally, this is a step towards further algorithmic improvements
cygx chansen_: at least it's not implemented in C ;) 22:47
colomon argh, ABC appears to be completely broken in current rakudo. :( 22:48
timotimo ugh, that's bad :(
how long did you not test it?
chansen_ cygx: LOL ;)
colomon wait, except I think it passed all tests?
colomon continues to be confused 22:49
22:49 zengargoyle joined
colomon timotimo: it worked for sure on Dec 7th. 22:49
El_Che lizmat: the perlfoundation perl6 doc looks out of date (e.g. www.perlfoundation.org/perl6/index...._tablets), while still pretty high on google rank. Should that be there?
22:50 Actualeyes left
timotimo oh, that's not so long ago 22:50
22:50 pmurias left
timotimo so definitely not "broken because of the GLR" :) 22:50
nine flussence: note that you can prepend an ::Installation by using PERL6LIB='inst#path/to/repo'
flussence oh, just inst#?
El_Che e.g. many almost empty placeholders like this: www.perlfoundation.org/perl6/index....oop_tablet
flussence that makes things a hell of a lot simpler...
chansen_ lizmat: I wouldn't say it's less readable, but it would be more beautiful if it stayed Perl6 ;)
lizmat chansen_: totally agree 22:51
colomon timotimo: oh, no, I definitely had it working post GLR
flussence ...now I'm wondering if I could've just done that in the first place
nine Ok, I'm off to bed now. Good time till I wake up again #perl6!
timotimo gnite nine!
flussence o/
timotimo El_Che: the tablets don't live in there any more
El_Che timotimo: that's exactly my point 22:52
timotimo tablets.perl6.org/tablet-8-objects.html - however, this isn't fiilled out more than that ...
El_Che timotimo: it looks like a ghost town, so it should be replaced by a link
timotimo oh!
right, i think the wiki on the perl foundation website should be shut down
or at least have all pages replaced to links that point to something more proper
maybe give it a robots.txt directive that kicks it out of google's search results?
chansen_ cygx: BTW, <metacpan.org/source/CHANSEN/Time-M...37/src> ;oP 22:53
El_Che it would be sad when people curious about perl6 have a look there and leave while doc.perl6.org is getting there 22:54
timotimo chansen_: maybe we'll reach better performance, because our VM can do inlining and run-time optimization :P
(won't be reached this year, though)
22:54 lucasb left 22:55 kjs_ joined
cygx btw, compared to October, there's apparently been some performance gains: gist.github.com/cygx/db998502d493dfae53c9 22:56
22:56 theorbtwo joined, cognominal left
timotimo damn it, we can't reach perl5 even with nqp code? 22:57
timotimo flips table
theorbtwo I thought you were supposed to throw a mug at a wall?
chansen_ I noticed that Temporal.pm what spilit in three package, where one is Dateish.pm. Does it mean that Dateish.pm role is public? 22:58
22:58 Begi left
MilkmanDan Throwing a mug at a wall with a table as the accelerator is the optimal procedure. 22:58
diakopter timotimo: giggle
is the table okay
22:58 dlynes joined
stmuk but what colour mug should be thrown? 22:59
chansen_ s/spilit/split/ s/package/packages/
dlynes Is perl6 actually released now, or is it only a/the compiler that's been released for perl6?
timotimo throws a shed at the mug
dlynes: actually, the main deliverable was the test suite, which is how the language is specified
dlynes timotimo: ok, so that's what the recent announcement was, then? 23:00
timotimo but other deliverables were a compiler that implements (most of) what the test suite demands
and we've released that, too
lizmat chansen_: Dateish has doc on doc.perl6.org, so I guess it is public, yes :-)
timotimo next up is an actual distribution that contains a bunch of modules and some docs for you
and then come .msi files for windows users
dlynes timotimo: ok, so perl6 is usable now, then?
timotimo it's been usable before :)
dlynes timotimo: it just doesn't have supporting modules like cpan?
timotimo: Ok...I just remember parrot 23:01
RabidGravy 483 modules last time I looked
dlynes timotimo: and from what I recall, it wasn't usable
timotimo it has a bunch of modules, but not nearly as many as cpan. what it does have is Inline::Perl5 and Inline::Python which lets you usually seamlessly use perl5 and python modules in your perl6 programs
dalek kudo/nom: 3cd19cf | lizmat++ | src/core/Date (2 files):
Don't coerce to Num before coercing to Int
timotimo "not usable" in what way? we've advanced by a whole lot since parrot was last officially recommended
_nadim Hi, I have multi sub int_filter(Int $s, DDT_HEADER, ($depth, $glyphs, @renderings), ($k, $v, $f, $final)); which works just fine, now i would liketo change what $k contains, $k is a Str, if i change $k to be rw, then the signature doesn't match any longer. Can someone tell me about scalar references? 23:02
flussence I remember parrot too... I think dlynes means *every* way
timotimo hahaha
parrot wasn't that bad!
dlynes snickers at flussence.
flussence but yeah, it doesn't take 2 hours to build any more :)
23:02 vendethiel joined
timotimo what we have been doing with moarvm and rakudo since then is quite a bit nicer, so far 23:02
flussence nor 2 hours to run anything...
dlynes timotimo: Is it available as packages for any major distro yet? 23:03
flussence fedora has one apparently
timotimo with moarvm, we usually had build times of moar + nqp + rakudo that were faster than it took parrot to build only rakudo
_nadim dlynes: it takes 10 mn to dowmload and build
23:03 bpmedley_ left
chansen_ lizmat: Ah, didn't think it was "public" when it where defined as a "my role Dateish" and was in a single package 23:03
timotimo dlynes: people are working on it, but it may be a tedious bureocratic process to get it into the hands of users in some cases
dlynes timotimo: oh wow...rakudo's been around for a while then...thought it was something new
timotimo chansen_: anything in CORE is an outer scope to all user programs
dlynes: rakudo was always the perl6 compiler that ran on parrot, it's just that at the beginning both were considered a single project 23:04
chansen_ timotimo: ahh
23:04 AndyDee joined
dlynes timotimo: ah...is perl6's interpreter still called parrot? 23:04
_nadim Can someone point me at a document that talks about scalar references?
timotimo parrot was never an interpreter
dlynes oh...what was it, then? 23:05
timotimo it's a virtual machine with its own assembly language and byte code/machine code format
like JVM, CLR, or MoarVM
dlynes timotimo: oh...and that's been replaced with MoarVM now?
theorbtwo That's OK. Interpreters haven't actually existed for a very long time, anyway.
timotimo that's correct. maybe parrot-rakudo-support will be worked on again in the future, but don't hold your breath
theorbtwo: that's right; the clean concept of an "interpreter" really doesn't exist outside of academic settings or toy projects i expect. 23:06
dlynes timotimo: and moarvm is to perl6 what jvm is to Java?
cygx well, interp.c contains MoarVM's *bytecode interpreter*, so... :p
Ulti news.ycombinator.com/news top of the news woop woop
timotimo dlynes: yeah, you can understand it like that
lizmat _nadim: Perl6 doesn't have scalar references
23:06 llfourn joined
dlynes Ulti: It's also on Slashdot, which is where I heard about it from: developers.slashdot.org/story/15/12...6-released 23:07
timotimo Ulti: though i wonder why it says "15 years of work", when there was quite a lull after the very first bits of "work"?
_nadim lizmat: if I pass a Str variable to a sub and want to change it in the sub?
lizmat m: sub a(\x) { x = "foo" ); a my $foo; say $foo
camelia rakudo-moar 2cf123: OUTPUT«5===SORRY!5=== Error while compiling /tmp/fDIX1Ey6XZ␤Missing block␤at /tmp/fDIX1Ey6XZ:1␤------> 3sub a(\x) { x = "foo" 7⏏5); a my $foo; say $foo␤ expecting any of:␤ statement end␤ statement modifier␤ statemen…»
dlynes timotimo: yeah...I just remember hearing about it many moons ago in Perl magazine when the BD wrote an article on it
timotimo why would the topmost commenter say perl 5 had a "period of neglect"? is that true at all?
lizmat m: sub a(\x) { x = "foo" }; a my $foo; say $foo 23:08
camelia rakudo-moar 2cf123: OUTPUT«foo␤»
lizmat _nadim: ^^
flussence I'm a bit stumped; `RAKUDO_PREFIX=$(mktemp -d) make test` works, but if I put a RAKUDO_PREFIX var in the makefile it doesn't get passed as an env var to subprocesses. Is there a correct way to do that in make or have I got to improvise?
Ulti lizmat: isnt binding a scalar a bit like a reference though...?
flussence (note: mktemp -d only an example)
Ulti they point to the same bit of memory
lizmat _nadim: no, it's *binding*
Ulti ok
cygx flussence: for gnu make, it's `export RAKUDO_PREFIX=...`
El_Che timotimo: before 5.10
cygx or there's some flag to export everything by default
lizmat you could argue that just about everything in Perl 6 is a reference
flussence I'm just concerned about breaking something for windows users... 23:09
El_Che lizmat: except when it's not :)
_nadim lizmat: was that "now" it is binding?
lizmat well, natives aren't objects
cygx I think nmake auto-exports, but I'd have to double-check...
lizmat m: my \a = my $b; $b = "foo"; say a 23:10
camelia rakudo-moar 2cf123: OUTPUT«foo␤»
flussence is reading make.info now (urgh)
[Coke] japhb: thank you, I did mean to claim january.
Ulti timotimo: not sure on the 15 year meme, I'm not the OP 23:11
lizmat [Coke]: already fixed that
ZoffixWin m: my (\current_users-churn, time) = 42, 2; say current_users-churn*time
camelia rakudo-moar 3cd19c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ugesNq1MDO␤Invalid typename 'time' in parameter declaration.␤at /tmp/ugesNq1MDO:1␤------> 3my (\current_users-churn, time7⏏5) = 42, 2; say current_users-churn*time␤»
ZoffixWin m: my (\current_users-churn, \time) = 42, 2; say current_users-churn*time
camelia rakudo-moar 3cd19c: OUTPUT«84␤»
dlynes So, as I understand it, fedora is the only major distro with a perl6 package?
ZoffixWin m: my (\current_users, \churn, \time) = 42, 2, 3; say current_users-churn*time
camelia rakudo-moar 3cd19c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/60z8MBX3vt␤Undeclared routine:␤ current_users-churn used at line 1␤␤»
lizmat _nadim: no, that was no in reference to reference
:-)
23:12 llfourn left
dlynes If so, how do I submit additional packages to the perl6 team, until the distributions add it? 23:12
timotimo El_Che: thanks; any more details about that?
dlynes My main distribution is debian
And Mac OSX
RabidGravy doc.perl6.org/language/modules
timotimo we actaully have a macbrew thingie for rakudo, don't we? 23:13
or homeports?
Ulti dlynes: Ubuntu has a P6 package taken from Debian its called rakudo-star if memory serves
dalek kudo/nom: 1bdb784 | lizmat++ | src/core/Date.pm:
Handle Date.later a bit smarter

Makes it 10% faster again
theorbtwo Somewhat random question reading 5to6-nutshell: cmp has become leg. What does "leg" stand for?
lizmat and that concludes my ramblings for today
good night, #perl6!
RabidGravy toodlepip
cygx theorbtwo: less-equal-greater
Ulti theorbtwo: less equal greater than
dog
doh even 23:14
theorbtwo Aha.
hankache timotimo done. And i learned to use git on the command line :)
flussence oh, it *is* "export". Wish it just said that instead of burying it in the middle of a paragraph...
cygx flussence: but that *will* break nmake
flussence yeah :(
dlynes eh? apt-cache search perl6 is showing rakudo as being a perl6 implementation on top of the parrot virtual machine 23:15
23:15 khw joined
Ulti yeah its probably ancient 23:15
timotimo hankache: way cool :)
theorbtwo dlynes: That's because there's a very old rakudo there.
RabidGravy that's either very old or plain wrong
dlynes theorbtwo: ah
Ulti dlynes: though I thought the latest Debian had a moar version
hankache timotimo the master branch yeah?
23:15 no_gravity joined
Ulti Debian stable forget it 23:15
no_gravity Hello! I'm reading the Perl6 docs...
dlynes Ulti: Debian 7.9? Or Debian 8 beta? 23:16
no_gravity Is that "my" what in javascript "var" is?
Ulti Debian dripping in blood edition
dlynes Ulti: ah....heheheh
Ulti whatever that might be nowadays
flussence no_gravity: pretty much, except you can use "my" in more places
RabidGravy but fedora has rakudo 2015.11 which is newish
hankache no_gravity kind of
no_gravity can you just leave it out completely? 23:17
hankache no_gravity no
flussence m: 6; $a
Ulti RabidGravy yeah thats really new for a distro version
camelia rakudo-moar 3cd19c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XWndJa7TlV␤Variable '$a' is not declared␤at /tmp/XWndJa7TlV:1␤------> 036; 7⏏5$a␤»
no_gravity and just go with this: $name='no_gravity';
flussence m: no strict; $a
camelia rakudo-moar 3cd19c: OUTPUT«WARNINGS for /tmp/W7WzYVu0wK:␤Useless use of $a in sink context (line 1)␤»
hankache you have to use it to "declare" the first time a variable
dlynes Ulti: erm...guess that would be debian 10. Debian 8's released. Debian 9 would be the beta, and Debian 10 would be your extreme dev edition
timotimo hankache: pardon me?
no_gravity ok. then i guess perl6 is not for me. 23:18
RabidGravy er right
hankache timotimo I was asking if the master branch was the one i should submit a PR to
Ulti dlynes for learning the language rakudobrew does a great job getting you a copy into your home
timotimo ah
flussence well if typing "no strict;" is too much work, I guess not...
timotimo yes, it is
are there others? :)
flussence: welllllll, using "no strict" gives a massive performance malus at the moment 23:19
Ulti dlynes: there is also a docker image
_nadim lizmat: starting to get a hold of it. pity it does not interpolate in strings, which i understand. I do get a Cannot assign to a read only variable or value, I'll chase the place where it is called to see if the problem is there
dlynes Ulti: ok, thanks. I'm hoping it's a little less write-only than perl5
hankache timotimo this is what i did but was just making sure
dlynes Ulti: I liked how easy it is to write code in perl, just not how difficult it is to read other people's code (or my own after I haven't touched it for a couple of years) 23:20
hankache timotimo yes there are more branches but they are all too old
theorbtwo Beware that you can write bad code in any language.
cygx no_gravity: 'my' is more like ES6 'let'
RabidGravy more regular syntax
dlynes theorbtwo: of course. the obfuscated c contest is a prime example 23:21
no_gravity cygx: ok
flussence dlynes: having things like event-driven programming built in will help there, since you don't have half a dozen competing modules doing it
Ulti dlynes well regex is usually a big part of that in Perl 5 rather than the whole language, Perl 6 has grammars which are quite readable... Perl 5 does now have something similar with named regex
dlynes Ulti: one thing I found really irritating in perl5 was all of these cpan modules that were written duplicating functionality, but none seemed to want to work together (inheritance, ...) There was a ParseExcel.pm, a WriteExcel.pm, and neither was compatible with each other 23:23
Ulti: so you couldn't actually write a piece of code that could update an Excel file
Ulti: Python overcomes this using Jython, so you can use the Apache POI package 23:24
Ulti dlynes yeah thats gone since Perl 6 has more feature rich OOP so people dont have to pick their pet favourite when writing their own modules
RabidGravy that's not the language though, rather than the authors
stmuk I don't see having choice in modules as bad
RabidGravy no I don't either
anyway time to crash I think 23:25
autarch am I right in thinking that .precomp dirs get locked while a program is running? that seems bad if I want to have two different programs running with the same 'use lib'
dlynes RabidGravy: yeah, but with cpan, it was prevalent. There's like ten different modules for the doing the exact same thing usually.
Ulti its not the choice, I know what dlynes is talking about... BioPerl had a huge issue for a while with needing to install several OO systems just to have incredibly basic functionality and two tree algorithm libraries depended on and used different tree implementations
stuff like that sucks
flussence autarch: locked only while precompiling
autarch flussence: I think there may be a bug then 23:26
stmuk well perl6 has OO built in to a larger degree than perl5
dlynes Ulti: or often times I'd have to install close to 100 cpan modules just to install one piece of software
flussence oh, there's plenty of locking bugs in that code... :)
theorbtwo I very much doubt that's going to change.
dlynes Ulti: OTRS is a prime example
autarch I don't have a good repro recipe other than "run a long running piece of cude with use lib in it - run some other code that uses the same lib"
Ulti dlynes: I didnt mind that so much more recently since cpan got to the point it "just worked" which wasn't always true 23:27
theorbtwo In the short term, there will be fewer competing modules doing the same thing, mostly since there will be fewer modules.
Ulti Perl 5 being mature means weirdly it has a lot more going for it now than it used to when it was at the height of its popularity
hankache good night everyone
autarch I'm already seeing people reimplement horrible Perl 5 things though :(
billN1VUX scanning the log, i found rjbs had already asked my question, and the answer worked. So Sixmas received, thanks all !
hankache see you tomorrow
dlynes Ulti: Yeah...I get ya....cpan's a lot better now than it used to be. Several years ago, you'd install a cpan module and it would completely break perl. You'd have to reinstall your whole distro just to get back to a sane system 23:28
23:28 snarkyboojum joined
autarch someone went and replicated Email::Simple & Email::MIME - that API should stay in 5-land 23:28
if I had one plea for Perl 6 it's "please don't copy Perl 5 stuff without asking Perl 5 people if that's a good idea" 23:29
23:29 hankache left
Ulti autarch or at least we should have some high level namespace convention for things being ported 23:30
23:30 RabidGravy left
Ulti like ACME >:3 23:30
autarch hah
[Coke] lizmat++ for fixing it, thanks.
No one should expect a just-released compiler to be available in any linux distros a day after ther elease. 23:31
flussence rejects that version of reality and attempts to make it happen anyway :) 23:32
Ulti well they can expect it... so long as they also expect constant disapointment
23:33 no_gravity left
timotimo :) 23:33
[Coke] autarch: we asked a couple of people familiar with p5, for sure. :)
timotimo i think people with a passing interest in perl 6 have a history of disappointment, eh? :(
Ulti I think I have cognitive dissonance just at Perl 6 being stamped and released
autarch [Coke]: I mean with the specific module in question
23:33 movl left
autarch like ask the author/maintainer "is this a good API?" 23:33
Ulti timotimo the key there is "passing" I think most people that go just a tad deeper have the opposite experience 23:34
23:34 kjs_ left
autarch although maybe rjbs likes Email::{Simple,MIME} and I'm the only one who finds it very hard to work with 23:34
23:35 czipperz joined
theorbtwo autarch: rjbs is very much a perl5 person, so I'm not sure your "ask a perl5 person" would have changed things. 23:35
czipperz Hello
Ulti hi
czipperz Its the big day!
Or was it yesterday...
autarch maybe my point isn't clear - I'm saying ask the Perl 5 module author or maintainer if this is an API that they think should be ported as-is
23:36 kjs_ joined
theorbtwo czipperz: That was yesterday, sorry. 23:36
[Coke] czipperz: mostly yesterday, but today's fine for celebrating too.
timotimo Ulti: could be :)
Ulti every day is a big day on this channel, big commits big branches big vision big hearts
billN1VUX In P5 CPAN, *::Simple is almost always over-simplified, almost always sufficient, and doesn't en-cruft your client code with 7 lines of set-up. But when you need those 7 lines of customization ... it fails. /end generalization
timotimo Ulti: i wasn't a "passing interest" kind of person related to perl6 at any point; it kind of hit me square in the face :P
autarch or to be clearer - before anyone goes and translates anything I've written in Perl 5 directly into Perl 6 please ask me first ;) 23:37
[Coke] autarch: did is your giant compare of output perl6-doc thing?
autarch [Coke]: had to fix a bug in my Pod::To::HTMl rewrite first - it got really far along generating the site then died 23:38
Ulti in 2010ish I was thinking about rage quiting Perl then I played with the first R* and decided I would hold out... and Perl 5 also got better in the same period which was unexpected
23:38 itaipu joined
autarch but I'll get there soon, I think 23:38
ZoffixWin hm, one of the comments on HN: "I installed rakudo and played with it a little. However, the repl was horrible. Is there a repl that accepts multiline subroutines and if possible readline support?"
[Coke] ok. I want to focus on perl-doc for a few days, and making it faster would be super nice. :)
ZoffixWin Is that what Linenoise does?
hoelzro ZoffixWin: Linenoise provides rudimentary readline-like support 23:39
[Coke] ZoffixWin: yes. suggest they get panda, and then panda install Linenoise
Ulti :'(
also Task::Star installs
flussence Linenoise does many things, but being readline isn't one of them
[Coke] I've also heard rlwrap is ok.
Ulti I did it about ten minutes ago
23:40 czipperz left
Ulti ZoffixWin that curl liner will work now... :P if we can get it on a slightly nicer domain than my gist 23:40
autarch [Coke]: I actually started rewriting _the whole thing_ in another branch, and I had threaded generation working, but it was much too big of a change for anyone to review, so I decided to go back and do things more slowly
the first step regardless is to make Pod::To::HTML a proper class - right now you _can't_ thread it because it uses package-level vars for everything
ZoffixWin Ulti, you may wanna ping moritz or someone with domain-creating powers for that :)
[Coke] does panda have an "update all modules I have installeD" option?
23:40 no_gravity joined
no_gravity So numbers are objects in perl6 and have a method "is-prime"? 23:40
autarch once we switch over to my new Pod::To::HTML we can probably slap in threading for doc generation as an interim measure very quickly 23:41
[Coke] everything in perl 6 is an object if you like.
hoelzro the multi-line input is tough; won't we have to add incremental parse support to Perl6::Grammar?
ZoffixWin no_gravity, yup
[Coke] m: say 1237.is-prime
camelia rakudo-moar 1bdb78: OUTPUT«True␤»
no_gravity m: a=7
camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7O8NGVaWsC␤Undeclared routine:␤ a used at line 1␤␤»
[Coke] m: my $a=7;
no_gravity whats wrong with a=7?
camelia ( no output )
Ulti ZoffixWin can we do it with just DNS records? :3
ZoffixWin m: say ^1000 .grep: *.is-prime
camelia rakudo-moar 1bdb78: OUTPUT«(2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 337 347 349 353 …»
cygx no_gravity: wrong language? 23:42
no_gravity somehow i thought variable names do not necesserely need to be prefixed with $
[Coke] no_gravity: 1: variables have sigils unless you declare them with a \ - also you have to declare them.
m: my \a = 3;
camelia ( no output )
ZoffixWin no_gravity, Perl 6 uses sigils, like PHP, Perl 5, and AutoIt for example
[Coke] m: my \a = 3; say a
camelia rakudo-moar 1bdb78: OUTPUT«3␤»
[Coke] so, you were close.
no_gravity m: \a=7; say a.is-prime;
camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/W3HVQBIhlV␤Undeclared routine:␤ a used at line 1␤␤»
[Coke] no_gravity: "my"
ZoffixWin no_gravity, you're missing 'my'
no_gravity m: my \a=7; say a.is-prime;
camelia rakudo-moar 1bdb78: OUTPUT«True␤»
no_gravity ok
hoelzro also, I should probably spend some time integrating DrForr's Readline module with Perl6::Compiler
autarch I assume that we expect normal code to mostly use sigils, not binding, right?
ZoffixWin Right 23:43
[Coke] autarch: binding is :=, not \
autarch oh, what's \ then?
ZoffixWin makes it a constant, essentially
no_gravity can you talk to the perl6 bot directly?
ZoffixWin m: my \Δ = 42; say Δ
camelia rakudo-moar 1bdb78: OUTPUT«42␤»
ZoffixWin no_gravity, yes, you can /msg her
[Coke] yes. on irssi, I use "/msg camelia m: say 3" , e.g
geekosaur has a /query open to camelia 23:44
Ulti m: \a=5; a++; say a;
ZoffixWin m: my \Δ = 42; say Δ; Δ = 43; say Δ
camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/_ZtO1aTJqo␤Undeclared routine:␤ a used at line 1␤␤»
rakudo-moar 1bdb78: OUTPUT«42␤Cannot modify an immutable Int␤ in block <unit> at /tmp/Z99WB0QfNh line 1␤␤»
ZoffixWin m: my $x = 42; my \Δ = $x; say Δ; Δ = 43; say Δ
camelia rakudo-moar 1bdb78: OUTPUT«42␤43␤»
ZoffixWin [Coke], looks like it *is* binding ^
m: my $x = 42; my \Δ = $x; say Δ; Δ = 43; say Δ; say $x
camelia rakudo-moar 1bdb78: OUTPUT«42␤43␤43␤»
flussence autarch: on behalf of everyone who ever touched Pod::To::HTML I'd like to apologise for its existence. It was hacked together just to make S26.html work, and then swiftly abandoned because nobody wanted to improve it when it took an hour to run :/
autarch haha
[Coke] interesting. I thought the main distinction of \ was lack of context. 23:45
no_gravity ZoffixWin: i tried, but did not get an answer.
autarch I think I've made it slower, I'm afraid - I mean pod2html'ing a single document is almost certainly slower
but since it's now a sane class you can make many of them at once
ZoffixWin no_gravity, you still need to use the "m:" prefix
no_gravity ZoffixWin: oh, ok
Ulti no_gravity camelia talks several different implementations of Perl 6
the m: means send your code to the MoarVM version of Rakudo 23:46
[Coke] j: say 3
geekosaur camelia: help
camelia rakudo-jvm 6c0f93: OUTPUT«3␤»
geekosaur: Usage: <(nqp-js|star-j|rakudo-MOAR|niecza|nqp-parrot|rakudo-moar|p5-to-p6|debug-cat|pugs|nqp-jvm|nqp-moarvm|star-m|prof-m|std|rakudo-jvm|rPn|nPr|r-jvm|rj|rn|nrP|r-j|nqp|perl6|rakudo|Prn|star|n|nqp-m|nr|sm|nom|rnP|nqp-mvm|P|M|p56|Pnr|m|r|rm|sj|p6|nqp-q|r-m|nqp-p|nqp-j|j)(?^::\s(?!OUTPUT))
..$perl6_program>
autarch BTW, my version probably gets us a bit closer to rendering S26, but I need various Rakudo Pod-parsing bugs fixed first
Ulti [Coke]: living dangerously
colomon has ABC running without error if run uninstalled, but the panda-installed version dies in panda / rakudo (???) code
autarch err, I don't mean first, I mean to _really_ render S26 the Rakudo bugs need to be fixed too
[Coke] autarch: if you'd like to tag team on ssomething, let me know. I'll focus on incremental doc improvements for now.
autarch sounds good 23:47
I'm hoping to have this first PR ready tonight or tomorrow
cygx improvements like interpreting formatting codes in table cells?
flussence decides not to put this RAKUDO_PREFIX thing into the makefile, because it's a workaround for something that doesn't affect normal users
geekosaur not all of those work; the std: parser is currently broken (and mostly superseded), pugs is ancient and unmaintained, niecza is slightly less ancient and unmaintained, etc. 23:48
autarch cygx: no, actually, that I've worked around - just search rt for anything I've reported - there are bugs with defn blocks and other things
ZoffixWin m: $контрольная-работа = 42; say $контрольная-работа
camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XEe7lLAIBB␤Variable '$контрольная-работа' is not declared␤at /tmp/XEe7lLAIBB:1␤------> 3<BOL>7⏏5$контрольная-работа = 42; say $контрольн␤»
ZoffixWin m: my $контрольная-работа = 42; say $контрольная-работа
camelia rakudo-moar 1bdb78: OUTPUT«42␤»
flussence looks like the env var list in docs/running.pod could use some updating too 23:49
flussence does that
23:49 kjs_ left
[Coke] does it really take that many letters to say "test" in Russian? 23:49
23:50 kjs_ joined
ZoffixWin [Coke], no, it takes 4. "контрольная работа" means "test job" really. Not sure why Google translates it to that 23:50
or "control job" I guess 23:51
cygx autarch: what's your workaround? I'm using a =begin code :allow<B I> right now
no_gravity m: my $a-1=3;
camelia rakudo-moar 1bdb78: OUTPUT«Use of uninitialized value of type Any in numeric context in block <unit> at /tmp/fMYEtSD8ho line 1␤Cannot modify an immutable Int␤ in block <unit> at /tmp/fMYEtSD8ho line 1␤␤»
no_gravity why does that give an error?
ZoffixWin no_gravity, you can't have numbers after hyphens
no_gravity ZoffixWin: i see
[Coke] m: my $a-b=3
camelia ( no output )
geekosaur it can't tel if that's a name "$a-1" or an expression ($a - 1)
autarch cygx: see github.com/autarch/perl6-Pod-TreeW...er.pm6#L50 and follow the code 23:52
basically I EVAL the text to turn it into Pod ;)
[Coke] autarch: that sounds... suboptimal. 23:53
autarch well, it's a workaround, of course it's suboptimal!
23:54 no_gravity left
timotimo geekosaur: no, it can tell that it's the name and not the expression 23:56
except, after a - no number is allowed
m: say $a-1
camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/F6pUaLAVdq␤Variable '$a' is not declared␤at /tmp/F6pUaLAVdq:1␤------> 3say 7⏏5$a-1␤»
timotimo that's a sign i should actually go to bed
23:57 bpmedley joined
ZoffixWin Well, I'm unsure how many times I've said this, but.... 23:57
Time to resume the heavy drinking ^_^
[Coke] m: my \b = 3; my $a = 3; my $a-b = 3; 23:59
camelia ( no output )
geekosaur timotimo, I'm explaining the reason why that restriction exists; the restriction itself was already described