»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by masak on 12 May 2015. |
|||
00:00
[TuxCM] left
00:17
rindolf left
00:26
laouji joined
00:34
mprelude left
00:39
laouji left
00:40
laouji joined
00:44
llfourn joined,
laouji left
00:49
llfourn left,
laouji joined
|
|||
japhb | o/ | 00:52 | |
01:12
BenGoldberg left
01:13
BenGoldberg joined
01:20
vendethiel joined
01:36
BenGoldberg left,
Fleurety left,
ab5tract_ joined
01:37
ab5tract left,
zacts left,
zacts joined
01:38
ggoebel2 joined
01:40
ggoebel left,
cgfbee left,
Fleurety joined
01:41
cgfbee joined
|
|||
thou | ugexe: FYI: this works like I want it to. gist.github.com/softmoth/1da0f8e722e98c2363bf | 02:13 | |
02:13
noganex_ joined
|
|||
thou | ugexe: regarding tap/act, I still contend that you've got a race there. See commented-out .act() calls in this code ^; the note() calls for stderr and stdout will overwrite each other. | 02:14 | |
I have to use another channel to properly merge the lines. I believe your process code has the same issue. | 02:15 | ||
02:16
noganex left
|
|||
thou | erm, sorry, nevermind! I do think it's still a potential problem, but this one is due to my running multiple threads a the same time | 02:16 | |
I'd need to do some random sleeping in the act() closures to test my hunch | 02:17 | ||
jobs | |||
02:22
vendethiel left
02:43
thou left
02:45
llfourn joined,
rangerprice left
02:50
llfourn left
|
|||
ugexe | if i want the lines properly merged, i access stdout and stderr directly. i would not use $merge | 03:01 | |
but thats assuming im using one persons definition of proper | |||
03:02
kaare_ joined,
llfourn joined
|
|||
ugexe | your problem is because you are calling say/note whatever inside your tap/act | 03:05 | |
if multiple threads are printing out $*OUT, you will get what appears to be incorrectly merged lines | 03:07 | ||
if you are really trying to merge the output to the terminal, that is a different thing. a blog post that shows the general idea ugexe.com/create-a-perl6-terminal-progress-bar/ | 03:11 | ||
03:13
peteretep joined
|
|||
peteretep | homebrew wants to know if I want to install rakudo-star with pcre | 03:13 | |
ugexe | but you have to make choices. if you receive a line of text without a line break at the end, and then another process fires its own tap to print, what do you do? | ||
peteretep | Is there a quick overview of the implications of that choice? | ||
ugexe | zef::cli::statusbar puts a lock inside $*OUT's print method | 03:15 | |
03:23
llfourn left
03:27
aborazmeh left
03:30
rurban joined
03:33
lizmat left
03:43
laouji left
03:44
laouji joined
03:46
_itz joined,
prevost joined
03:49
_itz_ left
03:50
_itz left
03:51
_itz joined
03:52
thou joined
03:53
llfourn joined
03:55
TEttinger joined
04:02
_itz_ joined
04:04
_itz left
04:16
rurban left
04:54
[Sno] left
|
|||
TimToady | checking out breakfast at the Abba, then off to the Alhambra | 05:00 | |
we have one free ticket if anyone happens to be here and awake enough to leave 8:00 or so | 05:01 | ||
05:03
khw left
|
|||
ShimmerFairy | TimToady: how many more stops until you're home (or if not that, your next destination)? A quick look for Alhambra places at least two in Spain and California, so it's not like I could guess :) | 05:19 | |
05:36
emilbarton joined
|
|||
emilbarton | hi, why does $str.eval returns "method not found for invocant of class string"? | 05:36 | |
05:36
cdc_ is now known as cdc
|
|||
ShimmerFairy | it's spelled EVAL in Perl 6 now. so it'd be EVAL($str) or $str.EVAL :) | 05:39 | |
emilbarton | ok thanks | ||
05:40
emilbarton left
05:42
prevost left
05:52
cognominal joined
|
|||
TimToady | ShimmerFairy: "The" Alhambra is in Granada, Spain | 05:55 | |
ShimmerFairy | ah, I somehow missed the "the" there :) | ||
05:56
skids left
|
|||
ShimmerFairy | By the way, I think I'll be ready to push my val() and allomorphic types as a branch tonight :) . The only main issue is that my implementation of IntStr dies on bigints, and I'm not sure how to fix that. | 06:05 | |
(The only thing I can think of is a fallback Int attribute, and then reimplementing all of Int's methods in IntStr, but ick) | 06:06 | ||
06:09
lizmat joined
|
|||
ShimmerFairy | m: say "".Numeric # this is surprising, and feels wrong to me | 06:09 | |
camelia | rakudo-moar 5ba44f: OUTPUT«0» | ||
GLRelia | rakudo-moar 36ea47: OUTPUT«0» | ||
nine | ShimmerFairy: that's probably Perl 5 heritage | 06:12 | |
ShimmerFairy | nine: replacing .Numeric with a val() call in my code caught that in a test, and I'm quite OK with saying "but I don't see a number in that string" :) | 06:13 | |
(replacing the implementation of Str.Numeric, that is) | |||
dalek | kudo/glr: cb9b821 | FROGGS++ | t/01-sanity/19-say.t: remove test of say() that does not work with .gist, laben++ |
06:15 | |
kudo/glr: cf3b24c | timotimo++ | t/01-sanity/19-say.t: Revert "remove test of say() that does not work with .gist, laben++" Was supposed to be on the glr branch This reverts commit cb9b821b08095c6d4c1157085e7fc2084f2dd72d. |
|||
kudo/glr: 5ba44fc | hoelzro++ | tools/build/NQP_REVISION: Bump NQP_REVISION For close_stdin fix in MoarVM |
|||
kudo/glr: 78b8f29 | (Stefan Seifert)++ | tools/build/NQP_REVISION: Merge branch 'nom' into glr |
|||
ShimmerFairy | nine: I could see it might've been some sort of guarantee for ?$string === ?$string.Numeric.Stringy , back when "0" was False :) | ||
nine | Darn...really have to leave for the office now | 06:16 | |
06:28
FROGGS joined
06:30
thou left
06:32
[Sno] joined
06:37
[TuxCM] joined
06:49
aborazmeh joined,
aborazmeh left,
aborazmeh joined
06:50
xinming joined
06:52
rurban joined
06:54
xinming_ left
06:58
ChoHag joined
|
|||
masak | morning, #perl6 | 07:05 | |
ShimmerFairy | o/ | 07:07 | |
07:07
itz joined
07:10
laben joined
|
|||
laben | hello #perl6 | 07:13 | |
07:13
abraxxa joined
|
|||
ShimmerFairy | o/ laben | 07:19 | |
07:24
Guest4404 left
07:27
xfix joined
07:28
aborazmeh left
07:31
Ven joined
07:34
rarara left
07:35
RabidGravy joined
07:36
Ven left
07:38
darutoko joined
07:42
Ven joined
07:46
itz left,
Ven left
07:47
Ven joined,
rurban left
|
|||
laben | as i feared, Template::Mustache doesn't work because the grammar or the actions fail to create the correct result. now, where do i sign up for a crash course in grammars and actions? | 07:56 | |
07:56
rurban joined
|
|||
nine | laben: doc.perl6.org/language/grammars is quite good | 07:57 | |
laben | nine: do you know if Grammars and/or Actions internally use some sort of push that would need to be adjusted for glr? | 07:59 | |
DrForr | laben: I've got a pretty extensive grammar/actions combo in the ANTLR module in the ecosystem. | ||
08:04
[Tux] left
|
|||
FROGGS | laben: do you get error messages you could gist? | 08:05 | |
yoleaux | 30 Aug 2015 21:00Z <laben> FROGGS: the LAST phaser doesnt seem to fire when the last execution is finished with next, see "for 1 {LAST {say "last"};next}" | ||
FROGGS | ohh, the LAST phaser thing might be some very easily fixable... | ||
laben | just a quick question, the TOP action is called last, after every other action has been called, right? | 08:06 | |
08:06
rarara joined
|
|||
nine | laben: my Apache-To-Nginx seems to parse just fine and that's a largish grammar. From what I can see, there's just a couple of GLR fixes necessary in the converter code itself. | 08:08 | |
FROGGS: do you by chance still have my short micro USB cable? | 08:09 | ||
JimmyZ | isn't the TOP first? | 08:11 | |
laben | somehow an action doesnt get called, which means the correct ast is never made. let's see why... | 08:12 | |
08:15
espadrine joined
08:16
[Tux] joined
|
|||
FROGGS | nine: damn, it was yours? | 08:18 | |
ó.ò | |||
I convinced tadzik to take it -.- | |||
nine | This...may even be an advantage. You aren't coming to YAPC are you? | 08:19 | |
FROGGS | JimmyZ: the TOP token is called first, so the TOP action method is called last | ||
nine: I'm not, correct | |||
08:19
colomon joined
|
|||
nine | tadzik may be, so I may even have a chance of getting it back ;) | 08:19 | |
FROGGS | :S | ||
nine: Sorry | |||
nine | No worry. | ||
tadzik | nine: I'm not, sorry :( | 08:20 | |
nine: but I'm still in Zurich :) | |||
if you want to catch me | |||
nine | I'm already back in Linz | ||
tadzik | ah :/ | ||
nine | I should have charged my phone in Switzerland at least once. Then I'd have noticed the missing cable. | 08:21 | |
08:21
colomon left
|
|||
nine | Curse you large battery! | 08:21 | |
08:21
rindolf joined,
colomon joined
|
|||
tadzik | :) | 08:22 | |
DrForr | DAMN YOU FOR BEING SO EFFICIENT | 08:23 | |
nine | Maybe I should just give in and register a Google account to suck my battery empty in a day ;) | 08:24 | |
laben | gosh, the bottom action doesn't get called even once on glr, that's why it does not create any ast. at the same time, why the heck is nom calling the same action 2 times, with the same argument, when there's evidently only one occurrence? | ||
nine | laben: sounds like we overcompensated? | 08:25 | |
08:26
lizmat_ joined
08:28
domidumont joined,
lizmat left
|
|||
laben | seems like it's called twice because it's used in an assertion. but the assertion totally doesn't get called in glr. what's going on? | 08:30 | |
need to go now, have a good day #perl6 | 08:42 | ||
08:42
laben left
|
|||
lizmat_ | good *, #perl6 | 08:51 | |
08:51
lizmat_ is now known as lizmat
|
|||
lizmat | messages? | 08:51 | |
yoleaux | 30 Aug 2015 10:39Z <nine> lizmat: I figured out what's wrong with zip-latest.t! It's just that every way we tried to fix the issue hit an underlying bug. Array.clone re-uses the same $!reified buffer for the clone and List.from-iterator creates a new $!reified but uses the same scalar containers for the values. So they are still linked. | ||
lizmat | .tell nine Good to know what caused the issue... :-) | 08:52 | |
yoleaux | lizmat: I'll pass your message to nine. | ||
08:52
telex left
|
|||
nine | lizmat: It's also fixed by now :) | 08:52 | |
yoleaux | 08:52Z <lizmat> nine: Good to know what caused the issue... :-) | ||
lizmat | cool! | ||
nine | There's now only 2 GLR related spec test failures: Sequences do not yet throw the correct exceptions on invalid input and one of the advent tests is not properly GLRed yet. | 08:53 | |
08:54
telex joined
|
|||
lizmat | I saw 5: 1 of them is a known issue on OS X with IO::Socket::INET | 08:54 | |
the other two I'm not sure about | |||
nine | t/spec/S02-literals/numeric.t fails also on nom | 08:55 | |
ShimmerFairy++ fixed numeric.t to actually test what it's claiming to test and that's why it now shows failures. They should just be todo'd | |||
cdc | .tell [Coke] about irclog.perlgeek.de/perl6/2015-08-29#i_11138242, I use for each arguments of a Bash command-line: sub escape-arg(Str $arg is copy) { if $arg ~~ s:g/([ ' ' | \' | \\ | <:Control> ])/{ $0.ord.fmt('\\u%04x') }/ { [~] <$'>, $arg, <'> } else { $arg } } | 08:56 | |
yoleaux | cdc: I'll pass your message to [Coke]. | ||
nine | many-processes-no-close-stdin.t was also a nom issue that has since been fixed by hoelzro++ (NQP bump was missing) | ||
08:56
Ven left
08:58
araujo joined,
araujo left,
araujo joined
|
|||
ShimmerFairy | sorry for not TODOing those tests, by the way; I think my idea was "oh, I messed around in that part of the grammar recently, I could fix that soon!" and then didn't :P | 09:00 | |
09:03
espadrine left,
espadrine_ joined
|
|||
ShimmerFairy | m: say :10<-42> # this is how I guessed you negate adverbial numbers, but apparently I'm wrong :) (though to be fair the spec says nothing about a negative number of this form) | 09:13 | |
camelia | rakudo-moar 5ba44f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/jP8rFHCpOzMalformed radix numberat /tmp/jP8rFHCpOz:1------> 3say :10<7⏏5-42> # this is how I guessed you negate expecting any of: number in radix notation» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«5===SORRY!5=== Error while compiling /tmp/zkxkvTeU3rMalformed radix numberat /tmp/zkxkvTeU3r:1------> 3say :10<7⏏5-42> # this is how I guessed you negate expecting any of: number in radix notation» | ||
RabidGravy | If I need to reference a type 'B' in a role 'F' that may be consumed in term by 'F' is doing something like "self ~~ ::('B')" in the role valid way of not having to load the class (and get blown out for circular dependency)? | 09:16 | |
ShimmerFairy | do you want ::?CLASS, per chance? | 09:17 | |
RabidGravy | no I don't | ||
the role may be consumed by a variety of things, it needs to check if something is one of them | 09:18 | ||
(actually self was a bad example there as the actual code doesn't do that) | 09:19 | ||
ShimmerFairy | you can always stub the class(es) in question, and hopefully be able to use them well enough in the role. | 09:20 | |
RabidGravy | the actual code is something more like: | 09:23 | |
m: role F { method b(Mu:D $f) { say $f ~~ ::("B"); } }; class B does F { }; B.new.b(B.new) | |||
camelia | rakudo-moar 5ba44f: OUTPUT«True» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«True» | ||
RabidGravy | where obviously the circumstances of the creation of the second B are somewhat more complicated | 09:24 | |
09:26
Ven joined
|
|||
RabidGravy | I'm going to go with it and see what happens | 09:27 | |
09:38
mprelude joined
09:43
lizmat left
|
|||
nine | ShimmerFairy: could you please todo them now? I'm not sure about the protocol there. For example, do we require RT tickets for todos? | 09:45 | |
09:47
rurban left
|
|||
ShimmerFairy | nah, I'll get to it. Just a case of focusing on other stuff, but it'd only take a second. :) | 09:48 | |
nine | That's even better :) | ||
Btw. sorry if I've been a bit grumpy about this. Past few weeks have been exhausting. | 09:49 | ||
ShimmerFairy | That's alright :) | 09:51 | |
dalek | ast: 6b38ee7 | ShimmerFairy++ | S02-literals/numeric.t: TODO a couple tests. nine++ for catching that they needed it. |
09:56 | |
ast/glr: 8fe513c | ShimmerFairy++ | S02-literals/allomorphic.t: Updating allomorphic tests. In particular coercing the allomorphic types for 'is' tests, since allomorphic types probably shouldn't implement === for an allomorphic type and one of its component types. |
10:04 | ||
ast/glr: d47db92 | ShimmerFairy++ | S02-literals/listquote.t: Fix accidental pure string expectation Since the test in question isn't meant to test allomorphic types, I changed the tested key/value pair to not make an allomorphic type. |
|||
ast/glr: 6b38ee7 | ShimmerFairy++ | S02-literals/numeric.t: TODO a couple tests. nine++ for catching that they needed it. |
|||
ast/glr: ba3393d | (Stefan Seifert)++ | S02-literals/ (3 files): Merge branch 'master' into glr |
|||
10:06
Ven left
10:07
Ven joined
10:21
rurban joined
10:23
dayangkun left
10:27
Loren_ joined
10:33
[TuxCM] left
10:44
espadrine_ left
10:45
espadrine_ joined
10:53
ggoebel2 left
10:57
TEttinger left
|
|||
nine | m: (1, 2, 6 ... *)[5] | 11:05 | |
camelia | rakudo-moar 5ba44f: OUTPUT«Unable to deduce arithmetic or geometric sequence from 1,2,6 (or did you really mean '..'?) in block <unit> at /tmp/imuAJihaAN:1Actually thrown at: in block <unit> at /tmp/imuAJihaAN:1» | ||
GLRelia | ( no output ) | ||
ShimmerFairy | m: say (1, 2, 6 ... *)[5] | 11:10 | |
camelia | rakudo-moar 5ba44f: OUTPUT«Unable to deduce arithmetic or geometric sequence from 1,2,6 (or did you really mean '..'?) in block <unit> at /tmp/ZD7R2u6Sq4:1Actually thrown at: in block <unit> at /tmp/ZD7R2u6Sq4:1» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Nil» | ||
11:13
ggoebel joined
11:14
telex left
11:15
telex joined
|
|||
dalek | line-Perl6/glr: e508f48 | (Stefan Seifert)++ | t/0 (2 files): Adopt GLR semantics in test suite |
11:18 | |
ChoHag | Is a capture consisting of all the arguments passed to a function available without explicitely capturing it? | 11:20 | |
timotimo | no, for performance reasons | 11:21 | |
i think | |||
hm, though perhas with the nqp ops | |||
m: sub test($a, $b, $c?) { say nqp::usecapture(); } | 11:22 | ||
camelia | ( no output ) | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«===============================================================================The use of nqp::operations has been deprecated for non-CORE code. Pleasechange your code to not use these non-portable functions. If you really wantto keep using nqp:…» | ||
timotimo | m: use nqp; sub test($a, $b, $c?) { say nqp::usecapture(); }; test(1, 2); | ||
camelia | rakudo-moar 5ba44f: OUTPUT«Cannot find method 'gist': no method cache and no .^find_method in sub test at /tmp/7OQ5pmkqAg:1 in block <unit> at /tmp/7OQ5pmkqAg:1» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Cannot find method 'gist': no method cache and no .^find_method in sub test at /tmp/XkS6IdVbWZ:1 in block <unit> at /tmp/XkS6IdVbWZ:1» | ||
timotimo | that gives you a very low-level capture | ||
you'd inspect it with nqp::captureposarg and whatever lets you grab the named arguments | 11:23 | ||
ChoHag | Is there any other way to call another function with the same arguments as passed in to this one? | ||
11:24
virtualsue joined
|
|||
timotimo | m: sub foo($a, $b) { say "$a $b" }; sub bar($a, $b) { &foo.callsame }; bar(1, 2) | 11:25 | |
camelia | rakudo-moar 5ba44f: OUTPUT«Method 'callsame' not found for invocant of class 'Sub' in sub bar at /tmp/m7g9cyiqGC:1 in block <unit> at /tmp/m7g9cyiqGC:1» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Method 'callsame' not found for invocant of class 'Sub' in sub bar at /tmp/SGvANG8O3S:1 in block <unit> at /tmp/SGvANG8O3S:1» | ||
timotimo | hm | ||
11:33
Ven left
11:35
virtualsue left,
virtualsue joined
|
|||
RabidGravy | great, a bug report for a twenty year old module against perl 5.14.4 on cygwin | 11:40 | |
bless their little pointy heads | |||
11:43
Ven joined
|
|||
hoelzro | o/ #perl6 | 11:47 | |
nine | Good morning, hoelzro! | 11:48 | |
hoelzro | afternoon, nine! | ||
Ven | \o, hoelzro , nine , and #perl6 | ||
hoelzro | ahoy Ven! | 11:49 | |
BooK | just looked at jnthn's talk in yapc asia. pretty cool | 11:53 | |
but the code examples do not work for me (just did a `rakudobrew build moar`) | 11:54 | ||
is there a place where I can peek at the complete code? | |||
11:54
zakharyas joined
|
|||
nine | Doesn't his talk contain the features that are only implemented on the glr branch? | 11:54 | |
_itz_ | I think race is only in glr | 11:59 | |
timotimo | aye | 12:00 | |
BooK | ah ok | 12:01 | |
switching branches then | 12:02 | ||
meanwhile, doing my first PR to perl6/doc | 12:03 | ||
nine | \o/ | ||
hoelzro | BooK++ | ||
Ven | BooK++ :) | ||
dalek | c: c29b488 | (Philippe Bruhat (BooK))++ | lib/Type/Supply.pod: Fix syntax error |
||
c: 64d55fb | FROGGS++ | lib/Type/Supply.pod: Merge pull request #120 from book/patch-1 Fix syntax error |
|||
FROGGS | BooK++ | ||
RabidGravy | yay! BooK! | 12:05 | |
12:06
virtualsue left,
virtualsue joined
|
|||
BooK | I fondly remember my first patch to libwww, it was marginally bigger than this one (swapping two characters) :-) | 12:10 | |
timotimo | pretty cool, BooK :) | 12:11 | |
welcome to the doc! :) | |||
BooK | mmm, there are others of the same kind in that page | 12:12 | |
gotta catch them all! | |||
Ven | who documents the tests, who tests the documents | ||
moritz | BooK: I've invited you to the perl6 org on github | 12:13 | |
BooK: if you accept, you can push to the doc repo (and a few others) directly | |||
nine | And I was just gonna say that BooK needs a commit bit :) | ||
moritz | nine: you're too sloooow :-) | 12:14 | |
BooK | thanks | 12:15 | |
I'll drop out of the github interface then :-) | |||
RabidGravy | BooK, as a complete aside I was looking for a picture of you and Eric in those little cars in Braga the other day. That was ten years ago :-O | 12:18 | |
12:21
rurban left
|
|||
BooK | oh I found that picture again recently | 12:21 | |
I think it was taken by DrHyde | |||
cognominal | BooK, time to invinte Ven for P3 | ||
Ven | mmh? | 12:22 | |
12:22
rurban joined
|
|||
BooK | Ven: patch.pm/p3/ # liz & wendy included | 12:22 | |
cognominal | maybe he can share a ride with liz and wendy back from Granada | ||
BooK | interesting: to filter a chunk of code through perl6. I need to do !perl6 - | 12:23 | |
otherwise I seem to see the output of the REPL | |||
cognominal | that is the picture with mongueurs on tricycle? | ||
Ven | I'm afraid I'm at school on the 12th | ||
BooK | it's a Saturday | 12:24 | |
Ven | yes. I'm at school that day | ||
BooK | claim you're from a religion that doesn't allow you to work on inconvenient days | 12:25 | |
FROGGS | Ven: but that's like... weekend :o) | ||
cognominal | and prescribes -O fun, that would be the Perl 6 religion. | ||
Ven | FROGGS: yes. my school often makes me work saturdays and sundays (so basically, 13 days in a row, from 9am to 8pm. I have to sacrifice a weekend every 3 weekends for school) | ||
BooK | I think the religion for Monday is Garfiedinity, but that might actually be just an instance of Lazyness (which prescribes working on Any day) | 12:26 | |
if you have to make ritual sacrifices, it is a religion | 12:27 | ||
Ven | I had an incredibly hard time to convince my school letting me go to SPW was a good idea, took me more than a week | ||
dalek | pan style="color: #395be5">perl6-examples: 45bcffa | (Steve Mynott)++ | categories/cookbook/02numbers/02-05-roman-numerals.pl: import Roman numerals from Rosetta Code |
12:30 | |
BooK | my daughters look forward liz and wendy's arrival: klonk.bruhat.net/wendy+flore.jpg | ||
12:31
laouji left
|
|||
FROGGS | Ven: 13 days in a row is horrible! | 12:31 | |
Ven | BooK: your daughter seems to be pretty tall already | ||
FROGGS: it gets long and tiring, yes :( | |||
FROGGS .oO( 'oribleaux! ) | |||
:/ | |||
cognominal | is it 42? | 12:33 | |
Ven | no | 12:34 | |
not important anyways | |||
BooK | RabidGravy: not sure you can find the original on the interwebs, but my notes say it was taken by DrHyde | ||
articles.mongueurs.net/comptes-rend...closer.png # this version is online, and you're on it too! | |||
cognominal | so you haet yve not found the answer to the big question :_ | ||
RabidGravy | BooK :) I'd forgotten about that | 12:35 | |
poor Greggy | 12:36 | ||
cognominal | Guillame still got hair on this photo. | ||
* Guillaume | 12:37 | ||
Ven | ha! that matz one is great | ||
cognominal | btw, it seems that Matz was in person in yapc asia. | 12:38 | |
Ven | really? that's nice to hear | ||
12:38
andreoss joined
|
|||
BooK | didn't | 12:40 | |
andreoss | $ time perl6 prob060.pl | ||
real 91m35.536s | |||
$ time perl prob060.pl5 | |||
real 0m4.815s | |||
timotimo | oh my | ||
12:40
virtualsue left
|
|||
RabidGravy | oops | 12:40 | |
timotimo | andreoss: any chance you could try that on rakudo/glr? (and do the necessary modifications to the code, of course) | ||
12:40
virtualsue joined
|
|||
RabidGravy | on the bright side there is room for improvement | 12:40 | |
timotimo | yeah, but someone has to go and do that :P | 12:41 | |
cognominal | ven, second guest speaker yapcasia.org/2015/ scroll down | ||
andreoss | m: say 91 * 60 / 4.8 | ||
camelia | rakudo-moar 5ba44f: OUTPUT«1137.5» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«1137.5» | ||
BooK wonders if it would be possible to mark code examples and expected output in a special way, so that some test could check the examples work with the current perl6? | |||
12:41
mprelude left
|
|||
Ven | cognominal: indeed! | 12:42 | |
BooK | pugs had something like this, and executable spec | ||
andreoss | timotimo: ok | ||
timotimo | thank you very much! | ||
andreoss | can i install glr with rakudobrew? | 12:43 | |
_itz_ | BooK: that would be very useful | ||
BooK | andreoss: I did a checkout glr in ~/.rakudobrew/moar-nom | ||
_itz_: is the doc in perl5 pod or perl6 pod? | 12:44 | ||
ShimmerFairy | mostly POD 5, for now | ||
timotimo | with rakudobrew you can use "triple" | 12:45 | |
rakudobrew triple glr master master | |||
or something like that | |||
BooK | ".'.IO.watch.act( { say "$^file changed" } ); | 12:46 | |
that looks weird | |||
should I remove the ".'. at the beginning? | |||
Ven | BooK: the . at the beginning means "$_." | 12:47 | |
_itz_ | m: say ".".IO.WHAT | ||
camelia | rakudo-moar 5ba44f: OUTPUT«(IO::Path)» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«(IO::Path)» | ||
Ven | m: $_ = 'abc'; say .uc | 12:48 | |
camelia | rakudo-moar 5ba44f: OUTPUT«ABC» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«ABC» | ||
BooK | right, so one of the quotes is incorrect | ||
m: say ".'.IO.WHAT | |||
camelia | rakudo-moar 5ba44f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/LTGGuk9CCDUnable to parse expression in double quotes; couldn't find final '"' at /tmp/LTGGuk9CCD:1------> 3say ".'.IO.WHAT7⏏5<EOL> expecting any of: argument list doubl…» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«5===SORRY!5=== Error while compiling /tmp/pe6pzycVIdUnable to parse expression in double quotes; couldn't find final '"' at /tmp/pe6pzycVId:1------> 3say ".'.IO.WHAT7⏏5<EOL> expecting any of: argument list doubl…» | ||
cognominal | one typo here and there is a good pedagogical device to force the reader to think. | 12:49 | |
BooK | I have no doubt the doc is perfect and the mistakes are there for the only purpose of my education :-) | 12:50 | |
dalek | c: c45f662 | (Philippe Bruhat (BooK))++ | lib/Type/Supply.pod: fix more syntax errors |
||
BooK | maybe it's time to read CONTRIBUTING.md | 12:51 | |
12:51
CQ joined
|
|||
dalek | pan style="color: #395be5">perl6-examples: e83ca50 | (Steve Mynott)++ | categories/cookbook/08-file-contents/08-0 (3 files): three LHF file contents examples |
13:02 | |
13:03
visitor1 joined
13:08
Ven left
|
|||
andreoss | m: say $*VM | 13:11 | |
camelia | rakudo-moar 5ba44f: OUTPUT«moar (2015.7.108.g.7.e.9.f.29.e)» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«moar (2015.7.108.g.7.e.9.f.29.e)» | ||
andreoss | how do i distinguish glr from nom? | 13:12 | |
FROGGS | andreoss: look at the nick of the bot | ||
andreoss | m: say $*PERL | 13:13 | |
camelia | rakudo-moar 5ba44f: OUTPUT«Perl 6 (6.Advent)» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Perl 6 (6.Advent)» | ||
FROGGS | andreoss: glr itself is just a branch, so it won't show up in a version string | 13:14 | |
but... | |||
m: say ::('Seq') ~~ Failure ?? "good ol' nom" !! 'GLR' | |||
camelia | rakudo-moar 5ba44f: OUTPUT«good ol' nom» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«GLR» | ||
andreoss | m: my @x := grep Int, 1..10; | 13:17 | |
camelia | ( no output ) | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Type check failed in binding; expected 'Positional' but got 'Seq' in block <unit> at /tmp/uN6Fhkj1do:1» | ||
13:19
Ven joined
|
|||
andreoss | how do i port my code with := to GLR? I get a bunch of Seq errors | 13:21 | |
moritz | andreoss: if you need to access @x by index, it's best to add .list to the expression on the right-hand side | 13:22 | |
andreoss: if you want to iterate over it, the nicest fix is | |||
m: my \x := grep Int, 1..10; .say for x; | |||
camelia | rakudo-moar 5ba44f: OUTPUT«12345678910» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«12345678910» | ||
13:25
mprelude joined
|
|||
andreoss | >This Seq has already been iterated, and its values consumed | 13:29 | |
moritz | if you need to iterate it twice or more often, use .list to get a proper List | 13:30 | |
13:30
muraiki joined
|
|||
andreoss | i'm actually iterating on copy | 13:31 | |
FROGGS | andreoss: are you still using binding by any chance? | 13:35 | |
m: my @x = grep(Int, 1..10).list; .say for @x; | 13:36 | ||
camelia | rakudo-moar 5ba44f: OUTPUT«12345678910» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«12345678910» | ||
FROGGS | m: my @x := grep(Int, 1..10).list; .say for @x; | ||
camelia | rakudo-moar 5ba44f: OUTPUT«12345678910» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«12345678910» | ||
FROGGS | ahh, hmmm, so that does not trigger the said msg | ||
m: my @x = grep(Int, 1..10); .say for @x; | |||
camelia | rakudo-moar 5ba44f: OUTPUT«12345678910» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«12345678910» | ||
FROGGS | hmmm, no idea | ||
moritz | andreoss: if you want help, you need to show us some code that produces the error | 13:37 | |
FROGGS | m: my @x = grep(Int, 1..10); .say for @x; .say for @x | ||
camelia | rakudo-moar 5ba44f: OUTPUT«1234567891012345678910» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«1234567891012345678910» | ||
timotimo | m: my $x = grep(Int, 1..10); .say for $x.list; .say for $x.list; | ||
camelia | rakudo-moar 5ba44f: OUTPUT«1234567891012345678910» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«1234567891012345678910» | ||
FROGGS | m: my @x := grep(Int, 1..10); .say for @x; .say for @x | ||
camelia | rakudo-moar 5ba44f: OUTPUT«1234567891012345678910» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Type check failed in binding; expected 'Positional' but got 'Seq' in block <unit> at /tmp/bG3kvFqvWg:1» | ||
FROGGS | there we go | ||
moritz | m: my $x = grep(Int, 1..10); .say for $x.List; .say for $x.List | ||
camelia | rakudo-moar 5ba44f: OUTPUT«1234567891012345678910» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«12345678910This Seq has already been iterated, and its values consumed in block <unit> at /tmp/gFHUIlm6Tt:1» | ||
FROGGS | dont use assignment if you want to have a proper copy | ||
timotimo | oh, .List not .list | ||
moritz | .list caches, .List not | 13:38 | |
timotimo | 'k | ||
moritz | so, depends on what you want | ||
timotimo | .so depends on what you want? but don't you always get a Bool from .so? :p | ||
moritz | but I haven't seen a good use case for either while still keeping the original Seq around | ||
FROGGS | I guess Seqs are like Junctions... you want to collapse them as early as possible | 13:39 | |
moritz | or pass them around without storing them in a variable | ||
timotimo | i'd rather say "you don't want to let them loose on the program" than the other thing | ||
13:40
zakharyas left
|
|||
andreoss | paste.debian.net/309804/ | 13:40 | |
nine | You don't need .list if you assign to an @array anyway | ||
andreoss | feels like i have to unlearn some Perl 6 already | 13:41 | |
timotimo | a tiny bit, yeah :| | 13:42 | |
moritz | Variable '@x' is not declared │········ | ||
at glr-andreoss:60 │········ | |||
nine | I think there's just fewer reasons to use := in the first place, which I see as a good thing. | ||
timotimo | agreed | ||
andreoss | paste.debian.net/309806/ | 13:43 | |
RabidGravy | m: say "Foo".WHAT.^name; # is there a better way of doing this if I must get the name of the type as a string? | 13:47 | |
camelia | rakudo-moar 5ba44f: OUTPUT«Str» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Str» | ||
13:47
rurban left
|
|||
tadzik | I don't think so | 13:47 | |
nine | m: say "Foo".^name; | ||
camelia | rakudo-moar 5ba44f: OUTPUT«Str» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Str» | ||
tadzik | but why do you? | ||
oh :) | |||
timotimo | m: say Str.gist; say Str.Str; say Str.perl | ||
camelia | rakudo-moar 5ba44f: OUTPUT«(Str)Use of uninitialized value of type Str in string context in block <unit> at /tmp/zKBwRBUMzH:1Str» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«(Str)Use of uninitialized value of type Str in string context in block <unit> at /tmp/qlxNzApGbY:1Str» | ||
timotimo | m: say Str.perl | ||
camelia | rakudo-moar 5ba44f: OUTPUT«Str» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Str» | ||
moritz likes $obj.^name best | |||
timotimo | m: my $foo = Str; say $foo.^name | 13:48 | |
GLRelia | rakudo-moar 78b8f2: OUTPUT«Str» | ||
camelia | rakudo-moar 5ba44f: OUTPUT«Str» | ||
timotimo | ah | ||
m: my $foo = Str; say $foo.VAR.^name | |||
camelia | rakudo-moar 5ba44f: OUTPUT«Scalar» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Scalar» | ||
timotimo | m: my $foo = Str; say $foo.VAR.name | ||
camelia | rakudo-moar 5ba44f: OUTPUT«$foo» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«$foo» | ||
timotimo | so that's how you get that | ||
m: sub what's-my-name(\foo) { say foo.name }; my $foo = Str; what's-my-name($foo) | 13:49 | ||
camelia | rakudo-moar 5ba44f: OUTPUT«Method 'name' not found for invocant of class 'Str' in sub what's-my-name at /tmp/K5zwpfvq_2:1 in block <unit> at /tmp/K5zwpfvq_2:1» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Method 'name' not found for invocant of class 'Str' in sub what's-my-name at /tmp/XQHOFjqi3q:1 in block <unit> at /tmp/XQHOFjqi3q:1» | ||
pink_mist | foo.VAR.name surely? | ||
nine | andreoss: I'd just write for grep Prime, 1 .. 10000 -> $prime { | ||
visitor1 | Hi all! | ||
timotimo | yeah, pink_mist, i was just checking :) | 13:50 | |
pink_mist | right =) | ||
visitor1 | Why this works: | ||
r: class C { has Int $.v is rw = 0; multi method new(Int $v){ self.bless(v=>$v) }; multi method new(@vals){ self.bless(v=>[+](@vals)) } }; my @numlist = (10,20,30); my $c = C.new(@numlist); say $c.perl; | |||
nine | andreoss: oh, sorry, forget that | ||
GLRelia | rakudo-jvm 78b8f2: OUTPUT«Can't open perl script "/home/steve/rakudo-inst/bin/eval-client.pl": No such file or directory» | ||
..rakudo-moar 78b8f2: OUTPUT«C.new(v => 60)» | |||
camelia | rakudo-{moar,jvm} 5ba44f: OUTPUT«C.new(v => 60)» | ||
timotimo | hi visitor1 | ||
visitor1 | and this does not? | ||
r: class C { has Int $.v is rw = 0; multi method new(Int $v){ self.bless(v=>$v) }; multi method new(Int @vals){ self.bless(v=>[+](@vals)) } }; my @numlist = (10,20,30); my $c = C.new(@numlist); say $c.perl; | |||
13:50
khw joined
|
|||
GLRelia | rakudo-jvm 78b8f2: OUTPUT«Can't open perl script "/home/steve/rakudo-inst/bin/eval-client.pl": No such file or directory» | 13:50 | |
..rakudo-moar 78b8f2: OUTPUT«Default constructor for 'C' only takes named arguments in block <unit> at /tmp/tmpfile:1» | |||
camelia | rakudo-{moar,jvm} 5ba44f: OUTPUT«Default constructor for 'C' only takes named arguments in block <unit> at /tmp/tmpfile:1» | ||
andreoss | nine: i need @primes as stack, so it wont' check same prime number twice | ||
nine: that's why .shift | |||
visitor1 | The difference is using (@vals) or (Int @vals) in an argument list for a new method | 13:51 | |
13:52
virtualsue_ joined
|
|||
timotimo | visitor1: if you have "Int @vals" as a parameter, you have to explicitly pass in an array you've manually declared to be "of Int" | 13:52 | |
13:52
virtualsue_ left
|
|||
nine | andreoss: so what's the remaining issues with your script? | 13:52 | |
visitor1 | r: class C { has Int $.v is rw = 0; multi method new(Int $v){ self.bless(v=>$v) }; multi method new(Int @vals){ self.bless(v=>[+](@vals)) } }; my Int @numlist = (10,20,30); my $c = C.new(@numlist); say $c.perl; | 13:53 | |
GLRelia | rakudo-moar 78b8f2: OUTPUT«C.new(v => 60)» | ||
..rakudo-jvm 78b8f2: OUTPUT«Can't open perl script "/home/steve/rakudo-inst/bin/eval-client.pl": No such file or directory» | |||
camelia | rakudo-{moar,jvm} 5ba44f: OUTPUT«C.new(v => 60)» | ||
moritz | visitor1: see also my rant about this on p6u: www.nntp.perl.org/group/perl.perl6....g2155.html | ||
visitor1 | Ahhh ok... thanks timotimo! | ||
timotimo | seems like we want to prevent glrelia to try to run rakudo-jvm | ||
well, that or build rakudo-jvm on it, too | |||
13:53
virtualsue left
13:54
virtualsue joined
|
|||
moritz | timotimo: I hope that GLRelia's life time is counted in days, anyway | 13:54 | |
timotimo | sure | ||
hm | |||
RabidGravy | merge imminent? | ||
timotimo | though i'd say it'd be interesting to keep nomelia around after glr becomes the main development branch | ||
so that we can easily see differences on the channel if we want to | 13:55 | ||
i wouldn't run it for every "m:", though | |||
maybe "nom:" | |||
moritz | timotimo: shouldn't be so hard | ||
timotimo | aye | ||
moritz | just like we kept pre-nom rakudo ("Beijing") around for a while | 13:56 | |
13:56
cognominal left
|
|||
timotimo | ah | 13:56 | |
i don't remember that :) | |||
moritz | timotimo: and if you do a MoarVM release today, I can do a nom-based Rakudo release tonight | ||
timotimo | oh! | ||
moritz | and then we can use that release as the reference thingy for camelia | 13:57 | |
timotimo | i should get going, then! | ||
moritz | no pressure, but yes, do it now! :-) | ||
andreoss | nine: it fails to work with glr | 13:58 | |
timotimo | haha, that's "the" reason? :) | 13:59 | |
the remaining issue, i mean? | |||
andreoss | nine: i assume because of multiple copies of Seq | ||
13:59
virtualsue left
|
|||
timotimo | and i assume getting a --profile of that 90 minute run thingie would result in a ridiculous amount of data | 14:00 | |
just because we record a bit of data for every single gc run | 14:01 | ||
and in 90 minutes, the gc runs *a* *lot* | |||
(unless you're only numbercrunching native ints/nums in a tight loop) | |||
nine | andreoss: fails in what way? | 14:02 | |
timotimo | maybe we want a little bit of intelligence that'll start only recording major collections after a certain number of minor collections | ||
andreoss | nine: >This Seq has already been iterated, and its values consumed | 14:04 | |
timotimo | i'm really looking forward to getting these two new monitors <3 | ||
nine | andreoss: cannot reproduce that here | 14:05 | |
moritz has two glr test failures: t/spec/S03-sequence/misc.t and t/spec/integration/99problems-21-to-30.t | 14:06 | ||
nine | moritz: yes, that's the two remaining ones | ||
14:06
thou joined
|
|||
nine | moritz: 99problems-21-to-30.t is a plain missing GLRification one and the sequence test fails because we do not detect invalid input early enough. | 14:07 | |
masak | wow. two. | ||
14:07
skids joined
|
|||
moritz | m: say combination(2, <a b c>) | 14:08 | |
camelia | rakudo-moar 5ba44f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/HcDhsG_w2bUndeclared routine: combination used at line 1. Did you mean 'combinations'?» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«5===SORRY!5=== Error while compiling /tmp/tacMUsSW36Undeclared routine: combination used at line 1. Did you mean 'combinations'?» | ||
timotimo | +s | 14:09 | |
andreoss | nine: paste.debian.net/309810/ this fails for me | ||
moritz | timotimo: that test file has a custom sub combination | ||
andreoss | may be i have a broken installation or somethimg, sorry if i wasted your time | ||
14:10
virtualsue joined
|
|||
timotimo | ah, i see | 14:10 | |
nine | andreoss: add a .Array in line 45 | 14:11 | |
andreoss: gather returns a Seq, so you created an Array containing Seqs and expected it to be an Array of Arrays | 14:12 | ||
andreoss | nine: thanks | 14:13 | |
14:14
cognominal joined
14:16
domidumont left
|
|||
nine | andreoss: FWIW I see quite some opportunity for optimization. If you change your implementation to not use .shift anymore and instead operate only on Lists, it may be quite a bit faster. | 14:16 | |
14:18
domidumont joined
|
|||
andreoss | but List cannot be used as stack | 14:21 | |
nine | Exactly! Your implementation makes countless copies of the same list. If you use the same static list and use subscripting instead, it may be faster. | 14:23 | |
dalek | kudo-star-daily: 023f6a2 | coke++ | log/ (9 files): today (automated commit) |
14:24 | |
nine | m: my @list = grep Prime, 1 .. 100; sub foo(@primes) { say @primes.Str }; foo(@list[1 .. *]; | ||
camelia | rakudo-moar 5ba44f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/R6cLoEJcGCUnable to parse expression in argument list; couldn't find final ')' at /tmp/R6cLoEJcGC:1------> 3 { say @primes.Str }; foo(@list[1 .. *];7⏏5<EOL> expecting any of: argu…» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«5===SORRY!5=== Error while compiling /tmp/IKdXWb_OM1Unable to parse expression in argument list; couldn't find final ')' at /tmp/IKdXWb_OM1:1------> 3 { say @primes.Str }; foo(@list[1 .. *];7⏏5<EOL> expecting any of: argu…» | ||
nine | m: my @list = grep Prime, 1 .. 100; sub foo(@primes) { say @primes.Str }; foo(@list[1 .. *]); | ||
camelia | rakudo-moar 5ba44f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/iUMEFrBsyZUndeclared name: Prime used at line 1» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«5===SORRY!5=== Error while compiling /tmp/UAHvGFDUaFUndeclared name: Prime used at line 1» | ||
nine | m: my @list = grep { $_.is-prime }, 1 .. 100; sub foo(@primes) { say @primes.Str }; foo(@list[1 .. *]); | 14:25 | |
camelia | rakudo-moar 5ba44f: OUTPUT«3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97» | ||
14:27
[TuxCM] joined
|
|||
nine | Meh...we'll still create a copy of the array in that case. | 14:27 | |
timotimo | grep-index? :) | ||
hm, won't really help, right? | 14:28 | ||
nine | I'd say a plain old get-remarkable(:@primes, :$start-index) | ||
JimmyZ | about parrot backend, I think the better ways is to disable it with one line code in configure.pl insteal of remove the code. | 14:30 | |
moritz | if we disable it, we can't test it anymore | 14:31 | |
zostay | m: my $x = 1, 2, 3; $x.WHAT.say | 14:34 | |
camelia | rakudo-moar 5ba44f: OUTPUT«WARNINGS:Useless use of "," in expression "my $x = 1, 2, 3" in sink context (line 1)(Int)» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«(Int)» | ||
zostay | m: my $x := 1, 2, 3; $x.WHAT.say | 14:35 | |
camelia | rakudo-moar 5ba44f: OUTPUT«(Parcel)» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«(List)» | ||
JimmyZ | moritz: the advice is to someone who want remove the code from git repo ;) | ||
ShimmerFairy | Is there a reason there's a 'say' multi that's just for Str just so you don't call .gist on it, even though Str.gist is just the Str itself? :) | 14:36 | |
moritz | JimmyZ: but it's not a solution for anybody; either it's removed, or it stays. There is no middle ground. | ||
ShimmerFairy: yes. Performance. | |||
ShimmerFairy | moritz: I figured, though gist(Str:D:) { self } seems so innocuous... :) | ||
JimmyZ | incase someone do Str.gist | 14:37 | |
ShimmerFairy | (I ask because allomorphic types pick that multi accidentally, and "remove the Str multi" seemed like a potential solution) | ||
timotimo | ShimmerFairy: one of the most expensive things moar can do is invoke a sub, or so it seems :| | ||
14:38
Khisanth left
|
|||
ShimmerFairy | interesting, is there any clue as to why? | 14:38 | |
.oO(The obvious solution is to make sure everything is a method, and thus everything is classes. Where have I heard that before...?) |
14:39 | ||
JimmyZ | java? | ||
timotimo | running a script through perf shows that we spend a big amount of time in increasing the ref count of a frame | ||
oh, i meant "invoking a code object" | |||
not just subs | |||
14:40
Mhoram joined
|
|||
JimmyZ | sometimes moarvm is fast enough, but the build plan in rakudo like gimme, very slow | 14:40 | |
timotimo | it's so good we've gotten rid of gimme + reify :) | 14:41 | |
ShimmerFairy | timotimo: to be fair, I'm sure handling what could in some contrived way be called "just advanced gotos" isn't easy :) | ||
JimmyZ | the build plan is as slow as gimme ... | ||
timotimo | :) | ||
14:42
abaugher left
14:51
virtualsue_ joined
|
|||
nine | But surely we can inline a gist(Str:D:) { self }? | 14:51 | |
14:52
virtualsue left,
virtualsue_ is now known as virtualsue
14:53
domidumont left
14:56
domidumont joined
14:58
cognominal left
15:03
MilkmanDan left
|
|||
timotimo | hopefully | 15:05 | |
15:05
perl6_newbee joined
|
|||
masak | perl6_newbee: hola. | 15:06 | |
15:09
Khisanth joined
15:12
laubster joined,
telex left
|
|||
[Coke] | bots, wake up, get messages. | 15:12 | |
yoleaux | 08:56Z <cdc> [Coke]: about irclog.perlgeek.de/perl6/2015-08-29#i_11138242, I use for each arguments of a Bash command-line: sub escape-arg(Str $arg is copy) { if $arg ~~ s:g/([ ' ' | \' | \\ | <:Control> ])/{ $0.ord.fmt('\\u%04x') }/ { [~] <$'>, $arg, <'> } else { $arg } } | ||
15:14
telex joined
15:16
xinming_ joined
15:20
xinming left,
MilkmanDan joined
15:25
Ven left
|
|||
muraiki | hi all. I have a script that creates a number of IO::Notification.watch-path Supplies. what I've noticed is that CPU usage tends to stay at a constant level regardless of how many directories are watched, but that the CPU usage also increases in proportion to the # cpu cores and their speed | 15:26 | |
for instance, on a dual core, core 2 duo machine I have 5% cpu usage. but on a 16 core machine (not sure of the exact cpu type, but obviously quite new) I see 10% cpu usage | 15:27 | ||
hrm, well actually these cores on the 16 core machine aren't as fast as I thought. so maybe that's it | |||
15:29
araujo left
|
|||
muraiki | is there a way I can get statistics on how many threads are being used across all these supplies? (note: I obviously don't really understand how this all works :) | 15:30 | |
15:30
cognominal joined
|
|||
JimmyZ | m: say $*SCHEDULER.loads | 15:34 | |
camelia | rakudo-moar 5ba44f: OUTPUT«0» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«0» | ||
15:34
virtualsue left
15:37
andreoss left
|
|||
JimmyZ | m: await do for ^5 { start { sleep 1 }; say $*SCHEDULER.loads } | 15:37 | |
camelia | rakudo-moar 5ba44f: OUTPUT«01234» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«01234» | ||
JimmyZ | m: await do for ^5 { start { sleep 1 }; say $*SCHEDULER.loads }; sleep 2; say $*SCHEDULER.loads | ||
camelia | rakudo-moar 5ba44f: OUTPUT«012340» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«012340» | ||
JimmyZ | muraiki: ^^ maybe this is you want? | 15:38 | |
15:38
FROGGS left
|
|||
muraiki | JimmyZ: thanks, but I think the problem actually just comes down to "things aren't optimized yet." a perl6 -e 'sleep' showed similar cpu usage on these computers, heh | 15:39 | |
pflanze | masak, was it junctions that you said in your talk you'd only use lexically? If I understand right, e.g. any(@foo) eq $x would be equivalent to @foo.any(* eq $x) assuming that there's an any method on arrays (I don't know if there is)? | ||
muraiki | yeah actually sleeping results in the same amount of cpu usage. :( | ||
pflanze | I just ran into those and was questioning sanity, then I remembered your talk. | ||
masak | pflanze: yes :) | 15:41 | |
pflanze: I do things like `any(@foo) eq $x` too sometimes | |||
pflanze: the important thing to be aware of is that the result is not a *Bool*, but a *junction of Bools* | |||
pflanze: you can amend this by doing `so any(@foo) eq $x` | |||
JimmyZ | muraiki: I am not sure, since sleep calls the system sleep | 15:42 | |
pflanze | oi | ||
masak | pflanze: for more information, see perl6advent.wordpress.com/2014/12/...junctions/ | ||
muraiki | JimmyZ: yeah, but what i mean is I'd have trouble believing system sleep results in the 5%-30% cpu usage I'm seeing | ||
pflanze | *Is* there a higher-order any method on sequences, too? | ||
muraiki | so I assumed it was overhead from moarvm or something | ||
pflanze | Which would simply return a boolean. | 15:43 | |
JimmyZ | muraiki: maybe it is the parsing time? | 15:44 | |
pflanze goes trying | 15:45 | ||
muraiki | JimmyZ: the cpu usage initially starts at 100%+ for a few seconds, then dies down to 5-30%. so I figured that parsing is what's going on for those first few seconds | ||
15:45
virtualsue joined
|
|||
JimmyZ have no iden then :) | 15:46 | ||
muraiki | thanks anyways :) | ||
it just stinks because I'm probably going to have to rewrite this in go, as 30% is a dealbreaker T_T | |||
JimmyZ | optimizations is hard | ||
muraiki | I want my supplies :( | ||
masak jump-scares muraiki | 15:47 | ||
muraiki: SUPPLIES! | |||
muraiki | ;) | ||
15:48
ggoebel left
15:49
rurban joined
15:52
Ven joined
|
|||
pflanze | Ok, so there is no higher-order "any" method, or more to the point, the "any" method is the junction-building one. (I still don't get how/when "multi" methods and "method" methods are the same and when not.) | 15:52 | |
15:54
cognominal left
15:56
Ven left
15:59
abraxxa left
16:01
MadcapJake joined
|
|||
perl6_newbee | hi masak! | 16:03 | |
\o/ | |||
:-) | |||
16:11
zakharyas joined
16:12
larion left,
leont joined
|
|||
timotimo | muraiki: i can't reproduce such cpu usage for perl6 -e 'sleep 30' | 16:15 | |
it reports the cpu time the job got is about 0% | |||
16:15
xinming joined
|
|||
timotimo | 0.07user 0.01system 0:30.08elapsed 0%CPU (0avgtext+0avgdata 61636maxresident)k | 16:16 | |
or what exactly are you doing? | |||
wait, i forgot to sleep there, didn't i? | 16:17 | ||
oh no, wrong workspace | |||
dalek | rl6-roast-data: 466bfa5 | coke++ | / (10 files): today (automated commit) |
16:18 | |
muraiki | timotimo: I was just doing a perpetual sleep via `perl6 -e 'sleep'` | ||
16:18
xinming_ left
|
|||
muraiki | I've reproduced decent cpu usage on 3 systems, one of which just built perl6 today | 16:18 | |
the other 2 have perl6 from sometime last week | |||
er, rakudo | 16:19 | ||
16:19
larion joined
16:24
larion left
|
|||
JimmyZ | muraiki: I found the bug, sleeps costs 5% bug | 16:26 | |
muraiki | JimmyZ: oh nice! | 16:27 | |
JimmyZ | well, the -e 'sleep' | ||
16:27
vendethiel joined
|
|||
JimmyZ | sleep(10) works well | 16:27 | |
muraiki | yeah I just discovered that perl6 -e 'while (1) { sleep(5) }' doesn't really use any cpu while perl6 -e 'sleep' does | 16:28 | |
JimmyZ | muraiki: try s/5/1e16/ | ||
that's the bug | |||
nine | When should one use fail and when die? | 16:29 | |
JimmyZ | m: say my uint64 $ = 1e16 * 1e9 | 16:30 | |
camelia | rakudo-moar 5ba44f: OUTPUT«This type cannot unbox to a native integer in block <unit> at /tmp/FkGXkDkr3k:1» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«This type cannot unbox to a native integer in block <unit> at /tmp/fyHQBk_bMV:1» | ||
muraiki | JimmyZ: thanks so much for figuring it out! in my script I'll use the while/sleep(5) form for now | ||
JimmyZ | m: say my uint64 $ = (1e16 * 1e9).Int | 16:31 | |
camelia | rakudo-moar 5ba44f: OUTPUT«Cannot unbox 84 bit wide bigint into native integer in block <unit> at /tmp/4pYkdgWzcN:1» | ||
GLRelia | rakudo-moar 78b8f2: OUTPUT«Cannot unbox 84 bit wide bigint into native integer in block <unit> at /tmp/iReVR8XJrY:1» | ||
JimmyZ | yeah, the bug | ||
leont | Hmmm, using an enum as MAIN argument doesn't DWIM, bummer | ||
JimmyZ | muraiki: I will make a patch to rakudo | 16:32 | |
muraiki | JimmyZ: you are awesome | 16:33 | |
vendethiel | leont: how do you mean? enum A <a b c>; sub MAIN(A) {}? | 16:34 | |
leont | I was hoping for the getops implementation to do something sensible if the argument is either a number(value) or a string (name) | ||
16:36
domidumont left
16:37
gfldex left,
gfldex joined
16:41
raiph joined
|
|||
JimmyZ | well , maybe to moarvm | 16:44 | |
16:46
FROGGS[mobile] joined
|
|||
FROGGS[mobile] | o/ | 16:48 | |
yoleaux | 30 Aug 2015 16:55Z <nine> FROGGS[mobile]: do you by chance still have my micro USB cable? I seem to remember giving it to you on Wednesday | ||
30 Aug 2015 17:37Z <laben> FROGGS[mobile]: the LAST phaser doesnt seem to fire when the last execution is finished with next, see "for ^3 {.say; next if $_ < 3; LAST {say "last"}}" | |||
dalek | kudo/glr: 8a9d288 | (Stefan Seifert)++ | t/01-sanity/99-test-basic.t: s/done/done-testing in 01-sanity/99-test-basic.t Obviously no-one is running the sanity tests regularily... |
||
16:49
araujo joined,
spider-mario joined
16:52
pullphinger joined
|
|||
[Coke] | still 10 failures left on glr. running again to see what I've missed. | 16:55 | |
dalek | kudo/glr: d47a42f | (Stefan Seifert)++ | src/core/operators.pm: Fix (1,2,6...*)[5] not failing as it should Fixes the remaining sequence spec tests. Sequences are now pretty lazy, so even throwing the deduction errors lazily on top might just be too lazy. |
16:58 | |
timotimo | cool! :) | ||
nine | [Coke]: ^^^ | ||
[Coke] | folks running "spectest" aren't running all the tests, which might explain the diff. | ||
nine: will insure my current run includes that. | 16:59 | ||
16:59
CQ left
|
|||
[Coke] | (I haven't been running the inline::perl5 tests in my summaries, but I assume nine has. :) | 17:03 | |
17:03
perl6_newbee left
|
|||
nine | Correct :) Intriguingly, they have been passing for weeks already | 17:04 | |
17:04
domidumont joined
17:05
Khisanth left
|
|||
skids has trouble understanding why (1,2,6...*)[5] would not just iterate up to the 6th element and return it. | 17:06 | ||
pink_mist | iterate how? | ||
skids | Oh, because 1,2,6..* itself is a problem. I see now. | 17:07 | |
TimToady | but it should still try, and fail, as it does with [0] | 17:08 | |
skids | btw I have some 3/4th complete code for (someseq)[...] = someotherseq and to fix @a[...] = some_iterable. | 17:11 | |
But for some reason MMD seems to not be very happy in the mire of all the postcircumfix:<[ ]> candidates. | |||
I don't know if that's a new GLR thing or whether it's always been iffy in that area. | 17:12 | ||
TimToady | um, assigning to elements of a list seems iffy, since lists are immutable and do not guarantee containers (plus they'd be anonymous there anyway) | 17:13 | |
skids | Especially constraints on \SELF in those cnadidates seem to be ignored. | ||
TimToady | or was that a sequence of containers? | ||
skids | Sequence of containers. | ||
(and get a cannot-assign error if you run into an immutable in ther) | 17:14 | ||
A lingering question is what the eagerness of list assignment for the seq = iteratable case should be -- none? chained to the left? | 17:16 | ||
17:18
mohij joined
17:20
FROGGS joined
|
|||
FROGGS | uhh, it is getting toady in here... | 17:20 | |
17:20
FROGGS[mobile] left
|
|||
FROGGS | ahh, better :o) | 17:20 | |
17:22
lizmat joined
|
|||
nine | On a make stresstest we're now failing t/spec/integration/99problems-21-to-30.t and t/spec/integration/advent2012-day04.t | 17:23 | |
FROGGS | lizmat: btw, my plan is to make the CU.load stuff work (== spectest clean), and then hand it over to you for api refactoring if there is any need and if you feel like | ||
lizmat | FROGGS: sounds like a plan to me... | 17:24 | |
FROGGS | :o) | ||
lizmat | will be driving for most of tomorrow anyways | ||
17:24
spidermario joined
|
|||
FROGGS | though, will have to make sure Inline::Perl5 keeps working of course | 17:24 | |
17:24
spider-mario left
|
|||
lizmat | FROGGS: of course :-) | 17:25 | |
17:25
Khisanth joined
17:26
andreoss joined
|
|||
dalek | ast/glr: 0cfc360 | (Stefan Seifert)++ | integration/advent2012-day04.t: Fix a source of "expected 'Positional' but got 'Int'" in advent2012-day04.t |
17:26 | |
17:27
MadcapJake left
|
|||
andreoss | timotimo: with moar-glr it's about the same | 17:27 | |
92 min | |||
17:28
cognominal joined
|
|||
andreoss | .is-prime is slower than Math::Prime::XS but not 1000 times | 17:29 | |
JimmyZ | muraiki: github.com/MoarVM/MoarVM/commit/68...81897c168d | 17:30 | |
muraiki | JimmyZ: awesome! thanks :) | 17:31 | |
timotimo | JimmyZ: good catch! | 17:34 | |
17:35
pullphinger left
|
|||
JimmyZ | thank you | 17:36 | |
nine | m: my @a = 1; say 0, @a Z+ @a, 0; | ||
camelia | rakudo-moar 5ba44f: OUTPUT«1 1» | ||
GLRelia | rakudo-moar d47a42: OUTPUT«(1 1)» | ||
17:36
pullphinger joined
|
|||
nine | m: my @a = 1, 1; say 0, @a Z+ @a, 0; | 17:36 | |
camelia | rakudo-moar 5ba44f: OUTPUT«1 2 1» | ||
GLRelia | rakudo-moar d47a42: OUTPUT«(2 2)» | ||
dalek | ast/glr: 91cd7dc | (Stefan Seifert)++ | integration/advent2012-day04.t: Fix generating Pascal's triangle in GLR Fixes integration/advent2012-day04.t |
17:39 | |
nine | So there's really only a single spec test file failing now :) | 17:40 | |
[ptc] | \o/ | ||
nine | And that will not require any changes to rakudo. It's just a basic GLRification of a single test. | 17:41 | |
TimToady | m: my @a = 1, 1; say 0, |@a Z+ |@a, 0; | 17:43 | |
camelia | rakudo-moar 5ba44f: OUTPUT«5===SORRY!5===Variable '&prefix:<|>' is not declaredat /tmp/Wi9cs20cEx:1------> 3my @a = 1, 1; say 0, 7⏏5|@a Z+ |@a, 0;Variable '&prefix:<|>' is not declaredat /tmp/Wi9cs20cEx:1------> 3my @a = 1, 1; say 0, |@a Z+ 7⏏5|@a, 0…» | ||
GLRelia | rakudo-moar d47a42: OUTPUT«(1 2 1)» | ||
nine | Oh, so the parens would not have been necessary | ||
TimToady | list infixes are, like, list infixes, and stuff | 17:44 | |
that's why hypers aren't :) | 17:45 | ||
17:46
woolfy joined
|
|||
nine | Anyway, why am I fixing spec tests? I should be a) making dinner b) work on my YAPC talk or c) both | 17:47 | |
TimToady & Glo --> Restaurante Páprika | 17:48 | ||
dalek | ast/glr: 34116e7 | (Stefan Seifert)++ | integration/99problems-21-to-30.t: GLRify test in integration/99problems-21-to-30.t This is it! The final spec test! |
17:50 | |
nine | It is...done. | ||
lizmat | nine++ !!!! | ||
nine | [Coke]: ^^^ | ||
lizmat | congratulations!!! | ||
woolfy | nine++ woohooo!!! | 17:51 | |
cdc | nine++ | ||
muraiki | w00t | 17:52 | |
nine++ | |||
17:52
andreoss left
|
|||
nine | Yesterday on the train I wasted half an hour on this test. Today I just discarded that, went in, added a couple of characters and it just worked on the very first try :) | 17:52 | |
vendethiel | nine: AMAZING :D | 17:53 | |
muraiki | the joy of programming | ||
nine | And I still don't know what this thing is actually doing *g* | ||
woolfy | Magical programming! | 17:54 | |
FROGGS | nine++ # \o/ | ||
17:54
telex left
|
|||
nine | All tests successful. | 17:55 | |
Files=1093, Tests=121114, 289 wallclock secs (17.66 usr 2.29 sys + 1969.59 cusr 73.32 csys = 2062.86 CPU) | |||
Result: PASS | |||
17:55
telex joined
17:56
mprelude left
|
|||
dalek | ast/glr: b458004 | TimToady++ | integration/advent2012-day04.t: remove superstitious parens |
17:56 | |
lizmat | nine: I was wondering why the $ was needed on the return $[] | 17:59 | |
perhaps that's a sig issue with "sub" return? | |||
18:00
larion joined
|
|||
lizmat | Files=1082, Tests=121039, 355 wallclock secs (22.69 usr 4.15 sys + 2341.63 cusr 135.15 csys = 2503.62 CPU) | 18:02 | |
1 fail: IO::Socket::INET (OS X specific fail) | |||
18:03
zakharyas left
|
|||
nine | lizmat: it's needed because group is a recursive sub and its result is used in a map call | 18:04 | |
dalek | rl6-roast-data: 6879af9 | coke++ | / (2 files): another glr run for 'today' |
18:09 | |
18:10
rurban left
|
|||
[Coke] | shapecatcher.com/ - can't find a unicode glyph? draw it. | 18:11 | |
18:18
larion left
|
|||
mohij | Rakudos build process is targeting perl 5.8.0, right? | 18:22 | |
18:24
llfourn left
|
|||
geekosaur | 5.10.0 I think | 18:32 | |
there's been discussion about wanting stuff from 5.10.1 but not wanting to bump the dependency | |||
FROGGS | m: require Flubber:from<Foo> | ||
camelia | rakudo-moar 5ba44f: OUTPUT«Could not find Flubber in any of: file#/home/camelia/.perl6/2015.07.1-182-g5ba44fc/lib inst#/home/camelia/.perl6/2015.07.1-182-g5ba44fc file#/home/camelia/rakudo-inst-1/share/perl6/lib file#/home/camelia/rakudo-inst-1/share/perl6/vendor/lib…» | ||
GLRelia | rakudo-moar d47a42: OUTPUT«Could not find Flubber in any of: file#/home/steve/.perl6/2015.07.1-679-gd47a42f/lib inst#/home/steve/.perl6/2015.07.1-679-gd47a42f file#/home/steve/sandbox/perl6/rakudo/install/share/perl6/lib file#/home/steve/sandbox/perl6/rakudo/install/…» | ||
FROGGS | m: require "Flubber":from<Foo> | ||
camelia | rakudo-moar 5ba44f: OUTPUT«Could not find file 'Flubber' for module Flubber in any load_module at src/gen/m-ModuleLoader.nqp:200 in block <unit> at /tmp/bIJCLEJZrx:1» | ||
GLRelia | rakudo-moar d47a42: OUTPUT«Could not find file 'Flubber' for module Flubber in any load_module at src/gen/m-ModuleLoader.nqp:200 in block <unit> at /tmp/K3X3oSaLPd:1» | ||
FROGGS | bug™ | ||
lizmat | :-) | 18:34 | |
[ptc] | nine++ # final spec test! | 18:38 | |
mohij | geekosaur: thanks! | 18:42 | |
leont | Depending on 5.10.0 is a bit silly, it's not very commonly used in the wild, and generally considered a flawed release. Might as well depend on 5.10.1 | 18:44 | |
lizmat | dinner& | 18:47 | |
18:47
lizmat left
|
|||
pyrimidi_ | leont: IIRC most of the 5.x.0 releases kinda fall into that 'flawed' category (same was said of 5.8.0) | 18:47 | |
18:47
blackcat_ joined
|
|||
leont | The same is true for 5.8.0 actually, for different reasons | 18:47 | |
pyrimidi_: yeah, before 5.12 at least | |||
18:48
Sgeo_ joined
|
|||
leont | Nowadays it's just ".1 has a few bugs fewer" instead of "you've got to be insane to use this in production" | 18:48 | |
18:48
cschwenz joined,
woolfy left
|
|||
masak | on some days I feel like you've got to be insane to use any software in production. | 18:49 | |
18:50
Loren_ left,
Sgeo left
|
|||
nine | Or hardware | 18:50 | |
huf | or people, really. | ||
masak | nothing works | 18:51 | |
leont | L'enfer, c'est les autres! | ||
huf | masak: so how come a lot of things work? | ||
how do things get better? that's the great mystery | |||
masak | huf: measurement error. | ||
or dumb luck | |||
pyrimidi_ | chaos | 18:52 | |
moritz | it's delusion to think lot of things work | ||
speaking of not working | |||
18:53
domidumont left
|
|||
moritz | I can't make a rakudo release because there's no moarvm release | 18:53 | |
pyrimidi_ | www.youtube.com/watch?v=JmzuRXLzqKk | ||
moritz | and I can't make a maorvm release, because I don't understand moarvm well enough to write a sensible changelog file | ||
so, no rakudo release this month, it seems | |||
masak | moritz: well, you tried | ||
moritz | well, I failed. | 18:54 | |
masak | at least until someone who knows how makes a moarvm release. | ||
moritz | where I live, the month has only about 3 more hours, of which I don't plan to be awake more than 2 or so | 18:55 | |
so... unlikely | |||
japhb | dangitall | 18:57 | |
vendethiel | masak: it's fine if it's only some days! | ||
18:57
rurban joined
|
|||
nine | [ptc]: couldn't you write the MoarVM ChangeLog? | 18:58 | |
18:59
xinming_ joined
|
|||
japhb | moritz: At any given moment, there are an uncountable infinity of things not working, but thanks to the wonders of quantum mechanics, we don't notice them. On the other hand, this says absolutely nothing about the number of things that *are* working, which anecdotally I would say is a lot. Where by 'anecdote', I mean "apparent continuing existence of Earth, the Solar System, our galaxy, and in fact (as far as we can tell) the entire visible universe". | 18:59 | |
vendethiel | japhb: I'm not sure it's quantum mechanics, I think it's rather my terrible eyesight | 19:00 | |
japhb | vendethiel: Additive effects. | ||
vendethiel | *g* | ||
japhb | Nothing like philosophising on a full stomach and an empty brain. | ||
[ptc] | nine: I could give it a go. When does it need to be done by? | 19:01 | |
19:01
xinming left
|
|||
nine | [ptc]: well moritz's still awake for some 2 hours ;) | 19:02 | |
japhb | [ptc]: Unless you can convince moritz to stay awake later, I'd say "quite soon" | ||
nine | I'm packing for a conference. Seems like I've only been at one yesterday... | ||
Oh wait, I was! | |||
[ptc] | nine: I'm also packing for a conference ;-P | ||
I'm giving it a go, however hoelzro, timotimo and JimmyZ have done a lot of stuff that I don't know about (or yet understand) | 19:06 | ||
moritz | japhb: there you have it, just anecdotes, no data :-) | 19:07 | |
19:10
pyrimidi_ is now known as pyrimidine
19:14
rindolf left
|
|||
RabidGravy | m: class C:ver<v0.0.1> { }; say C.^ver ; # anyone know where I can start looking to fix this? | 19:14 | |
camelia | rakudo-moar 5ba44f: OUTPUT«Method 'gist' not found for invocant of class 'NQPMu' in block <unit> at /tmp/WuBp2uGt4Y:1» | ||
GLRelia | rakudo-moar d47a42: OUTPUT«Method 'gist' not found for invocant of class 'NQPMu' in block <unit> at /tmp/KDzGgWyHem:1» | ||
19:15
yqt joined,
larion joined
|
|||
FROGGS | RabidGravy: perhaps look at Perl6::Grammar and Perl6::Actions and check what the package_declarator does with colonpairs | 19:15 | |
RabidGravy: (colonpair via longname) | 19:16 | ||
[ptc] | wow, timotimo used "fabbergasted" in a commit message. I'm impressed! Haven't seen that used in long time :-) | ||
Ulti has a go at getting his modules to run from the GLR branch... | |||
moritz | is that a misspelling of "flabbergasted"? | 19:17 | |
19:19
ChoHag left,
rindolf joined
19:20
mprelude joined
|
|||
zostay | just published a blog post regarding P6SGI and the latest draft i finished this morning after having an epiphany last night, which probably should have come sooner | 19:20 | |
blogs.perl.org/users/sterling_hanen...ewing.html | |||
for anyone interested | |||
dalek | kudo/glr: 0f8cdfb | moritz++ | src/core/operators.pm: Simplify usage of die(). When it was still fail(), it needed to be nested in a function call, because fail() exits the current function and returns the failure. die() needs no such sophistication |
||
moritz | m: await start { say 42 } | 19:21 | |
camelia | rakudo-moar 5ba44f: OUTPUT«42» | ||
GLRelia | rakudo-moar d47a42: OUTPUT«42» | ||
moritz | zostay: start { } has been deprecated? really? | ||
why is there no deprecation warning? | |||
how did I miss this? | 19:22 | ||
RabidGravy | it hasn't | ||
zostay | it says it has in asyncops | ||
as of 2015.06 | |||
RabidGravy | no, thats some other usage | 19:23 | |
ugexe | proc::async, and thats in some other branch | ||
zostay | okay, then i misread the source... i'll clear that out and adjust the spec then | 19:24 | |
RabidGravy | m: sub foo {}; start(&foo) | ||
camelia | ( no output ) | ||
GLRelia | rakudo-moar 0f8cdf: OUTPUT«Saw 1 occurrence of deprecated code.================================================================================start({ ... }) seen at: /tmp/dD8_FHcXNS, line 1Deprecated since v2015.6, will be removed with release v2015.9!Please use sta…» | ||
[ptc] | timotimo, JimmyZ, hoelzro, jnthn, FROGGS: just updated the MoarVM ChangeLog and pushed a PR. If I've missed something or got something wrong, please update. | 19:25 | |
19:25
cschwenz left
|
|||
RabidGravy | so start as a function has been deprecated basically | 19:26 | |
zostay | that makes me happier | ||
19:27
larion left
|
|||
hoelzro | [ptc]++ | 19:28 | |
19:29
mohij left
|
|||
nine | moritz: ah, I've been wondering what the whole take sub { fail business was about | 19:29 | |
19:29
mohij joined
19:30
mj41 joined
19:31
[Sno] left
|
|||
dalek | rl6-roast-data: b8c3976 | coke++ | / (2 files): another glr run for 'today' |
19:33 | |
19:33
larion joined
|
|||
moritz | nine: so, are we waiting for something in particular before merging? | 19:33 | |
[Coke] | note I still have one failure, but it's probably a flapper. | 19:34 | |
nine | moritz: I'd actually rather rename glr to master... But really we're just waiting for someone to say, that it's ok. | ||
moritz | nine: I've had the same thought (renmaing to mater) | 19:35 | |
[Coke] | S17-promise/stress.t aborted 1 test(s) | ||
19:35
rangerprice joined
|
|||
moritz | we've been wanting to switch back to a 'master' branch for a while now, but didn't have a good trigger | 19:35 | |
nine | moritz: I don't think I remember anyone at the SPW being against it. | ||
[Coke] | +1 from me on going to master... but also +1 from me on merging glr back to nom first before we decide on that. | 19:36 | |
rangerprice | Where i can find a good book reference to create my own interpreter/compiler for a programming language ? | ||
hoelzro | I second [Coke]'s suggestion | ||
nine | [Coke]: S17-promise/stress.t is passing here. Considering that it's testing thready features, I really wouldn't be surprised if it was a flapper. | ||
rangerprice | hi moritz :) | ||
[Coke] | nine: my thoughts exactly. it did fail here twice in a row, and I only run one test at a time. | 19:37 | |
Ulti | does Positional still exist? | ||
nine | Ulti: yes | ||
Ulti | hmmm | ||
nine | Ulti: though in most cases, you can probably require Iterable instead and be more flexible | ||
Ulti | and is Seq a Positional? | ||
nine | Ulti: no | 19:38 | |
Seq does Iterable | |||
If you get some "cannot bind to Positional" error, just use assignment instead | |||
dalek | kudo/cu_load: 7262b98 | FROGGS++ | src/ (7 files): move module loading code to CompUnitRepo This means we are calling CompUnitRepo.load_module for every use/require/need we hit. Later we move the CU loading code to CompUnit.load, and will work with CompUnit objects in CUR instead. This patch fails one test of integration/precompiled.t |
19:39 | |
Ulti | yeah Iterable looks like the right change here thanks nine | 19:40 | |
mj41 | Can anybody try to reproduce glr vs. nom speed regression of "say $_ for 1..2_000_000;" gist.github.com/mj41/6761c021135ae...1-txt-L129 ? Seems like rakudo issue (3m25s instead of 0m10s). nqp-m is a bit faster. | ||
Ulti | at least the only thing being relied upon is .elems | ||
zostay | type coercion is possible when a type has a method named for the target type, right? | 19:41 | |
moritz | mj41: it's probably an optimization that wasn't reinstanted for GLR yet | 19:42 | |
nine | time perl6 -e 'use nqp; nqp::say($_.Str) for 1..2_000_000;' > /dev/null takes only 2.4 seconds instead | 19:43 | |
mj41 | moritz: merge blocker? as perl5 -MMoose takes 0m0.356s | ||
so pre glr 10s was slow and now it is super slow :-) | 19:44 | ||
19:46
AlexDaniel joined
19:47
telex left
|
|||
moritz | mj41: I don't quite see the connection between a "for"/say benchmark and -MMoose | 19:47 | |
_itz_ | m: say Parcel.new.perl | 19:48 | |
camelia | rakudo-moar 5ba44f: OUTPUT«()» | ||
GLRelia | rakudo-moar 0f8cdf: OUTPUT«5===SORRY!5=== Error while compiling /tmp/uZHw8pltfXUndeclared name: Parcel used at line 1» | ||
mj41 | moritz: only startup time penalty :-) | ||
19:48
telex joined
|
|||
AlexDaniel | Hi! | 19:48 | |
Ulti | weird I am getting a SORRY! without any line number | ||
"Method 'iterator' must be implemented by Iterable because it is required by a role" | |||
hoelzro | AlexDaniel: greetings! | ||
_itz_ | I did wonder if a clearer deprecation message for Parcel use might help .. the one from instally Test::Mock is particularly odd | 19:49 | |
mj41 | moritz: gist.github.com/mj41/6761c021135ae...e1-txt-L23 vs. gist.github.com/mj41/6761c021135ae...e1-txt-L28 | ||
moritz | Ulti: do you have any class that implements the Iterable role? | ||
Ulti: if yes, it needs updating | |||
AlexDaniel | It seems like a lot of reports were merged into rt.perl.org/Public/Bug/Display.html?id=61602 and so I thought, maybe this report should be merged as well rt.perl.org/Public/Bug/Display.html?id=125336 ? | ||
Ulti | nope or at least not that I'm aware of | ||
_itz_ | s/instally/installing | 19:50 | |
Ulti | just a package with a tonne of exported subs no OO at all | ||
AlexDaniel | it looks like it is related. However, I have no idea what should these infinite ranges actually mean, so perhaps it is a separate issue | 19:51 | |
nine | Iterable used to be a class. s/is Iterable/does Iterable/ can help wonders | ||
AlexDaniel | m: .say for Inf..0 | 19:52 | |
GLRelia | ( no output ) | ||
Ulti | I'm going to just assume its a List being passed in I only really had Positional because Parcel would turn up | ||
19:52
blackcat_ left
|
|||
AlexDaniel | oh wow | 19:52 | |
camelia | rakudo-moar 5ba44f: OUTPUT«(signal XFSZ)-9223372036854775808-9223372036854775808-9223372036854775808-9223372036854775808-9223372036854775808-9223372036854775808-9223372036854775808-9223372036854775808-9223372036854775808-9223372036854775808-922337203685…» | ||
AlexDaniel | m: .say for NaN..0 | ||
camelia | rakudo-moar 5ba44f: OUTPUT«(signal XFSZ)NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN…» | ||
GLRelia | rakudo-moar 0f8cdf: OUTPUT«(timeout)NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNN…» | ||
zostay | is there a brief syntax for performing coercion that doesn't involve a signature or assignment? | 19:53 | |
Ulti | is there a nice picture of what the types look like post GLR anywhere? | ||
so I can investigate without diving into Rakudo source | |||
19:54
baest_ joined
|
|||
AlexDaniel | Ulti: postcircumfix.com/media/typegraph_a...kudo.svg?2 ? | 19:54 | |
Ulti: (from postcircumfix.com/2015-08-29-untang...hierarchy) | |||
moritz | m: say Int("42").perl; # for zostay | ||
camelia | rakudo-moar 5ba44f: OUTPUT«42» | ||
GLRelia | rakudo-moar 0f8cdf: OUTPUT«42» | ||
zostay | m: say Promise(Supply.new).perl; | 19:55 | |
camelia | rakudo-moar 5ba44f: OUTPUT«Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 16, uncaught_handler => Callable), status => PromiseStatus::Planned)» | ||
GLRelia | rakudo-moar 0f8cdf: OUTPUT«Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 16, uncaught_handler => Callable), status => PromiseStatus::Planned)» | ||
zostay | m: say Promise(Promise.new).perl; | ||
camelia | rakudo-moar 5ba44f: OUTPUT«Cannot find method 'Promise' in block <unit> at /tmp/apKIDc5HYd:1» | ||
GLRelia | rakudo-moar 0f8cdf: OUTPUT«Cannot find method 'Promise' in block <unit> at /tmp/dwC9KYs57w:1» | ||
Ulti | thanks AlexDaniel though that's kind of what I imagined | ||
zostay | that doesn't always work | ||
moritz | m: say Promise.new.Promise | 19:57 | |
camelia | rakudo-moar 5ba44f: OUTPUT«Method 'Promise' not found for invocant of class 'Promise' in block <unit> at /tmp/XtqRIWial_:1» | ||
GLRelia | rakudo-moar 0f8cdf: OUTPUT«Method 'Promise' not found for invocant of class 'Promise' in block <unit> at /tmp/18NsrjiTqg:1» | ||
moritz | zostay: just like oridinary coercion doesn't always work | ||
zostay | well, Promise(Any) $p as a parameter always works... seems like there should be a syntax that always works without having to say $p ~~ Promise orself $p.=Promise or something similar | 19:59 | |
*orself | |||
*orelse | |||
timotimo | [ptc]: these are not all things i would have put into the changelog | ||
zostay | dang | ||
timotimo | like the parse_jitgraph thing just came out of nowhere, because the tool it refers to wasn't mentioned in the changelog; and it's only for internal use anyway | 20:00 | |
and the "jit graph is now an expression tree" thing refers to brrt's excellent work that - alas - hasn't reached the master branch yet | 20:01 | ||
20:02
laubster left
|
|||
timotimo | but there's good stuff in there, too :) | 20:03 | |
[ptc] | timotimo: feel free to update :-) | 20:04 | |
timotimo: I made lots of guesses as to what I should add while doing some repo archaeology | |||
[Coke] enjoys his actual day off before going back to work. | |||
[ptc] | should one be spectesting nom or glr for the current release? | 20:05 | |
t/04-nativecall/16-rt125408.t still fails for me | |||
RabidGravy | yeah | ||
grr | |||
it keeps getting fixed "by accident" | 20:06 | ||
Ulti | is there a new and wonderful way to create sequences? | ||
RabidGravy | that's why I put the test in | ||
dalek | kudo/glr: 994fb0a | (Stefan Seifert)++ | src/core/io_operators.pm: Add generic single arg candiate of say back in Speeds up say $_ for 1..2_000_000; by about 10x |
20:07 | |
nine | mj41: ^^^ | ||
moritz: ^^^ | 20:08 | ||
RabidGravy | :) | ||
moritz | nine++ | ||
RabidGravy | wtawtaw | ||
moritz | nine: is the slurpy still called? | ||
nine | moritz: passes all spec tests | ||
mj41 | nine++ ... anybody to try another 10x ? :-) | 20:09 | |
nine | yep, seems to be doing just fine | ||
[Coke] | current release has to be nom, not glr. | 20:11 | |
20:11
bronco_creek joined
|
|||
bronco_creek | .tell lizmat Saw Yes in concert last night. For some reason thought of you when they played some Tormato songs. (Sorry to be far off topic.) | 20:12 | |
yoleaux | bronco_creek: I'll pass your message to lizmat. | ||
mj41 | 0m16s .. much better | 20:13 | |
20:13
diana_olhovik_ joined
|
|||
RabidGravy | m4lj, 94% of that time is in the "say" | 20:14 | |
that is that loop calling an empty function is ~15x faster | 20:16 | ||
moritz | RabidGravy: with or without nine's last patch? | ||
RabidGravy | without | 20:18 | |
let me check again | |||
mj41 | nqp is 4x faster gist.github.com/mj41/6761c021135ae...e1-txt-L38 now | ||
colomon | nine++ | 20:19 | |
20:21
llfourn joined
20:22
rindolf left
|
|||
RabidGravy | moritz, the last was against nom | 20:22 | |
nom is twice as fast for that as glr with nine's patch | 20:23 | ||
20:24
cschwenz joined
|
|||
RabidGravy | calling an empty function in that loop is 23x faster on glr with nine's patch | 20:24 | |
so it's say still slo(er) | |||
slow | |||
nine | I think we're still missing the for -> while loop optimization | 20:25 | |
mj41 | nope gist.github.com/mj41/6761c021135ae...e1-txt-L38 | ||
line 53 line 58 | |||
gist.github.com/mj41/6761c021135ae...1-txt-L137 | |||
20:26
llfourn left,
darutoko left
|
|||
nine | Please note that the version in glr will probably produce nicer output in threaded programs that just say without any locking | 20:27 | |
RabidGravy | also 'say join "\n", 1..2_000_000' is 4x faster than the loop version (there's a moral in there) | 20:30 | |
moritz | well yes, "do less" | 20:31 | |
RabidGravy | aye | ||
mj41 | Ok. Good too know before I go to bed. Tiaveling to Granada. | ||
err, Tired traveling to Granada. | 20:32 | ||
good night | |||
RabidGravy | have fun | ||
20:33
mj41 left
|
|||
dalek | kudo/glr: 57b7ebc | (Stefan Seifert)++ | src/core/io_operators.pm: Add print multi candidates for single arguments Have an optimized version of print to gain the same speed advantages as say. For print we need to have separate candidates for Iterables and the rest because @array.Str would include spaces we don't want with print. Unless @array is itemized of course (GLRR). |
20:35 | |
kudo-star-daily: 79609fe | coke++ | log/ (9 files): today (automated commit) |
20:38 | ||
[Coke] | GLR R? | 20:40 | |
20:41
xfix left,
rurban left
|
|||
[ptc] | I'm getting "MVMArray: Can't shift from an empty array" in t/spec/S17-promise/start.rakudo.moar in the spectests on nom. Dunno if that's useful to anyone... | 20:42 | |
20:43
rurban joined
20:47
lizmat joined
|
|||
nine | [Coke]: GLR Revised ;) Means that we don't flatten a single arg if it's itemized | 20:49 | |
[Coke] | only if it's a release blocker, I guess. | 20:52 | |
(to ptc) | 20:53 | ||
_itz_ | m: say 'GLR'~ ('R' x 1..Inf) | ||
camelia | rakudo-moar 5ba44f: OUTPUT«GLRR S T U ...» | ||
GLRelia | rakudo-moar 57b7eb: OUTPUT«GLR...» | ||
TimToady | useless use of x 1 ? | 20:55 | |
m: say 'GLR' ~ ('R' .. Inf) | 20:56 | ||
camelia | rakudo-moar 5ba44f: OUTPUT«GLRR S T U ...» | ||
GLRelia | rakudo-moar 57b7eb: OUTPUT«GLR...» | ||
_itz_ | oh yes | ||
TimToady | m: say 'GLR' ~ ('R' Xx (1 .. Inf)) | ||
camelia | rakudo-moar 5ba44f: OUTPUT«(timeout)» | 20:57 | |
GLRelia | rakudo-moar 57b7eb: OUTPUT«(timeout)» | ||
TimToady | ~ forces eager, I guess | ||
[Coke] | we've got a bunch of tests marked "submix behavior still under discussion" that are passing in glr. ok to unfudge? | 20:58 | |
20:59
skids left
|
|||
[Coke] | seems like testing that current functionality stays working is good. | 20:59 | |
moritz | +1 | 21:00 | |
lizmat | [Coke] +1 | ||
yoleaux | 20:12Z <bronco_creek> lizmat: Saw Yes in concert last night. For some reason thought of you when they played some Tormato songs. (Sorry to be far off topic.) | ||
lizmat | bronco_creek: I'm jealous | ||
[Coke] | ah... 15 tests in a row; every other test passes. | ||
(previously all 15 were skipped) | |||
That is slightly more dubious. | |||
(going for it anyway.) | 21:01 | ||
lizmat | bronco_creek: On the other hand, I will be able to see Yes in the Cruise To The Edge in November :-) | ||
and yes, "Tormato" is one of my favourite Yes albums :-) | |||
alas, I will not be able to see the Rickenbacker Master in action :-( | 21:02 | ||
bronco_creek | Lizmat: Vary sad to loose Chris. Sherwood filled in remarkably well on both bass and vocal IMO. | 21:04 | |
lizmat | looking forward to that :) | ||
Yes will go on, as Chris wanted it :-) | |||
_itz_ | . o O ( they should get Trevor Horn back ) | 21:05 | |
lizmat | bronco_creek: did Sherwood do The Fish ? | ||
bronco_creek | No. Only bass solo was on the encore rendition of Starship Trooper. | 21:06 | |
virtualsue watches _itz_ 's troll go unanswered | 21:07 | ||
bronco_creek | Also, Jon D. is excellent. Close your eyes and it could be Jon A. Open them, and the same holds true... | ||
21:11
diana_olhovik_ left
|
|||
lizmat | can't wait for november: cruisetotheedge.com | 21:11 | |
bronco_creek | _itz_: ;-) Yes line-up permutations should be a rosetta code problem. | 21:12 | |
21:12
kaare_ left
21:13
muraiki left
|
|||
_itz_ | using the Pete::Frame::Tree module | 21:14 | |
[Coke] | 1,031 tickets | 21:20 | |
21:21
llfourn joined
|
|||
jdv79 | i don't think i've ever done a 8h layover. should have checked for more alternative routes maybe:( | 21:22 | |
timotimo | so ... what do i do about the test for #125408 staying fixed? | 21:24 | |
synbot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=125408 | ||
timotimo | just release anyway? | ||
21:25
cognominal left
|
|||
[Coke] | jdv79: I had a 9 hour layover scheduled on the way back but managed to rebook . | 21:25 | |
21:26
llfourn left
|
|||
dalek | ast/glr: 3d283da | TimToady++ | S06-signature/unpack-array.t: only needs .List, not .list, doesn't cache |
21:26 | |
[ptc] | 'night everyone! | 21:28 | |
timotimo | gnite [ptc]! | ||
21:28
ggoebel joined
21:29
xnrand is now known as tumblr
|
|||
lizmat | gnight [ptc] | 21:30 | |
lizmat also gets some sleep& | |||
timotimo | * [new tag] 2015.08 -> 2015.08 | 21:32 | |
hoelzro | night [ptc], lizmat | ||
timotimo | maybe i should have waited for the spec test to run through, though? | ||
dalek | ast/glr: cdab420 | coke++ | S0 (10 files): (auto) unfudge several tests. ... and close some RTs. |
21:36 | |
ast/glr: 97b6b02 | coke++ | S05-capture/match-object.t: Comparing types doesn't need .gist Update comment for RT #124998 |
|||
synbot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=124998 | ||
colomon | t/spec/S17-procasync/many-processes-no-close-stdin.t (Wstat: 65280 Tests: 0 Failed: 0) | 21:38 | |
timotimo | t.h8.lv/MoarVM-2015.08.tar.gz | ||
colomon | Non-zero exit status: 255 | ||
Parse errors: Bad plan. You planned 1 tests but ran 0. | |||
Ulti | well the Stats module is now GLR ready :3 | ||
timotimo | .tell jnthn when you're back, could you upload t.h8.lv/MoarVM-2015.08.tar.gz to moarvm.org? | ||
yoleaux | timotimo: I'll pass your message to jnthn. | ||
hoelzro | colomon: ='( | 21:40 | |
timotimo | moritz: we have a moarvm release, at least in theory | ||
Ulti | Bag.kxxv.flat.list to get back to a list you might call bag on is a bit weird though | ||
hoelzro | colomon: is that on GLR? have you pulled recently? | ||
colomon | hoelzro: I pulled earlier this afternoon | ||
I know I didn’t get cdab420 above | 21:41 | ||
hoelzro | colomon: if you run that test with just ./perl6-m, do you get any output? | ||
colomon | might be a flapper or something | ||
hoelzro | (it will probably throw up a bunch of output about /tmp/test-file missing) | ||
it shouldn't flap | |||
21:42
bronco_creek left
21:44
vendethiel left
|
|||
[Coke] | someone opened a twitter account with [email@hidden.address] | 21:46 | |
japhb | .tell bronco_creek Years ago I came across a Santana album in which the liner notes consisted of a complex infographic of the changing band lineup, just so fans could get it straight. | ||
yoleaux | japhb: I'll pass your message to bronco_creek. | ||
[Coke] just stole it back. weird. | |||
21:52
mrocks77 joined,
mrocks77 left
|
|||
colomon | hoelzro: | 21:53 | |
cat: /tmp/test-file: No such file or directory | |||
too many open files | |||
in block <unit> at t/spec/S17-procasync/many-processes-no-close-stdin.t:7 | |||
hoelzro | =( | ||
colomon: what do moar/nqp-m/perl6 --version all output? | |||
I just bumped the NQP_REVISION file to use the fix this morning | |||
colomon | hoelzro: oh, I’m probably missing that. | 21:54 | |
hoelzro | if you've pulled but not re-Configure.pl'd, that would explain it | ||
colomon | give me a minute | ||
masak | BooK: the supply/whenever stuff only works in the glr branch, IIUC. | 21:55 | |
21:55
[Sno] joined
|
|||
masak | oh, someone already told you. nvm. | 21:55 | |
colomon | hoelzro: right, that’s probably it. In middle of full rebuild at the moment. | 21:57 | |
hoelzro | whew | ||
masak | 'night, #perl6 | 22:00 | |
colomon | hoelzro++ # works after more complete rebuild | 22:01 | |
hoelzro | \o/ | ||
night masak | |||
colomon | o/ masak | ||
with complete update, I get a completely clean spectest from GLR \o/ | 22:06 | ||
awwaiid hops up and down | |||
22:07
mohij left,
tumblr is now known as xnrand
|
|||
colomon | bad news (for the moment) is that Audio::Taglib::Simple won’t install on GLR. guess I need to switch back to nom for a minute. | 22:08 | |
_itz_ | there is some ecosystem breakage as would be expected | 22:09 | |
22:09
bbkr left,
bbkr joined
22:11
skids joined
|
|||
colomon | _itz_: of course. I’m hoping to get a decent measure of how much breakage and where later today or tomorrow. | 22:15 | |
_itz_ | some of the errors look a little odd | 22:17 | |
22:18
[TuxCM] left
|
|||
_itz_ | the text of the messages I mean | 22:18 | |
22:19
[TuxCM] joined
22:20
pullphinger left
22:23
TEttinger joined
22:24
rurban left
22:31
bbkr left
22:36
espadrine_ left
|
|||
RabidGravy | how soon is the glr going to become the mainstream? I've been holding off testing my modules on the grounds I couldn't be arsed to do it multiple times. | 22:41 | |
BooK | masak: yes, I've been told that and the examples from jnthn talk worked better on it when I tried :-) | 22:42 | |
22:42
muraiki joined
|
|||
BooK | mmm, ok so I was reading my backlog too :-) | 22:43 | |
22:44
rangerprice left
22:45
rangerprice joined
|
|||
RabidGravy | of course until the rt#125408 is fixed I'm not sure what the point would be | 22:45 | |
synbot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=125408 | ||
22:54
spidermario left
|
|||
muraiki | m: say chrs(0x1D047, 0x1D0F0) | 22:56 | |
camelia | rakudo-moar 5ba44f: OUTPUT«𝁇𝃰» | ||
GLRelia | rakudo-moar 57b7eb: OUTPUT«𝁇𝃰» | ||
22:56
thou left
|
|||
muraiki | hrm. I don't suppose anyone can recommend a decent intro to unicode? I thought that 0x1D0F0 was a combining character, but it seems like it's not behaving that way | 22:56 | |
23:01
RabidGravy left
|
|||
muraiki | darn, maybe it's not a combining character. :( | 23:07 | |
geekosaur | .u U+1D0F0 | 23:10 | |
yoleaux | U+1D0F0 BYZANTINE MUSICAL SYMBOL KENTIMATA NEO MESO [So] (𝃰) | ||
muraiki | yeah, I think I can't use this the way I hoped to | ||
oh well | |||
23:11
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
muraiki | I guess it was too much to expect unicode to not only have byzantine notation characters but also to work as a layout engine for byzantine chant :) | 23:11 | |
japhb | Given the machine-native guts of github.com/rakudo/rakudo/commit/994fb0aa3f , why doesn't IO::Handle.print have a str multi to avoid the box and unbox of $str in the call to $out.print($str)? | 23:17 | |
I would think that might actually chew up a fair amount of GC and performance during heavy output, especially when you consider that multi sub print() has the same problem. | 23:19 | ||
23:21
cognominal joined
23:22
llfourn joined
|
|||
TEttinger | muraiki: I'm curious what kind of project actually uses the really rare parts of unicode | 23:23 | |
(I guess they were added because they thought they would be used, but Byzantine is starting to describe some parts of implementing unicode it seems, heh) | 23:24 | ||
23:27
llfourn left
|
|||
muraiki | TEttinger: hehe. I actually sing byzantine chant using byzantine notation. I'd like to write a FLOSS editor for it. it's actually the project that led me to switching careers to become a programmer | 23:27 | |
TEttinger | wow! | 23:28 | |
muraiki | but now that I'm a professional programmer, I haven't actually done much work on that project. seeing additional byzantine chant code points added in unicode 8 got my hopes up | ||
at the very least I now have a way to encode neumes using an international standard | |||
instead of "some weird font, character 7" | |||
I wrote the initial version in racket, which turned a type of byzantine chant lisp into graphical output | 23:29 | ||
TEttinger | nice | ||
muraiki | there's a picture here github.com/muraiki/byzscribe | ||
TEttinger | I mean I have no idea if it's right or not, but that does look like a fair amount of work to input each character. hopefully perl6 can be easier to write this with? | 23:33 | |
muraiki | yeah, I was hoping to use p6's great unicode support and grammars | ||
and now I would be able to store the actual characters with some additional info, instead of long english names | 23:34 | ||
I suppose I will have to pick up The Haskell School of Music again... it goes through learning music theory + haskell by developing a way to both encode music and render it. I've never done any kind of real programming that had to deal with laying out complex things graphically | 23:35 | ||
23:36
aborazmeh left
23:39
virtualsue left
23:41
leont left
23:43
yqt left
23:48
aborazmeh joined,
aborazmeh left,
aborazmeh joined
23:59
thou joined
|