»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by masak on 28 November 2015. |
|||
jdv79 | i attempted a funny. fail. | 00:00 | |
00:00
Psyche^_ left
00:01
FreezerburnV joined
|
|||
FreezerburnV | Evenin’ | 00:01 | |
stmuk | ah | ||
well there is a single GLR post rule :P | 00:02 | ||
jdv79 | i apparently also failed strunk & white punc ws rules. nothing but fail over here. | ||
yes... nice. | |||
FreezerburnV: hello | |||
00:03
raiph joined
|
|||
FreezerburnV | Question: Is there a way to qualify a needed/imported/used module to a specific namespace? e.g.: “use Long::Module::Name as foo; foo.bar();” | 00:03 | |
jdv79: Heya! | |||
jdv79 | FreezerburnV: good to have you. i'm sorry but i do not know about that. i don't remember reading about namespace aliasing but that means almost nothing of importance. | 00:05 | |
00:05
Peter_R left
|
|||
FreezerburnV | jdv79: Glad to be here. And no worries, hopefully someone around here knows about it. Just trying to figure out the module system so I don’t end up shooting myself in the foot somehow | 00:06 | |
E.g.: use a module in one module, which might end up importing that module’s exported items to whatever imports the original module (I don’t know if it does this without specially marking things or not), and end up with too many things in a default namespace | 00:07 | ||
Or just organize items in one namespace for “neat code’s” sake or something | |||
lucasb | who does one trigger that "seq can only be iterated once" error? | 00:08 | |
timotimo | FreezerburnV: i can already tell you that if you "use" a module inside another module, it doesn't re-export that used module unless you specify that | 00:09 | |
FreezerburnV | timotimo: Good to know! That’ll help keep things clean then | ||
timotimo | aye | 00:10 | |
i think re-exporting looks kind of like "use Foo::Bar :EXPORT" or something | |||
00:10
ChristopherBotto joined
|
|||
jdv79 | what doess this concept of re-exporting mean? | 00:10 | |
ChristopherBotto | m: spurt('foo','bar'); run('chmod','-w','foo'); say 'Deleted' if unlink('foo'); | 00:11 | |
camelia | rakudo-moar 9e53fa: OUTPUT«spurt is disallowed in restricted setting in sub restricted at src/RESTRICTED.setting:1 in sub spurt at src/RESTRICTED.setting:17 in block <unit> at /tmp/L_R_I4NAu6:1» | ||
jdv79 | a use is lexical, no? | ||
ChristopherBotto | m: spurt('/tmp/foo','bar'); run('chmod','-w','/tmp/foo'); say 'Deleted' if unlink('/tmp/foo'); | ||
camelia | rakudo-moar 9e53fa: OUTPUT«spurt is disallowed in restricted setting in sub restricted at src/RESTRICTED.setting:1 in sub spurt at src/RESTRICTED.setting:17 in block <unit> at /tmp/EzaJ5nq71X:1» | ||
ChristopherBotto | Anyway, that says "Deleted" when I run it on my CentOS 7 (64-bit) machine. It's on a cluster hard drive. | 00:12 | |
Sorry I got to run. Thanks #perl6 for all your hard work! | |||
00:13
ChristopherBotto left
|
|||
geekosaur | why is that surprising? | 00:13 | |
skids | jdv79: rexport means things that import from you get things you imported from something else. | ||
jdv79 | skids: ah. that sounds insane. | 00:14 | |
skids | Not really, it just means you can define a proxy for another module. | ||
jdv79 | explicitly, sure. impliclity, not so much. | 00:15 | |
timotimo | jdv79: it means that something you import via "use" gets re-exported to your "user" | 00:16 | |
jdv79 | cool | 00:17 | |
skids | jdv79: I think it's a pretty explicit mechanism: use Sense <&common> :EXPORT<@horse>; # &common is internally used, your module user gets @horse | 00:18 | |
geekosaur | .tell ChristopherBotto it's write access on /tmp that controls whether unlink of /tmp/foo works. permissions on /tmp/foo's inode are not relevant. | 00:19 | |
yoleaux | geekosaur: I'll pass your message to ChristopherBotto. | ||
jdv79 | i've not read that part of the docs/spec. it sounds cool though. thanks. | ||
geekosaur | .tell ChristopherBotto GNU rm looks at the permission as a courtesy, more or less. Hard links imply that the directory entry is independent of the inode (file). I am not sure perl6 should be in the business of enforcing anything more than OS permissions. | 00:24 | |
yoleaux | geekosaur: I'll pass your message to ChristopherBotto. | ||
lucasb | geekosaur++, that clarified things for me too, thanks | 00:25 | |
00:28
firstdayonthejob left
00:32
adu joined
|
|||
b2gills | Is there an URL for a rendered S27? (should be prominently linked to on perl6.org) and why is it still only a draft? | 00:33 | |
00:33
lolisa joined
|
|||
b2gills | FreezerburnV: use Long::Module::Name; my constant foo = Long::Module::Name; foo.bar(); | 00:34 | |
00:34
patrickz left
|
|||
FreezerburnV | b2gills: Awesome, thanks :) | 00:34 | |
jdv79 | stmuk: cool blurb. end was perhaps abrupt. | ||
stmuk++ | 00:35 | ||
lucasb | say unlink('/non/existent').perl #=> ["/non/existent"] | 00:40 | |
say unlink('/no/permission').perl #=> [] | |||
^^ I think those return values are a little strange... | |||
00:41
tipdbmp left
00:44
lucasb left
00:50
n0tjack left
00:51
xpen joined
|
|||
Juerd rewrites part of Net::MQTT to look more like jnthn's Stomp module. | 00:54 | ||
His code is much nicer, and stomp and mqtt look a lot alike :) | 00:55 | ||
00:55
xpen left
|
|||
timotimo | jnthn's code has that property commonly :D | 00:58 | |
Juerd has to upgrade rakudo to do this :) | 01:00 | ||
Apparently the .share syntactic sugar is new | |||
leont | Yeah, I should still adapt some of my code to the new supply blocks | ||
01:00
BenGoldberg joined
01:01
n0tjack joined
|
|||
leont | The share comment kind of made clear what the whole "on demand" thing was about, until now that wasn't quite clear to him. | 01:02 | |
Juerd | Which him? | 01:03 | |
timotimo | leont, i believe | ||
leont forgot he wasn't talking in 3rd person, he's already brushing his teeth and should have been in bed already | 01:04 | ||
Juerd thinks he understands on-demand vs live, but doesn't understand exactly what 'share' does | 01:05 | ||
leont | (really, I've been doing this sort of thing all that, not my day apparently | ||
01:05
n0tjack left
|
|||
Juerd | It creates a new supplier from the supply, I get that, but I don't really understand why that's necessary :) | 01:06 | |
leont: Welterusten :) | |||
skids | If you want two supplies of the same values from one tap of the on-demand. | ||
Juerd | Oh, I think I get it. His !process-messages returns an on-demand supply, even if it itself whenevers a live one. | 01:08 | |
Seems like all that's missing is a supplier { ... } block then :P | |||
01:09
Actualeyes joined
01:15
yeahnoob joined
01:18
leont left
|
|||
skids | Well, and a way to get nonserial Supplies if that's what you want (the one way I know of got accidetally broken during the refactor) and maybe a module re-implementing nonserial versions of the nice composeable functionality. | 01:21 | |
01:27
rurban left
01:29
n0tjack joined
01:32
corner90 joined
01:33
n0tjack left
01:35
Ben_Goldberg joined
01:37
BenGoldberg left
01:44
n0tjack joined,
aborazmeh joined,
aborazmeh left,
aborazmeh joined
01:48
Actualeyes left,
n0tjack left
01:51
aborazmeh left
01:52
n0tjack joined
01:55
Actualeyes joined
|
|||
Juerd | github.com/Juerd/p6-mqtt/blob/mast...et/MQTT.pm # Done rewriting to look like jnthn's code :) | 01:56 | |
01:56
n0tjack left
|
|||
Juerd | Took an hour, including a full recompile of moar :) | 01:56 | |
Not sure about those supply/whenever/emit patterns. Feels like grep/map matches what happens better. | 01:58 | ||
And I'm curious to know what jnthn's magic self!ensure-connected is like. | 02:00 | ||
02:01
kitesurf left
02:04
corner90 left
02:10
adhoc left
02:12
adhoc joined
02:13
tipdbmp joined,
parisba_ is now known as DrParis
02:14
raiph left
|
|||
FreezerburnV | Given a “new” method with a list of arguments, how would I properly call bless to initialize a private attribute that is a list? I tried both “my @inputs = [$input1, $input2]; self.bless(:@inputs);” where the class has “@!inputs”, and “self.bless([$input1, $input2]);”. A later method call shows that nothing is in the list | 02:21 | |
Also tried with “($input1, $input2)” | 02:22 | ||
02:22
labster left
02:29
n0tjack joined,
Sqirrel left
|
|||
dj_goku_ | anyone else getting build failures with 3b4964b | 02:31 | |
skids | Yeah, install failures actually. | 02:32 | |
FreezerBurnV: yeah that looks a bit broken. | 02:33 | ||
m: class A { has @!l; method new ($a, $b) { my @l = $a, $b; self.bless(:@l) }; submethod BUILD(:@!l) { }; method get_l { @!l } }; A.new(2,3).get_l.perl.say | 02:34 | ||
camelia | rakudo-moar 9e53fa: OUTPUT«[2, 3]» | ||
skids | m: class A { has @.l; method get_l { @!l } }; A.new(:l[2,3]).get_l.perl.say | 02:35 | |
camelia | rakudo-moar 9e53fa: OUTPUT«[2, 3]» | ||
skids | Oh, I know -- it's because it is private. | ||
m: class A { has @!l; method get_l { @!l } }; A.new(:l[2,3]).get_l.perl.say | |||
camelia | rakudo-moar 9e53fa: OUTPUT«[]» | ||
02:37
n0tjack left
|
|||
Hotkeys | how does one make a safe eval-bot, is there a simple explanation without me reading camelia's source | 02:37 | |
skids | I think you may just have to use BUILD for private attrib inits. | 02:38 | |
Well, there's "RESTRICTED.setting" but it is far from perfectly safe yet. | 02:41 | ||
Don;t quite know hoe to use it myself. | 02:42 | ||
dj_goku_ | Hotkeys: one thing I tried a week or so back is Proc::Async was disabled which was nice. | 02:43 | |
Hotkeys | I want to implement a repl in an IRC bot I'm working on that's written in p6 | 02:44 | |
or at least | |||
an evaler | |||
02:44
Zoffix joined
|
|||
Hotkeys | but I doubt just doing 'EVAL' is very safe for that | 02:44 | |
02:49
adu left,
kanishka left
|
|||
FreezerburnV | skids: Alright, thanks for the help. I’ll add a BUILD method | 02:51 | |
02:56
kid51 joined
03:00
zostay left
03:01
FreezerburnV left
03:05
n0tjack joined
03:07
gtodd joined
03:13
n0tjack left
03:17
n0tjack joined
03:18
ilbelkitty joined,
kaare_ joined
03:22
n0tjack left
03:31
noganex_ joined
03:33
AlexDaniel joined
|
|||
AlexDaniel | m: my Int() $x | 03:33 | |
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ZETzLF2TbQCoercion Int(Any) is insufficiently type-like to qualify a variableat /tmp/ZETzLF2TbQ:1------> 3my Int() $x7⏏5<EOL> expecting any of: constraint» | ||
AlexDaniel | “insufficiently type-like” means? | 03:34 | |
03:34
noganex left
|
|||
AlexDaniel | I mean, is it some kind of an interesting thing? Is there any way to make the compiler happy in this case without removing ()? | 03:35 | |
Hotkeys | what's wrong with removing () | 03:36 | |
AlexDaniel | Hotkeys: nothing at all! I'm just curious | 03:37 | |
geekosaur | I would not think so; it looks like either one of C's corner cases or an attempt to define a function... | 03:38 | |
03:39
pjscott joined,
kid51 left
03:40
Ben_Goldberg left
|
|||
AlexDaniel | Hotkeys: Well, um… I love to throw random stuff into it and see where would the error messages lead me. | 03:40 | |
Hotkeys | it might just be an intentional thing | ||
no type coercions in variable declarations or something | |||
AlexDaniel | and it seems like Perl 6 is the only language that will actually guide me to the code that actually compiles | 03:41 | |
03:41
Ben_Goldberg joined
|
|||
geekosaur | I think that was speculated on but deferred | 03:44 | |
AlexDaniel | –“is perl6 production ready yet?” –“no” –“depends” –“People *are* using it in production” … what a beautiful set of answers! | 03:46 | |
03:46
FreezerburnV joined
03:57
AlexDaniel left
|
|||
Ben_Goldberg | You left out, "Define production ready," and of course, "It'll be ready by Christmas!" | 04:03 | |
04:08
pjscott left
04:11
kaare_ left
04:12
Ben_Goldberg left,
yqt left
04:13
atta joined
|
|||
FreezerburnV | Do enums always have their keys (I think that’s the correct way to reference the names of each possible enum?) put into the global namespace? e.g.: “enum Foo { :BAR(“bar”) };”, I would use it by doing “my $sillyEnum = BAR; say $sillyEnum.value;” (this seems to be the case for SDL2::Raw enums at least) Is there a way to reference | 04:15 | |
Woops, hit enter when I meant to hit backspace there | |||
04:15
pjscott joined
|
|||
FreezerburnV | I answered that last bit of question myself | 04:15 | |
04:15
pjscott left
04:16
pjscott joined
|
|||
pjscott | I did a rakudobrew build moar; rakudobrew build-panda and now 'panda' outputs: | 04:18 | |
Useless use of "\\n\\t*$_" in expression "\\n\\t*$_" in sink context | |||
- QAST::Op(call &infix:<~>) \\n\\t*$_ | |||
- QAST::Want | |||
- QAST::WVal(Str) | |||
- Ss | |||
- QAST::SVal(\n\t*) | |||
- QAST::Op(callmethod Stringy) | |||
- QAST::Var(lexical $_) $_ | |||
WARNINGS for /Users/peter/.rakudobrew/moar-nom/install/share/perl6/site/resources/F4BE6820824798E18DA2B478C7F0B0ECCA322B27: | |||
Useless use of "\\n\\t*$_" in expression "\\n\\t*$_" in sink context (line 155) | |||
Panda -- Perl 6 Module Installer | |||
FreezerburnV | And for a totally different question: Is there planned/currently a way to embed MoarVM/Rakudo/Perl6/whatever the execution environment actually is such that it would be possible to redistribute standalone binaries? (e.g.: a GUI or a game or something) | 04:19 | |
04:20
skids left
04:31
FreezerburnV left
04:33
znpy left,
znpy joined
04:39
vividsnow joined
04:41
llfourn joined
04:43
gtodd left,
gtodd joined
|
|||
TimToady | pjscott: sorry, too busy working on the fix for that to answer :) | 04:48 | |
04:55
cognominal left
04:56
cognominal joined
04:57
cognominal left
05:00
cognominal joined
05:02
woodruffw is now known as yossarian,
yossarian is now known as woodruffw
05:05
cognominal left
05:06
cognominal joined
05:14
gtodd1 joined
05:15
gtodd left
05:17
pjscott left
05:18
n0tjack joined
05:20
psy_ left
05:24
n0tjack left
05:43
regreg joined
05:51
Sqirrel joined
05:53
aborazmeh joined,
aborazmeh left,
aborazmeh joined
05:54
psy_ joined
05:59
snarkyboojum_ joined
|
|||
leat1 | is it supported to run panda's bootstrap.pl by root? | 06:01 | |
06:02
cognominal left
06:03
cognominal joined,
bjz joined
06:04
cognominal left,
cognominal joined
06:06
bjz_ joined
06:07
bjz left
06:08
snarkyboojum_ left
06:11
snarkyboojum_ joined
|
|||
grondilu | ./perl6-m tools/build/install-core-dist.pl | 06:12 | |
===SORRY!=== Error while compiling /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85 | |||
An exception occurred while evaluating a constant | |||
at /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85:13 | |||
Exception details: | |||
Could not find symbol '&bool' | |||
in block at /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85:13 | |||
leedo | leat1: i had to delete my install directory to get it working again | ||
06:14
leat1 left
06:15
leat joined
06:16
psy_ left
06:17
darutoko joined
06:21
bjz_ left
06:23
khw left
06:24
xfix joined
06:27
labster joined
06:28
bjz joined
|
|||
leat | oh. I was going to make an ebuild for panda. | 06:35 | |
06:36
bjz left
06:43
geraud left
|
|||
hahainternet | heh, hello leedo | 06:45 | |
06:47
rindolf joined
06:54
bjz joined
06:55
snarkyboojum_ left
06:59
|Tux| left,
|Tux| joined,
suman joined
07:00
novapatch left
07:02
bjz_ joined,
adhoc left
07:03
bjz left
|
|||
suman | Why are there no MOOC (massive open online course) on Perl5? Hope there will be plenty of such mooc on perl6. This may be the reason for why very few new people are coming to our community :( | 07:03 | |
07:04
adhoc joined
|
|||
diakopter | suman: Perl ranks fairly low on Github: githut.info/#Perl | 07:05 | |
suman | Why are there no MOOC (massive open online course) on Perl5? Hope there will be plenty of such mooc on perl6. This may be the reason for why very few new people are coming to our community :( | ||
stmuk | is there an echo? | ||
suman | diakopter Party explained due to lack of new people in our community :( | 07:07 | |
diakopter | suman: around 16,000 repos primarily using Perl compared to 324,000 of JavaScript and 222,000 of Java | 07:08 | |
07:09
_nadim joined
|
|||
diakopter | however, Swift and Scala have growth rates that will tip them past Perl very soon, pushing Perl down to 17th or so | 07:10 | |
suman | Swift has grown up due to hype of apple community while scala has grown due to its own strength. | 07:12 | |
Scala has mooc on coursera www.coursera.org/course/progfun www.coursera.org/course/reactive. While there are NONE for Perl or Perl6. | 07:14 | ||
07:20
FROGGS joined
|
|||
suman | So the answer is MOOC for perl. :) | 07:20 | |
Why are there no MOOC (massive open online course) on Perl5? Hope there will be plenty of such mooc on perl6. This may be the reason for why very few new people are coming to our community :( | |||
diakopter | suman: why do you keep repeating that question? | 07:21 | |
suman | Also Perl6 should also focus on graphics and analytics capability natively. | 07:23 | |
This is data age. Data everywhere. | |||
diakopter | ..but to complete my response, there are so few/no MOOC for Perl because there are so few people who want to learn Perl. goo.gl/uEwjdi compares job trends | ||
07:23
balazs left
|
|||
suman | diakopter Yeah its disappointing. | 07:25 | |
Is there any video may be in youtube on regular expression in Perl 6 for newcomers like me. Easy to understand? | 07:33 | ||
diakopter | www.youtube.com/watch?v=oo-gA9Z9SaA | ||
this is a great overview though www.youtube.com/watch?v=lpu-3UF_b48 | 07:34 | ||
07:36
firstdayonthejob joined
07:38
rurban joined
07:40
CIAvash joined
07:45
bjz_ left
07:48
bjz joined
07:51
M-Illandan left,
eternaleye left
|
|||
masak | good morning, #perl6 | 07:57 | |
moritz | \o masak | 07:58 | |
08:03
ollej joined
08:07
M-Illandan joined
08:15
M-eternaleye joined
|
|||
abraxxa | good morning! | 08:18 | |
08:24
RabidGravy joined,
ollej left
|
|||
_nadim | Good morning all | 08:25 | |
jdrab | o/ | ||
08:27
zakharyas joined
|
|||
RabidGravy | marnin! | 08:27 | |
08:30
n0tjack joined
08:31
bjz left
08:32
uruwi_ joined,
uruwi left
08:33
firstdayonthejob left
|
|||
dalek | p: 1c2c101 | TimToady++ | src/QAST/ (3 files): support for dumping annotations |
08:34 | |
08:35
leat left,
n0tjack left
|
|||
lizmat notes that she had to nuke install to be able to build the latest pull | 08:36 | ||
yoleaux | 14 Dec 2015 21:02Z <jnthn> lizmat: Wish you a swift recovery! | ||
14 Dec 2015 21:04Z <masak> lizmat: aye; de-flu soon! | |||
nine | lizmat: you're building. Is that a good sign? | 08:37 | |
lizmat | not really, it's a habit I have | 08:38 | |
each morning I pull, build and spectest | |||
I don't have to think about that :-) | |||
abraxxa | m: my $foo = 4.85; say $foo.WHAT | ||
camelia | rakudo-moar 9e53fa: OUTPUT«(Rat)» | ||
08:38
bjz joined
|
|||
lizmat | probably will hit the hay again within the next half hour | 08:38 | |
abraxxa | this gives a Rat. In DBDish::Oracle i'm returning Real's, which one is correct? | 08:39 | |
nine | lizmat: hope you feel better soon | ||
lizmat | thank you, also masak jnthn | ||
nine | abraxxa: both are for their respective specifications | ||
08:41
jack_rabbit joined
|
|||
TEttinger | the flu flew down the flue and into lizmat. but lizmat wasn't having any of it and was better in a day or so | 08:41 | |
the end | |||
lizmat | TEttinger: I wish... | 08:42 | |
bed& | |||
08:42
captain-adequate joined
|
|||
dalek | kudo/nom: db68963 | TimToady++ | src/Perl6/ (3 files): great sink refactor refactor Installed a mechanism so we can tell who actually marked which node as wanted or unwanted. (We might rip it back out later in the interests of efficiency.) Now distinguishes escape blocks via a dynvar because all the other ways I tried didn't work. |
08:44 | |
abraxxa | nine: what's their difference? | ||
i get a float from Oracle, a num64 to be exact | 08:45 | ||
TimToady | there's still a spurious Useless use reported during compilation, but hopefully the other spurious messages should be fewer | ||
I believe it will probably fix the panda issue, but can't test because I'm getting the Can't find '&bool' error that someone else reported | 08:46 | ||
the gsrr was fairly clean before I pulled, but now I'm gonna go to bed and let someone else figure out the bool issue | 08:47 | ||
abraxxa | i don't want to lose precision | ||
moritz | abraxxa: that would be a Num in Perl 6 | 08:48 | |
abraxxa | moritz: none of the intro docs handles numeric datatypes and which to use when | 08:49 | |
TimToady has been hacking on the gsr solidly for about four days now, and is pretty confident the new ASTs have a much better (though not yet perfect) idea of whether they're in sink context or not. | |||
abraxxa | moritz: the test case just does colname => 4.85 which results in a Rat and the comparision fails | 08:50 | |
08:50
smls joined
|
|||
moritz | abraxxa: then it should probablye use 4.85e0 | 08:50 | |
smls | Hi #perl6 | ||
Haven't been here in a while | |||
TimToady apologizes in advance if the gsrr push screws anything up | |||
smls: o/ | |||
moritz | abraxxa: doc.perl6.org does document the numeric types, just not yet in a tutorial/intro style | ||
abraxxa | moritz: yes | 08:51 | |
moritz | \o smls, great to have you back | ||
smls | How is the 6.c release shaping up? | ||
08:51
lolisa left
|
|||
smls | m: say ($_ * 5 for ^10); | 08:51 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Useless use of "*" in expression "$_ * 5" in sink context- QAST::Op(call &infix:<*>) * - QAST::Var(lexical $_) $_ - QAST::Want 5 - QAST::WVal(Int) - Ii - QAST::IVal(5)WARNINGS for /tmp/ggahjffn3h:Useless use of "*" in …» | 08:52 | |
moritz | smls: difficult, because everybody wants to get their last-minute favorite things in | ||
smls | TimToady: Is "gsrr push screws anything up" responsible for ^^ ? | ||
moritz | smls: I don't think camelia's rakudo is new enough | ||
.tell nine Inline::Python tests complaining: perlpunks.de/paste/show/566fd4d4.7163.e4 | |||
yoleaux | moritz: I'll pass your message to nine. | ||
smls | That bug is new though (introduced last 2 days). If it's not expected as part of ongoing refactors, I'll rt it. | 08:53 | |
moritz | smls: please check first if TimToady's last commit has fixed it | 08:54 | |
RabidGravy | The "useless use" TT just mentioned, and I think the debug output is just temporary | ||
TimToady | smls: the bug is still there, but I probably know how to fix it | 08:56 | |
smls | ok | ||
abraxxa | moritz: can you give ma a short overview aber the available numeric datatypes? | 08:57 | |
08:57
brrt joined
|
|||
abraxxa | Num reads like the Perl 6 equivalent of num64 | 08:58 | |
08:58
maddingu1 is now known as maddingue
|
|||
abraxxa | oh, Real is a role | 08:58 | |
RabidGravy | m: say num64 ~~ Num | 08:59 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Cannot unbox a type object in block <unit> at /tmp/FwI7f_1RRt:1» | ||
RabidGravy | eh? | ||
but yes | |||
08:59
AndyDee left
|
|||
abraxxa | m: use NativeCall; say num64 ~~ Num; | 09:00 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Cannot unbox a type object in block <unit> at /tmp/RLsxImkxeM:1» | ||
abraxxa | we need to fix this 'Cannot unbox a type object' before 6c release! | ||
masak | TimToady: the only thing that worries me about the gsr is the word "great" ;) | ||
abraxxa | this will seriously drive away interested people | 09:01 | |
GSR? Suzuki? | |||
masak | abraxxa: that particular thing? oh, that's a relief! :P | ||
abraxxa | masak: hm? | ||
smls | By the way, I wasn't run() expected to get a redesign to "make the easy things easy" again (e.g. easily getting STDOUT into a string)? I guess there weren't enough tuits? | ||
masak | abraxxa: ...will drive away interested people. | ||
abraxxa | masak: in the month I've been working on DBDish::Oracle that was the most annoying, yes | 09:02 | |
masak | abraxxa: it doesn't look all that hard to fix. | ||
RabidGravy | abraxxa, to be honest that one is sort of expected, it's unlikely you'll have a native num type in the wild | ||
abraxxa | because typos, duplicate vars, missing vars all ended in this without --ll-exception | ||
how can it be that I can declase a var as Real if that's only a role? | |||
masak | abraxxa: fwiw, my expectation is that that one should just print True. | ||
abraxxa | doc.perl6.org/type/Real | ||
masak | abraxxa: because roles can instantiate as (anonymous) classes when needed. | 09:03 | |
RabidGravy | yes, that was my expectation, maybe I have NativeCall syndrome and just accept that I'm not in Kansas anymore | ||
09:03
dj_goku joined,
dj_goku left,
dj_goku joined
|
|||
masak | m: role R {}; say R.new | 09:03 | |
camelia | rakudo-moar 9e53fa: OUTPUT«R.new» | ||
abraxxa | masak: i see | 09:04 | |
09:05
snarkyboojum_ joined
09:06
dakkar joined
|
|||
masak | m: my $n = num64; given $n { when Num { say "OH HAI" } } | 09:06 | |
camelia | rakudo-moar 9e53fa: OUTPUT«OH HAI» | ||
masak | huh. that works | ||
09:08
flaviusb joined
|
|||
dalek | kudo/nom: 41ba549 | TimToady++ | src/Perl6/Actions.nqp: fix for say ($_ * 5 for ^10); |
09:10 | |
RabidGravy | infact I thought I had code that did that but it use a variable github.com/jonathanstowe/Audio-Snd...le.pm#L371 | ||
09:11
leont joined
|
|||
RabidGravy | because some of this stuff wouldn't work otherwise | 09:11 | |
09:12
snarkyboojum left,
snarkyboojum_ left,
captain-adequate left
09:14
DrForr joined
09:17
snarkyboojum joined
09:19
hankache joined,
captain-adequate joined
09:20
hankache left
|
|||
dalek | kudo/nom: cc21892 | TimToady++ | tools/build/NQP_REVISION: bump NQP to get .dump_annotations |
09:21 | |
09:22
telex left
09:24
telex joined
|
|||
abraxxa | masak: is there anything I can do to help fix the 'Cannot unbox a type object' error? | 09:27 | |
09:31
secwang joined
09:33
suman left
|
|||
abraxxa | die "unhandled type: {$v.WHAT}"; outputs only 'unhandled type' and a 'Use of uninitialized value of type Rat in string context' warning | 09:33 | |
and 'Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in block' | 09:34 | ||
09:35
bjz left
|
|||
masak | abraxxa: .^name is a good way to get the name of a type | 09:37 | |
abraxxa: I've basically stopped doing .WHAT on things after I learned to like .^name | |||
RabidGravy | the unbox thing is more fundamental than I thought as the obvious dumb ACCEPTS on Num doesn't help | ||
abraxxa | i thought WHAT is the correct method | 09:38 | |
but in this case it seems to fail | |||
^name works | |||
09:38
yeahnoob left
|
|||
abraxxa | m: my $foo = 4.85; say $foo.^name; | 09:39 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Rat» | ||
masak | thing is, .WHAT produces a type object, which by definition is undefined. | ||
so it doesn't always stringify well | |||
abraxxa | i see! | ||
RabidGravy | some types don't have all the gubbins required to make some of the intropspection stuff work nicely | ||
abraxxa | that's a bit confusing: perl6intro.com/#_types | ||
it says that it returns a type (object?) but the say seems to work there | 09:40 | ||
masak | yes, "type object" | ||
moritz | abraxxa: say() is smarter than normal stringification | ||
masak | m: say 42 ~~ Int; my $i = Int; say 42 ~~ $i | ||
camelia | rakudo-moar 9e53fa: OUTPUT«TrueTrue» | ||
masak | abraxxa: `Int` there is just an object that stands in for the type of all Ints | 09:41 | |
abraxxa: it's an "undefined instance" of Int, at least conceptually | |||
abraxxa | moritz: how is say smarter? | ||
masak | m: say Int ~~ Int; my $i = Int; say $i ~~ Int | 09:42 | |
camelia | rakudo-moar 9e53fa: OUTPUT«TrueTrue» | ||
masak | m: print Int.gist(), "\n" # say comes down to this, I think | ||
camelia | rakudo-moar 9e53fa: OUTPUT«(Int)» | ||
nine | masak: yes, it does | ||
yoleaux | 08:52Z <moritz> nine: Inline::Python tests complaining: perlpunks.de/paste/show/566fd4d4.7163.e4 | ||
El_Che | morning | ||
masak | \o | 09:43 | |
grondilu | Stage optimize : WARNINGS for /usr/local/src/rakudo/gen/moar/m-CORE.setting: | ||
Useless use of $compunit in sink context (line 35047) 98.431 | |||
TimToady | known problem, but benign | ||
RabidGravy | chortle | ||
abraxxa | when people use literal floats they get a Rat which automagically becomes a Num if the denominator is >64bit. I need to handle both as floats, whatfor should I check? | ||
i thought the Real role but Int does that as well | |||
El_Che | good, the christmas elves are working on my christmas present ;) | ||
moritz | abraxxa: literal floats have an "e" in them | 09:44 | |
athat is, scientific notation | |||
abraxxa: and "Real" is the common type that unifies Rat and Num (and also Int) | |||
masak | m: say 4.2 ~~ Rat; say 4.2e0 ~~ Num | ||
camelia | rakudo-moar 9e53fa: OUTPUT«TrueTrue» | ||
abraxxa | moritz: yes, I learned that today but I don't think it makes sense to enforce people to define all their floats that way because most won't care | ||
masak | m: say Rat ~~ Real; say Num ~~ Real | ||
camelia | rakudo-moar 9e53fa: OUTPUT«TrueTrue» | ||
grondilu | abraxxa: what you were thinking of was probably "decimal literal" | ||
masak | abraxxa: the fact that most won't care is why the default is Rat. | 09:45 | |
RabidGravy | abraxxa, casting | ||
abraxxa | i need to decide wheter to pass a var either as long or num64 to OCI | ||
09:47
leont left
|
|||
abraxxa | should I pass it as long if it is an Int and as num64 if it is a Num? | 09:48 | |
s/Num/Real/ | |||
by checking for Int before I exclude them from matching the Real too | |||
RabidGravy | m: sub foo(Numeric $a) { my $type = $a ~~ Real ?? Num !! Int; $type($a) } say foo(1).WHAT; say foo(1.2).WHAT' | 09:49 | |
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wDTJl6jraIStrange text after block (missing semicolon or comma?)at /tmp/wDTJl6jraI:1------> 3= $a ~~ Real ?? Num !! Int; $type($a) }7⏏5 say foo(1).WHAT; say foo(1.2).WHAT' expecting any of…» | ||
RabidGravy | m: sub foo(Numeric $a) { my $type = $a ~~ Real ?? Num !! Int; $type($a) }; say foo(1).WHAT; say foo(1.2).WHAT' | ||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/gb7CjaEhjpTwo terms in a rowat /tmp/gb7CjaEhjp:1------> 3a) }; say foo(1).WHAT; say foo(1.2).WHAT7⏏5' expecting any of: infix infix stopper postfix s…» | ||
RabidGravy | m: sub foo(Numeric $a) { my $type = $a ~~ Real ?? Num !! Int; $type($a) }; say foo(1).WHAT; say foo(1.2).WHAT | ||
camelia | rakudo-moar 9e53fa: OUTPUT«(Num)(Num)» | ||
RabidGravy | or something like that | ||
m: sub foo(Numeric $a) { my $type = $a ~~ Int ?? Int !! Num; $type($a) }; say foo(1).WHAT; say foo(1.2).WHAT | 09:50 | ||
camelia | rakudo-moar 9e53fa: OUTPUT«(Int)(Num)» | ||
RabidGravy | there | ||
09:51
bjz joined
09:52
rindolf left
|
|||
abraxxa | i hoped there is a role which matches all non-decimal and one for all decimal numbers | 09:52 | |
Int does the former but there is none for the later | |||
09:52
TEttinger left
|
|||
abraxxa | because Int does Real | 09:52 | |
m: use NativeCall; my Rat $foo = 4.85; my num64 = $foo.Real; | 09:53 | ||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/hUerwNnp5aMalformed myat /tmp/hUerwNnp5a:1------> 3NativeCall; my Rat $foo = 4.85; my num647⏏5 = $foo.Real;» | ||
masak | m: say Rat ~~ Rat | Num; say Num ~~ Rat | Num | 09:54 | |
abraxxa | huh? | ||
camelia | rakudo-moar 9e53fa: OUTPUT«TrueTrue» | ||
abraxxa | m: use NativeCall; | ||
camelia | ( no output ) | ||
masak | m: subset NonIntReal of Real where { $_ !~~ Int }; say Rat ~~ NonIntReal; say Num ~~ NonIntReal | 09:55 | |
09:55
bjz_ joined
|
|||
camelia | rakudo-moar 9e53fa: OUTPUT«TrueTrue» | 09:55 | |
abraxxa | m: use NativeCall; my $foo = 4.85; my num64 = $foo.Real; | ||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7H_QNbc1kUMalformed myat /tmp/7H_QNbc1kU:1------> 3use NativeCall; my $foo = 4.85; my num647⏏5 = $foo.Real;» | ||
abraxxa | what am i doing wrong? | ||
masak | missing variable name | ||
abraxxa | m: use NativeCall; my Rat $foo = 4.85; my num64 $bar = $foo.Real; | ||
camelia | rakudo-moar 9e53fa: OUTPUT«This type cannot unbox to a native number in block <unit> at /tmp/p6T9PgC_w_:1» | ||
abraxxa | why does that happen? | ||
masak | the .Real there is a no-op | ||
moritz | abraxxa: because $foo.Real returns a Real, but not all Reals are num64 | ||
masak | since Rat is already Real | ||
abraxxa | I check for ~~ Real but convert to .Num | ||
masak | nope, no conversion | 09:56 | |
only trying to cram a square peg in a round hole :) | |||
abraxxa | how would you call it? | ||
09:56
bjz left
|
|||
abraxxa | so which types to always fit in a num64 which is the largest I can pass to OCI? | 09:56 | |
moritz | num64 | ||
RabidGravy | m: my $foo = 4.85; my num64 = Num($foo); | ||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dCuIZbEgukMalformed myat /tmp/dCuIZbEguk:1------> 3my $foo = 4.85; my num647⏏5 = Num($foo);» | ||
abraxxa | Num should as the docs say it is the same as num64 internally | ||
RabidGravy | m: my $foo = 4.85; my num64 $baz = Num($foo); | 09:57 | |
camelia | ( no output ) | ||
moritz | so, use Num | ||
but don't try to convert to Num by calling .Real | |||
masak | RabidGravy++ | ||
abraxxa | moritz: it's not what I use but what the user passes to DBIish | ||
RabidGravy | either cast to Int if it's an Int or Num oterwise | ||
abraxxa | RabidGravy: that's what I currently do | ||
smls | TimToady: I found another one - this time when creating a whatever code: | ||
m: say (64 + *).chr; | |||
camelia | rakudo-moar 9e53fa: OUTPUT«Useless use of "+" in expression "64 + *" in sink context- QAST::Op(call &infix:<+>) + - QAST::Want 64 - QAST::WVal(Int) - Ii - QAST::IVal(64) - QAST::Var(lexical $whatevercode_arg_1)WARNINGS for /tmp/cISE1JzRNZ:Useles…» | ||
abraxxa | but the check is against Real | ||
which is confusing | |||
RabidGravy | well Real is the wrong check | ||
moritz | if the other side (C) wants a Num, convert to Num; don't check for Int first | 09:58 | |
abraxxa | when does a ~~? | ||
moritz: it's not what it wants, its what I pass it | |||
I can pass both | |||
masak | abraxxa: pass Int if you can, Num if you must :) | 09:59 | |
abraxxa | given/when needs one more indention that if/elsif ;( | ||
masak: yes, but what should I check for? | 10:00 | ||
when Int, then when Real? | |||
10:00
xfix left
|
|||
abraxxa | because I have to handle Rat too | 10:00 | |
moritz | yes | ||
masak | abraxxa: when Int, else convert to Num | ||
abraxxa | or should I check for both Num and Rat instead of the role Real? | ||
masak | abraxxa: yeah, forget about Real | ||
abraxxa: Int is Real too | |||
abraxxa | masak: there are stings too, and date(time)s... | ||
masak: if I check for Int first that's not an issue | |||
masak | abraxxa: match against Rat | Num, then | ||
moritz | abraxxa: no, then you have to check FatRat too etc. | 10:01 | |
10:01
jack_rabbit left
|
|||
abraxxa | masak: i thought checking against Real is better if someone implements a Type that also does Real | 10:01 | |
moritz | masak: what's wrong with checking Int first, then Real? | ||
abraxxa | that's why I've asked for a Role that says 'is a float number' | ||
moritz | but Rat *isn't* a float number | 10:02 | |
it's just convertible into one | |||
but, so is Int | |||
10:03
secwang left,
regreg left
|
|||
stmuk | there is a new "unbox" error due to changed rakudo behaviour (not the "old" intermitaint panda one) or am I misunderstanding? | 10:06 | |
RabidGravy | no | ||
native number types don't smart match nicely | 10:07 | ||
but it doesn't matter here as there will be a value or at least a variable containing the type | 10:08 | ||
stmuk | ok if it's simple and reproductable why does rerunning panda make the problem go away? is that unbox error a side effect? | ||
abraxxa | moritz: that's an implementation detail, logically it's a number with decimal places | 10:09 | |
moritz | abraxxa: which is totally not the same as a float | ||
m: say so 0.1e + 0.2e == 0.3e | |||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4cRwRmf6FzConfusedat /tmp/4cRwRmf6Fz:1------> 3say so 0.1e7⏏5 + 0.2e == 0.3e» | ||
moritz | m: say so 0.1e0 + 0.2e0 == 0.3e0 | ||
camelia | rakudo-moar 9e53fa: OUTPUT«False» | ||
RabidGravy | stmuk, you're not talking about the lasty hour of backlog, and it's just a coincidence | ||
moritz | m: say so 0.1 + 0.2 == 0.3 | ||
camelia | rakudo-moar 9e53fa: OUTPUT«True» | ||
abraxxa | moritz: i know the technical difference and love it | 10:10 | |
stmuk | RabidGravy: that what I meant by the new "unbox" error | ||
abraxxa | but there is no way to pass it to OCI in a native way | ||
RabidGravy | stmuk, not sure what panda has to do with it then | 10:11 | |
abraxxa, this is getting over complicated, if it's a Rat or a Num cast it to a Num, if it's an Int cast it to an Int | |||
abraxxa | what about FatRat? | 10:12 | |
10:13
M-eternaleye left,
M-eternaleye joined
|
|||
RabidGravy | there are only two basic native number types int of various size and num of various size, so if the cast fails then you're stuffed anyway | 10:13 | |
FatRat would be a "double" say cast to a Num | |||
there may well be a loss of precision, but that's inherent in the difference between the way Perl does the numbers to how e.g. C does | 10:14 | ||
stmuk | RabidGravy: panda has reported the same error since precomp was merged but not consistantly | 10:15 | |
RabidGravy | yeah, this is actually totally unrelated | 10:16 | |
stmuk | RabidGravy: so you are actually agreeing with my original question and just misunderstanding me? | 10:17 | |
RabidGravy | no, you've confused me | ||
10:17
espadrine joined
|
|||
RabidGravy | m: num64 ~~ Num | 10:17 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Cannot unbox a type object in block <unit> at /tmp/XUzNrkj6Dq:1» | ||
RabidGravy | *that* is totally unrelated to what is happening with panda | 10:18 | |
stmuk | yes that's what I said | ||
stmuk gives up | |||
RabidGravy | stmuk, you said "ok if it's simple and reproductable why does rerunning panda make the problem go away? is that unbox error a side effect?" no? | 10:19 | |
stmuk | see line 10:06 | ||
RabidGravy | right | 10:20 | |
the unbox error in panda is caused by an undefined variable being passed to an nqp:: function in the method files() without being checked | 10:21 | ||
stmuk | I explicity asked if there were two unbox errors and you said "no" at 10:06 | 10:22 | |
RabidGravy | yes, there is no "new" unbox error | 10:24 | |
10:24
secwang joined
|
|||
RabidGravy | and no it is not related to anything happening in panda | 10:24 | |
10:25
labster left
|
|||
RabidGravy | it is entirely possible that it has always done this one as long as the native types have existed | 10:26 | |
stmuk | % /opt/rakudo-2015.09/bin/perl6 | 10:28 | |
> say num64 ~~ Num | |||
True | |||
RabidGravy | ah ha! do you still have the source for that version? | 10:30 | |
10:31
cpage_ left,
vytas left
|
|||
stmuk | probably not .. I am going to experiment a bit more | 10:31 | |
uruwi_ | How to convert from an Int to an int | ||
? | |||
RabidGravy | you don't have to | ||
10:32
n0tjack joined
|
|||
uruwi_ | Hmm, Type check failed in assignment to '@ingredients'; expected 'Array[int]' but got 'Int' | 10:32 | |
my int @this = +$0, +$1, +$2, +$3, +$4; | |||
@ingredients.push(@this); | |||
RabidGravy | uruwi_, that's different | ||
uruwi_ | Never mind, already figured it out :P | ||
stmuk | RabidGravy: what should say num64 ~~ Num return? | 10:34 | |
RabidGravy | stmuk, True | 10:35 | |
moritz | m: say num64 ~~ Num | ||
camelia | rakudo-moar 9e53fa: OUTPUT«Cannot unbox a type object in block <unit> at /tmp/LC0i2CsWyv:1» | ||
10:35
Axord joined
|
|||
moritz | m: say int32 ~~ Int | 10:35 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Cannot unbox a type object in block <unit> at /tmp/DBkqU7ZM6Y:1» | ||
stmuk | so why is the error not new if it doesn't do that now and it did it 2 months ago? | ||
RabidGravy | I'm thinking there was a refactor around the native types at around a month or so ago which done broke it | ||
stmuk | ok | 10:36 | |
10:36
n0tjack left
|
|||
stmuk wonders how Bend behaves | 10:36 | ||
10:38
aborazmeh left
|
|||
dalek | line-Python: 64491c2 | (Stefan Seifert)++ | / (7 files): Update for CompUnitRepo changes Use %?RESOURCES to find pyhelper.so Manual precompilation is no longer necessary. Rakudo automatically precompiles so in essence, every test is now a precompilation test, too. |
10:38 | |
moritz wonders how Bender behavers | |||
moritz | *behaves | ||
nine | moritz: ^^^ | ||
moritz | nine: tusend takk | ||
RabidGravy | the thing is that "my native num64 is repr('P6num') is Num is nativesize(64) { }" so there is some weird going on before the "normal" smartmatch mechanism kicks in | ||
moritz | RabidGravy: might be just a specialized ACCEPTS that's missing a :D | 10:39 | |
nine: now I get | |||
Cannot locate native library '/home/rakudobrew/.panda-work/1450175937_1/resources/pyhelper.so': /home/rakudobrew/.panda-work/1450175937_1/resources/pyhelper.so: cannot open shared object file: No such file or directory | |||
This is rakudo version 2015.11-554-g3b4964b built on MoarVM version 2015.11-49-g27f15d9 implementing Perl v6.b. | 10:40 | ||
RabidGravy | moritz, I cursorily attempted to augment Num with an ACCEPTS and it didn't appear to make a difference | 10:44 | |
nine | moritz: darn... that's because panda compiles into blib/lib and blib/resources while make test runs prove -Ilib | ||
RabidGravy | yeah, it took me ages to get that right | 10:45 | |
stmuk | . o O ( 25th or 17th place your bets now ) | 10:46 | |
RabidGravy | nine, github.com/jonathanstowe/p6-Sys-La...4f3c53851c - is how I fixed Sys::Lastlog | ||
nine | RabidGravy: thanks! will try that | 10:47 | |
RabidGravy | stmuk, I'm not liking the 17th | 10:48 | |
stmuk | which month? | 10:50 | |
10:50
Axord left
|
|||
stmuk | I'm sure it will be fine in the wash :) | 10:50 | |
10:53
Zoffix left,
Zoffix joined,
zakharyas left
10:56
adhoc left
10:57
cpage_ joined
10:58
zakharyas joined
|
|||
llfourn | m: .say for 1,3..5 # any easy way to get this all flattened out | 10:59 | |
camelia | rakudo-moar 9e53fa: OUTPUT«13..5» | ||
llfourn | m: .say for 1,(3..5).flat # better than | 11:00 | |
camelia | rakudo-moar 9e53fa: OUTPUT«1(3 4 5)» | ||
llfourn | m: .say for 1,3...5) | ||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/oLjmiL_71IUnexpected closing bracketat /tmp/oLjmiL_71I:1------> 3.say for 1,3...57⏏5)» | ||
llfourn | m: .say for 1,3...5 | ||
camelia | rakudo-moar 9e53fa: OUTPUT«135» | ||
stmuk | 2m to rocket launch! | 11:01 | |
11:02
snarkyboojum left
11:03
Khisanth left
11:07
jnthn joined
|
|||
jnthn | morning, #perl6 o/ | 11:08 | |
11:09
iH2O joined,
adhoc joined
11:13
davercc left
|
|||
jnthn | m: .say for flat 1,3..5 | 11:13 | |
camelia | rakudo-moar 9e53fa: OUTPUT«1345» | ||
jnthn | Juerd: MQTT refactor Looks nice :) | 11:15 | |
11:15
Skarsnik joined
11:18
iH2O left
|
|||
stmuk | CVE-2015-8557 python-pygments: Shell injection in FontManager._get_nix_font_path | 11:18 | |
grondilu looks at es6-features.org/ and can't help noticing similarities with Perl 6 | 11:20 | ||
11:21
koo8 joined,
secwang left
|
|||
llfourn | jnthn: thanks :) | 11:22 | |
11:23
secwang joined
11:24
leont joined
11:29
brrt left
11:30
pippo joined
|
|||
grondilu | what would you think about adding a :$repetitions! multi for combinations? | 11:31 | |
11:32
n0tjack joined
|
|||
grondilu | (or :$repeat) | 11:32 | |
ahh I still can't install rakudo: | 11:33 | ||
./perl6-m tools/build/install-core-dist.pl | |||
===SORRY!=== Error while compiling /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85 | |||
An exception occurred while evaluating a constant | |||
at /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85:13 | |||
Exception details: | |||
Could not find symbol '&bool' | |||
in block at /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85:13 | |||
stmuk | grondilu: try from scratch | 11:34 | |
grondilu | don't know what you mean | ||
RabidGravy | yeah, lizmat indicated that she had to nuke before successfully building earlier | ||
grondilu | you mean rm -rf /usr/local/share/perl6/sources/ ? | 11:35 | |
RabidGravy | or make clean | ||
stmuk | yes delete everything | ||
RabidGravy | or "rakudobrew nuke moar" | ||
or whatever | |||
timotimo | smls: seems like nobody answered you yet; there were improvements to run() and friends. where were you looking to get to that conclusion? | 11:36 | |
stmuk | and cross your fingers :) | ||
grondilu tries 'make clean' first | |||
11:36
n0tjack left
|
|||
Zoffix | stmuk, we're using that to build docs, don't we? | 11:37 | |
smls | timotimo: Trial and error, mostly. And introspection... ;) | ||
Zoffix | (python-pygments) | ||
11:37
secwang left,
rindolf joined
|
|||
jnthn | m: use Test; is ($(1, 2) Z <a b c>), (($(1, 2), 'a'),) | 11:37 | |
camelia | rakudo-moar 9e53fa: OUTPUT«not ok 1 - # Failed test at /tmp/doxmR7OsxT line 1# expected: '1 2 a'# got: '1 a 2 b'» | ||
RabidGravy | I was going to suggest repurposing its-going-to-be-fabulous.com for Perl 6 earlier, but for some reason it had gone anyway | ||
jnthn | m: use Test; is (<a b c> Z $(1, 2)), (('a', $(1, 2)),) | 11:38 | |
camelia | rakudo-moar 9e53fa: OUTPUT«not ok 1 - # Failed test at /tmp/yGHOB7Rrlk line 1# expected: 'a 1 2'# got: 'a 1 b 2'» | ||
11:38
rurban left
|
|||
Zoffix | RabidGravy, what do you mean gone away? Still loads for me :) | 11:38 | |
11:38
leont left
|
|||
RabidGravy | I prodded it | 11:38 | |
Zoffix | i.imgur.com/6jhqk0K.png | ||
Ah :D | |||
RabidGravy | for some reason the DNS wasn't in the wild | 11:39 | |
which is odd as I've had it for a very long time | |||
stmuk | Zoffix: yes | ||
Zoffix | Well... as long as we aren't using Joomla | 11:40 | |
(blog.sucuri.net/2015/12/remote-com...omla.html) | 11:41 | ||
Skarsnik | hm JSON::Marshal did not like the remove of has-accessor | ||
smls | timotimo: Then how can I write this expression more easily: | 11:42 | |
do { my $proc = run("some_program", :out); my $out = $proc.out.slurp-rest; $proc.out.close; $out } | |||
i.e. an expression that returns the STDOUT of a program invocation as a string, *but* throws an exception if the program couild not run successfully | 11:43 | ||
RabidGravy | Skarsnik, on it when I've got a working rakudo again | ||
timotimo | smls: i haven't touched run() at all yet, i think :| | ||
RabidGravy | I did actually suspect that would be the case | ||
timotimo | Skarsnik: i think it's not removed, just renamed, eh? | 11:45 | |
smls | timotimo: When you write run("program", :out).out.slurp-rest; you loose all the error handling - not to mention that it's still unfriendly to write. | ||
Skarsnik | yes renamed | 11:46 | |
RabidGravy, I make a PR for it | |||
timotimo | how about qx? | 11:47 | |
smls | eew, shell quoting | ||
timotimo | qx doesn't do quoting | 11:48 | |
smls | ? | ||
timotimo | single q means no parsing happens | ||
er, interpolation | |||
jnthn | No, but it does then call shell, not run | ||
timotimo | ... or does qx give you "quotewords", too? | ||
ah! | |||
of course | |||
11:49
vytas joined
|
|||
jnthn | smls: If you're writing the thing you wrote earlier a bunch of times, just factor it out into a sub. It's not *that* long. I agree sugar would be nice. | 11:50 | |
smls | I'm wondering if the .Str method on Proc could be made to do all the slurping and error handling for you | ||
se one could write: my $output = ~run("some_program", :out); | |||
jnthn | Feels a bit too magical. | 11:51 | |
smls | It's .Bool method is already special I think, so it might fit | ||
jnthn | Though yeah, would probably be workable | ||
11:51
siriu5b joined
|
|||
jnthn | m: say roundrobin($(1, 2), <a b c>).perl | 11:52 | |
camelia | rakudo-moar 9e53fa: OUTPUT«([1, "a"], [2, "b"], ["c"]).Seq» | ||
jnthn | m: say roundrobin(((1, 2),), <a b c>).perl | ||
camelia | rakudo-moar 9e53fa: OUTPUT«([(1, 2), "a"], ["b"], ["c"]).Seq» | ||
smls | Another confusing thing about Proc is that .exitcode returns 0 if the program has not yet finished | 11:54 | |
would be saner to have ot block for the process to finish, IMO | |||
Put another way, Proc feels a little too slanted towards async usage. It would be better if simple synchroneous usage was easy, and async use needed special care, rather than the other way around. | 11:57 | ||
Especially since there is already Proc::Async for full async flexibility. | |||
11:58
bjz_ left
11:59
bjz joined
|
|||
jnthn | m: say roundrobin(<a b c>, ((1, 2),)).perl | 11:59 | |
camelia | rakudo-moar 9e53fa: OUTPUT«(["a", (1, 2)], ["b"], ["c"]).Seq» | ||
12:00
[particle] left
|
|||
jnthn | ah...duh :) | 12:00 | |
12:00
siriu5b left
12:01
[particle] joined,
[particle] left
|
|||
jnthn has now got Z, X, their meta-op forms, and roundrobin respecting itemization | 12:02 | ||
Now if only the patch will pass spectest... :) | |||
12:02
rurban joined,
siriu5b joined
|
|||
timotimo | :S | 12:02 | |
masak | jnthn: is that the expected reslut for roundrobin...? | ||
jnthn | masak: The one above? | 12:03 | |
Well, close. | |||
The problem was: | |||
m: use Test; is roundrobin($(1, 2), <a b c>), (($(1, 2), 'a'), ('b',), ('c',)) | 12:04 | ||
camelia | rakudo-moar 9e53fa: OUTPUT«not ok 1 - # Failed test at /tmp/wlci6XInaO line 1# expected: '1 2 a b c'# got: '1 a 2 b c'» | ||
jnthn | I also threw a .List is as we probably shouldn't be returning mutable arrays from roundrobin. | ||
*in | |||
masak | grondilu: re :$repetitions or :$repeat -- couldn't the same effect be had by casting to .Set before? | ||
jnthn | .tell FROGGS t\04-nativecall\12-sizeof.t explodes on Win32/MSCV when compiling the test C lib, with "fatal error C1083: Cannot open include file: 'stdbool.h'" | 12:06 | |
yoleaux | jnthn: I'll pass your message to FROGGS. | ||
jnthn | stdbool is apparently just not std enough :P | ||
masak .oO( for very low values of "std"... ) | 12:07 | ||
timotimo | well, stdbool is std in C99 | 12:08 | |
i thought we had a check for that to make sure it actually exists? | |||
jnthn | Not in that test C script, apparently | ||
grondilu | m: say join ' ', <a b c>.combinations(3); | 12:09 | |
camelia | rakudo-moar 9e53fa: OUTPUT«a b c» | ||
grondilu | m: say <a b c>.combinations(2); | 12:10 | |
camelia | rakudo-moar 9e53fa: OUTPUT«((a b) (a c) (b c))» | ||
grondilu | m: say <a b c>.Set.combinations(2); | ||
camelia | rakudo-moar 9e53fa: OUTPUT«((a => True c => True) (a => True b => True) (c => True b => True))» | ||
FROGGS | jnthn: ahh | ||
yoleaux | 12:06Z <jnthn> FROGGS: t\04-nativecall\12-sizeof.t explodes on Win32/MSCV when compiling the test C lib, with "fatal error C1083: Cannot open include file: 'stdbool.h'" | ||
FROGGS | jnthn: you've got MSVC 2012 or older? | ||
grondilu | masak: I'm not sure what you mean with casing to .Set | 12:11 | |
*casting | |||
FROGGS | jnthn: moarvm's config exposes the fact that a _Bool or bool is available, I should make the include conditionally somehow using that info | ||
jnthn | C:\consulting\rakudo>cl | ||
Microsoft (R) C/C++ Optimizing Compiler Version 16.00.40219.01 for x64 | |||
FROGGS | that's 2011 IIRC | ||
jnthn | wow :) | ||
I've a bunch of versions installed, that must just be what's in my path :) | 12:12 | ||
FROGGS | I've got 2012 Express which tells it is v17 | ||
grondilu | <a b c>.combinations(2, :repeat) would give ((a, a), (a, b), (a, c), (b, b), (b, c), (c, c)) | ||
jnthn | FROGGS: Yowser, it's 2010 | 12:13 | |
FROGGS | hehe | ||
oldie but goldie | |||
jnthn | I guess that's why debugging Moar feels so responsive compared to when I'm doing C# stuff in later versions :P | ||
masak | grondilu: oh, I see. I misunderstood, then. | 12:14 | |
grondilu: though to be honest, that no longer feels like .combinations to me | |||
grondilu: kind of a situation analogous to .pick/.roll -- it's too different to be just an option/adverb | |||
jnthn | urgh...something that's recently happened has thrown off line number reporting in some cases | 12:15 | |
grondilu | masak: it's how it's called in rosettacode.org/wiki/Combinations_w...epetitions | ||
I don't know how else we could call it. | 12:16 | ||
dalek | kudo/nom: 2342871 | jnthn++ | src/core/ (2 files): Make X, Z, and roundrobin respect items. Includes fixing meta-op forms of X and Z. |
||
masak | grondilu: feels almost like a kind of cross product to me (except with "unordered pairs") | ||
dalek | ast: 127b86f | jnthn++ | S (3 files): Tests for RT #126522. |
||
grondilu | apparently on wikipedia it's called "multisubset". Need to investigate. | 12:17 | |
en.wikipedia.org/wiki/Combination#...repetition | |||
Juerd | Why can't *.method ~~ regex be used with .grep? | 12:18 | |
m: say (^10).grep: *.Str ~~ /<[123]>/ | |||
camelia | rakudo-moar 9e53fa: OUTPUT«WhateverCode object coerced to string (please use .gist or .perl to do that) in block <unit> at /tmp/P8qZvQVJt9:1()» | ||
Juerd | m: say (^10).grep: * ~~ /<[123]>/ | ||
camelia | rakudo-moar 9e53fa: OUTPUT«(1 2 3)» | ||
Juerd | In my real world use case I have a list of hashes, and I want to grep on *.<topic> ~~ $regex | ||
masak | Juerd: that looks nice. it might well be that that should work. | 12:19 | |
12:19
kanishka joined
|
|||
masak | Juerd: but whatever mechanics are so hairy, so I'd simply Try It And See -- change the semantics of Rakudo, and then re-run the spectest suite. | 12:19 | |
Juerd | I expected it to work but had to rewrite it as { .<topic> ~~ $regex } | ||
masak | aye. | 12:20 | |
grondilu | maybe we could call them "bags($n)", as in all bags of $n elements in total. | ||
timotimo | jnthn: ah, i knew it! i was hoping to get some sort of debug output working to see more exactly what nodes get annotated with which line number to make the line coverage more better (by finding out why certain lines don't get mentioned; like lines containing signatures) | ||
masak runs into these less often, because he tends to use blocks/$_ rather than whatever | |||
grondilu: sounds a bit too huffmanized next to "combinations", especially since it's a more complicated thing than combinations | |||
12:21
[particle] joined
|
|||
Juerd | masak: The thing is, I don't know whether this is a bug or not... :) | 12:22 | |
Skarsnik | FROGGS, Hello, I wanted to tell you that the test will likly fail because of bool x) | 12:23 | |
masak | TimToady: getting a "useless use" warning (on latest Rakudo) on an `eq` directly in a `try` (in a statement_mod `if`) | ||
FROGGS | Skarsnik: hehe | ||
masak | TimToady: if you want, I can send you a minimized case of this. it looks like a false positive to me. | ||
FROGGS | Skarsnik: I'm pushing a fix in a minute | ||
sammers | Hi all, I am trying to rakudobrew build jvm on debian, but I get "no writable path found in block <unit> at tools/build/install-core-dist.pl:15"... any ideas? | ||
masak | Juerd: my point was, I don't know either :P | ||
Juerd: in some sense, the limits of what can be whatever'd are a bit arbitrary | |||
FROGGS | sammers: the jvm backend has quite a bunch of problems currently | 12:24 | |
Skarsnik | You also forget to add the stdbool.h header in case of _Bool does not exist but bool exist (probably a weird case) | ||
FROGGS | sammers: can you use the moarvm backend in the meantime? | ||
jnthn | m: say (* ~~ /foo/).WHAT | ||
camelia | rakudo-moar 9e53fa: OUTPUT«(WhateverCode)» | ||
jnthn | m: say (*.bar ~~ /foo/).WHAT | ||
camelia | rakudo-moar 9e53fa: OUTPUT«WhateverCode object coerced to string (please use .gist or .perl to do that) in block <unit> at /tmp/penqWRqDMW:1Nil» | ||
Juerd | TimToady: Should "$hashes.grep: *.<foo> ~~ $regex" work? | ||
FROGGS | Skarsnik: are you sure? | ||
sammers | FROGS: thanks, no worries. just wanted to play around with it. moarvm is working fine here. | ||
jnthn | Generally, anywhere we curry Whatever we should really curry WhateverCode too | ||
12:24
rurban_ joined
|
|||
jnthn | So I'm inclined to think what Juerd wants should work | 12:24 | |
sammers | FROGGS: where is the best place to follow the jvm progress? | 12:25 | |
jnthn | lunch; bbiab :) | ||
moritz | jnthn: iirc there are a few deliberate exceptions to that rule | ||
%curried{'&infix:<∘>'} := 1; | 12:26 | ||
%curried{'&infix:<o>'} := 1; | |||
# %curried == 1 means curry Whatever only | |||
%curried{'&infix:<~~>'} := 1; | |||
by TimToady in commit 292ef666d | 12:27 | ||
m: say (a => 1) ~~ * eqv (a => 1) | |||
camelia | rakudo-moar 9e53fa: OUTPUT«WhateverCode.new» | ||
12:28
koo8 left
|
|||
stmuk | sammers: you also need to run rakudobrew from a writeable directory | 12:28 | |
moritz | seems it still curries on WhateverCode on the RHS | ||
FROGGS | sammers: this channel I guess | ||
12:28
[particle] left
|
|||
stmuk | sammers: I mean you have to have the cwd writeable when you type the command | 12:28 | |
FROGGS | sammers: also, psch++ is currently the most active jvm-backend hacker | 12:29 | |
RabidGravy | Skarsnik, merged cheers! | ||
Ah, I thought that JSON::Unmarshal would be broked by the same thing but it appears not | 12:32 | ||
sammers | stmuk: cool thanks. it is running from a writable directory (with plenty of free space)... I will just lurk here for the next few months... | ||
FROGGS: thanks, I will keep an eye out. | |||
RabidGravy | careful with the lurking, you may find yourself volunteered to do something | ||
:) | |||
timotimo | hum. how do i make the node objects available to lower_signature ... | 12:34 | |
it's tempting to put the node into the %info hash, but that could - in the worst case - cause Match objects to reach the final output | |||
sammers | RabidGravy: oh no!!!! ok, I will be careful... I am really having fun with perl6 atm. hopefully when I get a bit more comfortable I will be able to contribute... | 12:35 | |
RabidGravy | :) | ||
dalek | kudo/nom: 22e8b54 | FROGGS++ | t/04-nativecall/12-sizeof.c: include stdbool.h conditionally to unbreak MSVC This is not a perfect patch, ideally we would do the same magic that moar does. cygx++ for this piece of magic. |
12:36 | |
smls | m: .say for (<2 1 3> .sort); | 12:37 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Cannot find method 'map': no method cache and no .^find_method in block <unit> at /tmp/Fj5E2PuIXu:1» | ||
timotimo | m: say <2 1 3>.sort.WHAT | ||
smls | ^^ wat ;) | ||
camelia | rakudo-moar 9e53fa: OUTPUT«(List)» | ||
timotimo | m: say <2 1 3>.sort.map(*.say) | ||
camelia | rakudo-moar 9e53fa: OUTPUT«123(True True True)» | ||
timotimo | m: say (<2 1 3> .sort).map(*.say) | ||
camelia | rakudo-moar 9e53fa: OUTPUT«Cannot find method 'map': no method cache and no .^find_method in block <unit> at /tmp/TRmB0MrgE8:1» | ||
moritz | m: .say for (<2 1 3>.sort) | ||
camelia | rakudo-moar 9e53fa: OUTPUT«123» | ||
dalek | p: e94e95d | FROGGS++ | tools/build/MOAR_REVISION: bump moar for stdbool.h fix |
||
smls | timotimo: it works without the space before the method call op | ||
timotimo | m: say (<2 1 3>.sort).map(*.say) | ||
camelia | rakudo-moar 9e53fa: OUTPUT«123(True True True)» | ||
moritz | it really needs the space before the .sort | ||
timotimo | wow, wat. | ||
that's not right | 12:38 | ||
dalek | kudo/nom: 8464eab | FROGGS++ | tools/build/NQP_REVISION: bump nqp/moar for stdbool.h fix |
||
FROGGS | Skarsnik: better? github.com/MoarVM/MoarVM/commit/a677430d85 | ||
smls | timotimo: Should I RT it? It's not like it holds back the release so won't need immediate attention. | 12:40 | |
masak | m: say "OH HAI" if try 0 eq 0 | ||
camelia | rakudo-moar 9e53fa: OUTPUT«OH HAI» | ||
12:40
kid51 joined
|
|||
masak | TimToady: ^ the above gives the "Useless use" warning locally. | 12:40 | |
timotimo | smls: that just means it doesn't need to go in the xmas list | ||
masak | TimToady: and it's not a useless use, since `try` is transparent to values | ||
moritz | smls: please RT, yes | 12:41 | |
smls | k | 12:42 | |
12:42
bjz left
|
|||
stmuk | f457007181bb6e2dcb6aefe857f36d648ae38401 broke num64 ~~ Num | 12:47 | |
12:48
lucasb joined,
bjz joined
|
|||
moritz | m: say Num.ACCEPTS(num64) | 12:50 | |
camelia | rakudo-moar 9e53fa: OUTPUT«True» | ||
RabidGravy | stmuk++ # bisecting | 12:51 | |
12:51
rurban left
|
|||
moritz | m: say 1 ~~ True | 12:52 | |
camelia | rakudo-moar 9e53fa: OUTPUT«True» | ||
moritz | it broke that too | ||
that used to warn/error | |||
12:52
kid51 left
|
|||
stmuk | santa needs to bring me a faster bisecting machine :/ | 12:53 | |
RabidGravy | Hmm, that might also explain a load of Array[<nativetype>] fails I brushed under the carpet last week | 12:54 | |
RabidGravy finds another has-accessor | 12:56 | ||
me-- # cargo culting his own code | 12:57 | ||
Juerd | RabidGravy: Example? | ||
RabidGravy | Juerd, que? | ||
oh example of Array[<native>] | 12:58 | ||
Juerd | I'm curious. What are you cargo culting? | ||
RabidGravy | using has-accessor | 13:00 | |
it was in a test of META6 | |||
Juerd | Why's that bad? | ||
RabidGravy | I'd just finished JSON::Marshal which also had it | ||
Skarsnik | it had be removed to only have has_accessor | ||
RabidGravy | well, it's bad now because what Skarsnik said | 13:01 | |
Skarsnik | All the MOP part of perl6 use _ in name :) | ||
Juerd | Oh, wow. That's such a PHP-like issue :( | ||
Skarsnik | Meh, It mark MOP stuff at being something 'special' | 13:02 | |
Juerd | I disliked in tests that is_approx has _ | ||
RabidGravy | there are two I think | ||
weirdly is_approx and is-approx work somewhat differently | 13:03 | ||
or did that get changed | |||
no what I thought you meant was whatever it was that required github.com/jonathanstowe/Audio-Enc...a8d928d034 | 13:04 | ||
which is "brushing under the carpet" | |||
abraxxa | what can cause this error (or warning?) message? it doesn't include a line number: Use of uninitialized value @row of type Str in string context | ||
Skarsnik | weird | 13:05 | |
13:06
prammer joined
|
|||
RabidGravy | m: my @a := Array; say "@a"; | 13:06 | |
camelia | rakudo-moar 9e53fa: OUTPUT«@a» | ||
RabidGravy | m: my @a := Array; say @a.Str; | ||
camelia | rakudo-moar 9e53fa: OUTPUT«Use of uninitialized value of type Array in string contextAny of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in block <unit> at /tmp/w2n4xOGOcg:1» | ||
dalek | kudo/better_line_coverage: 57b3506 | timotimo++ | src/Perl6/Actions.nqp: give parameter binding code nodes this lets the signature line(s) show up in coverage output when generated via moarvm, as the code now has line number annotations. |
||
RabidGravy | abraxxa, but I don't know how you get there without doing it deliberately | 13:07 | |
abraxxa | say @a.gist;? | 13:08 | |
hm, no | |||
timotimo | m: sub test(@a) { say @a }; test(Array) | 13:09 | |
camelia | rakudo-moar 9e53fa: OUTPUT«(Array)» | ||
timotimo | ^- that's how | 13:10 | |
moritz | uhm, that surprises me | ||
I'd spect @a in a signature to actually mean Positional:D | |||
timotimo | suspect*? | ||
moritz | *expect | ||
abraxxa | github.com/abraxxa/DBIish/blob/mas...on.pl6#L21 | ||
this triggers it | |||
timotimo | i had a branch to do that, but it caused some spec test fallout | ||
it did look like that had some agreement from the community, though | 13:11 | ||
abraxxa | isn't using a und b as varnames discouraged or is that only in Perl 5? | ||
moritz | only p5 | 13:12 | |
Skarsnik | abraxxa, that's so weird is not the diag @a[] ? | ||
abraxxa | might be | ||
Skarsnik | :m my @a; say "hello @a[]"; | ||
m: my @a; say "hello @a[]"; | |||
camelia | rakudo-moar 9e53fa: OUTPUT«hello » | ||
Skarsnik | m: my Str @a; say "hello @a[]"; | 13:13 | |
camelia | rakudo-moar 9e53fa: OUTPUT«hello » | ||
abraxxa | nope | ||
Skarsnik | m: my Str @a; diag "hello @a[]"; | ||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/KtEik7QLtFUndeclared routine: diag used at line 1» | ||
RabidGravy | m: sub foo(@a, @b) { @a[0] eq @b[0] }; foo(Array, Array); | ||
camelia | rakudo-moar 9e53fa: OUTPUT«Use of uninitialized value $v of type Any in string contextAny of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in sub foo at /tmp/ZjnRu1jve5:1Use of uninitialized value $v of type Any in string contextAny of .^name, .p…» | ||
RabidGravy | or something | 13:14 | |
jnthn back | 13:16 | ||
moritz: OK, so ~~ not dealing with WhateverCode does look deliberate. :) Guess only TimToady can answer at this point. :) | 13:18 | ||
I think the story of is-approx vs is_approx is that the latter is meant to go away, but stayed for a bit because the behavior was a bit different, but the is-approx behavior was considered preferable. | 13:19 | ||
But that means the migration is a bit more than just "rename it" | |||
13:19
dalek left
13:20
dalek joined,
ChanServ sets mode: +v dalek
|
|||
RabidGravy | poor dalek | 13:21 | |
13:21
rurban joined
|
|||
RabidGravy | I suppose I'd better start this advent post | 13:21 | |
13:21
rurban left
|
|||
jnthn | Advised. Starting it at 10pm by writing an async STOMP impl made for a late night :P | 13:22 | |
Skarsnik | jnthn, should it be tagged at is_approx? | ||
jnthn | Skarsnik: What? | ||
Skarsnik | DEPRECATED | ||
jnthn | Oh | ||
Skarsnik | Sorry I can't type | ||
jnthn | Keys are right to each other! | ||
moritz | now that we have an approximate-equal operator, we should use that in is-approx | 13:23 | |
jnthn | If somebody wants to look into getting it cleared up, that'd be appreciated :) | ||
Skarsnik | and nice advent post btw. I was curious how to write my Discord::Client class with Supply x) | ||
jnthn | :) | 13:24 | |
13:24
koo8 joined
|
|||
Skarsnik | moritz, about DBIIsh are the names are fine for row and allrows? or do you want me to change them before I merge the PR ~~ | 13:24 | |
but I probably had to rewrite WebSocket first to use them :( | 13:25 | ||
RabidGravy | I would have thought WebSocket was a natural for Supply | ||
abraxxa | so does someone have an idea where that warning comes from? | ||
smls | jnthn: Can you take a quick look at rt.perl.org/Ticket/Display.html?id=126576 to decide if that is expected behavior? | 13:26 | |
If so, that's one more rt that can be closed. If not, it may actually want to go in the xmas list... | |||
jnthn | smls: That looks inconsistent | 13:27 | |
smls: Think it should preserve in the second case too | |||
smls | that was my expectation as well | 13:28 | |
13:29
pippo_ joined
|
|||
abraxxa | FYI I changed what I push on the @row array when the DB value is NULL to @row.push(Num.new); | 13:30 | |
note the .new | |||
timotimo | now to generate another coverage report ... | ||
13:30
pippo left
|
|||
Skarsnik | how you have null value in the test? x) | 13:31 | |
El_Che | type contraints are only for sub/method signatures I guess? (I was thinking of Moose ad hoc subtype (where) ) | ||
timotimo | a C question: should i replace fprintf with snprintf + write if i want the result to not be split even when concurrent access happens? or do i have to use a mutex? | ||
actually ... there could be access from multiple programs | 13:32 | ||
Skarsnik | there are not thread save? | ||
*safe | |||
abraxxa | before I've pushed Num which is not an object but a ??? | ||
lucasb | abraxxa: Num.new is just 0e0 | ||
13:33
rurban joined
|
|||
abraxxa | Skarsnik: i've added two tests which only insert an Int and a Num | 13:33 | |
lucasb: that's bad, because that's not undef | |||
masak | lots of test failures in `make spectest` -- I guess this is known? | ||
abraxxa | m: say Num.new | ||
camelia | rakudo-moar 9e53fa: OUTPUT«0» | ||
abraxxa | m: say Int.new | ||
camelia | rakudo-moar 9e53fa: OUTPUT«0» | ||
timotimo | masak: not really "lots", but like 5 or 6 files :( | ||
ilmari | abraxxa: Num is the type object, which is also used as undef of that type | ||
13:34
n0tjack joined
|
|||
abraxxa | so I should really push Num and Int without new? | 13:34 | |
ilmari | yes | ||
Skarsnik | abraxxa, maybe you should merge with my fork? I added test for typed stuff github.com/Skarsnik/DBIish/blob/ma...n.pl6#L139 | ||
abraxxa | Skarsnik: I'll rebase when I've finished my work and commited it | 13:35 | |
Skarsnik: should happen today or tomorrow | |||
lucasb | {Int,Num,Rat,Bool,Str}.new all have default values. can I haz Complex.new too, please? | 13:37 | |
masak | timotimo: 13 files here. | ||
13:37
pmurias joined
|
|||
timotimo | ugh.paste please? | 13:37 | |
last time i tried that was fewer | |||
13:38
n0tjack left
|
|||
masak | gist.github.com/masak/191a495ee1d9ed5b5472 | 13:38 | |
timotimo | um, yikes | 13:39 | |
there was work recently in many of those | |||
are you sure your rakudo, nqp and moar are all up to date? | |||
masak | $ perl6 --version | 13:40 | |
This is rakudo version 2015.11-557-gcc21892 built on MoarVM version 2015.11-49-g27f15d9 implementing Perl v6.b. | |||
timotimo | AFK for a bit | ||
masak | the spectests did a pull right before running. | ||
timotimo | that seems recent enough | ||
masak | I built earlier today, an hour or so ago. | ||
abraxxa | is there no test function which can be used instead of magic_cmp in the DBIish t/99-comon.pl6? | 13:41 | |
Skarsnik | is-deeply ? | ||
you have everything from Test | |||
abraxxa | i wonder who wrote magic_cmp and why | 13:42 | |
can you pass arrays in Perl 6 as the magic_cmp signature says? | |||
I don't see that in doc.perl6.org/language/functions | 13:43 | ||
Skarsnik | there was probably not a is-deeply in Test | ||
jnthn | masak: I think with cross/zip/roundrobin you pulled Rakudo, and while it was a building and before pulling spectests I pushed the Rakudo and roast patches | ||
(And I pushed the two around an hour ago) | 13:44 | ||
[Coke] | masak: there have been about 10 files failing for days. | ||
dalek | rl6-roast-data: 42b887e | coke++ | / (7 files): today (automated commit) |
13:45 | |
jnthn | The line number ones seem to have regressed overnight; if I had to guess, something to do with TimToady's great sink refactor work | 13:46 | |
[Coke] | masak: looks like it got much worse since yesterday, yes: | ||
github.com/coke/perl6-roast-data/b....out#L5212 | |||
jnthn: S32-io/IO-Socket-Async-UDP.t aborted 1 test(s) | |||
13:46
leat joined
|
|||
leat | getting this trying to run panda: bpaste.net/show/2bd77d6a5f22 | 13:47 | |
abraxxa | where are the Test docs? | ||
jnthn | [Coke]: Yes, platform issue | 13:48 | |
[Coke] | abraxxa: docs.perl6.org/language/testing ? | ||
Skarsnik | abraxxa, doc.perl6.org/language/testing | ||
leat | rakudo+nqp+moar all 2015-11. | ||
jnthn | [Coke]: It's run without failure for me in every spectest run I've done since I added it | ||
Skarsnik | but I don't think there is everything | ||
llfourn | m: loop (my $i = 0;$i < 10;$i++) { } # another GSR regression | ||
camelia | rakudo-moar 9e53fa: OUTPUT«WARNINGS for /tmp/guBsIKfdfa:Useless use of $i in sink context (line 1)» | ||
leat | any advice? | 13:49 | |
[Coke] | What is the purpose of the GSR? this seems like a lot of churn in the last days before release. me no likey. | ||
Skarsnik | leat, what did you do to build rakudo/moar, what commant did you try? | ||
jnthn | FROGGS: The NaiveCall test fix worked, thanks | ||
stmuk | leat: you probably have to wipe everything and start again | ||
abraxxa | thanks | 13:50 | |
FROGGS | \o/ | ||
[Coke] | jnthn: nice typo. :) | ||
(at least, I assume that's a typo) | |||
lucasb | leat: sorry, idk. but maybe you are trying to use a recent enough panda with an old rakudo (yes, 2015.11 is old with regard to recent changes :) | ||
jnthn | hah! | ||
Native :) | |||
abraxxa | the searchbox in the upper right corner doesn't find 'is-deeply' | ||
Skarsnik | use the source for Test ~~ | ||
[Coke] | abraxxa: please open an issue at github.com/perl6/doc/issues | 13:51 | |
jnthn | [Coke]: Well, I think it's trying to address rt.perl.org/Ticket/Display.html?id=125769 and missing "Useless use of" warnings | ||
abraxxa | [Coke]: sure | ||
RabidGravy | tbh I tend to do "vi ../rakudo/lib/Test.om" every time | ||
pm | |||
llfourn also does this | 13:52 | ||
[Coke] | seems like we could live with warnings about use uses of things showing up post christmas. | ||
*uselss | |||
typos abound. | |||
If it comes to it, that is. | 13:53 | ||
leat | Skarsnik: built rakudo with perl Configure.pl --backends=moar --prefix=/usr | ||
abraxxa | [Coke]: github.com/perl6/doc/issues/244 | ||
llfourn | I noticed while messing around: my $str = ''; for 0..n { $str ~= $_ } seems to be Ο(n²) | 13:54 | |
is this something worth RTing? | |||
13:55
regreg joined
|
|||
jnthn | No | 13:55 | |
leat | lucasb: tried checking out panda to 2015.10 and 2015.09 and it didn't help ): | ||
llfourn | jnthn: kk ;) | ||
jnthn | We most likely can't really fix that on JVM | 13:56 | |
On Moar we do a bit better | |||
llfourn | this was on Moar | ||
jnthn | But what you're doing *is* inherently Ο(n²) given Str is immutable | ||
llfourn | jnthn: hmm, maybe I understand. anyway to work around? | 13:57 | |
jnthn | join | ||
llfourn | gotcha | 13:58 | |
14:01
Sqirrel left
|
|||
dalek | kudo/nom: a04c751 | jnthn++ | src/Perl6/ (3 files): Support :ver<...> and :auth<...> on package decls. These can now be introspected with .^ver and .^auth. |
14:02 | |
14:02
pyrimidine joined
|
|||
dalek | ast: e7252a2 | jnthn++ | S12-introspection/meta-class.t: Test for .^auth; fix test for .^ver and unfudge. |
14:02 | |
lizmat | jnthn: I think that is a mistake! | ||
auth and ver should be a compunit type thing | |||
jnthn | Um, what? | ||
lizmat | not a package type thing! | ||
if you have 2 classes in your file, with different versions | |||
which one should curli select ? | |||
14:02
jevin_ joined
|
|||
jnthn | I thought we already said that a compunit declaration of version would be contaigous on types? | 14:02 | |
We don't actually have a way to specify that yet, though. | |||
lizmat | well, fwiw, I think auth / ver are really meta at this level | ||
14:03
pyrimidi_ left
|
|||
lizmat | but I'm to stuffy in the head to argue this correctly atm | 14:03 | |
14:03
jevin left
|
|||
lizmat | if nine is fine with this, I'm fine with this | 14:03 | |
but it smells wrong to me | |||
jnthn | It's surely less wrong than just dropping :auth and :ver adverbs on the floor | 14:04 | |
lizmat | that I agree with | ||
:-) | |||
but we should keep in mind that auth / ver are a compunit attribute. not a package attribute | 14:05 | ||
afk& | 14:06 | ||
14:08
pippo_ left,
Sqirrel joined
14:10
FreezerburnV joined
|
|||
jnthn | lizmat: I suspect it'll want to be both, in so far as compunits are a bit "abstract" in terms of things you can actually talk about, so Test.^ver is what people will actually be able to write. | 14:11 | |
dalek | kudo/nom: 3aca1a1 | jnthn++ | src/Perl6/Metamodel/ParametricRoleGroupHOW.nqp: Make .^ver and .^auth work out on roles too. |
||
ast: 02cde50 | jnthn++ | S14-roles/basic.t: Test .^ver and .^auth on roles. |
14:12 | ||
jnthn | Phew, back to the xmas RTs to do fitting on my screen without scrolling. | 14:13 | |
Though not if I add rt.perl.org/Ticket/Display.html?id=126576 :) | 14:14 | ||
moritz | IMHO rt.perl.org/Ticket/Display.html?id=126816 deserves to be on the xmas list | 14:16 | |
14:16
n0tjack joined
|
|||
moritz | because it breaks R* | 14:16 | |
RabidGravy | jnthn++ # now I can fix whatever hack I made that provoked me to make that RT | 14:18 | |
abraxxa | i've encountered something weird | ||
jnthn | moritz: I'd thought nine++ fixed that already? | ||
moritz: I can't actually provoke it to do that error locally | 14:19 | ||
abraxxa | paste.scsys.co.uk/502796 | ||
jnthn | perl6-m -Ilib -e "require ::('Pod::To::Text')" # works fine | ||
moritz | jnthn: no, he started diagnosing, didn't actually fix anything | ||
timotimo | jnthn: do i have to rely on libuv to do file locking cross-platform or does C have something for that? (i expect: no, it does not) | 14:20 | |
abraxxa | the ; at the end of the 'selected ... causes this | ||
moritz | jnthn: I don't know what exactly triggers the error, if the package being required needs to "use" another module or anything | ||
jnthn | timotimo: Think libuv; see syncfile.c | 14:21 | |
14:21
skids joined
|
|||
abraxxa | is this a parser failure? | 14:21 | |
14:21
n0tjack left
|
|||
timotimo | will do | 14:22 | |
because my line-based coverage log file gets garbled lines ... i'll try an in-process mutex first, though | |||
t.h8.lv/great_coverage_report.html - we have a thing here! | 14:24 | ||
the grey lines are taken from a complete dump of all annotated lines, so we can see what pieces of code don't get a line number associated with them by our Actions and such | 14:25 | ||
14:25
n0tjack joined
|
|||
timotimo | maybe they ought to be a bit less dark | 14:25 | |
it looks kind of like no line that starts with "my" gets a line number annotation, for example | 14:26 | ||
jnthn | timotimo: wow :) | ||
timotimo++ | |||
timotimo | it also seems like "last line of block" sometimes don't get an annotation, but sometimes they do | ||
14:26
cdg joined
14:27
ZoffixW joined
|
|||
ZoffixW | abraxxa, the ";" there is an error | 14:27 | |
ab5tract, look on the following line, you're closing ); there | |||
err | |||
abraxxa | ZoffixW: I know! but why does it not fail at compile time? | ||
ZoffixW | sorry :) | ||
nine | moritz: rt.perl.org/Public/Bug/Display.html?id=126816 should be fixed by commit 4391c9eeda3c4ba2a3a513e2b0bb3cce78434061 | 14:28 | |
Fixed it by removing the reason for doing the find_symbol call in the first place | 14:29 | ||
abraxxa | ZoffixW: shouldn't that be a compile time error? | ||
ZoffixW | abraxxa, weird. This doesn't fail at all. Just says the test doesn't pass: fpaste.scsys.co.uk/paste | ||
nine | timotimo: output is just not thread safe. If multiple threads write to the same handle, they have to coordinate. | 14:30 | |
14:30
n0tjack left
|
|||
abraxxa | ZoffixW: wrong url | 14:30 | |
ZoffixW | abraxxa, fpaste.scsys.co.uk/502800 | ||
abraxxa | m: use Test; is-deeply("foo","foo","selected data matches what was written";); | ||
camelia | rakudo-moar 9e53fa: OUTPUT«not ok 1 - # Failed test at /tmp/O2ymTAqH2g line 1# expected: $()# got: $("foo", "foo", "selected data matches what was written")» | ||
jnthn | smls: spectesting a fix for rt.perl.org/Ticket/Display.html?id=126576 | ||
smls | nice | 14:31 | |
ZoffixW | m: use Test; is-deeply($(),$(),"selected data matches what was written";); | ||
camelia | rakudo-moar 9e53fa: OUTPUT«Use of Nil in string context in block <unit> at /tmp/JAcupxRecZ:1Use of Nil in string context in block <unit> at /tmp/JAcupxRecZ:1not ok 1 - # Failed test at /tmp/JAcupxRecZ line 1# expected: $()# got: $("", "", "selected data matc…» | ||
ZoffixW | m: use Test; is-deeply(Nil,Nil,"selected data matches what was written";); | ||
camelia | rakudo-moar 9e53fa: OUTPUT«not ok 1 - # Failed test at /tmp/9M_D1UBYF3 line 1# expected: $()# got: $(Nil, Nil, "selected data matches what was written")» | ||
ZoffixW | m: use Test; is-deeply (Nil. Nil, "selected data matches what was written";;;;;;;;;;;;;;) | 14:32 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Non-QAST node visited BOOTIntWeird node visited: BOOTIntNon-QAST node visited BOOTIntWeird node visited: BOOTIntNon-QAST node visited BOOTIntWeird node visited: BOOTIntNon-QAST node visited BOOTIntWeird node visited: BOOTIntNon-QAST…» | ||
ZoffixW | m: sub foo ($, $, $) {}; foo('a', 'b', 'c';;;;;;;;;;;;;;;;:) | 14:33 | |
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/q7Wrl0QCI7Unable to parse expression in argument list; couldn't find final ')' at /tmp/q7Wrl0QCI7:1------> 3) {}; foo('a', 'b', 'c';;;;;;;;;;;;;;;;:7⏏5) expecting any of: colon pa…» | ||
ZoffixW | weird | ||
jnthn tries to work out what on earth rt.perl.org/Ticket/Display.html?id=112666 is about | 14:35 | ||
ZoffixW | m: multi foo ($, $, $) {}; foo('a', 'b', 'c';) | ||
camelia | rakudo-moar 9e53fa: OUTPUT«Cannot call foo(List, List); none of these signatures match: ($,,) in block <unit> at /tmp/8QUI8RAhot:1» | ||
14:35
cdg left
|
|||
ZoffixW | m: multi foo ($, $, $) {}; multi foo ($, $) { say "zomg!"; }; foo('a', 'b', 'c';); say "ehehe" | 14:36 | |
camelia | rakudo-moar 9e53fa: OUTPUT«zomg!ehehe» | ||
ZoffixW | Look ma! I broke Perl 6! | ||
moritz | what does that ; inside the argument list do? | 14:37 | |
m: multi foo ($, $, $) {}; multi foo ($, $) { say "zomg!"; }; foo('a', 'b', 'c'); say "ehehe" | |||
camelia | rakudo-moar 9e53fa: OUTPUT«ehehe» | ||
jnthn | I have no idea... | ||
moritz | ah | ||
it creates a multi-dimensional list | |||
14:37
lichtkind joined
|
|||
moritz | m: say ('a', 'b', 'c';) | 14:37 | |
camelia | rakudo-moar 9e53fa: OUTPUT«(a b c)» | ||
moritz | m: say ('a', 'b', 'c';).perl | ||
camelia | rakudo-moar 9e53fa: OUTPUT«("a", "b", "c")» | ||
moritz | m: say ('a', 'b', 'c';).elems | ||
camelia | rakudo-moar 9e53fa: OUTPUT«3» | ||
jnthn | m: sub foo() { my @a; BEGIN { @a = 1,2,3 }; say @a; }; foo(); foo(); | ||
camelia | rakudo-moar 9e53fa: OUTPUT«[1 2 3][1 2 3]» | ||
ZoffixW | Ah | 14:38 | |
moritz | maybe only inside a signature? | ||
timotimo sprinkles Actions.nqp with :node without thinking too much | |||
moritz | m: sub f(|c) { say c.perl }; f('a', 'b', 'c';) | ||
camelia | rakudo-moar 9e53fa: OUTPUT«\(("a", "b", "c"), ())» | ||
moritz | thereyago | ||
14:39
CIAvash left
|
|||
FreezerburnV | Mornin’ everyone | 14:39 | |
abraxxa | moritz: it's a typo that lead to this weird test fail | ||
moritz | m: sub f(|c) { say c.perl }; f('a',) | ||
camelia | rakudo-moar 9e53fa: OUTPUT«\("a")» | ||
ZoffixW | m: multi foo ($, $, $) { say "lolmg"}; multi foo ($, $) { say "zomg!"; }; foo('a'; 'b', 'c';); say "ehehe" | ||
camelia | rakudo-moar 9e53fa: OUTPUT«lolmgehehe» | ||
moritz | m: sub f(|c) { say c.perl }; f('a') | ||
camelia | rakudo-moar 9e53fa: OUTPUT«\("a")» | ||
abraxxa | but i've neither compiled it with -Dmultidimensional nor called use multidimensional; :) | ||
moritz | one could argue that trailing comma vs. trailing semicolon in an argument list is inconsistent | ||
because trailing comma doesn't magically append another element, but trailing semicolon does | 14:40 | ||
ZoffixW | m: multi foo ($a, $b, $c) { say $a, $b, $c}; foo('a'; 'b', 'c';); say "ehehe" | ||
camelia | rakudo-moar 9e53fa: OUTPUT«(a)(b c)()ehehe» | ||
ZoffixW | m: multi foo ($a, $b, $c) { say $a.WHAT, $b.WHAT, $c.WHAT}; foo('a'; 'b', 'c';); say "ehehe" | 14:41 | |
camelia | rakudo-moar 9e53fa: OUTPUT«(List)(List)(List)ehehe» | ||
jnthn | Oh...I think the last post in rt.perl.org/Ticket/Display.html?id=112666 is actually saying "look, it's fixed" :) | ||
ZoffixW | Recalling on how many times I wrote abraxxa's typo, this "feature" would definitelly screw me over frequently enough :/ | 14:43 | |
dalek | kudo/nom: 572dcf0 | jnthn++ | src/core/List.pm: Fix loss of structure in xx. Plus another inconsistency between xx 2 and xx * with regard to Seq. |
||
timotimo | nine: all right, will do that | ||
moritz | ZoffixW: maybe we really want an error/warning on a single trailing ; in argument list | ||
dalek | ast: b111614 | jnthn++ | S03-operators/repeat.t: Tests for RT #126576. |
14:44 | |
moritz | ZoffixW: I've done the same mistake in p5 a bazillion times | ||
ZoffixW | Probably. I've no idea about multi-dimentional arrays, so I've no idea if there's some sort of a usecase where trailing ; is useful | ||
moritz | m: loop(my $i = 0; $i < 10; $i++) { } | 14:47 | |
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5===Word 'loop' interpreted as 'loop()' function call; please use whitespace around the parensat /tmp/MRItpSmRFN:1------> 3loop7⏏5(my $i = 0; $i < 10; $i++) { }Unexpected block in infix position (two terms in a row)at /tm…» | ||
moritz | m: loop (my $i = 0; $i < 10; $i++) { } | ||
camelia | rakudo-moar 9e53fa: OUTPUT«WARNINGS for /tmp/zRDRUTb9UK:Useless use of $i in sink context (line 1)» | ||
moritz | bogus warning here | ||
14:47
Begi joined
14:48
pippo joined
14:49
ZoffixW left
|
|||
Woodi | moritz: bugus becouse iterations are unnided or loop efect is null ? | 14:52 | |
moritz | m: loop(my $i = 0; $i < 10; $i++) { print $i } | 14:53 | |
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5===Word 'loop' interpreted as 'loop()' function call; please use whitespace around the parensat /tmp/fHO_RI2v7U:1------> 3loop7⏏5(my $i = 0; $i < 10; $i++) { print $i }Unexpected block in infix position (two terms in a row)…» | ||
moritz | m: loop (my $i = 0; $i < 10; $i++) { print $i } | ||
camelia | rakudo-moar 9e53fa: OUTPUT«WARNINGS for /tmp/m91D8uLB3X:Useless use of $i in sink context (line 1)0123456789» | ||
moritz | Woodi: loop body is irrelevant | 14:54 | |
Woodi | m: my $j; loop (my $i = 0; $i<10; $i++) { $j = $i } | 14:55 | |
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/_1buJgMW0AWhitespace required before < operatorat /tmp/_1buJgMW0A:1------> 3oop (my $i = 0; $i<10; $i++) { $j = $i }7⏏5<EOL> expecting any of: postfix» | ||
Woodi | m: my $j; loop (my $i = 0; $i<10; $i++) { $j = $i }; | ||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/nmBKAUhv0DWhitespace required before < operatorat /tmp/nmBKAUhv0D:1------> 3op (my $i = 0; $i<10; $i++) { $j = $i };7⏏5<EOL> expecting any of: postfix» | ||
Woodi | m: my $j; loop (my $i = 0; $i<10; $i++) { $j = $i; } | ||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/KFRsGFutnPWhitespace required before < operatorat /tmp/KFRsGFutnP:1------> 3op (my $i = 0; $i<10; $i++) { $j = $i; }7⏏5<EOL> expecting any of: postfix» | ||
Woodi | what ? | ||
moritz | Woodi: read the error message | 14:56 | |
"Whitespace required before < operator" | |||
Woodi | right, thinked < is some brace... | 14:57 | |
m: my $j; loop (my $i = 0; $i < 10; $i++) { $j = $i; } | |||
camelia | rakudo-moar 9e53fa: OUTPUT«WARNINGS for /tmp/xBZSryaTTZ:Useless use of $i in sink context (line 1)» | ||
Woodi | and green was green up to red END... | ||
abraxxa | can we do something about that typo/feature problem? | ||
14:57
rurban left
|
|||
Woodi | over-eager usefulnes here ? | 14:57 | |
abraxxa | maybe a warning if a multidimensional array is created where the last element is 'empty'? | 14:58 | |
14:58
sammers left
|
|||
abraxxa | how can I make a method call work in ""? | 14:58 | |
RabidGravy | I think TimToady knows about that consequence of what he is doing (from what I backlogged earlier) and is planning on doing something about it later if no-one else does | 14:59 | |
abraxxa | like say "$col<dty> $col<valuep> @row.tail"; to get the result of the tail call? | ||
14:59
loren joined
|
|||
loren | Evening, Perl 6.. | 14:59 | |
14:59
zakharyas left
|
|||
RabidGravy | abraxxa, " { @row.tail }" | 14:59 | |
abraxxa | from my simple user perspective i'd say using the statement end char (;) for something else too isn't a good idea | ||
RabidGravy: thanks! | 15:00 | ||
I knew something exists but couldn't find it in the docs | |||
15:00
roguelazer left
|
|||
loren | m: grammar XX { rule TOP { ^<item> }; token item { (.*) }; }; say XX.parse("1+"); ## What's wrong with these code ?? | 15:00 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Too many positionals passed; expected 1 argument but got 2 in regex item at /tmp/qID5GCdtwQ:1 in regex TOP at /tmp/qID5GCdtwQ:1 in block <unit> at /tmp/qID5GCdtwQ:1» | ||
RabidGravy | I thought it was mentioned in the quotey thing document | ||
abraxxa | Cannot call tail(Array: ); none of these signatures match: | ||
(Any:D $: Int:D $n, *%_) | |||
15:00
roguelazer joined
15:02
zakharyas joined
|
|||
RabidGravy | .tail(1) then | 15:02 | |
or whatever number you want | |||
abraxxa | Defaults to the last element seen if no NUMBER specified | ||
doc.perl6.org/routine/tail#class_List | |||
lucasb | abraxxa: is your rakudo old? the default argument for .tail was added later | ||
abraxxa | 2015.11 | ||
15:03
kaare_ joined,
pippo_ joined
|
|||
RabidGravy | abraxxa, is it possble that your @row is jjust a type object? | 15:03 | |
abraxxa | my @row; | ||
RabidGravy | m: my @row := Array; say @row.tail | 15:04 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Cannot call tail(Array: ); none of these signatures match: (Any:D $: Cool $n = { ... }, *%_) in block <unit> at /tmp/OyqgGjJeq8:1» | ||
abraxxa | this wannabe typing will drive people nuts... | ||
m: my row; say @row. | 15:05 | ||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/OtCLt9micQMalformed my (did you mean to declare a sigilless \row or $row?)at /tmp/OtCLt9micQ:1------> 3my row7⏏5; say @row.» | ||
moritz | abraxxa: we've had this topic before today | ||
abraxxa | m: my @row; @row.push(4.85); say @row.tail; | ||
camelia | rakudo-moar 9e53fa: OUTPUT«(4.85)» | ||
15:05
pippo left
15:06
jme` joined
|
|||
abraxxa | m: my @row; @row.push(4.85); say " { @row.tail } "; | 15:06 | |
camelia | rakudo-moar 9e53fa: OUTPUT« 4.85 » | ||
loren | *_* Anyone found that problem remind me .. /me bulabulabula... | ||
abraxxa | moritz: what exactly as we've talked about so much today | ||
RabidGravy | abraxxa, I think somehow some of your @arrays is getting made into an Array type object | 15:07 | |
a lot of what you are seeing is consistent with that | |||
I'd start by testing for .defined all the way up the call chain to see where it is coming from | 15:08 | ||
moritz | abraxxa: that @-sigiled variables allow the variable to become a type object (and that I think this might be a design mistake, or simply not intentional) | ||
abraxxa | RabidGravy: it fits on one screen and I'm pushing values onto the array without problems | 15:09 | |
does it help to initialize the array with my Array @row; or my Array @row = ();? | 15:10 | ||
RabidGravy | it could be do a sub foo(Array:D $row) | ||
Array @row is an array of array | |||
15:11
sammers joined
|
|||
timotimo | should i try to make a @ or % sigiled parameter have a :D by default again? | 15:14 | |
15:15
pecastro left
|
|||
[Coke] | generic rant: referring to gists in RTs is problematic. | 15:15 | |
timotimo | i don't understand why so many lines with nqp::foo in them aren't getting line number information; term:sym<nqp::op> puts a :node in there :\ | 15:16 | |
abraxxa | RabidGravy: there is no method call between the var declaration and the say | 15:17 | |
timotimo | hum. it's even in the ast output of the optimizer | ||
15:18
pmurias left
|
|||
abraxxa | m: my @row; @row.push(4.85); say " { @row.tail(1).^name } "; | 15:18 | |
camelia | rakudo-moar 9e53fa: OUTPUT« Seq » | ||
FROGGS | jnthn: btw, I'm with lizmat about .^auth and .^ver | ||
masak | loren: I think it's the name "item", which is sort of taken for other things in Perl 6. | ||
abraxxa | that fails here as well | ||
FROGGS | jnthn: it is okay if you query the distribution via its packages, but it feels odd | 15:19 | |
masak | loren: try renaming "item" to something safe, like "foo" | ||
FROGGS | bbl & | ||
15:19
FROGGS left
|
|||
abraxxa | m: my Array @row; @row.push(Str); | 15:19 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Type check failed in assignment to @row; expected Array but got Str in block <unit> at /tmp/Nc1ph8pk6Y:1» | ||
abraxxa | i don't get it! | ||
m: my @row; my Array @row2; say @row.^name; say @row2.^name; | 15:20 | ||
camelia | rakudo-moar 9e53fa: OUTPUT«ArrayArray[Array]» | ||
abraxxa | RabidGravy: ah, that was at me before | ||
nine | abraxxa: my @row already declares an @row to be an array. my Int @row; declares an Array containing Ints. my Array @row; declares an array containing Arrays | ||
abraxxa | nine: yeah, makes sense, somehow | ||
though I'd prefer Array[Int] like Pointer[Int] is defined | 15:21 | ||
jnthn | Way to think of it: sigils already imply a type | ||
RabidGravy | you can, just not with a @ siggiled variable | ||
abraxxa | omg, tail returns a Seq instead of the last element of the Array | 15:22 | |
m: my Array $foo; say $foo.^name; | |||
camelia | rakudo-moar 9e53fa: OUTPUT«Array» | ||
abraxxa | looks like sigils are useless then | ||
RabidGravy | m: my Array[Int] $a; $a.push(10); say $a | ||
camelia | rakudo-moar 9e53fa: OUTPUT«[10]» | ||
abraxxa | because you can't infer a type from it, at least not from scalars | 15:23 | |
15:23
n0tjack joined
|
|||
timotimo | well, you can store anything you like in a scalar | 15:24 | |
abraxxa | the tail docs are wrong, how can I fix them? | ||
timotimo | at the bottom is a link to the git repository | ||
15:24
sammers left
|
|||
abraxxa | timotimo: i'd understand that i can store an arrayREF in it but not an array | 15:24 | |
timotimo: thanks. github fork + PR? | |||
timotimo | yeah, that's how we usually do it :) | 15:25 | |
we don't have a difference between arrayREF and array in perl6 | |||
"everything's a reference", so to say | |||
RabidGravy | the @ just implies default positional semantics without having to initialise it | 15:26 | |
as % does Associative | |||
abraxxa | what I wondered before is that $arrayref[2] works and $arrayref.[2] too | ||
15:26
molaf joined
|
|||
abraxxa | although only the later matches the docs | 15:26 | |
timotimo | that's weird. they're supposed to be the same thing | 15:27 | |
jnthn | $a[0] and $a.[0] compile into the very same thing | ||
abraxxa | is the wording correct: Returns a Seq containing the last NUMBER items of the list.? | ||
timotimo | sounds good to me | 15:28 | |
abraxxa | yes, both work but I don't know why the former does | ||
15:28
n0tjack left
|
|||
timotimo | it's weird to have NUMBER in allcaps | 15:28 | |
abraxxa | at least I didn't find it documented | ||
timotimo | rather than something like C<number> or C<$number> | ||
abraxxa | timotimo: that's how it is currently in the docs | ||
loren | masak, Ok. | ||
abraxxa | because LIST.tail(NUMBER) | ||
timotimo | that's weird to me. | ||
RabidGravy | the only place I have found the . necessary is with an attribute that contains a code object | ||
abraxxa | how is a link defined in p6pod? | ||
RabidGravy | ie. $foo.code() is not the same as $foo.code.() | ||
abraxxa | L<Seq> ? | ||
timotimo | right, because attribute access is calling a method | ||
RabidGravy | yes | 15:29 | |
abraxxa | ok | ||
it also never returns an empty list, but an empty Seq, right? | |||
jnthn | rt.perl.org/Ticket/Display.html?id=112666 did actually turn out to reveal an icky but that I think I've now squished | 15:30 | |
abraxxa | i'm also eliminating the 'seen' | ||
15:31
lucasb left
|
|||
timotimo | i think it does return a Seq | 15:32 | |
loren | masak, U are right. I found that code on Rosetta code . I think we need more human error message, ^_^ ... | ||
timotimo | perhaps it returns an empty list? | ||
abraxxa | PR sent | ||
now I want a .last even more | 15:33 | ||
back to @row[*-1] | |||
dalek | c: 33f3ed7 | (Alexander Hartmaier)++ | doc/Type/List.pod: fix tail docs clarify that tail always returns a Seq as its signature already correctly shows |
15:34 | |
c: 1bf67d6 | (Zoffix Znet)++ | doc/Type/List.pod: Merge pull request #245 from abraxxa/master fix tail docs |
|||
abraxxa | wow, awesome bot! | ||
jnthn notes that .last and [*-1] are the exactly same number of chars :) | 15:35 | ||
15:36
sammers joined,
yakudza joined
|
|||
abraxxa | jnthn: but .last is easier to type and read | 15:37 | |
something between code and tests transforms my Num's to Rat's | 15:38 | ||
or is-deeply is f*** with me | 15:39 | ||
jnthn | I dunno, pretty sure I can pattern-match [*-1] at least as fast as .last when reading :) | ||
15:40
virtualsue joined
|
|||
abraxxa can't get his irc client, editor and shell onto a 24" screen so they don't overlap and are large enough | 15:40 | ||
15:41
n0tjack joined
|
|||
geekosaur | this is why multiple screens | 15:42 | |
stmuk | or just screen(1) | ||
moritz | screen(1), despite its name, can't magically create more screen real estate for multiple windows simultaneously | 15:43 | |
DrForr | Sure it can, just connect from another terminal :) | ||
abraxxa | i have a GUI and I use it's advantages | 15:44 | |
stmuk | I think it's pretty magic | ||
abraxxa | I can't stand screen with it myriads of key combinations you have to remember because I don't | ||
DrForr | Which is why I use tmux :) | 15:45 | |
b2gills | abraxxa: use multi subs/methods: 「multi sub example ( Int $e ){ $e.^name }; multi sub example ( Num(Real) $e ){ $e.^name }」 (backlogging &) | ||
abraxxa | DrForr: can you click on a tab with your mouse? | ||
DrForr | Mouse? Why would you bother... | 15:46 | |
15:47
n0tjack left
15:48
yakudza left
|
|||
nine | geekosaur: this is why 30" screen | 15:48 | |
loren go to sleep now .. | |||
dalek | p: 4358ba8 | jnthn++ | src/core/NQPMu.nqp: Support BUILDPLAN protocol extension. |
||
15:49
jsimonet joined,
Begi left
|
|||
loren | Night , Perl 6 , every one | 15:49 | |
RabidGravy | I've got a 17" screen and I get on all right | ||
15:49
loren left
|
|||
abraxxa | how would I loop an arrayref? | 15:49 | |
diakopter 5.6" | |||
abraxxa | diag ( .gist ~ ' ' ~ .^name ) for $arrayref.[$i].?; | ||
dalek | kudo/nom: cea3e99 | jnthn++ | / (3 files): Avoid lazy allocation optimization on mixins. We may be mixing in to a meta-object, such as a routine, which may be cloned; the delayed allocation then can cause very weird behaviors where simply accessing something make stuff magically work. Now it'll not-so-magically work all the time. |
||
geekosaur | actually I find that harder. I can focus on one monitor around 24", 30" is difficult unless I move far enough away that I'd have to use poster type to read it >.> | ||
diakopter | abraxxa: what's an arrayref | ||
nine | m: my $a = [1, 2, 3]; .say for $a; | ||
camelia | rakudo-moar 9e53fa: OUTPUT«[1 2 3]» | ||
nine | m: my $a = [1, 2, 3]; .say for $a.list; | 15:50 | |
camelia | rakudo-moar 9e53fa: OUTPUT«123» | ||
nine | abraxxa: ^^^ | ||
diakopter | I see what you did there, but the array isn't any more of a ref than a list | ||
dalek | ast: d1a2af4 | jnthn++ | S14-traits/routines.t: Test for RT #112666. |
15:51 | |
nine | jnthn: is that the fix for the "right kinda thing"? | ||
abraxxa | seems that's because they cloned the Perl 5 DBI interface | 15:52 | |
fetchrow returns @row, so an array, not an arrayref | |||
diakopter | okay, but what's an arrayref | ||
jnthn | nine: Um, what? :) | ||
abraxxa | method fetchall_arrayref { [ self.fetchall-array.eager ] } | ||
15:53
yakudza joined
|
|||
jnthn | nine: The patch I pushed is the fix for the thing in the test I pushed | 15:53 | |
nine: Oh, the ticket title | |||
nine: Yes, it's that ticket. | |||
nine | jnthn: I meant RT #112666 with it's curious title | ||
jnthn | Took me half an hour to figure out what the ticket even was talking about... | ||
And get to something I could understand wanted fixing. | |||
nine | I've been wondering that for months :) | 15:54 | |
abraxxa | diakopter: the docs mention it doc.perl6.org/language/5to6-nutshe...e_creation | ||
diakopter | yeesh | ||
abraxxa | $arrayref.[$i] returns an Array an I want to loop over its elements | 15:55 | |
jnthn | nine: I'm happy to got to the bottom of it at last :) | ||
abraxxa | diag ( .gist ~ ' ' ~ .^name ) for $arrayref.[$i]; outputs # [(Str) (Str) 1 (Num) (Num)] Array | ||
nine | jnthn: all it takes is the right kinda fix ;) | ||
15:56
Upasaka left
|
|||
diakopter | abraxxa: nine answered your question (use .list), but it's still a misnomer to call it an arrayref | 15:56 | |
timotimo | a "kinda fix"? :P | ||
abraxxa | fetchall_arrayref does return an arrayref as far as I see it because it uses [] | ||
15:56
Upasaka joined
|
|||
jnthn | [...] isn't even an itemized array in Perl 6. | 15:57 | |
(Yes, it used to be, pre-GLR) | |||
nine | abraxxa: please forget the distinction you know from Perl 5. Perl 6 has arrays and arrays are objects and all objects are passed by reference. | ||
RabidGravy | m: my Int @a = [1,2,3]; say @a.join('*'); | ||
camelia | rakudo-moar 9e53fa: OUTPUT«1*2*3» | ||
abraxxa | nine: ok, but then the docs need a great overhaul | ||
RabidGravy | it doesn't make any difference | ||
diakopter | the 5to6-huttsnell is older than I am | ||
abraxxa | why does for $arrayref.[$i] return the Array instead of looping over its elements? | 15:58 | |
jnthn | m: my Int @a = $[1,2,3]; say @a.join('*'); # does, however | ||
camelia | rakudo-moar 9e53fa: OUTPUT«Type check failed in assignment to @a; expected Int but got Array in block <unit> at /tmp/A6y5JzaMtB:1» | ||
hoelzro | good morning #perl6! | 15:59 | |
d^_^b | morning! | ||
jnthn | abraxxa: An Array is a bunch of items. | ||
15:59
ZoffixW joined
|
|||
hoelzro | o/ d^_^b | 15:59 | |
ZoffixW | Found a bug: | 16:00 | |
camelia, gist.github.com/zoffixznet/64c946cd529c8b0d1fe8 | |||
m: gist.github.com/zoffixznet/64c946cd529c8b0d1fe8 | |||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Aknl7ELCw3Missing « or »at /tmp/Aknl7ELCw3:3------> 3 .flat».7⏏5Str;» | ||
diakopter | m: | ||
ZoffixW | m: my @a = ^10; say @a.sort.flat».Str; | ||
camelia | rakudo-moar 9e53fa: OUTPUT«(0 1 2 3 4 5 6 7 8 9)» | ||
ZoffixW | Splitting it onto lines causes the bug | ||
diakopter | ZoffixW: this isn't C# | 16:02 | |
you'd need an "unsqpce" | |||
"unspace" | |||
nine | diakopter: actually we don't need that anymore in most cases. | 16:03 | |
diakopter | hm, oh | ||
16:03
khw joined
|
|||
nine | But I guess the » makes it ambiuous here | 16:03 | |
ambiguous even | |||
timotimo | also, there's a really strange bug going on where after sort a space before the method call will cause no hllize to happen or something like that | 16:04 | |
FreezerburnV | How do I create an int32 for a NativeCall function? (or, more generally, how do I interact with the various native types and the Perl6 types correctly? such that if an int8 is returned, how do I package that up nicely for the rest of the code? and vice versa? should this be happening automatically?) | 16:05 | |
hoelzro | sub run(*@args ($, *@)) { ... } # the ($, *@) constraint on @args, what's that called? | ||
a subsignature? a nested signature? | |||
I can't seem to find a consistent name in the synopses | |||
jnthn | FreezerburnV: Boxing/unboxing with Int will happen automatically | 16:06 | |
FreezerburnV: Where Int is the non-native thing. | |||
ZoffixW | m: gist.github.com/zoffixznet/018fa503db5bf628bfbb | 16:08 | |
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/x7ngPsQetgMissing « or »at /tmp/x7ngPsQetg:3------> 3 .flat».7⏏5Str;» | ||
ZoffixW | Same with unspace | ||
FreezerburnV | jnthn: Gotcha. I see what I was doing wrong now, woops. Thanks! | ||
16:08
pecastro joined
|
|||
ZoffixW | And I'm guessing qw{} simply doesn't support () parens or is it a bug? | 16:09 | |
m: say qw(class test) | |||
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/5zMrUMIa_TUnable to parse class definitionat /tmp/5zMrUMIa_T:1------> 3say qw(class test7⏏5) expecting any of: generic role» | ||
jnthn | ZoffixW: None of the quoters do | ||
ZoffixW | Gotcha | 16:10 | |
jnthn | It's unambiguously either a coercion type the the thing before it is a type, or a sub call otherwise. | ||
s/the the/if the/ | |||
ZoffixW | And this is the .sort bug I think: | ||
m: say ^10 .sort.flat.Str; | |||
camelia | rakudo-moar 9e53fa: OUTPUT«Cannot find method 'flat': no method cache and no .^find_method in block <unit> at /tmp/UdYHDOprMG:1» | ||
jnthn | Missing hllize in the code-gen maybe | ||
stmuk | I'm not seeing t/spec/S32-io/IO-Socket-Async-UDP.t pass on either linux or OS X | 16:12 | |
jnthn | stmuk: Works fine on Windows. :) | ||
[Coke] | I think it's passing on windows only. | ||
Which makes me think we need to mark it experimental for v6.c | 16:13 | ||
jnthn | Or, you know, one of the dozens of you not primarily using Windows could do some debugging. | ||
16:13
vividsnow left
|
|||
[Coke] | Sure. there's a lot of balls in the air to resolve before, theoretically, thursday. | 16:14 | |
stmuk | Unhandled exception in code scheduled on thread 3 | ||
Unexplained error | |||
the latter looked particularly scary! | |||
jnthn | Unexplaind error. Thanks, libuv :P | ||
diakopter | [Coke]: I thought the 18th was the ambirtious goal to realize the realistic goal of rthe 25th | ||
stmuk | it couldnt be nl related I suppose? | ||
jnthn | stmuk: I don't think so, there's no newlines involved in the patch | 16:15 | |
uh, in the test | |||
Could somebody golf the test down a bit? | |||
To see what the minimum exploding program is? | |||
stmuk | ok | 16:16 | |
nine really hopes we have till the 25th | |||
jnthn | At least it explodes on Linux to, which I do have easy access to, unlike OSX. | 16:17 | |
*too | |||
abraxxa | jnthn: i thought that's a List ;) | ||
lichtkind | jnthn : its fai to say that you still see plenty room for optimization so that rakudo can par up with perl in foreseeable future? | 16:18 | |
TimToady blears into existence, and stops partway... | |||
hoelzro | it's not a MoarVM falling behind issue, is it? | ||
nine | lichtkind: yes | ||
TimToady | ah well, 6 hours of sleep is twice as good as the 3 I got the night before... | ||
lichtkind | thanks | ||
[Coke] | diakopter: there shouldn't be any new code after the 18th, IMO. | 16:19 | |
jnthn | hoelzro: ooh, such that updating to latest libuv would magically fix it? :) | ||
[Coke] | (even now is problematic for testing, etc.) | ||
TimToady thanks everyone for (not) volunteering to be useless-use guinea pigs for him | 16:20 | ||
hoelzro | jnthn: I mean I wonder if $(cat nqp/tools/build/MOAR_REVISION)..master has the fix | ||
16:20
n0tjack joined
|
|||
jnthn | [Coke]: How is "new code" defined? I suspect we'll still have some fixes beyond then. | 16:20 | |
hoelzro: For the UDP thing? Not unless somebody sneaked one in without me looking :) | |||
hoelzro: Which git log suggests not :) | 16:21 | ||
[Coke]: I deliberately picked off the things I'd count as "missing feature" first, though. Nothing left in rt.perl.org/Ticket/Display.html?id=123766 counts | |||
hoelzro | jnthn: alright, just double checking =) | 16:22 | |
jnthn | [Coke]: Well, PRE/POST does, but that's going to be explicilty deferred. | ||
16:22
balazs joined
|
|||
stmuk tries to golf linux udp | 16:22 | ||
jnthn | stmuk: Thanks. | ||
nine | hoelzro: can you still reproduce rt.perl.org/Ticket/Display.html?id=123272? | 16:26 | |
hoelzro | nine: I'll give it a try in a few | 16:27 | |
jnthn | m: say Version.new('6b') | ||
camelia | rakudo-moar 9e53fa: OUTPUT«v6.b» | ||
jnthn | m: say Version.new('6.b') | ||
camelia | rakudo-moar 9e53fa: OUTPUT«v6.b» | ||
ZoffixW | m: say Version.new('6*\') | 16:28 | |
camelia | rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MO3PwLc4S2Unable to parse expression in single quotes; couldn't find final "'" at /tmp/MO3PwLc4S2:1------> 3say Version.new('6*\')7⏏5<EOL> expecting any of: argument list …» | ||
ZoffixW | m: say Version.new('6*') | ||
camelia | rakudo-moar 9e53fa: OUTPUT«v6.*» | ||
FreezerburnV | How do I compile a module down to the *.moarvm version? | 16:29 | |
16:30
pmurias joined
|
|||
abraxxa | m: my @foo = (['foo', 'bar'],['baz', 3.4]); say .gist for @foo[0]; | 16:30 | |
camelia | rakudo-moar 9e53fa: OUTPUT«[foo bar]» | ||
lichtkind | the rakudo NCI works the same under jvm? | ||
jnthn | lichtkind: Yes, modulo bugs :) | 16:31 | |
lichtkind | great :) | 16:32 | |
im just dreaming about rakudo as a platform if it runds on multi vm + perl5 aka cpan +the perl 6 itself which can morph into any language | 16:33 | ||
abraxxa | m: say 4.85.^name; say 4.85e0.^name; | 16:34 | |
camelia | rakudo-moar 9e53fa: OUTPUT«RatNum» | ||
abraxxa | i thought the advise yesterday was to use Num for floating point vars | ||
and now i'm searching since hours why is-deeply fails to match just to find out its the other way round | 16:35 | ||
jnthn | Num is floating point | ||
16:35
ZoffixW left
|
|||
abraxxa | jnthn: Rat too | 16:35 | |
m: say 4.85.gist; say 4.85e0.gist; | |||
camelia | rakudo-moar 9e53fa: OUTPUT«4.854.85» | ||
[Coke] | jnthn: (new) eh, it's all fuzzy. TimToady's changes are causing me the most concern at the moment. | 16:36 | |
abraxxa | paste.scsys.co.uk/502809 | ||
[Coke] | But it sounded like that might get cleared up today. | ||
abraxxa | jnthn: ^^ | ||
jnthn | abraxxa: You seem to be confusing literals vs. representation vs. gist | 16:37 | |
4.85 as a literal produces a Rat | |||
4.85e0 as a literal produces a Num | |||
Rat is represented as a rational | |||
abraxxa | yes, i just swapped these too | ||
jnthn | Num is represented as floating point | ||
Both .gist to 4.85 because that's what humans tend to like to see | 16:38 | ||
m: say 4.85.perl; say 4.85e0.perl; | |||
camelia | rakudo-moar 9e53fa: OUTPUT«4.854.85e0» | ||
abraxxa | i thought Num is the 'regular' one which is generated when your use a 'plain' floating point value like 4.85 | ||
diakopter | [Coke]: I thought the gsr/gsrr just caused benign warnings about benign things | ||
jnthn | abraxxa: Ah, then I guess your confusion is that 4.85 in Perl 6 does not mean floating point. | ||
abraxxa | WHAT? | ||
jnthn | It means a rational. | 16:39 | |
abraxxa | nope, translating to German doesn't explain this either | ||
what is a rational? | |||
jnthn | Something represented was a numerator and a denominator | ||
m: say 4.85.nude | |||
camelia | rakudo-moar 9e53fa: OUTPUT«(97 20)» | ||
jnthn | That is, precisely | 16:40 | |
abraxxa | as I said before that's an implementation detail a user coming from a untyped language like Perl 5 doesn't care about | ||
and lets be honest most Perl 6 beginners will be Perl 5 users | |||
[Coke] | diakopter: it's causing spectest failures. | ||
abraxxa | i write my $foo = 4.85; and don't care | ||
16:41
rurban joined
|
|||
TimToady | do you care if .1 + .2 == .3? | 16:41 | |
abraxxa | I'll only specify one of the three floating point types if I care | ||
TimToady: absolutely and I find it awesome that Rat is the default! | |||
don't get me wrong here | |||
diakopter | abraxxa: actually, my experience observing Perl 6 the past 9 years indicates most Perl 6 learners who stick around for more than 2 seconds are not Perl 5ers | 16:42 | |
TimToady is tired, so don't expect both his eyes to see the same thing | |||
16:42
AndyDee joined
|
|||
diakopter | abraxxa: #perl6, I mean | 16:42 | |
abraxxa | i'm just trying to get DBDish::Oracle right | ||
what is a float in the DB will be returned as Rat, because that's the default type Perl 6 creates when i specify a floating point value | 16:43 | ||
as input it will likely accept Num as well | |||
16:43
pmurias_ joined
|
|||
abraxxa | for floating point number columns that is | 16:43 | |
diakopter | Perl 6 is just close enough to Perl 5 to be confusing, and just close enough in complexity to require a vast brain volume to keep them straight, imho | 16:44 | |
TimToady hopes a normal brain volume will work for that | |||
but now to collect my guinea pig droppings... | 16:45 | ||
abraxxa | I'm just dealing with funny stuff like the type of a number(5,2) column multiplied with a number(2,0) column returning a NUM Oracle datatype (internal 21bit representation of the number datatype) and a precision and scale of 0 | ||
so now decide if you want to bind it as long or num64... | |||
pmurias | I would assume that competent Perl 5 are good at remembering loads of tricky language details | 16:46 | |
* Perl 5 users | |||
TimToady | I see nobody fixed the build overnight, at least as far as camelia is concerned | ||
abraxxa | # Failed test 'selected data matches what was written' | ||
# at EVAL_0 line 170 | |||
# expected: $["BEOM", "Medium size orange juice", 2, 1.2, 2.4] | |||
# got: $["BEOM", "Medium size orange juice", 2, 1.2, 2.4] | |||
so why does is-deeply report a mismatch? | |||
TimToady | is there a workaround for 'Could not find symbol '&bool'' in NativeCall? a 'make clean' is not good enough | 16:47 | |
and I don't know what to remove anymore to nuke it... | 16:48 | ||
diakopter | did you adopt panda's build tree as your dev tree? | 16:49 | |
I mean rakudobrew, of course | |||
TimToady | no, I do my rakudobrewing in a different tree to see the user viewpoint | ||
with an alternate path | |||
16:50
sno left
|
|||
jnthn | TimToady: Try nuking your install directory, perhaps. Oddly I didn't actually run into the issue locally. | 16:50 | |
16:51
pmurias_ left
|
|||
dalek | p: b13205b | jnthn++ | src/HLL/Compiler.nqp: Deconfuse language/implementation version. For those cases where it matters. This will also let us keep the current language version specified in one place. |
16:51 | |
16:52
ZoffixW joined
|
|||
ZoffixW | m: say (* * *)(7, 6) | 16:53 | |
camelia | rakudo-moar 9e53fa: OUTPUT«42» | ||
ZoffixW chuckles | |||
We totally should have a Unicode version of the Whatever star :) | |||
16:53
FreezerburnV left
|
|||
nine | TimToady: you don't have to nuke the whole install dir. install/share/perl6 is enough and will be repopulated with make install | 16:53 | |
ZoffixW | m: say (* * * ** *)(7, 6, 2) | 16:55 | |
camelia | rakudo-moar 9e53fa: OUTPUT«252» | ||
TimToady | do we know why it got out of sync, and whether that indicates a missing dep? | 16:56 | |
16:56
sno joined,
rurban left
|
|||
ZoffixW | m: say (* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * )(|^22) | 16:57 | |
camelia | rakudo-moar 9e53fa: OUTPUT«0» | ||
ZoffixW | hm... | ||
abraxxa | i have to go, I hope I can finally commit everything tomorrow | ||
bye! | |||
ZoffixW | bye | ||
16:58
abraxxa left
|
|||
jnthn | ZoffixW: ^22 starts with 0 :) | 16:58 | |
ZoffixW | Ahhh jnthn++ :D | ||
TimToady | many of us have fallen into that trap :) | ||
16:58
psy_ joined
|
|||
ZoffixW | m: say (* + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * )(|^22) | 16:59 | |
camelia | rakudo-moar 9e53fa: OUTPUT«51090942171709440000» | ||
ZoffixW | hah | ||
16:59
psy_ left
|
|||
nine | TimToady: the source of the issue is that install-core-dist.pl uses git describe to create a version. But those git versions don't sort well and even if they did, CompUnit::Repository::Installation::need actually doesn't load the highest installed version, but a merely sufficient version. | 16:59 | |
16:59
psy_ joined
|
|||
TimToady | perhaps it's worth adding × and ÷ | 16:59 | |
17:00
Actualeyes left,
rurban joined
|
|||
jnthn | TimToady: It seems the "make \n logical" didn't really work out so well as hoped for dealing with newline issues on Windows. I'm thinking we'll actually have to do translation for (non-socket) I/O. Any objections to that? Also, if we do that, is there any reason to keep the \n being virtual, and the newline pragma, around any more, given we'd switch it to always be the classical meaning by default? | 17:00 | |
TimToady | then we can write * × * when we want to | ||
17:00
rurban left
|
|||
nine | Both would probably have not made it into nom if we had 1) reviews, 2) no deadline | 17:00 | |
17:01
xfix joined
|
|||
TimToady | I'm fine with translation | 17:01 | |
Skarsnik | .tell abraxxa I have the same error with is-deeply, I think Num does not work correctly | ||
yoleaux | Skarsnik: I'll pass your message to abraxxa. | ||
jnthn | TimToady: OK, I think I already figured out an easy way to put it in. | ||
TimToady has at one time or other considered highjacking a portion of the input scanner's mind to look for mentions of things like infix:<÷> to pre-install into the lexer | 17:03 | ||
so we don't have to relex on every new operator definition, just enable it to match | 17:04 | ||
kinda falls into the "cheating is technique" category... | |||
17:04
rurban_ left
|
|||
jnthn | TimToady: I'd probably stick it in gen_op and just regex our way over the following however much text for them :) | 17:05 | |
TimToady | you mean on the first hit? the trouble is you might be in a subscope by then | ||
anyway, just thought I'd drop the thought so I can, er, drop the thought | 17:06 | ||
17:06
zakharyas left
|
|||
dalek | kudo/nom: cd7f136 | jnthn++ | / (2 files): Use new implementation/language version methods. |
17:06 | |
kudo/nom: fe7b163 | jnthn++ | src/ (2 files): Get language version from one place. |
|||
TimToady | back useless use of useless use... | ||
TimToady is glad he put in an easy bug for jnthn++ to fix :) | |||
jnthn | I hope ^^ are sufficient to clear up the language version number duplication | ||
17:07
pmurias left
|
|||
jnthn | Though the ticket mentions -V...what on earth does that do... :) | 17:07 | |
oh... | |||
TimToady | yeah, that... | ||
jnthn | grr | ||
OK, so in the next refactor... :) | |||
TimToady | I dunno if we have to fix that bit right now... | ||
jnthn | I *think* I can see a 5 minute way to do it | 17:08 | |
TimToady again feebly attempts to backlog for uu fewmets | |||
17:09
rurban joined
17:10
rurban_ joined
|
|||
hoelzro | nine: LGTM | 17:12 | |
(re. that RT ticket) | |||
nine | hoelzro: so either the Heisenbug hid again, or it just got fixed with all the refactoring | 17:16 | |
17:16
sno left
|
|||
hoelzro | seems so =/ | 17:16 | |
we could bisect back to try to find what "fixed" it, to see if it makes sense | |||
nine | Do you have a "known broken" version? | ||
hoelzro | no, but in that case, I usually just hop back a few releases | 17:17 | |
so if I were to try this now, I would probably start with 2015.08 or 2015.09 | 17:18 | ||
nine | 6d9d0f11aba8e2f465c2958a9311d9d4016017ff is the commit before curli. Might be worth a try | 17:19 | |
hoelzro | *nod* | 17:21 | |
17:21
AlexDaniel joined
17:22
n0tjack left
|
|||
ZoffixW | m: say [*] (1..*+0)($_) for ^10 | 17:23 | |
camelia | rakudo-moar 9e53fa: OUTPUT«Useless use of ".." in expression "1..*+" in sink context- QAST::Op(call &infix:<..>) .. - QAST::Want 1 - QAST::WVal(Int) - Ii - QAST::IVal(1) - QAST::Op(call) .. - QAST::Op(p6capturelex) - QAST::Op(callmethod clo…» | ||
ZoffixW | huh... I'm not getting that on my terminal :/ | ||
Dammit, my awesome factorial function foiled by warnings | 17:24 | ||
jnthn | m: my ($a, \b) := 1, 2; say b; say MY::<b> # aha | ||
camelia | rakudo-moar 9e53fa: OUTPUT«(Any)2» | ||
diakopter | camelia is behind | ||
ZoffixW | I'm on "This is rakudo version 2015.11-311-gf94c31e built on MoarVM version 2015.11-21-g469ba64 implementing Perl v6.b." | 17:25 | |
dalek | kudo/better_line_coverage: 127ee5b | timotimo++ | src/Perl6/Actions.nqp: randomly sprinkle Actions with node annotations |
||
timotimo | this branch seems to be the wrong approach, though -^ | 17:26 | |
17:26
yqt joined
|
|||
ZoffixW | Works on this one too: This is rakudo version 2015.11-477-gde52f97 built on MoarVM version 2015.11-34-gc3eea17 implementing Perl v6.b. | 17:26 | |
m: say $*PERL | 17:27 | ||
camelia | rakudo-moar 9e53fa: OUTPUT«Perl 6 (6.b)» | ||
17:27
renato joined
|
|||
ZoffixW | -_- | 17:27 | |
17:28
renato is now known as Guest71133,
Guest71133 left
|
|||
ZoffixW | m: say $*PROGRAM-NAME | 17:30 | |
camelia | rakudo-moar : OUTPUT«No such file or directory» | ||
ZoffixW | 0.o | ||
RabidGravy | isn't it $*COMPILER or somesuch? | ||
ZoffixW | heh... she messaged me "<camelia> rakudo-moar : OUTPUT«(timeout)Can't exec "./rakudo-m-inst/bin/perl6-m": No such file or directory at lib/EvalbotExecuter.pm line 194.cat: /home/camelia/rakudo-m-inst/revision: No such file or directory#perl6 <ZoffixW> rakudo-moar: say $*PROGRAM-NAME»" | 17:31 | |
dalek | kudo/nom: 3e6cc4a | jnthn++ | / (2 files): Include language version and impl in perl6 -V. This moves the version a step back, so it still has a single source. |
||
TimToady | ZoffixW: redoing camelia at the moment | ||
17:31
dakkar left
|
|||
diakopter anxiously awaits the new butterfly design | 17:32 | ||
AlexDaniel | diakopter: what? What new butterfly design? | ||
jnthn | heh :) | ||
diakopter | teasing | ||
17:34
Guest0101 joined,
ajs_ joined
17:35
n0tjack joined
|
|||
TimToady | camelia updated | 17:35 | |
m: my int $i = 0; $i++ while $i < 10_000_000; say $i; say now - INIT now | |||
camelia | rakudo-moar fe7b16: OUTPUT«100000004.4116645» | ||
TimToady | that one has regressed | ||
jnthn | m: my \b := 1,2; say b | ||
camelia | rakudo-moar fe7b16: OUTPUT«(1 2)» | ||
TimToady | except it doesn't say useless use of $i anymore :) | ||
diakopter | eww | ||
stmuk | I think the linux issue with t/spec/S32-io/IO-Socket-Async-UDP.t is that the listener dies (probably with the "unhandled exception" after the 'print-to' I can get the test to pass by starting up a second listener | 17:36 | |
TimToady | proper sinking is just one of those problems you have to gnaw to death... | ||
stmuk | also both client blocks pass if the other is commented out | 17:37 | |
ZoffixW | m: say [*] (1..*+0)($_) for ^10 | ||
camelia | rakudo-moar fe7b16: OUTPUT«Useless use of ".." in expression "1..*+" in sink context- QAST::Op(call &infix:<..>) .. - QAST::Want :BY<EXPR/list WANTED unwanted> :WANTED 1 - QAST::WVal(Int)  - Ii - QAST::IVal(1)  - QAST::Op(call) .. - QAST::Op(p6ca…» | ||
ZoffixW | *lesigh* | ||
jnthn | stmuk: Weird... | ||
TimToady | m: my int $i = 0; ++$i while $i < 10_000_000; say $i; say now - INIT now | ||
camelia | rakudo-moar fe7b16: OUTPUT«100000000.0630897» | ||
jnthn | stmuk: That narrows it down a good bit, though... | ||
diakopter wonders if TimToady is experimenting with fixes on camelia | 17:38 | ||
stmuk | actually correction the first listener doesn't die .. I had to explicitly close it | ||
TimToady | ZoffixW: yes, that one is on my list | ||
ZoffixW | Ah, k :) | ||
stmuk | anway I tend to blame the listener | 17:39 | |
ZoffixW | Tell me about it! They sit and nod agreeably, but don't actually listen. | ||
TimToady nods | |||
stmuk | is there anyway of dumping thread ids for debugging? | ||
ZoffixW | Yeah | 17:40 | |
RabidGravy | $*THREAD.id ? | ||
ZoffixW | m: (^10)».&({say $*THREAD.id}) | 17:41 | |
camelia | rakudo-moar fe7b16: OUTPUT«1111111111» | ||
TimToady is under the impression that » is not yet very related to .hyper | |||
ZoffixW | m: (^10).hyper(:1batch)».&({say $*THREAD.id}) | 17:42 | |
camelia | ( no output ) | ||
ZoffixW | :( | ||
m: say $*THREAD.id for ^10 .hyper: :1batch; | |||
camelia | rakudo-moar fe7b16: OUTPUT«3453435436» | ||
ZoffixW | There we go :) | ||
stmuk | the "Unhandled exception in code scheduled on thread" is definitely the listener in IO-Socket-Async-UDP.t | 17:44 | |
ZoffixW | This is weird isn't it? i.imgur.com/ZnN3Oyl.png | 17:46 | |
One thread returned (Any) for THREAD-ID | |||
diakopter | m: say $*THREAD.id for ^10 .hyper: :1batch;m: say $*THREAD.id for ^10 .hyper: :1batch; say now - INIT now | ||
camelia | rakudo-moar fe7b16: OUTPUT«344534564344353456530.01698216» | ||
ZoffixW | Hmph.. and a sporadic segfault: i.imgur.com/HchYjj5.png | 17:49 | |
m: for ^100 { say $*THREAD.id for ^10 .hyper: :1batch; } | |||
camelia | rakudo-moar fe7b16: OUTPUT«344343644633435565437787Memory allocation failed; could not allocate 14880 bytes» | ||
17:49
rurban_ left
|
|||
ZoffixW | heh | 17:49 | |
ajs_ | Hey folks, before I get too far into my evening side project, I want to make sure it's useful.... I want IO handles that read/write Str and Buf. | ||
stmuk | it's a pity finding bugs is easier than fixing them :/ | ||
hoelzro | nine: rakudo@6d9d0f1 doesn't exhibit the behavior | ||
ZoffixW | ajs_, I've used that a few times in P5, so sure, that might be useful | 17:50 | |
ajs_ | This is my initial implementation for reading Str: github.com/ajs/work/blob/master/names/IOMem.pm6 | ||
My thinking is IO::Mem is the generic entry point while IO::Str and IO::Buf will be specific to those types. | 17:51 | ||
AlexDaniel | ajs_: I've been using it a lot in P5. Not sure if such need exists in Perl 6 though, but it probably does | ||
ajs_ | If it does exist, I'd love to know before I get any further in the implementation.... I spent last night on it, and was going to try to finish up IO::Str tonight. | 17:52 | |
diakopter | m: my $a; $a += $*THREAD.id for ^50000 .hyper: :1batch; say now - INIT now; say $a | 17:54 | |
camelia | rakudo-moar 3e6cc4: OUTPUT«(signal XCPU)» | ||
ZoffixW | heh | ||
diakopter | m: my $a; $a += $*THREAD.id for ^50000 .hyper: :1batch; say now - INIT now; say $a | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«(signal XCPU)» | ||
ZoffixW | m: my $a; $a += $*THREAD.id for ^5000 .hyper: :1batch; say now - INIT now; say $a | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«0.954853721945» | ||
nine | hoelzro: so the bug has vanished before curli? | ||
hoelzro | yup | 17:55 | |
hoelzro ¯_(ツ)_/¯ | |||
17:55
sunnavy joined
|
|||
jnthn seems to have fixed rt.perl.org/Ticket/Display.html?id=126626 | 17:59 | ||
ZoffixW | How come this doesn't reverse the pairs? | ||
m: say (0 => 3, 1 => 3, 2 => 5, 3 => 4, 4 => 3, 5 => 5, 6 => 3, 7 => 4, 8 => 5, 9 => 6).Seq».reverse | |||
camelia | rakudo-moar 3e6cc4: OUTPUT«((0 => 3) (1 => 3) (2 => 5) (3 => 4) (4 => 3) (5 => 5) (6 => 3) (7 => 4) (8 => 5) (9 => 6))» | ||
jnthn | m: say (0 => 1).reverse | ||
ZoffixW | m: say (0 => 3, 1 => 3, 2 => 5, 3 => 4, 4 => 3, 5 => 5, 6 => 3, 7 => 4, 8 => 5, 9 => 6).Seq».antipair | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«(0 => 1)» | ||
rakudo-moar 3e6cc4: OUTPUT«(3 => 0 3 => 1 5 => 2 4 => 3 3 => 4 5 => 5 3 => 6 4 => 7 5 => 8 6 => 9)» | |||
17:59
firstdayonthejob joined
|
|||
jnthn | Because reverse doesn't reverse pairs? :) | 17:59 | |
And yes, antipair is the one | 18:00 | ||
18:00
administrator joined
|
|||
jnthn | Just part of the general deconfusing of things (like reverse and flip are different operations) | 18:00 | |
18:00
administrator is now known as Guest2627
|
|||
ZoffixW | jnthn, I see. I just saw in the docs "Routines supplied by Any": docs.perl6.org/type/Pair | 18:01 | |
m: say (0 => 1).sort | |||
camelia | rakudo-moar 3e6cc4: OUTPUT«(0 => 1)» | ||
ZoffixW | m: say (1 => 0).sort | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«(1 => 0)» | ||
jnthn | ZoffixW: Sure, because anything can act like a list of one item | ||
ZoffixW | Ah, I see. | ||
jnthn | Darn, my fix busted a test... | ||
jnthn thinks he'll save this for after dinner :) | |||
TimToady | m: say (1 => 2 => 3).antipair | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«(2 => 3) => 1» | ||
TimToady | m: say (1 => 2 => 3).invert | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«Cannot modify an immutable Pair in block <unit> at /tmp/msHcDivLRO:1» | ||
TimToady | hmm, invert should just return a new pair | 18:02 | |
Skarsnik | hm, what was the git magic command to rebase without creating a merge commit? | ||
jnthn | git pull --rebase ? | 18:03 | |
TimToady | m: say (1 => [2, 3]).invert | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«[2 => 1 3 => 1]» | ||
18:03
sno joined
|
|||
TimToady | m: say (1 => [2, 3]).antipair | 18:03 | |
camelia | rakudo-moar 3e6cc4: OUTPUT«[2 3] => 1» | ||
rindolf | TimToady: hi! sup? | ||
grondilu fixed rosettacode.org/wiki/Combinations_w...ons#Perl_6 but it was quite painful | 18:04 | ||
TimToady | been breakin' stuff | ||
ZoffixW | m: say (3 => 0, 5 => 1, 4 => 2, 3 => 3, 5 => 4, 3 => 5, 4 => 6, 5 => 7, 3 => 8, 6 => 9).sort({$^a <=> $^b}) | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«Cannot call Real(Pair: ); none of these signatures match: (Mu:U \v: *%_) in block <unit> at /tmp/7KJNaBsbhN:1» | ||
ZoffixW | m: say (3 => 0, 5 => 1, 4 => 2, 3 => 3, 5 => 4, 3 => 5, 4 => 6, 5 => 7, 3 => 8, 6 => 9).sort({$^a.key <=> $^b.key}) | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«(3 => 0 3 => 3 3 => 5 3 => 8 4 => 2 4 => 6 5 => 1 5 => 4 5 => 7 6 => 9)» | ||
grondilu | m: m: say (3 => 0, 5 => 1, 4 => 2).sort(:by(*.key)) | 18:05 | |
camelia | rakudo-moar 3e6cc4: OUTPUT«(3 => 0 4 => 2 5 => 1)» | ||
dalek | c: 142b4cf | (Sylvain Colinet)++ | doc/Language/nativecall.pod: Added bool and size_t to NC doc. Also add a bit of words on typed pointer |
||
TimToady | m: say 3 => 1 cmp 3 => 0 | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«3 => Less => 0» | ||
TimToady | m: say 3 => 1 cmp 3 => 2 | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«3 => Less => 2» | ||
TimToady | hmm | ||
grondilu | prority? | ||
TimToady | it should at least be different | 18:06 | |
grondilu | precedence I meant | ||
TimToady | I don't see a prec problem | ||
ZoffixW | m: m: say (3 => 0, 5 => 1, 4 => 2).sort: *.key | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«(3 => 0 4 => 2 5 => 1)» | ||
TimToady | I'd think pairs should sort first on key, then on value | ||
grondilu | that would be intuitive | 18:07 | |
TimToady | but I shouldn't have got Less for the 2nd one above | ||
so looks like a buglet to me | |||
someone else can file it | |||
ZoffixW | m: my @horses; @horses.append: $*THREAD.id for ^3 .race: :1batch; say "Horse {@horses.pairs».antipair.sort(*.key).reverse[0].value} won!" | 18:09 | |
camelia | rakudo-moar 3e6cc4: OUTPUT«Horse 1 won!» | ||
ZoffixW | Horse racing in Perl 6 :D | ||
Skarsnik | lol | ||
TimToady | at a guess, it's comparing object identities, so the first one created is always less | 18:10 | |
18:10
petercommand left
|
|||
TimToady | oh well, I'll file it if no one else is | 18:11 | |
masak | TimToady: oh hai, did you backlog irclog.perlgeek.de/perl6/2015-12-15#i_11719712 ? | ||
TimToady: (try is wrongly flagged up as a sink context) | 18:12 | ||
ZoffixW | m: say "OH HAI" if try 0 eq 0 | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«Useless use of "eq" in expression "0 eq 0" in sink context- QAST::Op(chain &infix:<eq>) :statement_id<?> eq - QAST::Want :BY<EXPR/list WANTED unwanted> :WANTED 0 - QAST::WVal(Int)  - Ii - QAST::IVal(0)  - QAST::Want :BY<EXPR/li…» | ||
yakudza | hehe v1.std3.ru/71/b7/1450110575-71b77b...83738f.gif how perl6 will look like ? (: | ||
TimToady | masak: yes, in my list | 18:13 | |
masak | ZoffixW: huh. I wonder why the warning worked in camelia now, and not back when I tried it... | ||
ZoffixW | masak, she got refreshed a few dozen minutes ago | ||
dalek | kudo/nom: 4624f75 | (Stefan Seifert)++ | tools/build/install-core-dist.pl: Use Perl's version for the CORE dist Using git describe has been a workaround obsoleted by the :force flag to install. Versions should be assigned manually and conciously. |
||
kudo/nom: b7c6b58 | (Stefan Seifert)++ | src/core/CompUnit/Repository/Installation.pm: Load the newest version of matching dists by default. This should get rid of confusion caused by outdated installed versions and matches what has actually be envisioned. |
|||
nine | This ^^^ should be the end of the &bool errors | ||
TimToady | masak: because I nuked the install | 18:14 | |
masak | aha. | ||
TimToady | so now we have a different set of bugs :) | 18:15 | |
ZoffixW | m: say ^10 .shuffle | 18:16 | |
camelia | rakudo-moar 3e6cc4: OUTPUT«Method 'shuffle' not found for invocant of class 'Range' in block <unit> at /tmp/wls8JALrpN:1» | ||
ZoffixW | Wasn't there a shuffle method? | ||
ZoffixW might be confusing with one of Perl 5's List::* modules | |||
masak | yakudza: Perl 6 looks like Perl, but with C#'s space helmet and a butterfly t-shirt | 18:17 | |
18:18
koo8 left
|
|||
ZoffixW | m: say ^10 .sort({rand <=> rand}) | 18:18 | |
camelia | rakudo-moar 3e6cc4: OUTPUT«(0 1 3 4 5 7 8 2 6 9)» | ||
masak | m: say (flat 1..5).pick(*) | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«(5 3 4 1 2)» | ||
masak | ZoffixW: use .pick(*) | ||
ZoffixW | Ah :) Thanks | ||
masak++ | |||
smls | masak: Why the 'flat'? | ||
masak | smls: because a range is a single thing. | 18:19 | |
ZoffixW | (It was even in one of the Advent articles) | ||
masak | smls: welcome to post-GLR | ||
ZoffixW | m: say 1..10 .pick(*) | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«Seq objects are not valid endpoints for Ranges in block <unit> at /tmp/xsGuV6Bkwz:1» | ||
TimToady | m: say (1..5).pick(*) | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«(5 4 1 3 2)» | ||
ZoffixW | m: say ^10 .pick(*) | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«(4 1 5 7 9 8 6 2 0 3)» | ||
TimToady | why the 'flat'? | ||
masak | TimToady: um. | 18:20 | |
TimToady: because I tried it locally, got `(1 2 3 4 5)`, and concluded that it didn't shuffle :P | |||
TimToady | try it again :) | ||
masak | I did :) | ||
smls | ;) | ||
RabidGravy | that's randomness for you | ||
TimToady | m: say ^5 .permutations .pick | 18:21 | |
camelia | rakudo-moar 3e6cc4: OUTPUT«(3 0 2 1 4)» | ||
masak | m: sub postfix:<!>)($n) { [*] 2..$n }; say "you have a 1 in %d chance of getting the five numbers in order".fmt(5!) | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«5===SORRY!5=== Error while compiling /tmp/W5L87rDmzTMissing blockat /tmp/W5L87rDmzT:1------> 3sub postfix:<!>7⏏5)($n) { [*] 2..$n }; say "you have a 1 i expecting any of: new name to be defined» | ||
masak | m: sub postfix:<!>($n) { [*] 2..$n }; say "you have a 1 in %d chance of getting the five numbers in order".fmt(5!) | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«Directives specify 0 arguments, but 1 argument was supplied» | ||
masak | m: sub postfix:<!>($n) { [*] 2..$n }; say 5!.fmt: "you have a 1 in %d chance of getting the five numbers in order" | 18:22 | |
camelia | rakudo-moar 3e6cc4: OUTPUT«you have a 1 in 120 chance of getting the five numbers in order» | ||
masak | m: sub postfix:<!>($n) { [*] 2..$n }; say (1/5! * 100).fmt: "you have a %5.2f%% chance of getting the five numbers in order" | 18:23 | |
camelia | rakudo-moar 3e6cc4: OUTPUT«you have a 0.83% chance of getting the five numbers in order» | ||
TimToady | m: sub postfix:<!>($n) { [*] 2..$n }; say (⅕! * 100).fmt: "you have a %5.2f%% chance of getting the five numbers in order" | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«you have a 100.00% chance of getting the five numbers in order» | ||
TimToady | oh, duh :) | ||
18:23
yqt left
|
|||
TimToady | how come unicode doesn't have any vulgar fractions with ! in the denominator, huh? | 18:24 | |
.oO(useless use of unicode) |
18:25 | ||
y'know, I could get to fixing the uu bugs faster if you folks hadn't frontlogged so much while I was asleep... | 18:26 | ||
ZoffixW | ehehe | ||
18:26
espadrine left,
kyclark_ joined
|
|||
masak .oO( 1. create language 2. create community 3. blame community for talking too much while you're hacking on language ) | 18:27 | ||
:P | |||
TimToady | it's a nice problem to have, really :) | 18:28 | |
m: say ($_ * 5 for ^10); | 18:29 | ||
camelia | rakudo-moar 3e6cc4: OUTPUT«(0 5 10 15 20 25 30 35 40 45)» | ||
TimToady | at least that one fixed itself | ||
nine gave up backlogging in favor of having more time for hacking | |||
ZoffixW | m: say "You have a {100*1/[*] 1..5}% chance of getting the five numbers in order"; | 18:30 | |
camelia | rakudo-moar 3e6cc4: OUTPUT«You have a 0.833333% chance of getting the five numbers in order» | ||
dalek | kudo/nom: 9be3cae | (Stefan Seifert)++ | src/ (3 files): Fix use lib accidentally cutting the $*REPO chain short If one used "use lib" to add a repository that has already been in the $*REPO chain, it would get moved to the front and the part of the chain pointed to by its .next-repo was lost. We now properly remove it from the chain before putting it to the front. Thanks to bartonlin++ for reporting! |
||
TimToady is sort of not allowed to give up backlogging, to keep up appearances of omniscience | |||
18:31
zakharyas joined
|
|||
masak | nine: also known as "hacklogging" :) | 18:31 | |
nine | So much LHF, so few takers :/ | 18:32 | |
ZoffixW | m: multi postfix:<!>(Int $n) { [*] 1..$n }; multi postfix:<!>(Rat $n) { 1 / [*] 1..$n.denominator }; say [⅕!, 1/5!] | ||
camelia | rakudo-moar b7c6b5: OUTPUT«[0.008333 0.008333]» | ||
ZoffixW | :D | ||
nine, well, I'd gladly hack on the LHF, but I don't even have an idea of how to start | 18:33 | ||
TimToady | m: use NativeCall; say Num.ACCEPTS(num64); | ||
kyclark_ | Is there a good resource for learning how to write P6 grammars? I've written Parse::RecDescent grammars (SQL::Translator, Bio::GenBankParser), and I want to start using P6 for parsing things like FAST[QA] (bioinformatics type stuff). | ||
camelia | rakudo-moar b7c6b5: OUTPUT«True» | ||
TimToady | m: use NativeCall; say num64 ~~ Num; | ||
camelia | rakudo-moar b7c6b5: OUTPUT«Cannot unbox a type object in block <unit> at /tmp/HlQ2dNwUz5:1» | ||
TimToady | huh | ||
did that one get reported? | |||
18:33
leont joined
|
|||
masak | don't think so | 18:33 | |
nine | ZoffixW: CompUnit::DependencySpecification::Str doesn't have to add the :ver and :auth if it's True anyway | ||
kyclark_ | I started with doc.perl6.org/language/grammars and want to go from there. | ||
masak submits rakudobug | |||
ZoffixW | nine, what repo is that in /rakudo ? | 18:34 | |
nqp? MoarVM? | |||
nine | ZoffixW: github.com/rakudo/rakudo/blob/nom/...ication.pm | ||
ZoffixW | Thanks | ||
Well, that's easy to fix | 18:35 | ||
nine | exactly! | 18:36 | |
ZoffixW | nine, is that on the list somewhere (like an RT ticket?) | ||
nine | I guess not | ||
ZoffixW | List of LHFs | ||
18:37
gblade joined
18:39
patrickz joined,
labster joined,
labster left
18:40
smls_ joined
18:41
kyclark_ left,
smls left
18:44
kyclark_ joined
|
|||
TimToady | m: use Test; is ($(1, 2) Z <a b c>), (($(1, 2), 'a'),) | 18:46 | |
camelia | rakudo-moar b7c6b5: OUTPUT«ok 1 - » | ||
18:46
kyclark_ left
18:48
gblade_ joined
18:49
gblade left
|
|||
d^_^b | jnthn: thanks for the awesome advent calendar post. I have started something similar, but need some more context around IO::Socket. I still need to spend a few days to familiarise myself with perl6 syntax. | 18:49 | |
gblade_ | Hi! I have a question on the latest advent and S07. | ||
d^_^b | whoops, this is my remote account. | ||
ZoffixW | hm | ||
m: my $x = False; say ($x ~~ Bool and $x ~~ True) | |||
camelia | rakudo-moar b7c6b5: OUTPUT«True» | ||
gblade_ | p6: [1,2,3].push: ['a','b'] | 18:50 | |
camelia | ( no output ) | ||
gblade_ | p6: say [1,2,3].push: ['a','b'] | ||
camelia | rakudo-moar b7c6b5: OUTPUT«[1 2 3 [a b]]» | ||
dj_goku | I meant to use this account. :D | ||
ZoffixW | m: my $x = False; say ($x ~~ Bool and $x) | ||
camelia | rakudo-moar b7c6b5: OUTPUT«False» | ||
gblade_ | Seems S07 says that should be [1,2,3,'a','b'] | 18:52 | |
smls_ | p6: say [1,2,3].append: ['a','b'] | ||
camelia | rakudo-moar 9be3ca: OUTPUT«[1 2 3 a b]» | ||
timotimo | could be the .push vs .append thing hasn't landed in S07 yet?! | 18:53 | |
18:53
kyclark_ joined
|
|||
TimToady | likely | 18:53 | |
a lot of things haven't landed in the synopses yet | |||
gblade_ | Ah okay, I was just trying the examples. Thanks! | ||
TimToady | at the moment, roast really is the spec | ||
ZoffixW | huh... You don't need commas with named args 0.o who knew | 18:56 | |
18:56
leont left
|
|||
ZoffixW | m: class x { has $.a; has $.b; has $.c; method x { say "$.a $.b $.c"; } }; x.new( :2a :3b :4c ).x | 18:57 | |
camelia | rakudo-moar 9be3ca: OUTPUT«2 3 4» | ||
nine | ZoffixW: :a :b without a comma is actually :a with an adverb | ||
ZoffixW | m: class x { has $.a; has $.b; has $.c; method x { say "$.a $.b $.c"; } }; given x.new: :2a:3b:4c {.x} | 18:58 | |
camelia | rakudo-moar 9be3ca: OUTPUT«2 3 4» | ||
19:00
yqt joined
|
|||
El_Che | m: $~MAIN | 19:02 | |
camelia | ( no output ) | ||
masak | nine: I don't believe that's true. | ||
El_Che | m: say $~MAIN | ||
camelia | rakudo-moar 9be3ca: OUTPUT«Slang.new(:grammar(Perl6::Grammar), :actions(Perl6::Actions))» | ||
masak | nine: I think the simpler explanation is that the comma before a named arg is optional. | ||
ZoffixW | nine, well, I made my fix. What's the standard way to proceed next? "make spectest"? | ||
El_Che | m: say $~Regex | ||
camelia | rakudo-moar 9be3ca: OUTPUT«Slang.new(:grammar(Perl6::RegexGrammar), :actions(Perl6::RegexActions))» | ||
nine | masak: yeah you're probably right. I have forgotten what the reason for this feature is however | ||
El_Che | accoriding to the doc (under the ~ Twigil). There is a note "Note: Slangs are NYI in Rakudo." | 19:03 | |
nine | I know I came across it (and was astonished) during the glr | ||
El_Che | Tux has his own slang, therefor implemented? | ||
19:03
leat left
|
|||
El_Che | m: augment slang Regex {token backslash:std<\Y> { YY };} | 19:04 | |
camelia | rakudo-moar 9be3ca: OUTPUT«5===SORRY!5=== Error while compiling /tmp/W6erymh0U8augment not allowed without 'use MONKEY-TYPING'at /tmp/W6erymh0U8:1------> 3augment slang Regex7⏏5 {token backslash:std<\Y> { YY };} expecting any of: generic role» | ||
TimToady | there's no way to get a slang at the P6 level, but you can do it by twiddling internals | ||
El_Che | m: use MONKEY-TYPING; augment slang Regex {token backslash:std<\Y> { YY };} | ||
camelia | rakudo-moar 9be3ca: OUTPUT«===SORRY!===QAST::Block with cuid cuid_1_1450206257.09382 has not appeared» | ||
El_Che | TimToady: ok, I was juist ack'ing through the docs. So, I'll leave the Note in place | ||
TimToady | and it's likely to break someday if you directly access %*LANG | 19:05 | |
same goes for %*PRAGMAS, I suspect | |||
19:05
b7j0c joined
|
|||
El_Che | TimToady: thx | 19:05 | |
TimToady | these things should go with the current langauge, not the current dynamic scope | ||
*guage | 19:06 | ||
a lan gauge is something else... | |||
and why didn't Noah Webster fix the spelling of that one... | |||
El_Che | the urban dictionary has a funny quote: "I majored in Enlgish and speak two other langauges." | 19:08 | |
TimToady | surely that should be majered? | ||
El_Che | well, there is more than one way to say it :) | 19:09 | |
19:10
gblade_ left
19:12
FROGGS joined
19:13
labster joined
19:15
virtualsue left
19:17
muraiki joined
19:19
FreezerburnV joined
19:24
Peter_R joined
19:28
vendethiel joined
|
|||
nine | ZoffixW: yes, always make spectest | 19:28 | |
ZoffixW: TEST_JOBS=8 make spectest # is a lot faster | 19:29 | ||
ZoffixW | I'm guessing that makes the assumption there are 8 cores available? :) | ||
I think on this particular box, I only got 2 | 19:30 | ||
19:30
kyclark_ left,
FreezerburnV left
|
|||
nine | You can try with TEST_JOBS=4 as well. I guess it can't hurt unless you're very memory constrained | 19:30 | |
ZoffixW | Do I have to run plain "make" any time I make a change? | 19:31 | |
seems to be taking forever... | |||
19:31
FreezerburnV joined
|
|||
ZoffixW | 157 seconds | 19:32 | |
"Useless use of $compunit in sink context (line 35107)" | |||
heh.. dat line number :P | |||
nine | You probably need to make install after a change | ||
ZoffixW: that line number is actually correct. Have a look at gen/moar/m-CORE.setting | 19:33 | ||
ZoffixW | I'm afraid to :P | ||
nine | That file is almost all of rakudo's classes combined and ends up being the precompiled core | ||
19:34
zengargoyle left
19:35
zengargoyle joined
|
|||
[Coke] is glad that compiling the setting no longer takes hours. :) | 19:38 | ||
masak | hooray for Moore's L^W^Woptimizations! | 19:40 | |
[Coke] | .u pencil | 19:41 | |
yoleaux | U+270E LOWER RIGHT PENCIL [So] (✎) | ||
U+270F PENCIL [So] (✏) | |||
[Coke] | .u edit | ||
19:41
bpmedley left
|
|||
yoleaux | U+2E0E EDITORIAL CORONIS [Po] (⸎) | 19:41 | |
ZoffixW | How long does make spectest usually run for? | 19:42 | |
ZoffixW wonders if they should take a nap | |||
Skarsnik | forever! | ||
ZoffixW | damn | ||
bartolin_ | hmm, I get a build error for MoarVM (on FreeBSD witch clang): gist.github.com/usev6/86f025b89dd6d3e751b6 | ||
geekosaur | hm, yes, that looks like a bad idea | 19:44 | |
lizmat | looking at some spectest fallout, it looks like something with linenumbering has changed | ||
geekosaur | fileno is a macro in traditional stdio | ||
ilmari discvers there's a .christmas TLD, and that perl6.christmas is taken | |||
no, that one's free | |||
lizmat | t/spec/S24-testing/line-numbers.t fails all tests | ||
ilmari | but perl.christmas is taken | ||
ZoffixW | heh | 19:45 | |
These TLDs are such a money grab | |||
geekosaur | bartolin_, I think you want to ask in #moarvm, or just file a bug report | ||
ZoffixW | What are all those numbers at the bottom of the spectest run? | 19:46 | |
Skarsnik | should like this function must be renamed x) | ||
bartolin_ just found MoarVM issue #311 (build error already reported) | |||
lizmat | .tell jnthn something with line numbering has changed, is this intemtional? | ||
yoleaux | lizmat: I'll pass your message to jnthn. | ||
19:47
joe__ joined
|
|||
Skarsnik | bartolin_, try a version from one week ago, it probably work. The fileno stuff is recent I think | 19:48 | |
bartolin_ | Skarsnik: yes, it's from yesterday (commit 344113ce and maybe also 58b81ace) | 19:49 | |
bartolin_ runs daily spectests on that box ... | |||
[Coke] | lizmat: the line numbering is impacting spectests, pretty sure it's a known issue. I thought it was related to larry's changes. | ||
diakopter | lizmat: I thought timotimo was doing the annotation (line number) changes in a branch | 19:50 | |
timotimo | yes, i did | 19:51 | |
er. i hope i did! | |||
bartolin_ | in case someone wants to have a look at the build error, I'll happily provide shell access to that system | ||
lizmat | ok, just wanted to make sure it wasn't falling through the cracks | 19:52 | |
nine | lizmat: have you experienced the t/spec/S17-supply/throttle.t hangs? | 19:53 | |
timotimo | well, i'm convinced i have nothing to do with line number offness. so i'll not look into it now | ||
because i'm working on the line-based coverage tool thingie again | |||
lizmat | nine: not recently, but I have had a syntax.t hang again earlier today | 19:54 | |
geekosaur | bartolin_, Skarsnik, access to raw fileno was just added yesterday IIRC | ||
19:54
adhoc left
|
|||
nine | lizmat: I can easily reproduce it by having a TEST_JOBS=20 make spectest running while trying: perl6 -e 'my @a; @a[9] = 0; for 1..10 -> $n { say $n; (1..10).Supply.throttle( $n, { @a[$_] = 1 } ).wait; }' | 19:54 | |
Skarsnik | it's probably easy to fix with replacing fileno with like pfileno or something like this | ||
geekosaur | yep | 19:55 | |
Skarsnik | in the c part | ||
bartolin_ will try that | |||
nine | lizmat: when it hangs, every thread is waiting on a cond var in ConcBlockingQueue's shift except for thread #1 which is waiting for a ReentrantMutex | ||
19:55
adhoc joined
|
|||
lizmat | nine: doesn't sound nice | 19:57 | |
19:58
FreezerburnV left
|
|||
diakopter | dedlok! | 19:58 | |
nine | lizmat: futhermore, it happens because the { @a[$_] = 1 } is so fast. By slowing it down (like the next test does with the sleep rand or by adding a costly loop) the hangs disappear. | ||
ZoffixW | hm hm... I'm getting a whole bunch of failures, but I've no idea if they're due to my change or not anyway, so I may be wasiting my time running the spectest | 19:59 | |
nine | ZoffixW: please gist those failures. I can tell you if they're to be expected | ||
ZoffixW | And I need to do it on a faster box lol :D | 20:00 | |
nine, so far it just says "Failed 13/13 subtests" without any details... I'm guessing those will be shown at the end? | |||
lizmat | gist.github.com/lizmat/af2e1c6c3d27c7318410 # my current spectest status | ||
hoelzro | jnthn, stmuk: interesting I noticed doing a strace on that UDP test; I see calls to socket() to establish a UDP socket, but not to bind() | ||
s/(interesting)/$1 thing/ | |||
nine | ZoffixW: if you have a throttle.t test running (or rather waiting), kill it. It won't finish | 20:01 | |
geekosaur | hoelzro, bind() is not especially useful on UDP | ||
nine | lizmat: same sorry state here :/ | ||
hoelzro | geekosaur: how does a UDP server say to the OS which port it wants to receive traffic on? | ||
jnthn | d^_^b: Glad you enjoyed the post. :) | 20:02 | |
yoleaux | 19:46Z <lizmat> jnthn: something with line numbering has changed, is this intemtional? | ||
geekosaur | ... sorry, I'm having A Day; I was thinking connect() | ||
sogh | |||
jnthn | lizmat: Not intentional | ||
lizmat: But afaik it's TimToady's ongoing sink work that did it | |||
20:02
joe__ left
|
|||
lizmat | ok, if it's ongoing, I guess we should ignore the errors now | 20:03 | |
nine | jnthn: I dug a bit into the throttle.t hangs: irclog.perlgeek.de/perl6/2015-12-15#i_11722674 and following | ||
lizmat | ? | ||
20:03
darutoko left
|
|||
hoelzro | ah, I didn't strace -f | 20:04 | |
lizmat | m: a => 1 cmp a => 0 # related to #126926 | ||
camelia | ( no output ) | ||
lizmat | m: say a => 1 cmp a => 0 # related to #126926 | 20:05 | |
camelia | rakudo-moar 9be3ca: OUTPUT«Unexpected named parameter 'a' passed in block <unit> at /tmp/j40bTvaBPh:1» | ||
lizmat | m: say 3 => 1 cmp 3 => 0 # related to #126926 | ||
camelia | rakudo-moar 9be3ca: OUTPUT«3 => Less => 0» | ||
20:07
lucasb joined
|
|||
ZoffixW | nine, how do I kill it? Just CTRL+C? | 20:07 | |
nine | ZoffixW: I usually find the process id using "ps xaf" and then use kill to kill it | 20:08 | |
dalek | kudo/nom: d23a73d | jnthn++ | src/Perl6/World.nqp: Don't confuse undef variables with constants. This is what was keeping `my ($a, \b) = 1, 2; say b` from producing the expected output (2). |
||
kudo/nom: 205f30b | jnthn++ | src/core/control.pm: nextsame and nextwith shouldn't recont. We leave that to the semantics of the routine, which may have an `is rw` on it. |
|||
ast: 2718268 | jnthn++ | S06-advanced/wrap.t: Correct some busted tests; unfudge. |
|||
jnthn | oops, commit fail | ||
ZoffixW | oh, we can mix $a and \b now? | 20:09 | |
jnthn | Should have read `my ($a, \b) = 1, 2` | ||
shit! | |||
Should have read `my ($a, \b) := 1, 2` | |||
Only if you use := | |||
jnthn accidentally fixed RT #122259 as a result of looking into this... | |||
ZoffixW | Ah | ||
jnthn++ | |||
m: my ( $h, \Δ, $c_max ) := (1, 4, 5); say $h, Δ, $c_max | 20:11 | ||
camelia | rakudo-moar 9be3ca: OUTPUT«1(Any)5» | ||
ZoffixW | m: my ( $h, \Δ, $c_max ) = (1, 4, 5); say $h, Δ, $c_max | ||
camelia | rakudo-moar 9be3ca: OUTPUT«1(Any)5» | ||
jnthn | The first of those now works | ||
I want to make the second of those give an error, to avoid confusion | 20:12 | ||
ZoffixW | Make it work :D | ||
jnthn | It can't | ||
Sanely | |||
ZoffixW | nine, here are my spectest results: gist.github.com/zoffixznet/d57da99209ddcd1bd3aa | 20:13 | |
jnthn bbl | |||
Woodi | hey, do you know ? it's just two days until Perl6 release ! and it's late here so practically just 1 ! | ||
ZoffixW | Compared to lizmat's, my syntax and interval pass, but wait fails | 20:14 | |
lizmat | Woodi: pretty sure it won't be in two days | ||
nine | ZoffixW: all known, you're fine | ||
ZoffixW | \o/ | ||
Woodi | lizmat: damn ;) | ||
lizmat | it *will* be before Chtristmas | ||
pretty sure of that | |||
ZoffixW | nine, PR sent: github.com/rakudo/rakudo/pull/634 | 20:16 | |
nine wouldn't mind having a month or two more | |||
ZoffixW | nine, what other fruits are there? | ||
lucasb | so, {moar,nqp,rakudo}-2015.12 will ship as usual? but will also ship a perl-6.c.tar.gz? | ||
will it include rakudo star modules and roast test too? | 20:17 | ||
nine | ZoffixW: that fails if $.version-matcher is 0 | ||
ZoffixW | Ah right :) lol, I tried '0' but not 0 >_< | 20:18 | |
Fixin' | |||
nine, k: github.com/rakudo/rakudo/pull/634/files | 20:25 | ||
dalek | kudo/nom: 69e18e8 | (Zoffix Znet)++ | src/core/CompUnit/DependencySpecification.pm: CompUnit::DependencySpecification::Str doesn't have to add the :ver, :api :auth if it's True anyway |
20:26 | |
kudo/nom: 95e7ac6 | niner++ | src/core/CompUnit/DependencySpecification.pm: Merge pull request #634 from zoffixznet/fix-true-ver CompUnit::DependencySpecification::Str doesn't have to add the :ver, :api, and :auth if it's True anyway |
|||
ZoffixW | weee \o/ | 20:27 | |
nine | ZoffixW++ # fixing things | ||
ZoffixW | nine, what other LHF are there? | ||
nine | ZoffixW: panda has quite a few. For example the "Use of uninitialized value" warning when running perl6 bootstrap.pl | ||
ZoffixW | Oh, right, I remember that. Gonna take a look | ||
nine | Or that it creates directories like '(HANDLED) Failed to open file' | 20:28 | |
ZoffixW | But I though that was a feature, for the lulz! :D | ||
nine | Or that it prints the "Please make sure inst#/whatever" is in your path | ||
like: gist.github.com/niner/a8441e1a4ee05a672eca | 20:29 | ||
ZoffixW laughs | |||
lucasb | nine: can you merge github.com/tadzik/panda/pull/264 ? I think it's the easiest fix that could possibly work | ||
ZoffixW | It's a Christmas tree! :D | ||
20:29
cygx joined
|
|||
nine | They actually seem to be related. Both come from panda using repo specs (the "inst#/..." strings) as path names | 20:29 | |
dalek | : 6b60df7 | (Carl Masak)++ | misc/perl6advent-2015/schedule: trade places with diakopter |
||
cygx | cf github.com/rakudo/rakudo/pull/633 and github.com/tadzik/panda/pull/264 re the '(HANDLED) Failed to open file' directories | 20:30 | |
haven't had a chance to test it yet | |||
dalek | kudo/nom: 07af2d3 | TimToady++ | src/Perl6/Actions.nqp: wantall does no good before you've attached kids (also make EXPR fetch sym and O correctly for non-infixes) |
20:31 | |
nine | Then it's even lower hanging fruit. Just a good testing needed :) | 20:32 | |
ZoffixW | :D | ||
hoelzro | I think I found the UDP problem | 20:33 | |
ZoffixW | sweet | ||
hoelzro | github.com/MoarVM/MoarVM/blob/mast...tudp.c#L40 | 20:34 | |
shouldn't that be nread >= 0? | |||
on Linux, it's valid for recvmsg() to return 0 | 20:36 | ||
docs.libuv.org/en/v1.x/udp.html seems consistent | |||
geekosaur | it should be valid anywhere | ||
because presence of a packet is significant for UDP | 20:37 | ||
0-length packets are entirely valid and should be reported | |||
nine | hoelzro++ # nice catch! | ||
geekosaur | (it may be difficult to fit this into a stream-based file abstraction) | ||
hoelzro | the other troubling aspect of this is the error, and how we didn't really have any data on what was really going on | 20:38 | |
20:38
Rotwang joined
|
|||
Rotwang | Hi | 20:39 | |
ZoffixW | hey | ||
Rotwang | is perl6 close to being released? | ||
ZoffixW | Rotwang, the language, yes. | ||
Rotwang, this Christmas | |||
El_Che | or before :) | ||
Rotwang | ;O | ||
cool | 20:40 | ||
ZoffixW | indeed :) | ||
masak | not just cool, but frosty! :D | ||
hoelzro | nine: btw, I'm closing to finding the commit that unbreaks that precomp thing | ||
Rotwang | any good resources aside of advent calendar for learning perl6? | 20:41 | |
hoelzro | Rotwang: perl6intro.com/ looks pretty nice | 20:43 | |
also, learnxinyminutes.com/docs/perl6/ | |||
lucasb | fwiw, reading libuv's ChangeLog, you can see they fixed some UDP bugs, but idk if it's related to these bugs in moar | 20:44 | |
I mean, between libuv 1.0 (which is what moar uses) and the current 1.8.0 | |||
El_Che | Rotwang: if you know perl 5, I found the regular doc (tutorials + class info) get you started pretty fast: doc.perl6.org/language.html. However I found jnthn's presentation a very good start: www.jnthn.net/papers/2015-spw-perl6-course.pdf | 20:45 | |
ZoffixW | m: my $fac = [*] (1..*+0)(10000); say $fac.chars; my $now = now; $fac ~~ s/0+$//; say [$fac.chars, now - $now] | 20:46 | |
camelia | rakudo-moar 95e7ac: OUTPUT«Useless use of ".." in expression "1..*+" in sink context- QAST::Op(call &infix:<..>) .. - QAST::Want :BY<EXPR/list WANTED unwanted> :WANTED 1 - QAST::WVal(Int)  - Ii - QAST::IVal(1)  - QAST::Op(call) .. - QAST::Op(p6ca…» | ||
ZoffixW | ah right.. | 20:47 | |
m: my $fac = [*] 1..10000; say $fac.chars; my $now = now; $fac ~~ s/0+$//; say [$fac.chars, now - $now] | |||
Rotwang | El_Che: hoelzro: I had a short "stints" with perl6 before, so doc.perl6.org/language.html should be good enough (at least for now), thanks | ||
camelia | rakudo-moar 95e7ac: OUTPUT«35660[33161 2.3136354]» | ||
ZoffixW | Interesting... on my box, it takes 17 seconds to run, with the s/// portion taking 10 seconds | 20:48 | |
I wonder how much of that is my box being crappy and how much it is my perl6 being too old :P | |||
Skarsnik | s/// is slow as hell when I tested a bit string once x) | ||
ZoffixW | That's terrible :( | 20:49 | |
m: my $x = '0' x 1000000000; say now - INIT now; $x ~~ s/0+$//; say now - INIT now; | 20:50 | ||
camelia | rakudo-moar 95e7ac: OUTPUT«0.0032353Memory allocation failed; could not allocate 4000000000 bytes» | ||
ZoffixW | 0_0 | ||
m: say 4000000000 / 1024 / 1024 | 20:51 | ||
camelia | rakudo-moar 95e7ac: OUTPUT«3814.697266» | ||
Skarsnik | I tried pruning html content with it. it was not a good idea x) | ||
ZoffixW | wtf 3814GB of ram? | ||
*3.8 | |||
m: my $x = '0' x 2000000000; say now - INIT now; $x ~~ s/0+$//; say now - INIT now; | |||
camelia | rakudo-moar 07af2d: OUTPUT«repeat count > 1073741824 arbitrarily unsupported... in block <unit> at /tmp/z0jHdIafVL:1» | ||
ZoffixW | m: my $x = '0' x 500000000; say now - INIT now; $x ~~ s/0+$//; say now - INIT now; | ||
camelia | rakudo-moar 07af2d: OUTPUT«0.0030152Memory allocation failed; could not allocate 2000000000 bytes» | ||
ZoffixW | m: say 500000000 / 1024 / 1024 | ||
camelia | rakudo-moar 07af2d: OUTPUT«476.837158» | ||
ZoffixW | I see. I'm just using really big numbers from the getgo | 20:52 | |
ZoffixW & commute | |||
20:52
ZoffixW left,
kyclark_ joined
|
|||
[Coke] | (release) will be before Christmas is -over-. :) | 20:52 | |
Skarsnik | how the hell a 1GB str make it alloc 3.5GB x) | 20:53 | |
masak | [Coke]: I read that as "the release will be the best Christmas -ever-." :P | ||
TimToady | m: 1 orelse 2 orelse 3 # dunno whether I broke this or someone else did | ||
camelia | rakudo-moar 07af2d: OUTPUT«===SORRY!===Operation 'defor' needs 2 operands» | ||
masak | TimToady: want me to rakudobug it? | 20:54 | |
TimToady | it's blowing up tests already, so no | ||
masak | ah. | ||
[Coke] | lucasb: there will be a compiler release called 2015.12 that will implement the language spec of v6.c | ||
TimToady | wasn't my last patch, fershure | ||
20:55
dunkaist joined,
spider-mario joined
|
|||
lucasb | [Coke]: ok, thanks. | 20:56 | |
21:00
Rotwang left
|
|||
RabidGravy | lawks, I've really gone rambling with this advent post. I may have to just stop and write a concluding paragraph and post at midnight irrespective of whether I think I've finished | 21:00 | |
stmuk | Christmas is Jan 7th right? :) | 21:01 | |
TimToady | shh, or everyone will go on vacation | 21:02 | |
and it's the 5th, I think | 21:03 | ||
nine | Skarsnik: 1GB string or a string with 1 billion characters? | 21:04 | |
El_Che | stmuk: no sir. No Christmas relativism allowed. And if any -> winter solstice in less than a week :) | ||
21:05
Guest2627 left
|
|||
sno | I took a HP to niederrhein.pm if anyone wants to see and play with cross compiled perl6 (luckily noone wanted today ^^), because: | 21:05 | |
root@homepilot:~# perl6 --help | |||
Unhandled exception: java.lang.RuntimeException: Missing or wrong version of dependency 'gen/jvm/stage2/QRegex.nqp' | |||
in | |||
in load_module | |||
gfldex | El_Che: but then, Any is undefined | 21:06 | |
geekosaur | that's not relativism, it's just orthodoxy >.> | ||
sno | since it worked in a clean build (and that's one likely an incremental one), seems there is a problem on incremental builds | 21:07 | |
patrickz | Hey, does libmoar.so need executable stack? My provider has it turned off which prevents moar to work because the lib has the exec stack bit set. | ||
provider = remote server not administered by me. | 21:08 | ||
RabidGravy | gfldex, do you have the direct link to your advent post on traits to hand? | 21:09 | |
21:09
kaare_ left
|
|||
gfldex | perl6advent.wordpress.com/2015/12/...d-methods/ | 21:09 | |
El_Che | gfldex: I saw it. My 5 minutes of internet fame :) | 21:10 | |
gfldex | RabidGravy: if you have to, feel free to steal the html | ||
El_Che | gfldex: it could be put in a module maybe? | ||
21:10
geraud joined
|
|||
gfldex | El_Che: if you want to, you can do that. Maybe add a trait for subs too. | 21:10 | |
RabidGravy | gfldex, nah I'm just being slack, I mentioned traits in the post I'm doing and want to cite your post rather than explain further ;-) | 21:11 | |
stmuk | hoelzro: I tried "nread >= 0" and the test fails even more dramatically | 21:12 | |
El_Che | gfldex: thx | ||
zengargoyle | ½ of panda's «(HANDLED …» directory creation thing is Shell::Command::mkpath getting passed a .IO object which it later .split causing the .IO object to be .open causing the Failure which is then .split on \/\\ and made into a directory tree. | 21:13 | |
RabidGravy | my post was supposed to be about how I ended up writing more modules to help me write the modules I wanted to make than the modules I wanted to make ;-) | ||
it's taken on a life of its own now | 21:14 | ||
stmuk wonders how high the stack of empty Stellas is :) | |||
gfldex | i'm toying with a concurrent pod2html right now and i did _not_ step on any rakudobugs so far. #perl6++ | ||
geekosaur | yak shaving in p6 | ||
zengargoyle | either pass a Str to mkpath or change mkpath to .Str incoming arguments... | ||
RabidGravy | stmuk, I'm on the Afligem now, self limiting | 21:15 | |
zengargoyle | other ½ is the inst# in the path. | ||
21:18
regreg left
|
|||
dalek | c/zero-arg-funcs: 46b1ecb | (Brock Wilcox)++ | doc/Language/5to6-perlfunc.pod: Describe the new restrictions on some zero-argument funcs |
21:19 | |
21:21
bjz left
21:22
hankache joined
21:24
Guest0101 left
|
|||
[Coke] | (incremental builds) do a make install | 21:25 | |
21:33
gtodd1 left
|
|||
awwaiid | I've noticed a lot of "Use of uninitialized value of type Str in string context | 21:34 | |
Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in code at /home/awwaiid/tlt/projects/perl6/lang/doc/lib/Perl6/Documentable.pm:30" lately -- is this new? | |||
gfldex | awwaiid: try git checkout 3b4964b6d46e260947f54540ec2d20d64dcd7ffd | 21:35 | |
TimToady++ is operating on the open heart right niw | |||
21:35
zakharyas left
21:36
bjz joined
|
|||
awwaiid | ahh, good to know. thanks gfldex | 21:37 | |
ok. maybe I shouldn't be running off of nom nom nom | 21:38 | ||
hoelzro | stmuk: I got failures because the promise is kept twice | 21:39 | |
because we get a packet with 26 bytes in it, then a packet with 0 | |||
nine: 59f7cb90f5d626f5e5bc0237e1ddff44e8c127eb seems to be the commit that makes or breaks that precomp issue | 21:40 | ||
21:41
bjz left
|
|||
nine | hoelzro: well the commit at least has got something to do with module loading | 21:41 | |
hoelzro | true | 21:42 | |
I bet if we backported that change to an earlier rakudo+moarvm, it would mysteriously be broken =/ | |||
[Coke] | TimToady: build now warns at "src/core/CompUnit/RepositoryRegistry.pm" line 204 of 308 (... useless use of...) | 21:43 | |
nine | hoelzro: I fear so :/ | ||
dalek | kudo/nom: 1761df4 | TimToady++ | src/Perl6/Actions.nqp: pay attention to resultchild fixes: say "OH HAI" if try 0 eq 0 |
21:46 | |
jnthn | hoelzro: Oddness. I wonder where the extra empty packet comes from... | ||
21:46
hankache left
|
|||
TimToady | [Coke]: known, benign, will fix | 21:46 | |
hoelzro | I wonder if it's something to do with closing the socket? | 21:47 | |
masak | TimToady: \o/ | ||
masak rebuilds | |||
21:47
kyclark_ left
|
|||
hoelzro | sub run(*@args ($, *@)) { ... } # the ($, *@) constraint on @args, what's that called? | 21:48 | |
jnthn | sub-signature | ||
hoelzro | thanks jnthn | 21:49 | |
that's what I thought, but I've seen it referred to as "nested signature" | |||
masak | I think it's called both | ||
21:49
kyclark_ joined
21:50
xfix left
|
|||
awwaiid | gfldex: thank you, that revision is working much better for me | 21:51 | |
jnthn | stmuk++ and hoelzro++ # looking into the UDP issue | 21:52 | |
21:56
snarkyboojum joined
21:58
kyclark_ left,
prammer left
|
|||
nine | t/spec/S10-packages/precompilation.rakudo.moar really only fails in the harness, even if it's the only file in a make localtest | 21:59 | |
WTH? | |||
TimToady | jnthn: did you do anything that would cause EXPR to suddenly start EXPR parsing orelse as a list operator? before, it was forced to left (despite having :prec<list> declared), so defor would only ever get two args | 22:00 | |
m: 1 orelse 2 orelse 3 | |||
hoelzro | nine: does it have to do with @*INC setup? | ||
camelia | rakudo-moar 1761df: OUTPUT«===SORRY!===Operation 'defor' needs 2 operands» | ||
TimToady | that now shows up in actions EXPR with 3 args | ||
I don't think this one's my fault... | |||
mind, I think it's good that EXPR is now paying attention to list assoc, but the downstream can't handle it here | 22:01 | ||
22:01
Rotwang joined
22:02
Rotwang left,
Rotwang joined,
rindolf left
|
|||
b2gills | m: say sort (1,2,3).pick(*) X=> (1,2,3).pick(*) # TimToady: pairs do sort on key then on value | 22:02 | |
camelia | rakudo-moar 1761df: OUTPUT«(1 => 1 1 => 2 1 => 3 2 => 1 2 => 2 2 => 3 3 => 1 3 => 2 3 => 3)» | ||
timotimo | Zoffix: the reason why your strings were allocating that much space is because NFG forces us to have 4 bytes per codepoint. if you have a whole lot of data, might be better off using Buf/Blob? | 22:04 | |
Rotwang | which editor do you use for p6? vim only? | ||
hoelzro uses Vim | |||
Zoffix | timotimo, I don't mind 4 bytes per codepoint :) (that code was just me playing around and not part of a program) | ||
Skarsnik | no way to have trait on the Str instead? | 22:05 | |
Rotwang many sad, I know vim is cool, but there are editors out there that can actually edit text | |||
Skarsnik | atom | ||
I use Kate ^^ | |||
timotimo | Zoffix: all right | ||
stmuk | oh I see the 2nd sendmsg has =0 at the end not 26 | ||
oh no it's resumed =26 | 22:06 | ||
22:06
skids left
|
|||
nine | # Cannot find method 'run_alt' | 22:07 | |
Skarsnik | hm, I wonder if NC should be patched to allow my $p is explicity-managed; | ||
nine | That's the reason for precompilation.rakudo.moar failing ^^^ | ||
Zoffix | SysInfo: Linux 3.5.0-11-generic | Dual Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz 1600.000 MHz | Mem: 1531/16550M [||||||||||] | Diskspace: 1398G Free: 68G | Bogomips: 27280.9 | Screen Res: 2560x1440 | Procs: 146 | | Up: upy 11:15,w 1d user,h loadm | eth2: In: 35.88M Out: 8.39M | ||
timotimo, I have plenty of RAM to go around :) | |||
22:07
dunkaist left
|
|||
Skarsnik | 16GB? x) | 22:07 | |
Zoffix | (and yes, it took me that long to figure out which xchat command showed box info lol) | 22:08 | |
Skarsnik, yeah | |||
nine | I don't have the slightest idea how that can be connected to the test harness | ||
[Coke] | TimToady++, danke | ||
22:08
sno left
|
|||
Skarsnik | I should buy extra 8GB ram to run all my vm at the same time x) | 22:08 | |
TimToady | m: say (64 + *).chr; | ||
camelia | rakudo-moar 1761df: OUTPUT«WhateverCode.new» | ||
TimToady | looks like we fixed that one already | ||
hoelzro | is the JVM build currently working? I get an NPE during make install | 22:09 | |
timotimo | Zoffix: still, i'm worried people will have trouble working with quite big files (an apache access log, for example?) and getting that 4x size increase for strings ... | ||
[Coke] | last I tried ( a week ago) it built but didn't install | ||
hoelzro | =/ | ||
[Coke] | so you could run it out of ./perl6-j but not ./install/bin/perl6-j | ||
(and then it had hanging tests, so I stopped ever building it daily) | 22:10 | ||
*even | |||
j: 3.say | |||
camelia | rakudo-jvm 6c0f93: OUTPUT«3» | ||
TimToady | m: say [*] (1..*+0)($_) for ^10 | ||
camelia | rakudo-moar 1761df: OUTPUT«112624120720504040320362880» | ||
TimToady | and that one | ||
nine | timotimo: I really really hope people won't read such log files all into memory for processing. We do have good tools now for making line by line processing painless | ||
[Coke] | ^^ Date: Sat Dec 5 16:10:58 2015 | 22:11 | |
timotimo | nine: aye, we do. but people be stubborn :) | ||
El_Che | Rotwang: perl6advent.wordpress.com/2015/12/...r-support/ | ||
timotimo | and they'll be convinced perl6 sucks!!!!kkk | ||
god forbid they keep around match objects ... those hang on to the original string :S | |||
[Coke] | * gonnna * | ||
TimToady | well, it does suck. it just sucks less than most other things | ||
stmuk | hoelzro: is your 0 in a sendmsg or recvmsg? | 22:12 | |
El_Che | nine: slurp is very tempting | ||
hoelzro | stmuk: neither =/ | ||
Zoffix | m: say [*] (1..*+0)(1000) | ||
camelia | rakudo-moar 1761df: OUTPUT«4023872600770937735437024339230039857193748642107146325437999104299385123986290205920442084869694048004799886101971960586316668729948085589013238296699445909974245040870737599188236277271887325197795059509952761208749754624970436014182780946464962910563938…» | ||
Zoffix | TimToady++ # fixing things | ||
nine | El_Che: .lines auto-chomps | ||
hoelzro | I have a sendmsg that returns 26, a recvmsg that returns 26s, and a recvmsg that gets EINTR | ||
El_Che | nine: I rewrote my p6-work-in-progress-program a few time because I hit the memory limit of my VM | 22:13 | |
timotimo | i can imagine that | ||
dalek | c: 46b1ecb | (Brock Wilcox)++ | doc/Language/5to6-perlfunc.pod: Describe the new restrictions on some zero-argument funcs |
22:14 | |
c: 77518c1 | (Zoffix Znet)++ | doc/Language/5to6-perlfunc.pod: Merge pull request #248 from perl6/zero-arg-funcs Describe the new restrictions on some zero-argument funcs |
|||
El_Che | importing 500 MB ldif files to make diffs and make sure the data is consistent | ||
Rotwang | atom looks good, thanks | 22:15 | |
22:15
b7j0c left
|
|||
Skarsnik | Rotwang, you will need to not use the default p6 syntax coloration/tools, there is a advent post about that xà | 22:16 | |
El_Che | Skarsnik: I linked to that one :) | ||
nine | hoelzro: indeed! It seems to be the PERL6LIB=lib,. | 22:17 | |
22:18
molaf left
|
|||
Skarsnik | timotimo, could str be a lighter alternative? or it's just totaly something else | 22:18 | |
timotimo | no | 22:19 | |
Str is just an object that has a str boxed inside it | |||
both share the whole NFG thing | |||
22:19
cygx left
|
|||
nine | hoelzro: PERL6LIB=lib seems to be enough to trigger it, while perl6 -Ilib doesn't, which is the reason why my prove6 alias was not enough | 22:21 | |
TimToady | m: p6 'given a => 1 { when * eqv a => 2 { say "a => 2" }; when * eqv a => 1 { say "a => 1" }; default { say "what now?" } }' | ||
camelia | rakudo-moar 1761df: OUTPUT«5===SORRY!5=== Error while compiling /tmp/BSD87C49OvUndeclared routine: p6 used at line 1» | ||
TimToady | a => 1 | ||
hoelzro | nine: interesting | 22:22 | |
TimToady | m: given a => 1 { when * eqv a => 2 { say "a => 2" }; when * eqv a => 1 { say "a => 1" }; default { say "what now?" } } | ||
camelia | rakudo-moar 1761df: OUTPUT«a => 1» | ||
TimToady | looks like it fixed that one too | ||
22:22
muraiki left
|
|||
TimToady is glad when multiple bugs turn out to be the same bug | 22:22 | ||
diakopter | someday all bugs will be the same bug | 22:23 | |
nine | Well, I'm gonna leave it be for today. Good night! | ||
masak | 'night, nine | ||
'night, #perl6 | |||
Zoffix | night | ||
hoelzro | night nine | 22:24 | |
night masak | |||
22:26
lucasb left
|
|||
timotimo | gnite nine :) | 22:26 | |
gnite masak | 22:27 | ||
22:28
snarkyboojum_ joined
22:29
espadrine joined
22:31
zengargo1le joined,
zengargoyle left
|
|||
dalek | kudo/nom: 5bd6b98 | TimToady++ | src/Perl6/Actions.nqp: initializers need to be wanted harder fixes: my Int constant $default_stream_read_len = 2 * 1024; |
22:33 | |
timotimo | ... "my Int constant"? i didn't know that's valid syntax? | ||
22:33
snarkyboojum_ left
|
|||
dalek | blets: 57447dc | (Herbert Breunung)++ | docs/appendix- (2 files): lines doesnt work on bare file names |
22:34 | |
Zoffix | m: say "This box is {157/55.220} times faster than my other box" | ||
camelia | rakudo-moar 1761df: OUTPUT«This box is 2.843173 times faster than my other box» | ||
Zoffix | rakudo parse stage took just 55 seconds | 22:35 | |
timotimo | "just" | ||
Zoffix | Compared to 157 seconds :) | ||
timotimo | oh lord | ||
Zoffix | That means... | ||
timotimo | it'd be nice if someone could sponsor a box for you that's another 3x faster ... | 22:36 | |
Zoffix | m: say "It'll take spectest to finish in {45/2.84} minutes instead of 45" | ||
camelia | rakudo-moar 1761df: OUTPUT«It'll take spectest to finish in 15.845070 minutes instead of 45» | ||
22:36
FreezerburnV joined
|
|||
timotimo | you've done such good work in the past | 22:36 | |
nine | hoelzro: PERL6LIB=lib perl6 --ll-exception -e 'use lib "t/spec/packages"; for <C A B> { my $comp-unit = $*REPO.need(CompUnit::DependencySpecification.new(:short-name("Example::$_"))); say $comp-unit.precompiled; };' | ||
timotimo | sadly, i can't just snap my fingers and it'll happen :) | ||
hoelzro | nine: I thought you were going to bed? ;) | ||
nine | While brushing my teeth I realized that it's PERL6LIB because that gets inherited by the test program run by precompilation.t ^^^ | 22:37 | |
And indeed, that's the easiest way to reproduce | |||
hoelzro | ahhhhh | ||
nice catch | |||
! | 22:38 | ||
22:38
lucasb joined
|
|||
nine | So it's confirmed: I spent the whole of yesterday's evening chasing one bug. I just didn't realize that both issues were the same :) | 22:38 | |
But at least I've now got an easy way to reproduce and with this I can sleep better :) | 22:39 | ||
really off now... | |||
Zoffix | \o :) | ||
lucasb | m: my Int constant x = 'abc'; say x.perl | ||
camelia | rakudo-moar 1761df: OUTPUT«"abc"» | ||
Skarsnik | what | ||
Zoffix | m: my Int constant x = 'abc'; say x.WHAT | 22:42 | |
camelia | rakudo-moar 1761df: OUTPUT«(Str)» | ||
Skarsnik | Totaly Int x) | ||
Zoffix | :D | ||
22:42
cpage_ left
|
|||
timotimo | constants and typechecks aren't so good. | 22:42 | |
geekosaur | yeh, I think something like that was already rakudobugged | 22:43 | |
lucasb | at least it can be used as code documentation | ||
22:43
zengargo1le is now known as zengargoyle
|
|||
Zoffix | hah, well, actually on this box the spectest took just 5 minutes instead of the 45 ± 0–10 minutes before I noticed the throttle one froze :0 | 22:44 | |
twice as many cores and I believe they're nearly twice as speedier than my other box too :) | |||
timotimo | mhh | ||
22:45
Zoffix left
22:46
MadcapJake joined
|
|||
Skarsnik | why my cpu is tagged 3.4gh and windows says 3.8ghz, it's weird x) | 22:46 | |
22:47
sno joined
|
|||
ilmari | modern CPUs can burst individual cores to higher than the rated speed, if the total package power and thermal budget allows | 22:47 | |
s/rated/nominal/ | |||
timotimo | right | 22:48 | |
usually when only a single core is busy with something | |||
ilmari | according to powertop my 2GHz Core i7 can boost to 2.6GHz | 22:51 | |
dj_goku | boost == overclock! | ||
dalek | kudo/nom: 8decbf2 | TimToady++ | src/Perl6/Actions.nqp: correctly propagate known sink to while block in re-speeds up: loop (my int $i; $i < 10000000; $i++) {}; say $i my int $i = 0; $i++ while $i < 10_000_000; say $i; |
22:52 | |
jnthn | 'night, #perl6 | 22:56 | |
TimToady | jnthn: did you see the note above? | ||
jnthn | TimToady: Missed it, fighting with a stupid airline booking site :/ | 22:57 | |
jnthn looks | |||
TimToady | about orelse and defor | ||
timotimo also missed it | |||
jnthn | TimToady: Can't think of anything I'd have done like that, no | 22:58 | |
TimToady | it's like EXPR started working right... | ||
oh well, maybe I can look at it later | |||
jnthn | TimToady: According to git log, the last thing I did with EXPR (which matches my own memory) is adding the missing non-assoc check | ||
So ++$a++ is an error | |||
TimToady | don't really wanna change list assocs back to left assoc | ||
jnthn | That was in October | 22:59 | |
TimToady | this is something since the 7th | ||
jnthn | Dec? | ||
diakopter | jnthn: did you know about jetairfly.com | ||
TimToady | maybe it's something I did, but I dunno how | ||
okay, go to sleep now | |||
jnthn | None of my patches to Grammar.nqp in the last days are anywhere near it either | 23:00 | |
So yeah, innocent your honor ;) | |||
Skarsnik | Here goes nothing | ||
jnthn | diakopter: Well, it doesn't seem to think Prague exists, so... :P | 23:01 | |
dalek | Heuristic branch merge: pushed 22 commits to DBIish by Skarsnik | ||
jnthn | 'night o/ | ||
Skarsnik | Not big ass message x) | 23:02 | |
Good night, here :) | 23:03 | ||
23:04
Skarsnik left
23:06
kid51 joined
|
|||
TimToady | obligatory nap & | 23:06 | |
23:08
jme` left
23:09
cpage_ joined
|
|||
diakopter | jnthn: yeah it's a small belgian airline. | 23:10 | |
but they have flights from Miami to Brussels for ... 140 euros | |||
jnthn: hopefull you use google flights | 23:11 | ||
23:15
virtualsue joined
23:17
lucasb left
23:18
_nadim left
23:19
virtualsue left,
jme` joined
23:26
FROGGS left
23:27
labster left
23:29
vendethiel left
23:31
espadrine left
23:32
smls_ left
|
|||
autarch | who controls the perl6 subreddit? | 23:34 | |
I'd greatly appreciate whoever does changing the link colors to something more like standard - every time I look at it I have no clue which links I've followed and which I haven't | 23:35 | ||
timotimo | autarch: i can see if i have any way to do that | 23:37 | |
23:37
regreg joined
|
|||
timotimo | oh, so the problem isn't that they are too similar, it's that it isn't clear which one is which? | 23:37 | |
autarch | timotimo: exactly | ||
unfollowed links should always be blue - followed links should be something darker than unfollowed | 23:38 | ||
people who think that their site requires them to change this pattern are wrong | |||
I note that perl6.org has this backwards, followed links are _brighter_ than unfollowed :( | |||
or has perl6.org made them the same? also sinful | 23:39 | ||
yeah, they're the same :( | |||
23:39
spider-mario left
|
|||
autarch | I wonder if that's a bootstrap thing | 23:40 | |
AlexDaniel | autarch: I agree | 23:41 | |
AlexDaniel hates this as well. … And also has this problem on a couple of his websites (can't get my hands on it, dammit) | 23:42 | ||
23:42
FreezerburnV left
|
|||
timotimo | gist.github.com/timo/59896e1df0b1e559979c - this is the exact stylesheet used | 23:42 | |
go nuts | |||
RabidGravy | getting near to the time that I am going to have to finish the advent post | 23:45 | |
timotimo | yeah, midnight was three quarters of an hour ago :) | 23:46 | |
autarch | gist.github.com/autarch/b993686fd624fc3407f0 - that's the standard browser link colors | ||
timotimo | did you find all of the :visited ones? | ||
there's multiple ones, which suggests to me the whole .css wants to be rewritten :) | 23:47 | ||
autarch | gist.github.com/autarch/b993686fd624fc3407f0 - all fixed, I think | ||
timotimo | yeah, did we actually want to change the link colors in the header aka .title? | 23:48 | |
is that even what .title is about? | |||
autarch | I should make a flowchart for web design - "Are you consider changing link colors?" ... Yes -> "Don't do it" ... No -> "You are a good person" | ||
timotimo: yes, the title class is actually for each link on the page, not for the page title | 23:49 | ||
timotimo | oh! | ||
that's fair, then | |||
saved | 23:50 | ||
have a look, please | |||
23:50
konobi left
23:51
konobi joined
|
|||
RabidGravy | timotimo, I think UTC is fairer | 23:51 | |
23:51
konobi is now known as Guest28147
|
|||
timotimo | no idea what the site things | 23:53 | |
thinks | |||
23:53
zengargoyle left
|
|||
timotimo | anyway, the stats page says it's already the new day. which is good, because when each post is published on its own day, wordpress gets less confused | 23:53 | |
or confuses me less | |||
23:53
zengargoyle joined
|
|||
timotimo | anyway, RabidGravy++ for advent posting! :) | 23:53 | |
autarch | I just noticed that a site I maintained was using red for visited links ;) | 23:54 | |
timotimo: that's much better, thank you! | |||
timotimo | you're welcome | 23:56 | |
23:56
Psyche^_ joined
23:58
rurban left
|
|||
AlexDaniel | autarch: what if you don't like the default colors/styles ? | 23:58 | |
autarch | AlexDaniel: I was joking somewhat - really, as long as links are some blue and visited links are darker blue or purple, it's all good | 23:59 | |
and hovering on links should always do something | |||
23:59
lichtkind left
|