»ö« 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! | feather will shut down permanently on 2015-03-31 Set by jnthn on 28 February 2015. |
|||
00:00
labster left,
labster joined
00:25
perturbation left
|
|||
ssqq | p6: say PairMap.new('a' => 'b') | 00:26 | |
camelia | rakudo-moar 7bef4a: OUTPUT«a => b» | ||
ssqq | p6: say PairMap.new('a' => 'b').WHAT | ||
camelia | rakudo-moar 7bef4a: OUTPUT«(PairMap)» | ||
00:28
raiph joined
00:31
vendethiel left
00:41
dolmen joined
00:44
grettis left
00:48
aborazmeh joined,
aborazmeh left,
aborazmeh joined
00:51
aborazmeh left
00:55
laouji joined
|
|||
dalek | ast: 575e61a | TimToady++ | S05-interpolation/regex-in-variable.t: skip test failing for wrong reason Also, add a (skipped) test to show inline pwnage is just a bad. |
00:59 | |
kudo/nom: 1fb4820 | TimToady++ | src/core/Cursor.pm: do submatch with cursors, not substr and ~~ Not only is this more efficient, it also doesn't break anchors or introduce spurious scanning. |
|||
00:59
Ben_Goldberg joined
|
|||
TimToady | that probably fixes an RT or tw | 01:00 | |
*o | |||
raydiak | TimToady++ | 01:01 | |
(though I'll be better off when that mess is factored out as per FROGGS++ implied suggestion) | 01:07 | ||
01:13
yqt left,
laouji left,
laouji joined
|
|||
skids | .tell jnthn gist.github.com/skids/fd9fc80c545e76da7d29 | 01:16 | |
yoleaux | skids: I'll pass your message to jnthn. | ||
01:17
yeahnoob joined
|
|||
TimToady | m: say "foo" ~~ /<{"<at(1)> o ** 2 ";}>/ | 01:20 | |
camelia | rakudo-moar 1fb482: OUTPUT«「oo」» | ||
TimToady | m: say "foo" ~~ /<{"^ o ** 2 ";}>/ | ||
camelia | rakudo-moar 1fb482: OUTPUT«Nil» | ||
TimToady | all better (except it's still using EVAL for the moment) | 01:21 | |
and not using EVAL will only stop the Bobby-Tables-style pwnage, not the inline executable code pwnage | 01:22 | ||
that needs to be handled by a restricted subset of regex lanauge | 01:23 | ||
*guage | |||
01:24
dayangkun joined
01:25
ssqq left
|
|||
raydiak | and now it catches a mistake I made that it didn't report before, very nice...ended my present bughunt | 01:29 | |
01:31
vendethiel joined,
ssqq joined
|
|||
dalek | kudo/tab-completion: 83fd4f4 | hoelzro++ | src/Perl6/Compiler.nqp: Don't add to completions set unless linenoise is active It doesn't make sense unless we have a tab completion facility |
01:32 | |
kudo/tab-completion: 86f277b | hoelzro++ | src/Perl6/Compiler.nqp: use nqp; when loading Linenoise for tab completion Otherwise we get a warning |
|||
01:34
spider-mario left
|
|||
TimToady guesses it found a null regex | 01:34 | ||
due to the removal of the bogus ^ assertions that anchored the match to the start of the substr previously | 01:36 | ||
raydiak | escaped a space into an unspace instead of quoting it; no idea why it didn't trigger before | 01:37 | |
01:37
hahainternet left
01:39
hahainternet joined
|
|||
raydiak | ah that must have been due to your earlier fix when it still interpolated escaped escapes instead of spaces | 01:39 | |
TimToady | likely | 01:40 | |
we'll need to figure out what to do with the failure in S17-procasync/basic.t before release, since it comes from misinterpreting an uninitialized Proc::Status as an initialized one | 01:44 | ||
(we now initialize the exitcode to -1 instead of Any, to catch this sort of thinko) | |||
but the test is now wrongish | 01:45 | ||
TimToady has to wander off, so someone else can look at that if they like | |||
raydiak | .tell tadzik github.com/tadzik/panda/pull/154 | 01:58 | |
yoleaux | raydiak: I'll pass your message to tadzik. | ||
02:02
noganex joined
|
|||
raydiak is now looking at the aforementioned test | 02:03 | ||
02:05
noganex_ left
02:18
vendethiel left
02:24
cognominal left
|
|||
raydiak | is it normal to deprecate attributes using a method under the old name? it makes for silent failure when using the old name as a constructor arg | 02:27 | |
02:32
cschwenz joined
02:34
cschwenz left
02:49
ssqq left
03:00
noganex_ joined
03:02
adu joined,
vendethiel joined
03:03
noganex left
|
|||
raydiak | .tell TimToady there isn't actually anything wrong with those Proc::Async tests themselves, is there? github.com/rakudo/rakudo/pull/412 fixes it for me | 03:06 | |
yoleaux | raydiak: I'll pass your message to TimToady. | ||
03:22
Sysaxed left
03:25
alini joined
04:17
vendethiel left
04:28
Zoffix joined
04:32
vendethiel joined
04:53
Ben_Goldberg left
04:56
vendethiel left
05:01
vendethiel joined
05:02
diana_olhovik_ joined
05:04
raiph left,
laouji left
05:05
laouji joined
05:06
skids left
05:08
kaare_ joined
05:09
laouji left
05:12
dalek left
05:13
dalek joined,
ChanServ sets mode: +v dalek
05:15
xfix joined,
inokenty left
05:21
kst left
05:22
colomon joined
05:23
vendethiel left
05:24
diana_olhovik_ left
05:26
vendethiel joined
05:31
inokenty joined
05:33
laouji joined
|
|||
raydiak | m: sub trait_mod:<is> (Attribute $a, :$foo!) { say $a.^attributes.first(*.name eq '$!build_closure').get_value($a) }; class Foo { has $.foo is foo = 'foo' } | 05:36 | |
camelia | rakudo-moar 1fb482: OUTPUT«5===SORRY!5=== Error while compiling /tmp/kuZ6yDGLZWMethod 'get_value' not found for invocant of class 'BOOTSTRAPATTR'at /tmp/kuZ6yDGLZW:1» | ||
raydiak | ^ how can I get at that? | ||
05:51
vendethiel left
06:00
GHAAA0QH joined
06:02
rindolf joined
06:06
adu left
06:07
mr-foobar left
|
|||
tadzik | raydiak: merged, thanks :) | 06:07 | |
yoleaux | 01:58Z <raydiak> tadzik: github.com/tadzik/panda/pull/154 | ||
raydiak | yw :) | 06:10 | |
jnthn | morning, #perl6 | 06:24 | |
yoleaux | 01:16Z <skids> jnthn: gist.github.com/skids/fd9fc80c545e76da7d29 | ||
06:25
vendethiel joined
|
|||
nwc10 | morning, jnthn | 06:26 | |
jnthn | .tell skids Sounds worth wiring up | 06:27 | |
yoleaux | jnthn: I'll pass your message to skids. | ||
06:39
RabidGravy joined
06:46
telex left
06:48
telex joined,
vendethiel left
06:51
domidumont joined
06:53
dolmen left
06:56
domidumont left,
domidumont joined
|
|||
masak | morning, #perl6 | 06:59 | |
moritz | \o masak | 07:04 | |
07:04
_mg_ joined
|
|||
tadzik | hello hello | 07:05 | |
did you do your backups today? | |||
dalek | kudo/nom: 2b6ae81 | raydiak++ | src/core/ (3 files): More Proc::Status.exit -> .exitcode conversions |
||
kudo/nom: c8371ec | FROGGS++ | src/core/ (3 files): Merge pull request #412 from raydiak/nom More Proc::Status.exit -> .exitcode conversions |
|||
masak | tadzik: oh, today is International Backup Day? | 07:06 | |
moritz can't do his backup, hard disk broken | |||
07:08
MARTIMM joined
|
|||
tadzik | masak: kinda | 07:08 | |
masak: I lost my data, and in a pretty ironic way too | |||
ubuntu's encryption system screwed up, won't accept my password anymore | 07:09 | ||
I have it all there, it's just... unreadable | |||
moritz | .oO( CAPS LOCK ) |
||
07:10
zakharyas joined
07:11
xfix left
|
|||
masak .oO( dvorak ) | 07:11 | ||
by the way, people, Perl 3.5 type hints: lwn.net/Articles/640359/ | 07:12 | ||
but, kind of like Dart, they "are designed to be ignored by the interpreter" :/ | |||
moritz wonders if there's a meme that involves the word "Mojibake" written on a dvorak keyboard as if it were a querty keyboard | |||
masak: s/Perl/Python/ | |||
07:13
pecastro left
|
|||
moritz | and WTBH are types worth if they aren't enforced? | 07:13 | |
masak | moritz: indeed, Python. | ||
moritz | my experience with Perl 6 is that their worth is negative | 07:14 | |
masak | moritz: I'm drinking the coffee, but it hasn't reached my brain yet ;) | ||
moritz | you write type hints because you think it's a good thing | ||
masak | moritz: yes, excatly. | ||
moritz | but of course you screw up, because you're an imperfect human being | ||
masak | moritz: it grates against my sense of "you should get that feedback ASAP" | ||
moritz | and year later, somebody does write a type checker, and program blows up all in your face | ||
and until then, they worth exactly as much as outdated comments | 07:15 | ||
except that everybody *knows* that comments may be outdated | |||
masak | moritz: OTOH, if you integrate it into your IDE, then it could be quite OK. like TypeScript. | ||
moritz | masak: if the language is tied to The One True IDE, then yes | 07:16 | |
masak | well, type hints are optional. | ||
if you're not in the One True IDE, then you can just skip them. | |||
07:16
alini left
|
|||
moritz | well, they are optional in Perl 6 too, and still people wrote (wrong) type annotations | 07:17 | |
masak | *nod* | ||
because they liked it, I guess. | |||
yes, I see what you mean is the danger. and I agree. | |||
07:18
bjz joined
|
|||
moritz | because they thought it'd make their code safer, once the types were enforced | 07:18 | |
masak | it falls under "never write a line of code and then not run it" | 07:21 | |
moritz | and just to be clear, it wasn't just "them" who fell into the trap; I'm sure I did too | 07:22 | |
masak | from henrikwarne.com/2015/04/16/lessons-...velopment/ | ||
moritz | agreed | ||
07:27
Rounin joined,
FROGGS joined
07:28
vendethiel joined
07:41
rindolf left
07:47
bjz left
08:04
rurban joined
08:07
darutoko joined
08:09
bjz joined
08:16
OODavo joined
|
|||
OODavo | Is there a convention for invoking "normal" subs on the topic variable? .thesub is recommended by Rakudo if you try to write just thesub, but .thesub doesn't actually work since there isn't a method by that name defined. | 08:18 | |
moritz | thesub($_) | 08:20 | |
maybe .&thesub works | |||
m: given 42 { .&say } | |||
camelia | rakudo-moar c8371e: OUTPUT«42» | ||
moritz | but it's a bit more obscure than say($_), so I wouldn't use it | 08:21 | |
OODavo | .say actually just works since there *is* a .say method. | ||
08:23
yqt joined
|
|||
moritz | yes, but .&say invokes the say subroutine | 08:23 | |
m: sub f($x) { say 2 * $x }; given 21 { .&f } | |||
camelia | rakudo-moar c8371e: OUTPUT«42» | ||
08:24
bjz left
|
|||
OODavo | Neat. thesub($_) is certainly more obvious though, yeah. | 08:25 | |
Thanks. | |||
08:26
bjz joined
|
|||
OODavo | Hmm. Approaching from the opposite direction, is it idiomatic to add methods to core types, after which .thesub *will* work? | 08:28 | |
08:31
zeleiadi joined
|
|||
moritz | OODavo: the idiomatic way is not to do it | 08:32 | |
08:32
vendethiel left
|
|||
moritz | OODavo: instead you can use multi subs, where it's easy to add candidates for both new and existing types | 08:32 | |
OODavo: adding methods to core classes modifies global state, which is a really bad idea | |||
nwc10 | The only idiomatic way is www.imdb.com/title/tt0086567/quotes...=qt0453844 ? | 08:33 | |
08:34
vendethiel joined
08:35
bjz left
08:38
domidumont1 joined,
domidumont left
08:47
raiph joined
|
|||
zeleiadi | Hello. I think I found a bug in Str::chop. It accepts a number of chars to chop. When called with the length of the string + 1, it returns the original string. For example 'abc'.chop(4) returns 'abc'. | 08:47 | |
moritz | m: say 'abc'.chop(4) | 08:48 | |
camelia | rakudo-moar c8371e: OUTPUT«abc» | ||
moritz | m: say 'abc'.chop(2) | ||
camelia | rakudo-moar c8371e: OUTPUT«a» | ||
moritz | m: say 'abc'.chop(3) | ||
camelia | rakudo-moar c8371e: OUTPUT«» | ||
moritz | m: say 'abc'.chop(5) | ||
camelia | rakudo-moar c8371e: OUTPUT«Substring length (-2) cannot be negative in method chop at src/gen/m-CORE.setting:7259 in block <unit> at /tmp/5xy_BHdCJT:1» | ||
08:48
Ven joined
|
|||
jnthn | m: say 'a'.chop; say ''.chop; | 08:49 | |
camelia | rakudo-moar c8371e: OUTPUT«» | ||
08:49
andreoss joined,
andreoss left
|
|||
jnthn | m: say ''.chop(2); | 08:49 | |
camelia | rakudo-moar c8371e: OUTPUT«Substring length (-2) cannot be negative in method chop at src/gen/m-CORE.setting:7259 in block <unit> at /tmp/mbxGx9sMbn:1» | ||
moritz | zeleiadi: yes, bug | ||
08:49
andreoss joined
|
|||
jnthn agrees | 08:49 | ||
moritz | zeleiadi: please submit it by email to [email@hidden.address] | 08:50 | |
FROGGS | zeleiadi++ # good catch | 08:52 | |
zeleiadi | thanks | ||
I think I can patch it, but I am new here, so I don't know the procedure | 08:53 | ||
08:54
dakkar joined
|
|||
OODavo | moritz: Ah, yeah, I figured that might be the deal. Monkey-patching does lead to an awful mess in Ruby. | 08:54 | |
08:54
Ven left
|
|||
nwc10 | zeleiadi: one viable procedure is a pull request on github | 08:55 | |
jnthn | Pull requests work, as does emailing the patches | ||
Also it's very helpful if there's a test. You can get a commit bit on the tests repository very easily just by asking here for it. | 08:56 | ||
moritz | jnthn: asking is not enough; we also need to know the github username :-) | ||
jnthn | Uh, true :-) | 08:57 | |
zeleiadi | ok, thank you, i will try to do a pull request soon | 08:58 | |
there is two way to fix the code, one is to remove the chop count parameter, the other is to fail with an exception if number of chops > length of the string, i am not sure which one is better | 09:00 | ||
moritz | and the third is to return the empty string | 09:01 | |
jnthn | The third is to just produce the empty string. I'd check exactly what substr does in such cases. | ||
moritz | but removing the count param seems to be correct | ||
jnthn | I'm not so sure... | ||
moritz | S32/Str doesn't talk about that param | ||
jnthn | I think the count parameter is reasonable. | ||
Ah... | |||
But it might be being used "in the wild" | 09:02 | ||
moritz | and roast doesn't use it either | ||
jnthn | *nod* | ||
Wonder how we got it. | |||
moritz | commit 831b1d458c98d003c1125ca3c76ff85e68ffeb32 | 09:03 | |
Author: Elizabeth Mattijsen [email@hidden.address] | |||
Date: Thu May 15 20:08:37 2014 +0200 | |||
Str.chop accepts count of number of chars to chop | |||
but it wasn't mentioned in the changelog | |||
so, I'd deprecated it | 09:04 | ||
(add a multi where $chars is mandatory, and deprecate that) | |||
09:04
Ven joined
|
|||
zeleiadi | Ok | 09:05 | |
09:15
yqt left
|
|||
lizmat | fwiw, I have no recollection on why I did that ~ 1 year ago | 09:17 | |
09:17
Ven left
|
|||
lizmat | perhaps the irclog will tell | 09:17 | |
meanwhile, afk again& | |||
09:24
RabidGravy left
09:34
espadrine joined
09:41
vendethiel left
|
|||
nine | lizmat: 07:58 lizmat otoh I wouldn't mind having .chop(3) : | 09:44 | |
irclog.perlgeek.de/perl6/2014-05-15#i_8726574 | |||
09:45
yeahnoob left
|
|||
nine | Don't you love written and automatically logged communications? | 09:45 | |
09:49
andreoss` joined
|
|||
moritz does | 09:50 | ||
09:51
dolmen joined
09:54
andreoss left
09:58
vendethiel joined
10:00
xfix joined,
xfix left,
xfix joined
10:09
rindolf joined,
raiph left
|
|||
lizmat | .oO( I guess moritz does mind having .chop(3) ) |
10:15 | |
10:17
domidumont1 left
10:18
domidumont joined
|
|||
jnthn | .oO( I wouldn't mind having .chop($suey) ) |
10:19 | |
10:20
vendethiel left,
laouji left
|
|||
jnthn | I don't especially mind us having it, in so far as it saves doing a little mental arithmetic to write out substr instead. | 10:20 | |
I do mind it not being tested and being buggy though. ;) | |||
10:22
dolmen left
|
|||
moritz | and not being documented, for that matter | 10:26 | |
10:27
pecastro joined
|
|||
lizmat | m: use nqp; my int $elems = 20; say nqp::rand_I(nqp::decont($elems),Int) # jnthn: why the decont ? | 10:27 | |
camelia | rakudo-moar c8371e: OUTPUT«1» | ||
lizmat | m: use nqp; my int $elems = 20; say nqp::rand_I($elems,Int) # jnthn: why the decont ? | ||
camelia | rakudo-moar c8371e: OUTPUT«This representation (NativeRef) cannot unbox to other types in block <unit> at /tmp/A036NrvwF9:1» | ||
jnthn | lizmat: Use nqp::decont_i | 10:28 | |
lizmat | but why would I need a decont on a native int ?? | ||
jnthn | lizmat: And because nqp::rand_I doesn't do one I guess. | ||
lizmat: Evidently because it's taking a lexref there | |||
What's the signature of rand_I? | |||
lizmat | rand_I(Int $i, Mu:T $type) | 10:29 | |
according to documentation | |||
jnthn | Upper-case Int? | ||
lizmat | that's what it says | ||
jnthn | In which case it is taking a big integer | ||
And so feeding it a native integer is just making us do more work. | |||
lizmat | m: use nqp; my Int $elems = 20; say nqp::rand_I($elems,Int) | 10:30 | |
camelia | rakudo-moar c8371e: OUTPUT«P6opaque: get_boxed_ref could not unbox for the representation '20' in block <unit> at /tmp/MGhhZf44H0:1» | ||
lizmat | ?? | ||
but using an Int doesn't work ? | |||
jnthn | Still needs the decont, apparently :) | ||
Though that's consistent | |||
See the infix:<+>(Int, Int) candidate for example. | 10:31 | ||
nqp::ops only auto-decontainerize if we mark them up as doing so | |||
For the big integer ones, we consistently haven't so far. | |||
lizmat | I guess I see the consistency now, but not yet understanding it yet :-) | 10:32 | |
jnthn | There's no deep reason, as I remember; it's just "how we've done it". | 10:34 | |
lizmat | hysterical raisins | ||
:-) | 10:35 | ||
jnthn | Pretty much. It's only a minor pain to change. | ||
But an equally minor one not to change too I guess. :) | |||
lizmat | apart from dropping the number of nqp::decont() needed to be typed, would there be a runtime advantage ? | ||
jnthn | No, 'cus the alternative is just having the QAST -> MAST thingy insert them. | 10:36 | |
Except it can't know when it needs to so always does. | |||
lizmat | so a runtime disadvantage | 10:37 | |
jnthn | Potentially. Except spesh is quite good at removing unrequired decont ops too :) | ||
lizmat | well, then maybe it can wait until rakudo itself is self-hosting :-) | 10:38 | |
jnthn | That punts it a good long way down the road. :) | ||
lizmat | I think it's only a WAT for core setting maintainers | 10:40 | |
jnthn | Indeed. | ||
And only occasinally then. :) | |||
nwc10 | WAT? | ||
(where's my S99infobot?) | |||
jnthn | S99:WAT | 10:41 | |
synbot6 | Link: design.perl6.org/S99.html#WAT | ||
nwc10 | dear synbot99, could you be fetching that for me and putting it in channel? | ||
10:43
dayangkun left
|
|||
zeleiadi | I've submitted a pull request on github with the patch to Str::chop | 10:45 | |
FROGGS | zeleiadi: it should be deprecated since 2015.04 me thinks | 10:46 | |
zeleiadi | thanks, i'll change it | 10:47 | |
FROGGS | you can just commit that change to your deprecate_chop_param branch and it will be put into that PR | ||
lizmat | zeleiadi: afiacs, that patch doesn't address the behaviour if count exceeds string length | ||
FROGGS | how does the deprecation message look like btw? | 10:49 | |
I hope it does not just tell "chop is deprecated please you chop instead" | |||
zeleiadi | it does, sorry | 10:50 | |
10:51
RabidGravy joined
|
|||
FROGGS | np | 10:51 | |
lizmat | .oO( maybe it would make more sense to document and write tests ) |
10:52 | |
FROGGS | :P | ||
nine | Well it exists because there clearly was some use-case where it made sense. What was the use-case exactly? | 10:53 | |
lizmat | lib/Test.pm | 10:54 | |
262: $indents .= chop(4); | |||
FROGGS | so it should be along the lines of "DEPRECATED('chop without arguments', |<2015.04 2015.09>);" instead, despite the missing check for the empty string case | ||
lizmat | I remember now | ||
it's part of the subtest support in Test.pm | |||
FROGGS | hmmm | ||
lizmat | .oO( one could argue it *is* being tested :-) |
10:55 | |
FROGGS | or useful | ||
lizmat | I remember writing $indents.chop.chop.chop.chop :-) | 10:56 | |
FROGGS | why do we want a .chop() that chops a single char anyway? | 10:57 | |
nine | And I'm with jnthn that this looks just cute :) But chop(4) is easier to type and makes sense when reading it. | ||
10:58
cognominal joined
|
|||
nine | And 4 can be $chars | 10:58 | |
dalek | kudo/nom: b0e7a59 | lizmat++ | src/core/List.pm: Make List.pick(*) about 10% faster |
||
FROGGS | how often does one chop a single char? | ||
lizmat | FROGGS: if one wants to get rid of a trailing / in a path, e.g. ? | 10:59 | |
FROGGS | I either remove trailing newlines characters or not | ||
ahh | |||
I guess I use regexes for that | |||
so I don't have to care if there is a trailing slash or not | |||
nine | Sounds like chomp | 11:00 | |
FROGGS | so I'd vote for: either .chop will let you specify the number of chars to chop, or the implicit .chop(1) can go away | ||
dalek | Heuristic branch merge: pushed 18 commits to perl6-examples by paultcochrane | 11:01 | |
lizmat | FROGGS: so .pick should become .pick(1) as well ? | ||
FROGGS | no, the optional arg is okay | 11:02 | |
just limiting to always be 1 isnt | |||
lizmat | ok, then we're on the same page :-) | ||
FROGGS | lizmat: that's like we only allow .pick() which would meant .pick(1) | ||
lizmat | agree, | 11:03 | |
I got the impression you meant the opposite :-) | |||
FROGGS | no no :o) | ||
jnthn away for a bit | 11:05 | ||
FROGGS | so we shall put .chop(N) (and &chop(N)) in the design docs and add tests | ||
FROGGS was just away for a byte | 11:06 | ||
nine | I'd argue that if chop has an N argument, chomp should have one, too | ||
lizmat | nine: but that doesn't make much sense? | ||
I mean, only if you have multiple newlines at the end ?? | |||
FROGGS | m: say "foo\n\n\n".chomp | ||
camelia | rakudo-moar c8371e: OUTPUT«foo» | ||
FROGGS | m: say "foo\n\n\n".chomp(*) | 11:07 | |
camelia | rakudo-moar c8371e: OUTPUT«Too many positionals passed; expected 1 argument but got 2 in method chomp at src/gen/m-CORE.setting:7235 in block <unit> at /tmp/sSqpdotAdi:1» | ||
lizmat | m: say "foo\n\n\n\n".chomp(*) | ||
camelia | rakudo-moar c8371e: OUTPUT«Too many positionals passed; expected 1 argument but got 2 in method chomp at src/gen/m-CORE.setting:7235 in block <unit> at /tmp/a4Takex0An:1» | ||
FROGGS | I'd like to see that | ||
lizmat | wow :-) | ||
FROGGS | well, see that working :o) | ||
lizmat | FROGGS: before or after the release :-) | ||
FROGGS | I don't mind as this does not break anything | 11:08 | |
but, masak++'s opinion is the one that counts | |||
nine | That looks like chomp already removing all newlines and not just one? | 11:09 | |
FROGGS | nine: no, it removes one | ||
nine | FROGGS: ah, then I misinterpreted camelia's output | ||
moritz | m: say "foo\n\n\n".chomp.perl | ||
camelia | rakudo-moar c8371e: OUTPUT«"foo\n\n"» | ||
FROGGS | m: my $foo = "foo\n\n\n\n\n\n"; say $foo.chars; say "foo\n\n\n".chomp.chars | ||
camelia | rakudo-moar c8371e: OUTPUT«95» | ||
FROGGS | eww | ||
errm | 11:10 | ||
11:10
vendethiel joined
|
|||
FROGGS | wth does it do? | 11:10 | |
removing two because windows newlines tend to be two chars long? | |||
torbjorn | I asked last night about grammars and actions. I tried something out, but instead of $key => $value , I get 0 => $key, 1 => $value , when I have make ~$0 => ~$1 in my action method | 11:11 | |
FROGGS | m: my $foo = "foo\n\n\n\n\n\n"; say $foo.chars; say $foo.chomp.chars # me being stupid | ||
camelia | rakudo-moar c8371e: OUTPUT«98» | ||
FROGGS | okay, sanity restored | ||
torbjorn: can you show us the code? in a gist or so? | 11:12 | ||
11:12
yqt joined
|
|||
FROGGS | ahh, but I guess there is a positional capture in $0 and $1 each | 11:13 | |
[ptc] | hrm, should $*PROGRAM_NAME be kebab-cased? | ||
torbjorn | FROGGS: fpaste.org/214693/42978763/ | 11:14 | |
nwc10 | mmm, | ||
kebabs++ # tastier than camels | |||
lizmat | [ptc] probably should | ||
but that's my opinion | |||
FROGGS | torbjorn: replace the ( ) by [ ] at line 28 | ||
torbjorn: to have a non capturing group | 11:15 | ||
torbjorn | ah yes, that was my switching from numbered to named captures | ||
[ptc] | lizmat: just ran across it in some code and made me wonder | ||
lizmat | irclog.perlgeek.de/perl6/2015-04-22#i_10484556 | ||
I guess $*PROGRAM_NAME is not internal | 11:16 | ||
torbjorn | but i still get the same, that is i get key => "cost", value => 1 (as an example), instead of cost => 1 | ||
11:17
pecastro left,
pecastro joined
11:19
ssqq joined
|
|||
dalek | kudo/nom: 0c0eb13 | lizmat++ | src/core/ (2 files): Make chop/.chop first class citizens |
11:21 | |
FROGGS | torbjorn: that's because you don't use what rule pair has made | 11:23 | |
torbjorn: you need a method weapondef that does something like: make $<pair>.made, though, you need to take the other capture into account too | 11:24 | ||
dalek | ecs: 0f49a85 | lizmat++ | S32-setting-library/Str.pod: .chop accepting number of chars to remove |
||
11:24
Zoffix left
|
|||
torbjorn | i see.. it needs to "bubble" up the tree, sort of? | 11:24 | |
FROGGS | yes | 11:25 | |
you are just printing the captures, not what the actions produced | |||
so you also have to: say Dart.parse(...).made | 11:26 | ||
or even: say Dart.parse(...).?made # in case it failed to parse | |||
torbjorn | ah yes, perhaps i also need a weapon and a TOP method? | ||
FROGGS | yes | ||
all methods that are in that chain actually | |||
torbjorn: now you can write a compiler too :o) | 11:29 | ||
torbjorn | icanwhatnow | 11:30 | |
FROGGS | when you look at Perl6::Grammar and Perl6::Action you'll see something very close to what you did | ||
moritz | or github.com/moritz/json/ for a less scary example :-) | 11:31 | |
though iirc it still uses .ast instead of .made | |||
FROGGS | our grammar and actions arn't scary... they are just huge | 11:32 | |
torbjorn | i hear you say that | ||
where does it say what "make" and made do? | |||
FROGGS | but I see that the size can matter... when looking at spiders for example | ||
torbjorn | perfect example | ||
FROGGS | doc.perl6.org/type/Match#method_made | 11:33 | |
though, that's not much here | |||
torbjorn | so far i follow | ||
11:33
vendethiel left
|
|||
torbjorn | there docs on that page are somewhat circular | 11:33 | |
FROGGS | "make foo" is like: $/.made = foo | 11:34 | |
torbjorn | i guessed that much from looking at examples. so thats all there is to it? | ||
FROGGS | and then you access $<bar>.made, becaude te $<bar> is what $/ was in method bar | ||
ye | |||
yes | |||
torbjorn | its an object variable that has a nice setter and getter? | ||
FROGGS | an attribute, but yes, exactly | 11:35 | |
torbjorn | not that theres anyhting wrong with that, but im just used to being blown away by stuff i learn in perl 6, and this is so .. simple. the name "make" had so much promise to it :) | ||
as in "make something great"! | |||
which i suppose in the right hands, this is | 11:36 | ||
FROGGS | github.com/rakudo/rakudo/blob/nom/...tch.pm#L84 | ||
torbjorn | does the .made attribute play any parcitular role rather than being a box to stuff data in? | ||
FROGGS | no, you can shovel anything in there, and use it from the outer action method | 11:37 | |
torbjorn | ok, thanks | ||
cognominal | in the Setting, some classes are introduced with "my", some not, like Pod::*, VM, Uni. What is the rationale? | 11:38 | |
11:38
_mg_ left
|
|||
FROGGS | for json parsing we just put datastructures in there for what we have parsed, and for rakudo we put QAST stuff in there (parts of our AST that tells what we have to execute later) | 11:38 | |
lizmat | cognominal: hysterical raisins, afaik | ||
11:39
RabidGravy left
|
|||
cognominal | I probably need to understand the diff between an outrmost my in a module and our, btw. | 11:39 | |
FROGGS | cognominal: I just know that package declarations default to our... but I have no idea what different it makes here | ||
nine | I think the docs should be quite explict that make/made are really that simple. Just a little convenience magic, much not more. I remember having a hard time getting to that conclusion. | ||
11:39
zeleiadi left
|
|||
FROGGS | ++nine # github.com/perl6/doc/blob/master/l.../Match.pod | 11:40 | |
11:42
vendethiel joined
11:45
_mg_ joined
|
|||
dalek | ast: c4328db | lizmat++ | S32-str/chop.t: Add some chop tests |
11:45 | |
c: 8020e4d | (Stefan Seifert)++ | lib/Type/Match.pod: Try to answer FAQ about make/made |
11:46 | ||
nine | Jay, I got a commit bit :) | ||
lizmat | ++nine | 11:47 | |
11:50
zeleiadi joined
11:52
skids joined
|
|||
moritz | nine++ | 11:53 | |
skids | jnthn: so just send PRs for the windows-1252 glue? | 11:54 | |
yoleaux | 06:27Z <jnthn> skids: Sounds worth wiring up | ||
FROGGS | .tell hoelzro seems the tab-completion branch passed some sanity tests right now... | 11:55 | |
yoleaux | FROGGS: I'll pass your message to hoelzro. | ||
11:56
zeleiadi left
11:58
yqt left
12:00
zeleiadi joined
|
|||
zeleiadi | \leave | 12:03 | |
12:03
zeleiadi left
12:04
vendethiel left
|
|||
[ptc] | domidumont: is there anything I can do to help with package building? | 12:04 | |
FROGGS | .tell hoelzro the three branches look good, so we can merge it right after release | 12:07 | |
yoleaux | FROGGS: I'll pass your message to hoelzro. | ||
domidumont | [ptc]: yes. I've justed pushed nqp package on debian repo with a todo list in debian/changelog | ||
FROGGS | domidumont: can one (sombody with zero packaging skills) track the packaging status somehow? | ||
I remember there are build stats for various platforms | 12:08 | ||
domidumont | FROGGS: you can track what was uploaded with Debian qa page for rakudo maintainer: qa.debian.org/developer.php?login=...debian.org | 12:10 | |
12:11
dalek left
|
|||
hoelzro | FROGGS: thanks for looking! | 12:11 | |
yoleaux | 11:55Z <FROGGS> hoelzro: seems the tab-completion branch passed some sanity tests right now... | ||
12:07Z <FROGGS> hoelzro: the three branches look good, so we can merge it right after release | |||
FROGGS | hoelzro++ | ||
domidumont | FROGGS: work in progress is harder to track: some team (like debian-perl) annotate debian changelog to communicate status. I reuse this practice for rakudo team | ||
12:11
dalek joined,
ChanServ sets mode: +v dalek
|
|||
FROGGS | k | 12:12 | |
[ptc] | domidumont: ok, thanks | 12:13 | |
domidumont | besides, I have a problem with the jar files provided in nqp tarball: these are not source files. Per debian policy, I'll have to remove these files because they can't be rebuilt | ||
FROGGS | what jar files? in stage0? | 12:14 | |
domidumont | yes | ||
FROGGS | these can be rebuild | ||
domidumont | and in 3rd party | ||
FROGGS | in 3rd party perhaps not so | ||
domidumont | I expect 3rd party files to be available through another package (like libtommath for moar) | ||
FROGGS | to rebuild stage0: configure && make && make m-bootstrap-files | 12:15 | |
dalek | kudo/nom: 587d309 | lizmat++ | docs/ChangeLog: Add some ChangeLog entries |
||
FROGGS | yeah | ||
lizmat | this is mostly for stuff I understand ^^ | ||
FROGGS | lizmat++ # I also have to check for stuff to add | 12:16 | |
lizmat | please help the release manager by checking it and mentioning any omissions / errors / clarifications | ||
afk for a bit& | |||
FROGGS | domidumont: for jna there is a package, but we don't use it (yet): packages.debian.org/de/sid/all/lib...a/filelist | ||
12:18
noganex_ left
12:19
dalek left
|
|||
domidumont | [ptc]: do you know libtommath upstream maintainers ? | 12:19 | |
12:19
dalek joined,
ChanServ sets mode: +v dalek
|
|||
FROGGS | domidumont: I made an issue: github.com/perl6/nqp/issues/235 | 12:20 | |
moritz | domidumont: I've had some pull requests accepted by them, but we're still waiting for a release | ||
domidumont | FROGGS: good to know, we can tweak nqp packaging to use libjna package | ||
FROGGS | domidumont: I also tried to speak to them without luck | ||
12:20
noganex joined
12:21
dalek left
|
|||
[ptc] | domidumont: unfortunately not... | 12:21 | |
domidumont | moritz: okay, I'll create an issue there explaining the problem from a distro point of view. | 12:22 | |
arnsholt | moritz: That's a good point. We have custom stuff in both tommath and dyncall, don't we? | ||
FROGGS | domidumont: I fixed the issue as it mised up asm and jna | ||
arnsholt: everything is reported upstream | |||
12:22
baest_ joined
|
|||
FROGGS | arnsholt: it is in their developement branch in case of libtommath, and in master (or whatever hg calls it) for dyncall | 12:23 | |
and I have good connection to the dyncall guys | |||
arnsholt | That's good at least | ||
But what versions are in Debian? | |||
domidumont | arnsholt: you might say that nqp has custom stuff compared to latest libtommath release... | ||
12:23
dalek joined,
ChanServ sets mode: +v dalek
|
|||
arnsholt | Yeah, basically | 12:23 | |
12:23
baest left,
baest_ is now known as baest
|
|||
domidumont | Usually, only "officially" released versions | 12:23 | |
FROGGS | huh, there is no dyncall debian package? | ||
domidumont | FROGGS: no | 12:24 | |
FROGGS | okay | ||
was just surprised | |||
domidumont | dyncall is rebuilt with moar package | ||
[ and dyncall makes the most of debian/copyright file for moar ... oh well ] ftp-master.debian.org/new/moarvm_2...-copyright | 12:26 | ||
[ptc]: can you fix some issues mentioned in debian/changelog ? | 12:31 | ||
12:32
skids left
|
|||
[ptc] | domidumont: I'm looking at that stuff now | 12:33 | |
domidumont: I don't have push access to the pkg-nqp repo, right? I have to make my own branch and submit patches? | 12:34 | ||
domidumont | no, you can push directly | ||
no problem, it's git, we can fix everything afterwards ;-) | 12:35 | ||
[ptc] tries git push again | |||
12:35
BinGOs left
|
|||
[ptc] | domidumont: :-) | 12:35 | |
domidumont | cool :-) | ||
12:35
BinGOs joined
|
|||
dalek | pan style="color: #395be5">perl6-examples: f329e29 | paultcochrane++ | categories/euler/prob036-xenu.pl: Make output verbosity optional |
12:40 | |
pan style="color: #395be5">perl6-examples: a461d85 | paultcochrane++ | categories/euler/prob081-moritz.pl: Remove superfluous output |
|||
pan style="color: #395be5">perl6-examples: 81d99c8 | paultcochrane++ | categories/euler/prob063-moritz.pl: Make progress output optional |
|||
pan style="color: #395be5">perl6-examples: 08df7a7 | paultcochrane++ | categories/euler/prob063-polettix.pl: Make verbose progress information optional |
|||
pan style="color: #395be5">perl6-examples: 8a59b65 | paultcochrane++ | categories/euler/prob188-shlomif.pl: Simplify output |
|||
pan style="color: #395be5">perl6-examples: 3ce582d | paultcochrane++ | categories/euler/prob168-shlomif.pl: Make verbose progress output optional |
|||
pan style="color: #395be5">perl6-examples: e9b9c90 | paultcochrane++ | t/categories/euler.t: [euler] add tests for remaining problem solutions |
|||
pan style="color: #395be5">perl6-examples: 3c0db4b | paultcochrane++ | .gitignore: Ignore generated object files |
|||
p: 1706ef5 | paultcochrane++ | README.pod: Wrap paragraphs consistently This gives a tidier impression when reading the text |
12:43 | ||
12:43
bjz joined
|
|||
[ptc] | domidumont: the libtommath problem is resolved, isn't it? | 12:45 | |
12:48
vendethiel joined
|
|||
domidumont | [ptc]: technically yes. But the problem is to have this fix in Debian libtommath package (which I don't maintain). | 12:48 | |
12:49
Ven joined
|
|||
dalek | kudo/nom: 7c849ec | lizmat++ | docs/ChangeLog: Mention chop (let't not forget it again :-) |
12:51 | |
Ven | \o, #perl6 | ||
domidumont | [ptc]: having a new upstream release of libtommath would make this problem much easier | ||
Ven | moritz: I think the one thing that made me chuckle the most were the dartvm guys saying "meh, types wouldn't give us performance boost anyways" | 12:53 | |
(because types are only about performance, not about correctness, and because checks are free ...) | |||
[ptc] | domidumont: ok. I'd noticed the comment in the changelog and after having noticed the conversation on GitHub about it, that it might be able to be removed | 12:54 | |
domidumont: you build and install the moarvm package before building the nqp package, right? | 12:55 | ||
domidumont | [ptc]: yes | ||
dalek | kudo/nom: 4f54891 | lizmat++ | t/spectest.data: uniname is NYI on JVM |
12:58 | |
ast: ef3335e | lizmat++ | S32-str/chop.t: Message differs per backend, so just check type |
13:02 | ||
ast: 0168355 | lizmat++ | S32-str/length.t: Fudge failing test on JVM |
13:06 | ||
ecs: 7068bfb | (Stéphane Payrard)++ | S99-glossary.pod: Unsatisfied by the def of function. need to get serious on unicode |
13:07 | ||
ab5tract | m: my @bars = 1, 2, 3, * * * ... *; | 13:09 | |
camelia | ( no output ) | ||
dalek | ast: 589032b | lizmat++ | packages/Test/Compile.pm: Prevent warning about using nqp::ops |
||
ab5tract | m: my @bars = 1, 2, 3, * * * ... *; say @bars[3,6,7]; | ||
camelia | rakudo-moar 587d30: OUTPUT«6 1944 209952» | ||
ab5tract | interesting.. that hangs locally | ||
13:09
vendethiel left
|
|||
moritz | are you doing it in the REPL? | 13:10 | |
lizmat | fwiw, t/spec/integration/precompiled.t is *very* unhappy on JVM | 13:11 | |
jnthn: feels like this is related to the "use fatal" changes in a try block | 13:12 | ||
ab5tract | moritz: yeah | ||
moritz | ab5tract: did you press return after the first statement? | 13:13 | |
lizmat | jnthn: then again, this could be another bug that happens when something else goes wrong :-( | ||
ab5tract | moritz: in the REPL I was just creating the array | ||
so yeah | 13:14 | ||
13:14
vendethiel joined
|
|||
psch | lizmat: i was surprised to see you demote &uniname to NYI on jvm | 13:14 | |
FROGGS | holy cow... it seems I finally make progress on ripping out json for CURLI \o/ | ||
moritz | ab5tract: well, that hangs, because @bars is infinte, and it tries to print it all | ||
lizmat | psch: $ perl6-j t/spec/S15-unicode-information/uniname.t | 13:15 | |
1..27 | |||
uniname NYI on jvm backend | |||
ab5tract | Ah, I see. A display layer issue. | ||
13:15
coffee` left
|
|||
moritz | though one could argue that .gist shouldn't try to print the whole thing | 13:15 | |
FROGGS | I am going to install most of the ecosystem now to get a feeling of the performance penalty | ||
lizmat | psch: merely trying to make life easier for the release manager | 13:16 | |
13:16
ssqq left
|
|||
psch | lizmat: yeah, that's from your commit, a2448871869c311457c1389d7aa552188e1076cf | 13:16 | |
lizmat | FROGGS++ | ||
psch | lizmat: i implement getuniname in NQP commit e45d8de | ||
lizmat tries | 13:17 | ||
psch | lizmat: i suspect the build bustage you saw to make a244887 was for uniprop-{bool,str,num}? | ||
lizmat | psch: building JVM now with uniname activated | 13:18 | |
13:20
coffee` joined
|
|||
psch hopes there isn't some OSX weirdness in JVM getuniname | 13:21 | ||
dalek | kudo/nom: 45c479a | lizmat++ | / (2 files): uniname(s) *is* implemented on JVM, psch++ |
13:23 | |
psch | lizmat++ thanks :) | ||
lizmat | psch: all unfudged tests passed :-) | 13:24 | |
13:26
Ven left
13:34
RabidGravy joined
13:36
vendethiel left
13:42
FROGGS left
13:43
vendethiel joined
|
|||
masak | release night tonight, people. | 14:03 | |
get ready to par-tay | 14:04 | ||
masak does some tentative disco moves | |||
lizmat has been par-taying quite a bit already | |||
masak | \o/ | ||
14:06
vendethiel left
14:08
telex left
14:09
vendethiel joined
14:10
telex joined
14:18
Ven joined
14:19
grondilu joined
|
|||
grondilu | the release you're talking about it the monthly rakudo star realease or something more awesome? | 14:20 | |
PerlJam | grondilu: the monthly *rakudo* release (not rakudo star) | 14:21 | |
colomon forgets the :global in subst nearly 100% of the time. :\ | 14:24 | ||
PerlJam | colomon: I do that only slightly less than 100% of the time too. Maybe we should have a gsub like awk. | 14:25 | |
colomon | nine: using p5’s JSON::XS almost works perfectly for me, except for some reason it seems to translate False into some sort of p5 object. | 14:28 | |
JSON::Tiny: "Needs expansion" => Bool::False | |||
hoelzro | does this month have an accompanying star release? | 14:29 | |
hoelzro forgot how the star release cycle works | |||
colomon | JSON::XS:from<Perl5>: "Needs expansion" => Perl5Object.new(ptr => Pointer.new(83752256), perl5 => Inline::Perl5.new), | ||
sjn | \o | 14:30 | |
14:30
vendethiel left
|
|||
sjn has found something interesting.. exercism.io/ | 14:31 | ||
They're apparently working on getting in Perl6 support | |||
lizmat stops committing code patches for today | 14:32 | ||
afk for a few hours& | |||
14:33
raiph joined
14:36
mr-foobar joined
14:40
_mg_ left
14:43
Rounin left
|
|||
RabidGravy | I was going to do some tests to see if things were snappy enough to make an icecast client without using libshout but spent the time debugging why silan fails to correctly detect the end of mp3s | 14:47 | |
14:49
bjz left,
FROGGS joined
14:50
bjz joined
|
|||
colomon | nine: (or anyone who understands Inline::Perl5) so, JSON::XS returns Types::Serialiser::true and Types::Serialiser::false. These do not the proper thing in p6. | 14:53 | |
andreoss` | m: my @x = 1 ... 10; ([Z] @x, @x[1..*], @x[2..*]).perl.say | ||
camelia | rakudo-moar 45c479: OUTPUT«((1, 2, 3), (2, 3, 4), (3, 4, 5), (4, 5, 6), (5, 6, 7), (6, 7, 8), (7, 8, 9), (8, 9, 10))» | ||
andreoss` | m: sub part-array(\N, @arr) { [Z] map { @arr[$_ .. *] }, ^N ; }; my @x = 1...10; part-array(3, @x).perl.say; | 14:54 | |
camelia | rakudo-moar 45c479: OUTPUT«((1,), (2,), (3,), (4,), (5,), (6,), (7,), (8,), (9,), (10,), (2,), (3,), (4,), (5,), (6,), (7,), (8,), (9,), (10,), (3,), (4,), (5,), (6,), (7,), (8,), (9,), (10,))» | ||
andreoss` | m: sub part-array(\N, @arr) { [Z] map { my $x = @arr[$_ .. *]; $x }, ^N ; }; my @x = 1...10; part-array(3, @x).perl.say; | 14:59 | |
camelia | rakudo-moar 45c479: OUTPUT«(($(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),), ($(2, 3, 4, 5, 6, 7, 8, 9, 10),), ($(3, 4, 5, 6, 7, 8, 9, 10),))» | ||
14:59
vendethiel joined
15:01
davido_ left
15:04
skids joined
|
|||
andreoss` | m: sub part-array(\N, @arr) { | 15:07 | |
EVAL "[Z] " ~ join ", " , map { '@arr' ~ "[$_ .. *]" }, ^N ; | |||
} ; my @x = 1...10; part-array(3, @x).perl.say | |||
camelia | rakudo-moar 45c479: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4LPVYuTtjMMissing blockat /tmp/4LPVYuTtjM:1------> 3sub part-array(\N, @arr) {7⏏5<EOL>» | ||
andreoss` | m: sub part-array(\N, @arr) { EVAL "[Z] " ~ join ", " , map { '@arr' ~ "[$_ .. *]" }, ^N ; } ; my @x = 1...10; say (part-array 3, @x).perl; | ||
camelia | rakudo-moar 45c479: OUTPUT«((1, 2, 3), (2, 3, 4), (3, 4, 5), (4, 5, 6), (5, 6, 7), (6, 7, 8), (7, 8, 9), (8, 9, 10))» | ||
15:11
TimToady left,
khisanth_ is now known as Khisanth
|
|||
andreoss` | how to do this without eval? map and [Z] together perform some strange flattenings | 15:11 | |
PerlJam | m: my @a = 1..10; say @a.rotor(3,2); | 15:12 | |
camelia | rakudo-moar 45c479: OUTPUT«1 2 3 2 3 4 3 4 5 4 5 6 5 6 7 6 7 8 7 8 9 8 9 10» | ||
PerlJam | m: my @a = 1..10; say @a.rotor(3,2).perl; | ||
camelia | rakudo-moar 45c479: OUTPUT«($(1, 2, 3), $(2, 3, 4), $(3, 4, 5), $(4, 5, 6), $(5, 6, 7), $(6, 7, 8), $(7, 8, 9), $(8, 9, 10))» | ||
15:13
TimToady joined
|
|||
andreoss` | damn | 15:13 | |
what does 2 stand for? | 15:14 | ||
PerlJam | overlap 2 elements | ||
andreoss` | doc.perl6.org/type/List is missing this method | 15:15 | |
moritz | andreoss`: yes; I've added it to the WANTED list yesterday | ||
andreoss`: feel free to do it :-) | 15:16 | ||
andreoss` | still can it be done with [Z] over map ? | 15:18 | |
skids | What do --gen-moar= and --gen-nqp= expect as an argument? i.e. how do you get it to use your own github forks? | 15:19 | |
15:20
gfldex joined
|
|||
PerlJam | skids: I think they just accept commitish things (branch name, tag, SHA1, etc.) | 15:20 | |
skids | So you can only use the main repo, then? | ||
PerlJam | AFAIK. I'd have to look at the source to be sure though. | 15:21 | |
15:22
vendethiel left
|
|||
andreoss` | [Z] .... and my @x = .... ; [Z] @x; give different results. | 15:29 | |
why? | |||
skids | .oO(There's --git-reference but it does not seem to prevent cloning from the official repos.) |
15:31 | |
15:33
vendethiel joined
15:37
zakharyas left
|
|||
PerlJam | skids: it looks like it should do what you want if the directory isn't already there. i.e. if there's no nqp dir, specifying --git-reference=github.com/skids will cause a clone of github.com/skids/nqp to be used to build nqp | 15:44 | |
(assuming you've also specificed --gen-nqp) | |||
skids | Hrm is there syntax to put a fork/commit in a github url? | 15:45 | |
erm s/fork/branch/ | |||
masak | m: say ([Z] 1, 2, 3).perl; my @x = 1, 2, 3; say ([Z] @x).perl | 15:46 | |
camelia | rakudo-moar 45c479: OUTPUT«((1, 2, 3),)((1,), (2,), (3,))» | ||
masak | andreoss`: good question. I don't know. | ||
masak finds he has basically no intuition for those things | 15:47 | ||
maybe the GLR will magically unicorn everything to make sense | |||
PerlJam | m: say ([Z] (1, 2, 3)).perl; my @x = 1, 2, 3; say ([Z] @x).perl; # now they are equivalent | 15:48 | |
camelia | rakudo-moar 45c479: OUTPUT«((1,), (2,), (3,))((1,), (2,), (3,))» | ||
PerlJam | You could also flatten @x I suppose if you really wanted the other thing | ||
RabidGravy | mmmm magical unicorns | 15:49 | |
jnthn | .tell skids Yes, send along PRs, I'm 6-ing all day tomorrow so will take care of 'em then. | ||
yoleaux | jnthn: I'll pass your message to skids. | ||
PerlJam | masak: it's NFG that gets us unicorns ;) | ||
skids | jnthn: working on that now :-) | 15:50 | |
yoleaux | 15:49Z <jnthn> skids: Yes, send along PRs, I'm 6-ing all day tomorrow so will take care of 'em then. | ||
15:50
brrt joined
|
|||
masak | PerlJam: maybe GLR can give us rainbows, then. | 15:50 | |
masak hopes there won't be a nyan cat at the end of the rainbow | |||
brrt | thanks everybody for all the nice comments on the grant app :-) | 15:51 | |
also.. | |||
.tell moritz: see here , if you can stomach at&t syntax: gist.github.com/bdw/fef76ca07b7203e49fc2 | |||
yoleaux | brrt: What kind of a name is "moritz:"?! | ||
colomon | anyone have a clue how to get a scalar value from a p5 variable using Inline::Perl5 ? | ||
PerlJam | yoleaux: you need to be a smarter bot! | ||
brrt | .tell moritz see here if you can stomach at&t syntax gist.github.com/bdw/fef76ca07b7203e49fc2 | ||
yoleaux | brrt: I'll pass your message to moritz. | ||
brrt | .botsnack | 15:52 | |
yoleaux | :D | ||
synbot6 | om nom nom | ||
15:55
vendethiel left
15:57
rindolf left,
vendethiel joined
|
|||
jnthn | lizmat: Do you have anything stronger than "feels like" on the precomp thing? I'm not saying it's impossible it's that, but I'm struggling on an explanation. | 15:59 | |
16:00
lichtkind joined,
liztormato joined
|
|||
jnthn | (And would like any "evidence"/"hunches" so I don't repeat re-discovering what you already figured ;)) | 16:01 | |
liztormato | jnthn: the error I saw actually happened in generating the backtrace of another error | 16:02 | |
16:02
rindolf joined
|
|||
jnthn | liztormato: Oh, hm. | 16:03 | |
liztormato | Am enjoying a sunny afternoon at the Berghoes ;-) | 16:04 | |
jnthn | liztormato: That could be related, though then of course raises the question "what code path is differnet on JVM" :) | ||
16:04
F1AAT7SG joined
|
|||
brrt | is there a way to get inline help in the REPL? | 16:04 | |
jnthn refrains from making a pun about hoes.. | 16:05 | ||
liztormato | The top of the stack trace was the 2nd line in Backtrace.new | ||
jnthn | .oO( it'd only make me look a tool... ) |
||
liztormato: OK, I'll fire off a build tomororw (or maybe later tonight) and see what I can see. Thanks. | |||
masak | Result: PASS | ||
(on stresstest) | |||
good work, everyone! | |||
16:06
liztormato_ joined
|
|||
jnthn | masak: And how many tests did it pass? :#d | 16:06 | |
masak | 116362 | ||
o.O | |||
I... did I miss anything? | |||
jnthn | Thank you, Unicode consortium :P | ||
masak | I thought we had ~35000... oh. | ||
jnthn | masak: Yeah, I dragged in the official Unicode normalization test suite. | ||
masak | heh. | ||
how many tests do the Perl 5 test suite have? | |||
does* | 16:07 | ||
jnthn | masak: And just sampled a bit of it for sanity test, but figured if we want to claim we do it right we might as well just run the official thing. | ||
But only for stress test. :) | |||
liztormato_ | jnthn: I wonder if the jvm fails could explain reports of panda not working on the jvm | ||
jnthn | liztormato_: Possibly. | ||
16:08
mr-foobar left
16:10
liztormato left,
liztormato_ is now known as liztormato,
eli-se joined
16:13
espadrine left
16:16
domidumont left
|
|||
masak | m: say Uni | 16:16 | |
camelia | rakudo-moar 45c479: OUTPUT«(Uni)» | ||
masak | m: say Uni ~~ Str | ||
camelia | rakudo-moar 45c479: OUTPUT«False» | ||
masak | m: say Str ~~ Uni | ||
camelia | rakudo-moar 45c479: OUTPUT«False» | ||
masak | m: say "abc".WHAT | ||
camelia | rakudo-moar 45c479: OUTPUT«(Str)» | ||
16:16
pecastro left
|
|||
moritz | .botsnack | 16:17 | |
synbot6 | om nom nom | ||
yoleaux | :D | ||
15:51Z <brrt> moritz: see here if you can stomach at&t syntax gist.github.com/bdw/fef76ca07b7203e49fc2 | |||
masak | m: say "😹".WHAT | ||
camelia | rakudo-moar 45c479: OUTPUT«(Str)» | ||
masak | m: say "😹".Uni | ||
camelia | rakudo-moar 45c479: OUTPUT«Method 'Uni' not found for invocant of class 'Str' in block <unit> at /tmp/VPSQcGXVSm:1» | ||
masak | oh, so code point : grapheme :: Uni : Str | 16:18 | |
16:18
vendethiel left
|
|||
jnthn | masak: Right. | 16:19 | |
masak: You can't coerce to Uni | |||
masak: Only to once of it's subclasses. | 16:20 | ||
masak: I guess we could make .Uni and alias for .NFC... | |||
16:20
brrt left
|
|||
jnthn | m: say "�".Uni.list | 16:20 | |
camelia | rakudo-moar 45c479: OUTPUT«Method 'Uni' not found for invocant of class 'Str' in block <unit> at /tmp/2P_a3xaB_I:1» | ||
jnthn | darn! | ||
m: say "�".NFC.list | |||
camelia | rakudo-moar 45c479: OUTPUT«65533» | ||
jnthn | m: say "�".NFC.list>>.uniname | 16:21 | |
camelia | rakudo-moar 45c479: OUTPUT«REPLACEMENT CHARACTER» | ||
jnthn | bah, I bet that ain't what masak typed :P | ||
16:21
jantore left
|
|||
PerlJam | m: Uni.new(0x1f639).Str.say; # :) | 16:21 | |
camelia | rakudo-moar 45c479: OUTPUT«😹» | ||
jnthn | But yeah, Uni is Buf-ish in nature. | ||
But codepoint level | |||
masak | aha. | ||
arnsholt | Sort of a buf32, I guess? | 16:22 | |
jnthn | A buf32 isn't necesarily Unicode codepoints in it though. | ||
And can't be coerced to a Str without saying how to decode | |||
Buf = byte level, Uni = code point level, Str = grapheme level | 16:23 | ||
arnsholt | Yeah, sure | ||
Bufs need to be decoded is the most important difference, I guess | |||
But only actual codepoints is pretty important too | |||
jnthn | Also the subtypes of Uni promise a normalization. | 16:24 | |
arnsholt | Yeah, that's pretty convenient | ||
masak | so, Str --normalize--> Uni (subtype) --encode--> Buf/Blob ? | 16:25 | |
jnthn | Yes | 16:26 | |
TimToady | well, one usually thinks about normalization as going the other direction | ||
yoleaux | 03:06Z <raydiak> TimToady: there isn't actually anything wrong with those Proc::Async tests themselves, is there? github.com/rakudo/rakudo/pull/412 fixes it for me | ||
jnthn | Though you don't normally normalize on output :) | ||
masak | TimToady: but it feels weird to call that step "denormalize" :) | ||
jnthn | You'll get NFC "for free" thanks to Str being NFG. | ||
masak | *nod* | ||
jnthn++ # github.com/MoarVM/MoarVM/blob/mast...ormalize.c -- OMG, it's full of comments! | |||
arnsholt | Str is normalized too, so I guess it's more "select normalization form" | ||
masak | arnsholt: yeah, that's a better way to put it | 16:27 | |
jnthn | masak: Yes, and Unicode spec refs for those wanting more gore. :) | ||
16:27
vendethiel joined
|
|||
TimToady | I suppose it's "normalizing" in the sense that it's turning an internal form into what the "normal" world is expecting | 16:30 | |
jnthn | *nod* | ||
16:30
liztormato left
|
|||
masak .oO( ♩ hell and gore! ♫ ) | 16:30 | ||
PerlJam | That sounds more like "humanizing" than normalizing | ||
TimToady | nah, it's dehumanizing | 16:31 | |
masak | Rudolf Steinerizing. | ||
TimToady | .oO(NerFing) |
16:32 | |
--Unicoding--> | 16:33 | ||
goes well with --Encoding--> | |||
16:34
eli-se left
|
|||
TimToady | 'course, then the latter should be called UTFcoding... | 16:34 | |
masak .oO( WTF8 ) | 16:35 | ||
PerlJam | masak: that sounds like something vaguely regexish | 16:36 | |
16:37
estrabd joined
|
|||
dalek | kudo/nom: 0b5f646 | jnthn++ | docs/ChangeLog: ChangeLog tweaks. |
16:39 | |
16:41
rurban left
|
|||
moritz | why is the default overlap of List.rotor 1? | 16:42 | |
sounds like 0 would be the more obvious choice to me | |||
PerlJam | ah ... maybe that's why I was thinking yesterday that overlap of 0 was broken ... it's not the default. | ||
TimToady | people solve the non-overlap case most of the time with -> $a, $b, $c, $d {...} | 16:43 | |
but I don't feel strongly about it | |||
one could argue it should be n-1 :) | 16:44 | ||
masak | if the default is debatable, why is there a default? | ||
16:45
jantore joined
|
|||
moritz | TimToady: the signature unpacking trick only works if the number is fixed | 16:45 | |
TimToady | good question, I suppose there's a huffmanish principle that uncommon shouldn't have defaults | ||
but 0 is probably a reasonable default | |||
16:46
raiph left
|
|||
moritz | I'll document it without the default(s) until the question is resolved | 16:46 | |
TimToady | I don't recollect ever deciding that 1 was the right default | ||
moritz | (and has percolated into roast and rakudo) | ||
16:46
brrt joined
|
|||
moritz | also, should we allow negative overlaps? | 16:47 | |
TimToady | well, why not? | ||
masak | that makes more sense to me. | 16:48 | |
the interpretation is straightforward. | |||
"underlaps" | |||
moritz | "gaps" | ||
TimToady | one could argue the sign is wrong, and we should call it "backup" | ||
moritz | m: say <a b c>.rotor(1, -1) | ||
camelia | rakudo-moar 45c479: OUTPUT«===SORRY!===Overlap argument to List.rotor out of range. Is: -1, should be in 0..0» | ||
TimToady | well, that's wrong too | ||
moritz | call it "gap" | ||
16:49
vendethiel left
|
|||
moritz | and positive gaps are gaps, negative gaps are overlap | 16:49 | |
TimToady | that's pretty okay | ||
and 2, -1 reads very clearly as "two steps forward, one step back" | |||
masak | nice | 16:50 | |
dalek | kudo/nom: 3cba43f | jnthn++ | docs/ChangeLog: Some more ChangeLog entries. |
||
PerlJam | moritz++ | ||
16:51
grettis joined
|
|||
moritz | rotor isn't used in the ecosystem yet | 16:51 | |
TimToady wonders if there's call for larger rotors, 2, 1, 3, 1 and such | |||
moritz | so we should be able to change it without much breakage | ||
jnthn | masak: About to go for dinner and I see there's no release announcement doc yet, but can you mention these two in it: | ||
1) A try block now enforces "use fatal" | |||
16:52
brrt left
|
|||
jnthn | 2) From 2014.05, strings on MoarVM will have NFG semantics. | 16:52 | |
masak | jnthn: ok | ||
moritz | TimToady: should I remove the rotor default for $elems (first arg)? | ||
it seems pretty arbitrary to me | 16:53 | ||
jnthn | masak++ | ||
masak | moritz: +1 | ||
16:53
eli-se joined
|
|||
TimToady | yes, but if we make it repeat longer sequences, then 2 will naturally default to 2,0 | 16:53 | |
so to take alternating 2's and 3's we could have 2,0,3 or 2,0,3,0 | 16:54 | ||
PerlJam notices that Supply also has a .rotor method | |||
TimToady now imagines an infinite rotor that takes fibonacci amounts | |||
moritz | TimToady: I still don't see the obvious generalization | ||
TimToady | well, how do you take alternating 2's and 3's currently? | 16:55 | |
PerlJam | TimToady: why not .rotor([2,3], 0) ? | ||
I don't think .rotor does that yet | |||
TimToady | what if you want different gaps | ||
moritz | by writing code that indexes the list, duh | ||
eli-se | haii!! | ||
TimToady | I think we want to put as many teeth on the rotor's gear as the user wants, and gaps wherever they want | 16:56 | |
moritz | TimToady: or alternating 2's and 3's can be done with rotor(5) and subsequent munging | ||
TimToady: well, as many teeth are possible would mean either a list or a callback | |||
PerlJam | for different teeth and different gaps: .rotor([2,3],[1,-1]) | 16:57 | |
masak | overgeneralization... | ||
moritz stops writing specs and docs | |||
TimToady | I don't think this is over | ||
I think (5,0) is under | |||
moritz | I've had plenty of use cases for (5, 0), (5, 1) and (5, -1) | 16:58 | |
not much else, TBH | |||
TimToady | PerlJam: I dont like separating related values like that, though one could play the same trick as tr on two lines, I suppose | ||
16:59
dakkar left
|
|||
TimToady | I can imagine using a (3,0,2,0) rotor for music written in 5/4 time | 16:59 | |
PerlJam | TimToady: aye, you're way of interleaving them has some mnemonic value for remembering what they mean too | ||
s/you're/your/ | |||
TimToady | you just march down the list, taking every other one, and repeat when it runs out | ||
16:59
vendethiel joined
|
|||
PerlJam | And add an implicit 0 when the list has an odd number of elements? | 17:00 | |
moritz | but would the code that consume that list deal with it? | ||
I mean, for a 5/4 time, why not consume in (5, 0) steps? | |||
oh, and if the elems and gaps belong together, why not make them Pairs? | 17:01 | ||
TimToady | "I can't read this 7/4 notation, please rewrite using alternating 3/4 and 4/4 time like we did before..." | ||
moritz feels the discussion has gone from an simple, obvious improvement of rotor to something much more questionable | 17:02 | ||
PerlJam | moritz: the simple, obviouis improvement can still happen as a stepping stone to the generalization :) | 17:03 | |
TimToady | well, you're the one that brought Pairs to the bikeshed :P | ||
dalek | ecs: ea466e4 | moritz++ | S32-setting-library/Containers.pod: List.rotor: redesign second argument from overlap to gap explicit allow negative gaps to mean overlap |
17:04 | |
moritz | masak: should the code change for that go into the release? or rather wait (and warn in the announcement that .rotor's behavior will change?) | ||
masak | moritz: feel free to do it before. | 17:05 | |
PerlJam votes wait | |||
masak | heh :) | ||
TimToady | let's wait five minutes and then do it :) | ||
PerlJam | heh | ||
masak | my plan is to go get noms, then come back and start the releng | ||
PerlJam | if we wait until after the release, we can warn in the release and then redesign "completely" before the next one | 17:06 | |
TimToady | .oO(don't you need to leng before you releng?) |
||
masak | TimToady: you need to leng, deleng, then releng | ||
TimToady | doesn't sound normal | 17:07 | |
maybe it's just --norming--> | |||
"achieve a norm" | 17:08 | ||
moritz | turns out we only have spectests for supply.rotor, not for List.rotor | 17:09 | |
TimToady | so it doesn't really exist yet :) | ||
masak had never heard "rotor" used in this sense before he saw the method being added to the spec | 17:10 | ||
TimToady is actually warming to the Pairs idea | |||
masak | noms & | ||
TimToady | because then a (3,2) rotor would imply (3=>0, 2=>0) rotor | 17:11 | |
and "slipping teeth on the gear" becomes a secondary quality to specifying the takers | 17:13 | ||
and taking twice as many each time just becomes (1,2,4...*) | 17:14 | ||
and I can well imagine uses for that | |||
(statistical sample doubles each time, for instance) | 17:15 | ||
so unless someone can think of a big downside to using Pairs to indicate slippage, I think that's the direction we're going | 17:16 | ||
moritz++ even if he doesn't like it :) | |||
PerlJam | Does rotor wrap the list? i.e. what should happen for 2 => -4 ? | 17:17 | |
moritz | PerlJam: it doesn't wrap | ||
PerlJam: and that would be a fail()ure | |||
TimToady | agree | 17:18 | |
now, if you want over the top, then the gap can be a closure, and if it's random, than 2 => { (-10..10).pick } is almost a precise picture of "gamblers ruin" | 17:19 | ||
except, of course, that a casino might actually be willing to loan you a little money at a not-so-little interest rate | 17:20 | ||
17:20
vendethiel left
|
|||
moritz | though of course you can generate that too with map { 2 => $_ }, (-10..10).pick xx * | 17:20 | |
TimToady | sure, it's really on the slicing that enforces the "ruin" | 17:21 | |
moritz | a closure only really makes sense if there's some new information that we pass to the closure to inform its decision | ||
TimToady | *only | ||
I think we easily delegate that to whatever is producing list we feed to rotor | |||
so a closure there would definitely be Too Much | 17:22 | ||
I suppose if we weren't going for the mechanical metaphor, we'd call it polyslice or so | |||
grondilu | in the Changelog it is written that xx has been made 1.8 times faster. Yet [+] rand xx 100_000 (which I often try to see speeds improvements) is not faster. | ||
TimToady | rand requires a thunk | 17:23 | |
it's probably the non-thunk case that is faster | |||
grondilu | ok | ||
TimToady | generating N random numbers might be something we could optimize though | 17:24 | |
PerlJam lunch & | |||
17:25
Rounin joined
|
|||
TimToady | it's a good day when I can catch up on the backlog while everyone is eating; it's a bad day when I can only catch up while they're sleeping... | 17:25 | |
17:27
cognominal left
|
|||
TimToady | if we really want a deprecation cycle for rotor, and if we're really going with Pairs, then we have a path forward: do the new gap semantics only with Pairs, and deprecate any non-pair 2nd arguments, then after the deprecation cycle, allow non-pair integers as pure takers | 17:29 | |
17:31
beastd joined
|
|||
grondilu | the idea of optimizing a the generation of N random numbers makes me wonder how one can test if a &f variable is a given function. | 17:32 | |
m: say (-> $ { rand }) === &rand; | 17:33 | ||
camelia | rakudo-moar 3cba43: OUTPUT«False» | ||
TimToady | that's only the same function after inlining :) | ||
grondilu | that's probably too much to ask, I suppose. | ||
TimToady | oh, and what are you passing to rand, which doesn't take an argument? | 17:34 | |
grondilu | indeed | ||
I'm not sure how to use the pointy syntax with no arg, though | |||
std: -> {} | |||
camelia | std 28329a7: OUTPUT«ok 00:00 136m» | ||
grondilu | that looks fine | ||
TimToady | it is fine | ||
grondilu | m: say (-> { rand }) === &rand; | ||
camelia | rakudo-moar 3cba43: OUTPUT«False» | ||
17:35
beastd left
|
|||
TimToady | what confuses people is that they then try to write -> { $^a } and such | 17:35 | |
std: -> { $^a } | |||
camelia | std 28329a7: OUTPUT«5===SORRY!5===Placeholder variable $^a cannot override existing signature ( ) at /tmp/v4elZlOVdL line 1:------> 3-> { 7⏏5$^a }Check failedFAILED 00:00 138m» | ||
moritz | TimToady: given the current uncertainty about the rotor situation, I don't think we should ship a modified version with the upcoming release, just a warning that behavior will change | ||
TimToady | people might start using it this month | 17:36 | |
arnsholt | grondilu: FWIW, checking if two functions are equivalent is equivalent to the halting problem =) | ||
grondilu | arnsholt: yeah I was suspecting something like that | ||
TimToady | arnsholt: you just assign each of them a Gödel number and then compare...oh wait... | ||
17:36
beastd joined
17:37
yqt joined
|
|||
moritz | and then you gödel away | 17:37 | |
arnsholt | grondilu: Both the halting problem and equivalence are instances of en.wikipedia.org/wiki/Rice's_theorem | ||
TimToady | the halting problem is just Waiting for Gödel... | 17:38 | |
raydiak | good morning #perl6 | 17:44 | |
is it normal to deprecate attributes using a method under the old name? it makes for silent failure when using the old name as a constructor arg | 17:45 | ||
TimToady | the silent failure is the *%_ thing, not the fault of the deprecation | 17:47 | |
raydiak | yeah I guess I was just wondering if there was another mechanism we usually use for attributes isntead of methods which catches that | 17:48 | |
17:48
diana_olhovik_ joined
17:49
yqt left
|
|||
raydiak | has ... is DEPRECATED(...) or whatever...just a thought | 17:49 | |
17:50
Zoffix joined
|
|||
dalek | kudo/nom: a29614c | TimToady++ | src/core/ (2 files): shim in .rotor(Pair) for transition to gapishness Whether we deprecate current rotor is independent of this. |
17:50 | |
TimToady | if we warn them doc-only, we can at least give them something to change it to now | 17:52 | |
17:52
yvan1 left,
rindolf left
|
|||
TimToady | assuming "them" is not the null set, but even if they are... | 17:53 | |
17:53
rindolf joined
17:57
Ven left
|
|||
raydiak | should Proc::Status.signal default to 0 as designed in S29? .signal and .status give uninitialized warnings, though idk if it gets set yet if there is a signal | 17:57 | |
17:58
Zoffix left
|
|||
eli-se | IDENTIFICATION DIVISION. | 18:03 | |
masak .oO( you can write COBOL in any channel... ) | 18:06 | ||
18:08
vendethiel joined
|
|||
TimToady | eli-se is channeling COBOL | 18:09 | |
eli-se | I wrote hangman in COBOL. | ||
TimToady | try nroff macros next time | 18:12 | |
18:13
cognominal joined
|
|||
eli-se | :( | 18:15 | |
I once wrote a herding simulator in Befunge. | |||
masak | m: my $x = 1; $x ...= 5; say $x | ||
camelia | rakudo-moar 3cba43: OUTPUT«This type does not support positional operations in block at src/gen/m-CORE.setting:9822 in method reify at src/gen/m-CORE.setting:9797 in block at src/gen/m-CORE.setting:9822 in method reify at src/gen/m-CORE.setting:9797 in method r…» | ||
masak | hm. | 18:16 | |
ok. | 18:37 | ||
release process is now underway. do not adjust your set. | |||
dalek | ecs: 02c24b5 | TimToady++ | S32-setting-library/Containers.pod: doc new rotor semantics |
||
lizmat | TimToady: I guess the Supply.rotor (which started all this) should have the same semantics then ? | 18:38 | |
TimToady | I put a shim in Supply too | ||
that currently only handles one Pair, and translates to the old method | 18:39 | ||
but reverses the sign to get gap semantics rather than overlap | |||
lizmat | I was more referring to specs than implementation | ||
TimToady | m: say ('a'...'z').rotor(3 => -2) | 18:40 | |
camelia | rakudo-moar a29614: OUTPUT«a b c b c d c d e d e f e f g f g h g h i h i j i j k j k l k l m l m n m n o n o p o p q p q r q r s r s t s t u t u v u v w v w x w x y x y z» | ||
TimToady | m: say ('a'...'z').rotor(3 => -2).perl | ||
camelia | rakudo-moar a29614: OUTPUT«($("a", "b", "c"), $("b", "c", "d"), $("c", "d", "e"), $("d", "e", "f"), $("e", "f", "g"), $("f", "g", "h"), $("g", "h", "i"), $("h", "i", "j"), $("i", "j", "k"), $("j", "k", "l"), $("k", "l", "m"), $("l", "m", "n"), $("m", "n", "o"), $("n", "o", "p"), $("…» | ||
TimToady | yes, feel free to change the Supply specs to match | ||
I suppose the warning on rotor changes should go into the release notes | 18:42 | ||
dalek | kudo/nom: b7087d4 | (Carl Masak)++ | docs/ChangeLog: [docs/ChangeLog] hyphen nitpickery |
18:43 | |
masak | a "special casing" is different from "special-casing" :P | ||
18:43
andreoss` left
|
|||
dalek | ecs: 84b405c | lizmat++ | S17-concurrency.pod: Adapt Supply.rotor to match List.rotor |
18:43 | |
masak | does anyone have any reason to believe docs/ChangeLog is not up-to-date? | 18:44 | |
TimToady is quite certain he never updated the Changelog | |||
masak | ok :) | 18:45 | |
lizmat | the sequence fixes are a bit vague | ||
masak | ok, will have a look for things. | ||
lizmat | "many sequence (...) related fixes" | ||
perhaps TimToady can elaborate ? | |||
TimToady | basically, it's no longer confused about whether its incoming arguments are itemized or not | 18:46 | |
lizmat | masak: some ^\\s+ oddities maybe? | ||
^\s+ rather | |||
TimToady | and it now figures out when an intuited iterator would bypass a final value | ||
m: say 1,2,4 ... 100 | 18:47 | ||
camelia | rakudo-moar a29614: OUTPUT«1 2 4 8 16 32 64» | ||
TimToady | instead of heading off to infinity | ||
m: say 1,2,4 ... 3 | |||
camelia | rakudo-moar a29614: OUTPUT«1 2» | ||
TimToady | m: say 1,2,4 ... 1.5 | ||
camelia | rakudo-moar a29614: OUTPUT«1» | ||
TimToady | m: say 1,2,4 ... 0 | ||
camelia | rakudo-moar a29614: OUTPUT«» | ||
TimToady | those are the two biggies wrt sequences | 18:48 | |
oh, theres a third | |||
18:48
_mg_ joined
|
|||
TimToady | m: say '000' ... '077' | 18:48 | |
camelia | rakudo-moar a29614: OUTPUT«000 001 002 003 004 005 006 007 010 011 012 013 014 015 016 017 020 021 022 023 024 025 026 027 030 031 032 033 034 035 036 037 040 041 042 043 044 045 046 047 050 051 052 053 054 055 056 057 060 061 062 063 064 065 066 067 070 071 072 073 074 075 076 077» | ||
TimToady | beginning and ending of the same length now do the specced semantics | 18:49 | |
considering each position as a separate character range | |||
dalek | kudo/nom: c1f270d | FROGGS++ | docs/ChangeLog: mention CURLI and 'is rw' |
||
TimToady | m: say '00000000' ... '11111111' | 18:50 | |
camelia | rakudo-moar a29614: OUTPUT«00000000 00000001 00000010 00000011 00000100 00000101 00000110 00000111 00001000 00001001 00001010 00001011 00001100 00001101 00001110 00001111 00010000 00010001 00010010 00010011 00010100 00010101 00010110 00010111 00011000 00011001 00011010 00011011 0001…» | ||
dalek | kudo/nom: 95a8325 | FROGGS++ | docs/ChangeLog: fix formatting |
||
FROGGS | masak: I'm done | 18:51 | |
masak | FROGGS++ | 18:52 | |
dalek | kudo/nom: 0b82af4 | (Carl Masak)++ | docs/announce/2015.04.md: [docs/announce/2015.04.md] add early draft |
||
masak | eyeballs welcome, though it's a bit early yet. | ||
m: say 'a1x' ... 'c3z' | 18:53 | ||
camelia | rakudo-moar a29614: OUTPUT«a1x a1y a1z a2x a2y a2z a3x a3y a3z b1x b1y b1z b2x b2y b2z b3x b3y b3z c1x c1y c1z c2x c2y c2z c3x c3y c3z» | ||
masak | weird ;) | ||
TimToady++ | 18:54 | ||
dalek | kudo/nom: 3b5a326 | lizmat++ | docs/ChangeLog: Elaborate on sequence fixes, TimToady++ |
||
kudo/nom: 9432923 | lizmat++ | docs/announce/2015.04.md: Merge branch 'nom' of github.com/rakudo/rakudo into nom |
|||
masak now has a gpg key | |||
I don't, however, have ackles to upload stuff at the end. | |||
TimToady | masak+-+ | ||
masak | either I will need to rely on someone else's kindness, or we can try to solve it by sending me a key somehow. | 18:55 | |
dalek | kudo/nom: c9a6766 | lizmat++ | docs/ChangeLog: more ChangeLog tweaks |
18:57 | |
18:58
n0vacane joined
|
|||
moritz | masak: /msg me an ssh pubkey | 18:58 | |
masak: oh, and there's already an ssh pubkey of yours on that host | |||
lizmat | masak: I'm done with ChangeLog now as well :-) | 18:59 | |
masak | yay | ||
going through the git log one more time Justin Case | |||
lizmat | 395 commits since last release | 19:00 | |
vendethiel | .oO( he's justin when now ) |
||
FROGGS | masak: btw, dont bump PARROT_REVISION for nqp, parrot is still buggy on windows... (in case you considered it at all) | 19:01 | |
masak | FROGGS: thanks, I won't. | 19:02 | |
lizmat | looking at PairMap again: | 19:03 | |
moritz: I don't read in the spec that a PairMap has a predictable order of keys | 19:04 | ||
(re 179d453cff1e91bba9aeeadc) | |||
"A hash value that is mutable only in values, differing from a normal | |||
hash insofar as the key set is frozen." | |||
masak: maybe angle quoted Rat literals should be mentioned | 19:05 | ||
masak | indeed. | ||
will add. | |||
lizmat | (561abb282224eabb63) | ||
raydiak | TimToady++'s regex interpolation fixes might be worth mentioning too | ||
masak | lizmat++ | ||
raydiak: what are those? | |||
so improvement. much wow. | |||
TimToady | I dunno if SETTING now including CORE is worth mention | 19:07 | |
moritz | lizmat: "Optimization ey is allowed. Optimization | ||
sorry | |||
raydiak | masak: 7bef4a3 and 1fb4820 | 19:08 | |
afk | |||
moritz | "Optimization | ||
to something like an ordered hash is also allowed" | |||
the *ordered* here implies, well, ordering | |||
masak | hah, "unless elsif" used to parse!? | ||
moritz | but yes, that's the only hint of PairMap being ordered | ||
19:09
yqt joined
|
|||
TimToady | attempting to bind a Failure now tells you what was in the Failure, maybe that's worth mentioning | 19:09 | |
19:10
pullphinger joined
|
|||
timotimo | i think it is worth mentioning | 19:10 | |
lizmat | 9210cc684c737: allow [Z] and such on indirect lols. We can now reduce with list infixes over an arbitrary number of lists | ||
TimToady | we now have Complex literals | ||
19:11
brrt joined
|
|||
masak | yep, just pushed that. | 19:11 | |
or so I thought. hold on. | |||
TimToady | * autopriming on ~~ is a change | 19:12 | |
masak | bleh, pull --rebase conflict. | ||
FROGGS | ===SORRY!=== | ||
masak has another go | 19:13 | ||
lizmat | perhaps mention various REPL fixes, not just the binding fix (e.g. d2355741a5593de8 ) | ||
El_Che | moritz: we should run an apt-get -u upgrade and reboot (new kernel to be upgraded) when the activity is low | ||
TimToady | oh, reduce() now pays attention to associativity | ||
19:14
pullphinger left
|
|||
TimToady | more generally, associativity now rides with the operator, no longer just implicit knowledge in the compiler | 19:15 | |
19:15
pullphinger joined
|
|||
masak | ooh | 19:15 | |
I didn't know about that one | |||
TimToady++ | |||
dalek | kudo/nom: 6577860 | (Carl Masak)++ | docs/ChangeLog: add lots of new ChangeLog items |
19:16 | |
masak | people++ for suggestions | ||
let me know if I forgat something ;) | |||
lizmat | 02e1e998218af : fix R to reverse associativity ? | 19:17 | |
TimToady | that too | 19:18 | |
masak | m: say 3 - 2 - 1; say 1 R- 2 R- 3 | ||
camelia | rakudo-moar a29614: OUTPUT«00» | ||
masak | indeed. | ||
masak mentions it too | |||
lizmat | 253bb585b53f : Fix various bugs in \(...) syntax | ||
masak | "various bugs"? :) | ||
masak .oO( fix *mumble mumble* in [CLASSIFIED] ) | 19:19 | ||
lizmat | It didn't correctly differentiate quoted pairs (positional arg) from | ||
identifier paris (named arg), nor did it support | for flattening into | |||
the Capture. This patches fixes both of these issues, as well as making | |||
it handle ;s. | |||
masak | Identifier Paris is lovely in the spring. | ||
lizmat | 8dc34c26065f8ba2 : allow :with on Z and zip | ||
masak | waitwait, what does :with do on Z and zip ? | 19:20 | |
TimToady | basically \(...) is a real capture now, not an emulated one | ||
masak | m: say 1, 2, 3 Z 10, 20, 30 | ||
camelia | rakudo-moar c9a676: OUTPUT«1 10 2 20 3 30» | ||
masak | m: say 1, 2, 3 Z 10, 20, 30 :with(&[+]) | 19:21 | |
camelia | rakudo-moar c9a676: OUTPUT«5===SORRY!5=== Error while compiling /tmp/9Uh9U2xl4TYou can't adverb thatat /tmp/9Uh9U2xl4T:1------> 3say 1, 2, 3 Z 10, 20, 30 :with(&[+])7⏏5<EOL>» | ||
masak | m: say 1, 2, 3 Z :with(&[+]) 10, 20, 30 | ||
camelia | rakudo-moar c9a676: OUTPUT«5===SORRY!5=== Error while compiling /tmp/HfmHP2KETETwo terms in a rowat /tmp/HfmHP2KETE:1------> 3say 1, 2, 3 Z :with(&[+])7⏏5 10, 20, 30 expecting any of: infix infix stopper postfix statem…» | ||
TimToady | you can't do that due to precedence | ||
adverbs being tighter than comma | |||
timotimo | "can't adverb that" would probably be nicer if it said what exactly it thought you were applying the adverb to | ||
TimToady | the with is more for the 'reduce' variant | 19:22 | |
masak | TimToady: "\(...) capture constuct handles nameds and | correctly" is already mentioned -- maybe enough? | ||
TimToady | sure | ||
masak | oki | ||
still trying to understand "allow :with on Z and zip" | |||
any concrete example? | |||
lizmat | 3a8ecbc92066ce : Report correct line numbers for failing tests | 19:23 | |
TimToady | m: say zip(1,2,3;10,20,30):with(&[+]) | ||
camelia | rakudo-moar c9a676: OUTPUT«11 22 33» | ||
TimToady | m: say [Z](1,2,3;10,20,30):with(&[+]) | ||
camelia | rakudo-moar c9a676: OUTPUT«1 10 2 20 3 30» | ||
TimToady | hmm | ||
well, it's not needed there | 19:24 | ||
19:24
zakharyas joined
|
|||
TimToady | m: say (1, 2, 3 Z 10, 20, 30) :with(&[+]) | 19:24 | |
camelia | rakudo-moar c9a676: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ylvrTXCDPOYou can't adverb thatat /tmp/ylvrTXCDPO:1------> 3say (1, 2, 3 Z 10, 20, 30) :with(&[+])7⏏5<EOL>» | ||
TimToady | hmm, maybe that one should work | 19:25 | |
lizmat | 80afb7daa2db531 : use more [] and {} in .perl output for clarity | ||
timotimo | m: say (1, 2, 3) Z (10, 20, 30) :with(&[+]) | ||
camelia | rakudo-moar c9a676: OUTPUT«5===SORRY!5=== Error while compiling /tmp/zPM4EpWYIgYou can't adverb thatat /tmp/zPM4EpWYIg:1------> 3say (1, 2, 3) Z (10, 20, 30) :with(&[+])7⏏5<EOL>» | ||
lizmat | masak: not sure how to describe that one | ||
TimToady | those are just superstitious parens | ||
doesn't change the precedence of Z | 19:26 | ||
masak | lizmat: "correct line numbers are reported for failing tests"? :) | ||
sounds like a fix to me | 19:27 | ||
lizmat | apparently, they weren't always | ||
worth mentioning, yes ? | |||
dalek | kudo/nom: ab6c252 | (Carl Masak)++ | docs/ChangeLog: [ChangeLog] mention yet another fix |
||
masak | yes. lizmat++ | ||
lizmat | hmmm... maybe we should remove has-substr before the release ? | 19:28 | |
it now being substr-eq | |||
masak | fine by me. | 19:29 | |
guess it doesn't need to go through a deprecation cycle if it never made it into a release... | |||
lizmat | yup :-) | ||
dalek | kudo/nom: 3d3bc76 | lizmat++ | src/core/Cool.pm: Remove has-substr, it's called substr-eq now |
19:30 | |
lizmat | there were no tests and no spec | ||
8f5865bd576f4ac2 : Change semantics of coercion types in multis | 19:31 | ||
masak | just saw that one :) | ||
masak gives it a mention | |||
I think that goes in "Incompatible changes", actually | 19:32 | ||
lizmat | yes, my thought exactly | ||
masak | does that mean that a multi routine with two Int() params creates four candidates? | ||
lizmat | that would follow from the description, yes | 19:33 | |
masak | exponentially the fun ;) | ||
dalek | kudo/nom: 9c2ae90 | (Carl Masak)++ | docs/ChangeLog: [ChangeLog] mention Int() in multi semantics change |
19:34 | |
masak | anyone have any idea about the .pm group to honor this month? | ||
skids | Someplace with funny character sets. | 19:35 | |
The more umlauts the better. | |||
lizmat | .oO( some name with codepoints that don't compose ) |
19:36 | |
hmm... that may be better for next months :-) | |||
when we have NFG | |||
masak | ;) | ||
dalek | kudo/nom: c65d741 | (Carl Masak)++ | docs/announce/2015.04.md: [announce/2015.04.md] add list of contributors |
||
masak | feel free to check this for duplicates. I did a quick scan but might've missed sump'n. | 19:37 | |
lizmat | Jonathan Stowe == RabidGravy, no? | 19:38 | |
RabidGravy | yep | ||
masak | ok, de-duping. | ||
skids | .oO(only after he drinks the bubbling beaker of potion) |
||
RabidGravy | what did I break? | ||
dalek | kudo/nom: 4fa2545 | (Carl Masak)++ | docs/announce/2015.04.md: de-dupe RabidGravy++ |
||
masak | RabidGravy: just appeared twice in this month's contributor list ;) | 19:39 | |
ok, I think I'm gonna go with Vladivostok.pm | |||
surprised we haven't had that one before :) | 19:40 | ||
19:40
telex left
|
|||
masak | we've had all of China's .pm groups (except China.pm itself) *and* HongKong *and* Singapore :) | 19:40 | |
someone must like that part of Asia :P | |||
RabidGravy | the reason it's RabidGravy is because the last time I used IRC previously on this OS installation it was with the radio station I look after | 19:41 | |
19:41
FROGGS left
|
|||
lizmat | .oO( Sarah Palin: I can see Perl 6 from here ) |
19:41 | |
RabidGravy | and er, that's my music thing | ||
masak | chromatic released Seoul.pm many years ago. | 19:42 | |
19:42
rindolf left,
telex joined
|
|||
dalek | kudo/nom: 1235a27 | (Carl Masak)++ | docs/announce/2015.04.md: [announce/2015.04.md] This. Is. VLADIVOSTOK. |
19:44 | |
19:48
pullphinger left,
_mg_ left
|
|||
dalek | kudo/nom: 338ad26 | (Carl Masak)++ | docs/announce/2015.04.md: [announce/2015.04.md] add a list of changes Note that this is a subset of all the things from the ChangeLog. This month there were a lot of things, and we show the most notable ones. |
19:49 | |
masak | if anyone feels I missed something notable in that list, now's the time to review :) | ||
actually, now's the time to review the entire announement. there are no more "TBD" tags in it. | 19:50 | ||
eyeballs, assemble! :D | |||
lizmat | perhaps: the RC release in September will remove *all* deprecations | ||
? | |||
masak | I didn't understand that point. | 19:51 | |
how is that a change to this month? | |||
that sounds like a change to September... | |||
lizmat | well, true, not specific to this month | ||
masak | ok :) | ||
19:51
cschwenz joined
|
|||
lizmat | but specific for the period in which that decision was made by TimToady | 19:51 | |
masak | (still don't really get why it's part of this month's ChangeLog) | ||
sounds like a policy change, not a Rakudo change... | 19:52 | ||
RabidGravy | mark all existing deprecations as being doomeed for september | ||
lizmat | true | ||
ok | |||
dalek | kudo/nom: bfe3595 | (Carl Masak)++ | docs/release_guide.pod: [release_guide.pod] move today's release down |
19:53 | |
lizmat | now at 404 commits for this release :-) | ||
.oO( where did it go? ) |
|||
masak | ok, it's now time for me to cut the NQP release. | ||
lizmat runs a jvm spectest | 19:54 | ||
masak | step 1: don't update PARROT_REVISION. :) | 19:55 | |
dalek | p: cf2665d | (Carl Masak)++ | VERSION: bump VERSION to 2015.04 |
||
Heuristic branch merge: pushed 25 commits to specs/newio by lizmat | 19:56 | ||
masak | `make realclean` does not work in nqp. | ||
(advised by the release_guide) | |||
dalek | Heuristic branch merge: pushed 42 commits to roast/newio by lizmat | ||
RabidGravy | Proc::Async has deprecations without a date | ||
lizmat | we'll survive :-) | 19:57 | |
19:57
rvchangue joined
|
|||
masak | error: pathspec '2015.03-148-g8bb5da8' did not match any file(s) known to git. | 19:59 | |
got this error as Moar (in nqp) was updating submodule 3rdparty/dynasm | |||
:( | |||
RabidGravy | bloody software | 20:00 | |
masak | it's not a file, it's a `git describe` commitish. | ||
masak nukes MoarVM/ and tries again | 20:01 | ||
yep, worked better now. | 20:03 | ||
phew. | |||
I think the MoarVM/ repo had gotten wedged on an old commit somehow. | 20:04 | ||
lizmat is tired and goes to bed | 20:09 | ||
PerlJam | g'night lizmat | ||
RabidGravy | harr | ||
masak | 'night, lizmat++ | 20:12 | |
PerlJam feels like napping right now | |||
TimToady | bunch of par-tay poopers | 20:13 | |
masak | :P | ||
TimToady just hit that bit of backlog... | |||
masak | got a couple nqp test failures: t/nqp/07-boolean.t t/nqp/59-nqpop.t | 20:14 | |
should I be worried? | |||
TimToady: did you see my questions in the backlog a couple days back? irclog.perlgeek.de/perl6/2015-04-17#i_10455863 and irclog.perlgeek.de/perl6/2015-04-17#i_10456699 | 20:15 | ||
TimToady | boolean passes here on both platforms | ||
waiting for nqpop | |||
passed on moarvm | 20:16 | ||
for some reason nqp tests on jvm...take...a....while... | |||
masak | oh, I forgot to bump MOAR_REVISION. hold on. | 20:17 | |
cschwenz | I noticed in design.perl6.org/S22.html#emulates that a module can say it emulates another module. Is there a way to call "use SomeModule;" in such a way that it disables searching for modules which emulate SomeModule? | ||
TimToady | I run with =master, so wouldn't notice that | ||
dalek | p: fcc93a6 | (Carl Masak)++ | tools/build/MOAR_REVISION: bump MOAR_REVISION to 2015.04 |
||
masak | rebuilding. | 20:18 | |
TimToady | 59 passes here on jvm too | ||
masak | probably the missing bump. rebuilding/retesting | ||
TimToady | don't you now have to bump NQP_REVISION too? | ||
masak | only in Rakudo. | ||
this is nqp :) | 20:19 | ||
TimToady | I thought that's what you were releasing :) | ||
20:19
raiph joined
|
|||
masak | I'm in the nqp release sub-process right now. | 20:19 | |
haven't gotten back to the (main process) step of bumping the NQP_REVISION yet. | |||
s/back// | |||
TimToady | gacha | ||
20:20
espadrine joined
|
|||
TimToady | everything passes under =master, so you're probably good | 20:21 | |
RabidGravy | cschwenz, having looked at most of the code that parses the META.info the other day I don't think that does anything yet | 20:22 | |
but I could be wrong | |||
dalek | c: 94aeb24 | cygx++ | lib/Type/Buf.pod: typo s/rule/role/ |
20:23 | |
c: f3218dc | paultcochrane++ | lib/Type/Buf.pod: Merge pull request #76 from cygx/patch-1 fix typo s/rule/role/ |
|||
cschwenz | RabidGravy, that's what I expected; was mainly wondering if the feature had been thought through well enough to allow one to to say "I want this one — and no substitutes!" | 20:24 | |
20:25
espadrine_ joined
|
|||
masak | nope, still failing those tests. | 20:25 | |
20:25
espadrine left
|
|||
masak | hm. | 20:25 | |
skids | cshwentz: use Foo:auth<blah> | ||
PerlJam | masak: what OS are you on ooc? | ||
timotimo | hooray! | 20:26 | |
release | |||
masak | PerlJam: Linux Mint. | 20:27 | |
looks like it's the Parrot backend nqp is running the tests on. | |||
RabidGravy | but yeah the emulates, supersedes and superseded_by in the META.info don't do much or anything right now as far as I can tell | ||
cschwenz | skids, I saw that in the documentation for the emulates key. What concerned me was: | 20:28 | |
Conversely, if one would do a: "use JSON::Fast;" then later doing a: "use JSON::XS:auth<cpan:MLEHMANN>;" in the same scope would become a no-op, just as if the compunit had already been loaded. | |||
so the spec explicitly disables "use Foo:auth<blah> " | 20:29 | ||
masak tries doing it without the parrot backend | |||
PerlJam | masak: I'm on ubuntu 14.04 and I get all tests pass for both moar and jvm (didn't try parrot) | ||
cschwenz | if i'm reading it correctly (which i may not be) | ||
skids | cschwenz: that's if you load it in the same scope. | ||
cschwenz | ah, okay. | 20:30 | |
that makes a little more sense | |||
masak | "All tests successful." | ||
much better :) | |||
PerlJam wonders what it means for nqp to continue to have parrot support | 20:31 | ||
masak | gah, "secret key not available" | 20:32 | |
I thought I configured my gpg stuff correctly -- seems I didn't :/ | |||
20:32
rarara left
|
|||
masak | anyone know gpg and can help? | 20:32 | |
PerlJam | [Coke]++ for being slightly psychic. | ||
20:32
rararara joined
|
|||
brrt | hmm | 20:33 | |
masak | I've never used gpg, is all. I followed the instructions linked from the Rakudo release guide to set up a key. | ||
I even tested it on a .tar.gz file I made before, and it worked there. | 20:34 | ||
RabidGravy | I have to relearn how to use it every five years or so | ||
brrt | maybe printing *everything* on the REPL isn't necessarily a good idea | ||
masak | I'm stuck. | 20:35 | |
I don't know gpg well enough. I don't know how to move on from here if signing doesn't work. | |||
I need help to continue the nqp release process. | 20:36 | ||
PerlJam | masak: what's in your ~/.gnupg dir? | ||
Are you sure you put the key on the same system you're signing with now? (or copied it there) | |||
masak | PerlJam: gist.github.com/masak/dd94439a1865b2fa6c2a | 20:37 | |
PerlJam: "same system" as in on the laptop. yes. | |||
I'm not ssh'd into anything. I'm doing everything locally. | |||
I saw the gpg key creation succeed. | |||
20:37
xfix left
20:38
darutoko left
|
|||
masak spends this idle time investigating why we sign our releases nowadays | 20:41 | ||
PerlJam | masak: I'm not well-versed in gpg either, but I just did a test signing myself and it worked fine. And my .gnupg dir looks the same as yours modulo file size differences. | ||
20:42
spider-mario joined
|
|||
masak | ok. thanks for trying. | 20:42 | |
PerlJam: did you try signing with `git tag -s -a -m"tag release YYYY.MM" YYYY.MM`? because it worked for me on a .tar.gz file, but not with the git command. | 20:43 | ||
PerlJam | I did bot | ||
er both | |||
20:43
brrt left
|
|||
RabidGravy | what is the error? | 20:43 | |
masak | RabidGravy: "secret key not available" | 20:44 | |
found the relevant backlog: irclog.perlgeek.de/perl6/2015-04-02#i_10382716 | |||
I'm sorry, but I don't feel so bad about skipping the signing step if I can't make this work. | |||
RabidGravy | oh weird | ||
masak | I feel I've done what I should in order to prepare properly, and it still doesn't work. | 20:45 | |
whoever does May can deal with this stuff. | |||
I just want to finish the release before I fall asleep. | |||
vendethiel | fr.slideshare.net/BrendanEich/value-objects2 I guess even JS wanted crazy operators at some point | ||
PerlJam | masak: does the email you used to generate the key match your git user.email ? | ||
masak | PerlJam: yes. | 20:46 | |
proceeding without signing. | 20:47 | ||
PerlJam | masak: and you don't have user.SigningKey set to some other key in your .gitconfig? | ||
masak | I don't have that one set to anything. | ||
PerlJam | (and that's all I've got for an attempt at debugging this problem) | ||
masak | thanks for trying. | 20:48 | |
I'm moving on now. | |||
PerlJam | masak++ | ||
masak | someone with the appropriate ssh key, please upload masak.org/carl/tmp/nqp-2015.04.tar.gz | ||
thank you. | |||
20:49
lichtkind left
|
|||
masak | continuing with the Rakudo release process. | 20:49 | |
PerlJam uploads nqp | 20:50 | ||
dalek | kudo/nom: 5aecace | (Carl Masak)++ | tools/build/NQP_REVISION: [release] bump NQP revision |
||
kudo/nom: 897e235 | (Carl Masak)++ | VERSION: [release] bump VERSION |
|||
masak | PerlJam++ | ||
PerlJam | random question ... why are the nqp tarballs so much bigger than the rakudo tarballs? Is it because nqp has the unicode database that rakudo would use? | 20:52 | |
yeah ... I guess it's just the 3rdparty stuff | 20:53 | ||
20:53
MARTIMM left,
zakharyas left
|
|||
RabidGravy | isn't 3rdparty in moarvm rather than nqp? | 20:54 | |
all the uv etc ... | |||
20:55
Rounin left
|
|||
PerlJam | nqp has quite a bit of 3rdparty stuff as well: asm dyncall jline jna libtommath sha1 | 20:55 | |
masak .oO( 3rdpar-tay ) | 20:56 | ||
21:00
dolmen joined
|
|||
flussence | random question, prompted by seeing a whole bunch of complaints about python3: what happens when we do «dir('.')» on a bunch of filenames that are only partially utf-8? | 21:03 | |
masak | that is an interesting question. | 21:08 | |
there's only one way to find out :) | |||
geekosaur | POSIX filenames are inherently byte strings | 21:09 | |
as much as people want to believe otherwise | |||
masak | I remember reading about the py3 people learning about this, yes. | 21:11 | |
flussence | I've heard there's people trying to get the next version of POSIX changed to disallow "crazy" things like control chars in them, which would be kinda nice... | ||
masak | question is, what does Rakudo do? | ||
control chars are the least of your problems, no? at least they are valid UTF-8. | |||
PerlJam | whenever one of you guys figure it out, write a blog post about it if it's interesting or useful ;) | ||
masak | it's invalid codepoints and stuff we should be worried about. | ||
21:16
skids left
21:18
cschwenz left
|
|||
dtscode | wheres a good perl 6 tutorial? | 21:19 | |
masak | dtscode: learnxinyminutes.com/docs/perl6/ | 21:20 | |
dtscode | thanks | 21:21 | |
PerlJam | Hmm. that link mentions that Perl 6 runs on parrot. Maybe it needs an update to mention the suspension | ||
21:22
eli-se left
|
|||
masak | PerlJam: please open an issue or submit a pull request as outlined at the bottom of the page. | 21:23 | |
PerlJam | will do | ||
21:25
beastd left
21:27
LonelyGM joined
|
|||
dtscode | im a little confused by the multiline comments. does it mean #`[] is a multiline comment or do i need #`[#`]? | 21:31 | |
21:31
LonelyGM left
|
|||
masak | m: say #`[ like this -- does that make it clearer? ] 42 | 21:32 | |
camelia | rakudo-moar 897e23: OUTPUT«42» | ||
dtscode | ah ok | 21:33 | |
21:35
muraiki left
|
|||
RabidGravy | this is so something that is going to make me want to kill someone who over-uses it | 21:38 | |
dtscode #`[ cant possibly imagine why that would annoy you RabidGravy ] | 21:39 | ||
PerlJam | RabidGravy: it's only a crime if you act on the impulse. | 21:40 | |
RabidGravy | if #'[ it does I'll be sure to let you ] $kow | ||
know | |||
21:40
Peter_R left
|
|||
masak | no, it has to be a ` | 21:41 | |
not a ' | |||
RabidGravy | I know but I can't type | ||
21:42
Peter_R joined
21:45
Vlavv_ left
|
|||
RabidGravy | in a completely unrelated note is there any documentation on the "earliest $channel { ... } " construct? | 21:45 | |
I started on the concurrency doc and get a bit tied up on that | |||
21:47
kaare_ left
|
|||
RabidGravy | I'll ask again tomorrow as I have to crash now | 21:49 | |
21:49
espadrine_ left
21:50
pyrimidine joined
21:53
torbjorn left
21:54
RabidGravy left
21:57
Vlavv_ joined
|
|||
masak | just finished Rakudo stresstest. | 22:04 | |
Moar passes just fine. | |||
some test failures on JVM. | |||
I can throw them up as a gist if anyone's interested. | |||
gist.github.com/masak/68a451cdb127f6bd6557 | 22:05 | ||
Rakudo tarball: masak.org/carl/tmp/rakudo-2015.04.tar.gz -- PerlJam, you still there? | 22:06 | ||
22:08
yqt left
|
|||
masak | (or someone else with the permissions to upload to rakudo.org) | 22:08 | |
in the meantime, I'll prepare the p6c emission and the Wikipedia update. | |||
22:10
diana_olhovik_ left
|
|||
PerlJam | aye, I'm here | 22:12 | |
masak | \o/ | ||
22:12
vendethiel left
|
|||
PerlJam | uploaded | 22:13 | |
and now I'm gone :) | |||
PerlJam *poof* & | |||
masak | PerlJam++ | ||
p6c email sent. | 22:14 | ||
22:15
vendethiel joined
|
|||
masak | en.wikipedia.org/wiki/Rakudo_Perl_6 updated. | 22:16 | |
step 18. done. | |||
standing down the release process. | |||
all systems power down. | |||
thank you; you've been great. | |||
sorry we couldn't make it work with the gpg keys -- maybe next time. | 22:17 | ||
thanks for flying masak Rakudo release process. | |||
22:17
bjz left
22:18
lucasb joined,
LonelyGM joined
|
|||
lucasb | tarballs are 404 here :( | 22:19 | |
hoelzro | masak++ | ||
lucasb | They show up in the apache listing, but when I try to download them, it's 404 | ||
22:22
LonelyGM left
|
|||
[ptc] | masak++ | 22:22 | |
tadzik | masak++ | ||
[ptc] | also get 404 here | ||
22:22
davido_ joined
|
|||
[ptc] | permissions, maybe? | 22:23 | |
masak | rakudo.org seems a bit slow | ||
raydiak | wfm just now | ||
masak++ | |||
[ptc] tries again | |||
masak doesn't get a reply from rakudo.org/downloads/rakudo | 22:24 | ||
raydiak | at the url in the backlog that is | ||
[ptc] | nope. neither wget nor browser work | ||
raydiak | ah, yeah wasn't trying rakudo.org my bad | ||
masak | no, that was just for PerlJam. | 22:25 | |
should work, though. | |||
22:25
Peter_R left
|
|||
masak | yeah, masak.org/carl/tmp/rakudo-2015.04.tar.gz works here. | 22:26 | |
(temporary URL, though. will go away soon.) | |||
rakudo.org/downloads/rakudo doesn't resolve for me. | |||
22:28
Peter_R joined
|
|||
raydiak | rakudo.org/downloads/rakudo/ does work here (though it redirects with the trailing slash if you leave it off) | 22:29 | |
masak | www.downforeveryoneorjustme.com/rakudo.org agrees it's just me. | 22:31 | |
well, I am on a hotel wifi, so maybe something screwey is going on. oh well. | 22:32 | ||
I think we made the release, in any case ;) | |||
at least Wikipedia says so. | |||
22:32
andreoss joined
|
|||
raydiak | still no luck at rakudo.org/downloads/rakudo/rakudo-....04.tar.gz though... | 22:33 | |
[ptc] | shouldn't someone tag the MoarVM build? | ||
the most recent tag for me is still 2015.03 | 22:34 | ||
although the VERSION file is up to date | |||
TimToady notes that rakudo.org/how-to-get-rakudo/ doesn't mention the tarballs at all | |||
22:35
ponbiki left
|
|||
masak | [ptc]: you are likely out of date, then. my MoarVM has a 2015.04 tag. | 22:36 | |
well, that's it for me. | |||
time for bed. | |||
'night, #perl6 | |||
raydiak | thanks again, g'night masak | ||
[ptc] | masak: odd, I just did a fetch, merge | 22:37 | |
goodnight masak | |||
masak: had to use git fetch --tags, now it works | 22:39 | ||
TimToady | maybe wordpress doesn't think the tarball is published yet? | 22:43 | |
dalek | p: b9560e3 | paultcochrane++ | tools/build/Makefile-common.in: Add RM_F makefile variable This is required in order that `make realclean` can work correctly. |
||
22:44
LLamaRider joined
22:47
Ben_Goldberg joined
|
|||
TimToady | the other interesting thing is that the tarball apparently leaped from 1.4 to 2.4 MB | 22:49 | |
according to the directory, not the file, which I still can't get | |||
22:53
skids joined
|
|||
TimToady | I'm guessing the permisions/ownership are wrong on the file | 22:54 | |
22:54
ponbiki joined
22:55
ponbiki is now known as Guest66256
|
|||
TimToady | .tell PerlJam can you check the permissions on the tarball you uploaded? | 22:56 | |
yoleaux | TimToady: I'll pass your message to PerlJam. | ||
22:56
Guest66256 is now known as ponpon
22:58
vendethiel left
22:59
lucasb left
|
|||
raydiak | TimToady: S15-normalization which didn't exist in 2015.03 uncompresses to nearly 6 megs | 22:59 | |
22:59
andreoss left
|
|||
raydiak | erm, t/spec/S15-normalization that is | 23:01 | |
TimToady | did we used to include the actual tests? I thought we just used a tag into roast | ||
raydiak | idk for how long, but they're in the 2015.03 I was checking against | 23:02 | |
flussence | m: say 1381080 / 2481636; # maybe we ought to start offering .tar.xz releases too, this is quite a size difference | 23:03 | |
camelia | rakudo-moar 897e23: OUTPUT«0.5565200» | ||
TimToady | I guess so | ||
23:03
rmgk is now known as Guest18322,
rmgk_ joined,
Guest18322 left,
rmgk_ is now known as rmgk
|
|||
raydiak | perhaps we shouldn't include roast but just the sanity tests? | 23:06 | |
flussence | (to clarify: 1381080 is the size of that 2015.04 url posted by masak++ repacked with "xz -9" -- 2015.03.tar.gz is about 200KB larger than that) | 23:07 | |
dtscode | say "Interpolate an array using [] : @array[]"; #could someone clarify what interpolate means in this sense? | 23:11 | |
flussence | as in putting the contents into a ""-string | 23:12 | |
m: my @a = ^10; say "@a[]" | |||
camelia | rakudo-moar 897e23: OUTPUT«0 1 2 3 4 5 6 7 8 9» | ||
dtscode | ah | ||
flussence | m: my @a = ^10; say "@a" | 23:13 | |
camelia | rakudo-moar 897e23: OUTPUT«@a» | ||
23:15
vendethiel joined
|
|||
TimToady | so your email addresses are safe(-ish) | 23:21 | |
as long as you don't put [] after gmail.com :) | |||
er, () | |||
m: say [email@hidden.address] | 23:22 | ||
camelia | rakudo-moar 897e23: OUTPUT«5===SORRY!5=== Error while compiling /tmp/PTrWgiRgJJVariable '@foo' is not declaredat /tmp/PTrWgiRgJJ:1------> 3say [email@hidden.address] expecting any of: argument list postfix» | ||
TimToady | m: say [email@hidden.address] | ||
camelia | rakudo-moar 897e23: OUTPUT«larry@foo.com» | ||
23:25
dolmen left
|
|||
raydiak | without t/spec, 2015.04 is 654k .tar.gz'd (vs 2.4M), and 4M uncompressed (vs 17) | 23:28 | |
23:28
gfldex left
23:31
raiph left
|
|||
dtscode | is there a good perl 6 irc lib yet? | 23:32 | |
preferably async? | |||
TimToady, thanks :D makes sense | 23:33 | ||
23:37
vendethiel left
|
|||
timotimo | fortunately irc is such a simple protocol, and so well defined | 23:40 | |
*cough* *cough* | 23:41 | ||
23:41
vendethiel joined
|
|||
dtscode | are you saying roll my own? | 23:42 | |
timotimo | it'd be cool if we had one, i don't want to make you make it | ||
TimToady | yes, you do, you know you do :) | 23:43 | |
timotimo | i'm not sure i'd actually do something with it myself | ||
dtscode | ill make one | ||
is there at least an async lib already? | 23:44 | ||
23:45
cognominal left,
LLamaRider left
|
|||
TimToady | moritz++ actually has a logger already, written in P6, so you probably don't want to reinvent what he has | 23:47 | |
psch | m: say [email@hidden.address] | ||
camelia | rakudo-moar 897e23: OUTPUT«foo@example.com[]» | ||
psch | m: my @a = ^3; say "@a[]" | 23:48 | |
camelia | rakudo-moar 897e23: OUTPUT«0 1 2» | ||
psch | m: my @a = ^3; say "a@a[]" | ||
camelia | rakudo-moar 897e23: OUTPUT«a0 1 2» | ||
psch | huh | ||
lexical lookup? | |||
oh, the . | |||
psch should probably go to bed soon | 23:49 | ||
dtscode: Net::IRC exists, at github.com/TiMBuS/Net--IRC | 23:52 | ||
i'm not sure what kind of async library one would look for, with Promises, Supplies and start/await in core, but that might just be because i'm not particularly knowledgable | 23:53 | ||
23:54
ponpon is now known as ponbiki,
danaj joined
|
|||
raydiak | there's IO::Socket::Async in core too | 23:54 | |
23:59
n0vacane left
|