»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by masak on 28 November 2015. |
|||
herby_ | dumb question, but what does "so" do? | 00:00 | |
i'm trying to search, but so is used a lot | |||
Guest99713 | See github.com/perl6/doc/commit/cf66ef...fe02770498 | ||
AlexDaniel | 「grep -R 'say so' *」 shows that there is only one such error | ||
zengargoyle | herby_: think opposite of 'not' | ||
herby_ | nm | ||
I found it, I'm a dummy | 00:01 | ||
zengargoyle | loose precedence boolifier | ||
herby_ | thanks zenga | ||
cygx | welcome to Day 6 \o/ | ||
jdv79 | timotimo: should i just bug it? | ||
masak | cygx: \o/ | ||
herby_ | I can't contribute much to the technical side of the Perl 6 project, but should I report typos & small mistakes I spot as I'm reading Perl 6 docs? | 00:02 | |
or at this point are they not a priority | |||
dalek | c: cf66efc | (Christopher Bottoms)++ | doc/Type/Any.pod: Removed erroneous use of "so" |
00:03 | |
c: 6de7f0b | RabidGravy++ | doc/Type/Any.pod: Merge pull request #225 from molecules/patch-2 Removed erroneous use of "so" |
|||
timotimo | jdv79: i know this exact code has been in the channel before, so you may have to search the bug tracker first | ||
cygx | herby_: better yet, you can fix them | ||
herby_ | the famous pull requests? not sure how that works but I'll do a little reading | ||
jdv79 | surely a dup is better than nothing:) | 00:04 | |
Guest99713 | herby_: Do you have a github account? | ||
herby_ | I do I do, created one the other day | ||
cygx | herby_: for minor things, you can use the github web interface | ||
AlexDaniel | herby_: as far as I know it is not a problem to get push access. This will make it easier to fix typos | ||
herby_: oh, and what cygx just said! | 00:05 | ||
RabidGravy | in a nutshell, fork github.com/perl6/doc/, clone locally, make changes push, make PR | ||
AlexDaniel | herby_: it will fork, commit and create a pull request. All behind the scenes! You just edit a file :) | ||
herby_ | sweet, that'll give me something to work on and contribute to | ||
thanks | |||
jdv79 | is rt slow? | 00:06 | |
Guest99713 | herby_++ for finding that error | ||
00:06
abaugher_ joined
|
|||
AlexDaniel | herby_: frequently I see tiny typos but sometimes I am too lazy to fix them. That being said, I'd love these things to be fixed. Your work will be appreciated! | 00:09 | |
herby_ | great, I've been looking for a way I could help | 00:10 | |
dalek | : 373bff6 | (Wenzel P. P. Peppmeyer)++ | misc/perl6advent-2015/schedule: Update schedule |
00:12 | |
00:13
herby_ left
00:14
raiph joined
00:15
mngrif joined
00:18
raiph left,
raiph joined
00:20
raiph left,
raiph joined
00:22
raiph left
00:24
cygx_ joined
|
|||
jdv79 | so there's :adverb('str with spaces') and :adverb<strsansspaces> - is there a terse form for a str with spaces? | 00:27 | |
00:27
cygx left
|
|||
timotimo | no | 00:28 | |
hm. | |||
m: say (:foobar/hello how are you/) | |||
camelia | rakudo-moar fdec62: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ZtVYVP5cmqMissing required term after infixat /tmp/ZtVYVP5cmq:1------> 3say (:foobar/hello how are you/7⏏5) expecting any of: prefix term» | ||
timotimo | m: say (:foobar<<hello how are you>>).perl | ||
camelia | rakudo-moar fdec62: OUTPUT«:foobar(("hello", "how", "are", "you"))» | 00:29 | |
timotimo | thought so. | ||
jdv79 | no such thing as a positional adverb, right? like :() or so | 00:33 | |
00:35
raiph joined
00:36
BenGoldberg joined
|
|||
timotimo | nope | 00:36 | |
00:36
raiph left
|
|||
masak | hi -- rt.perl.org/Public/Bug/Display.html?id=126827 is currently breaking 007. | 00:38 | |
vendethiel | jdv79: :adverb<<"str sans spaces">>? :D | 00:43 | |
cygx_ | 'night o/ | 00:44 | |
00:45
webstrand left,
cygx_ left
|
|||
AlexDaniel | so, indeed, it seems like DBIish is fully functional if you switch to “use”. I don't think that it makes sense to commit this awful workaround, but at least now I can continue my work… | 00:46 | |
00:47
leont left
00:49
Ben_Goldberg joined
|
|||
masak | 'night, #perl6 | 00:49 | |
AlexDaniel | In short: 「perl6 -e 'require DBDish::Pg'」 does not work, but 「perl6 -e 'use DBDish::Pg'」 works. No idea why | 00:50 | |
and this happened after curli, I think | |||
00:50
rurban1 left,
BenGoldberg left
00:52
lolisa joined
00:54
TEttinger joined
01:00
webstrand joined
01:01
RabidGravy left
01:07
Guest99713 left
|
|||
dalek | ast: 42fbf6c | thundergnat++ | S32-num/rounders.t: Fix plan I forgot to update last commit. thundergnat-- |
01:21 | |
01:29
cognominal left
|
|||
dalek | ast: 6c1ec2d | thundergnat++ | S32-num/narrow.t: Add tests for RT #126828 |
01:33 | |
01:40
mohae left
01:44
thundergnat left
01:50
zacts left
02:00
rurban joined,
Zoffix joined
02:12
vendethiel left
|
|||
dalek | osystem: 79bb07e | cygx++ | META.list: add NQP::Eval a tiny module that enables EVAL :lang<nqp> cf github.com/cygx/p6-nqp-eval |
02:23 | |
02:29
kid51 left
02:32
mohae joined
02:33
pippo left
02:34
vendethiel joined
|
|||
Zoffix | .tell cygx would be nice to mention in github.com/cygx/p6-nqp-eval why one would want to EVAL :lang<nqp>; as opposed to regular EVAL.... at least for outsiders like me to make sense of the module :) | 02:38 | |
yoleaux | Zoffix: I'll pass your message to cygx. | ||
02:47
kid51 joined
02:54
kid51 left
02:55
vendethiel left
03:05
skids joined,
noganex joined
03:08
noganex_ left
03:15
bjz left
03:16
kjs_ joined
03:17
bjz joined
03:18
rurban left
03:42
Actualeyes left
04:00
sgt_baker joined
|
|||
cxreg | never came up with a compelling use for .WHEN, eh? | 04:01 | |
yoleaux | 15 Nov 2015 12:28Z <bbkr_> cxreg: I'll be back online at 22 UTC today | ||
04:03
molecules joined,
molecules is now known as Guest97065
|
|||
Guest97065 | exit | 04:07 | |
04:08
Guest97065 left,
grondilu left
04:09
pierre-vigier joined,
grondilu joined
04:16
pierre-vigier left
04:20
AlexDaniel left
04:28
lolisa left
04:35
bpmedley left
04:39
molecules joined,
webstrand left,
molecules left
04:40
ChristopherBotto joined
04:43
ChristopherBotto left
04:44
ChristopherBotto joined
|
|||
ChristopherBotto | m: for "A\nB\nC\nD".lines() -> $x, $y { say "$x, then $y" } | 04:44 | |
camelia | rakudo-moar fdec62: OUTPUT«A, then BC, then D» | ||
ChristopherBotto | It's fixed! Yea! | 04:47 | |
m: my \i = "A\nB\nC\nD".lines.iterator; my @x; (say i.push-exactly(@x, 2)) xx 3 | 04:48 | ||
camelia | rakudo-moar fdec62: OUTPUT«22» | ||
04:49
cheesus joined
|
|||
ChristopherBotto | Looks like RT #126270 is fixed | 04:50 | |
cheesus | e | ||
04:50
cheesus left
04:51
mandroit joined
|
|||
ChristopherBotto | .tell masak Looks like RT #126270 is fixed | 04:51 | |
yoleaux | ChristopherBotto: I'll pass your message to masak. | ||
04:55
kjs_ left
04:58
mandroit left
05:06
mohae left
05:14
zengargoyle left
05:23
zengargoyle joined
05:33
webstrand joined
05:40
ChristopherBotto left
05:41
ChristopherBotto joined
05:42
ChristopherBotto left
05:44
lolisa joined,
TimToady left,
webstrand left,
Ben_Goldberg left,
ChristopherBotto joined,
ChristopherBotto left
05:45
Ben_Goldberg joined,
Ben_Goldberg left,
ChristopherBotto joined,
ChristopherBotto left
05:46
Yuki joined,
Ben_Goldberg joined,
Yuki is now known as Guest64768,
TimToady_ joined,
ChristopherBotto joined
|
|||
Guest64768 | ok | 05:46 | |
05:47
bjz left,
khw left
|
|||
Guest64768 | quit | 05:48 | |
05:48
ChristopherBotto left,
Guest64768 left,
bjz joined
05:51
sgt_baker left
05:52
Ben_Goldberg left,
Ben_Goldberg joined
05:53
Ben_Goldberg left,
Ben_Goldberg joined
05:55
Ben_Goldberg left
05:56
Ben_Goldberg joined
05:57
Ben_Goldberg left
05:59
yqt left
|
|||
dalek | ast: b37b797 | lizmat++ | S03-binding/ro.t: Fudge another :== NYI casualty in testing |
06:14 | |
ast: 182fd17 | lizmat++ | S32-num/narrow.t: Properly fudge test for RT #126828 |
|||
06:25
z8 joined
06:33
z8 left
|
|||
skids | m: $*SCHEDULER.cue({42.say}, :every(1), :times(2)); sleep 4 # design docs say you can, was that changed or is this an NYI? | 06:40 | |
camelia | rakudo-moar fdec62: OUTPUT«Cannot specify :every and :times at the same time in block <unit> at /tmp/qpFljbVUyy:1» | ||
ChoHag | What symbols are (in)valid for variables, module names, etc.? | 06:58 | |
07:02
CIAvash joined
07:10
pierre-vigier joined
|
|||
skids | ChoHag: alphas, digits, underscore, hyphen, and ' are valid for many things. There are some places where ' is not allowed, as ' is in the grammar rule "identifier" but not the rule 'ident'. Also ":" if you count long (package qualified) names. ' and - cannot be the first char and must be followed by an alpha, not a digit. | 07:25 | |
lizmat | skids: re .cue, that's NYI, but I think I can actually make that happen now | 07:29 | |
07:30
pierre-vigier left,
lolisa left
|
|||
skids | lizmat: Nice. I'm going through current S17 checking for inconsistencies. The other one I found so far is Promise.at is NYI. Haven't gotte to the rough/churny part yet. | 07:32 | |
ChoHag | Is there any way to create different types of iterator, eg. with an adverb? | ||
$foo.map: ... where $foo is an object which does Iterable. | 07:33 | ||
I tried adding optional options to the iterator method but don't know if that does anything and/or there's any way to get at it. | 07:34 | ||
lizmat | .tell timotimo trying to make 'use trace' more flexible, but: gist.github.com/lizmat/639f7ffa428ba1d55861 Any suggestions on fixing the optimizer / emitted code ? | 07:35 | |
yoleaux | lizmat: I'll pass your message to timotimo. | ||
skids | ChoHag: not entirely clear as to your question. | 07:36 | |
lizmat | ChoHag: if something is Iterable, it must have an "iterator" method, you can give that any params you want | ||
ChoHag | How are those params set when calling the function (eg. map) which ends up calling the iterator? | 07:37 | |
lizmat | they're not, but when you call the iterator method yourself, you can set them | ||
perhaps you need to use a dynamic variable to change meaning of the iterator method ? | 07:38 | ||
ChoHag | Well I tried that, but then I just the loop just iterates over the iterator rather than what the iterator iterates. | ||
07:39
bjz left
|
|||
ChoHag | $foo.iterator.map: ... | 07:39 | |
Hmm. | |||
Well I don't need to do it. Just curious. | |||
skids | ChoHag: If you provide default values those will be used. Also maybe a parameterized role would let you have myiter[:option(1)] ~~ myiter | ||
07:40
hankache joined
|
|||
hankache | computer, messages | 07:40 | |
skids | m: List.^roles.say # bad puns | 07:41 | |
camelia | rakudo-moar fdec62: OUTPUT«Method 'iterator' must be implemented by Iterable because it is required by a role in any compose_method_table at gen/moar/m-Metamodel.nqp:2680 in any apply at gen/moar/m-Metamodel.nqp:2690 in any compose at gen/moar/m-Metamodel.nqp:2826 in…» | ||
gfldex | ChoHag: you could .wrap the iterator method | 07:42 | |
07:42
bjz joined
|
|||
gfldex | and then return your own iterator | 07:42 | |
skids | But .wrap has some runtime penaties and restrictions WRT compile time vs runtime, caveat emptor | 07:43 | |
07:56
darutoko joined
|
|||
skids | o/ sleep time | 08:00 | |
08:04
skids left
08:11
kaare_ joined
|
|||
nine | mÖ List.^roles>>.name.say | 08:28 | |
m: List.^roles>>.name.say | |||
camelia | rakudo-moar fdec62: OUTPUT«Method 'name' not found for invocant of class 'Positional' in block <unit> at /tmp/yFhPd4U7Li:1» | ||
nine | m: List.^roles>>.^name.say | ||
camelia | rakudo-moar fdec62: OUTPUT«List» | ||
nine | That's odd | 08:29 | |
m: say .^name for List.^roles | |||
camelia | rakudo-moar fdec62: OUTPUT«PositionalIterable» | ||
08:37
pierre-vigier joined
08:38
_nadim joined,
nadim left
08:44
domidumont joined
08:46
krunen_ is now known as krunen
08:48
domidumont left
08:49
domidumont joined
08:53
krunen is now known as krunen_
08:54
krunen_ is now known as krunen,
nuc joined
08:55
nuc left
08:58
noam_ joined
09:00
rurban joined
09:02
noam left
09:08
Actualeyes joined
|
|||
dalek | kudo/nom: 2a635cd | lizmat++ | src/core/ThreadPoolScheduler.pm: Allow for :every *and* :times in SCHEDULER.cue skids++ for spotting this omission |
09:09 | |
09:18
rindolf joined
|
|||
dalek | ast: 9fd62a1 | lizmat++ | S17-scheduler/ (2 files): Adapt tests because of 2a635cd96279ace1c5d3d6d687 |
09:19 | |
timotimo | lizmat: you can try using call with a WVal as the first argument populated by $*W.find_symbol | ||
yoleaux | 07:35Z <lizmat> timotimo: trying to make 'use trace' more flexible, but: gist.github.com/lizmat/639f7ffa428ba1d55861 Any suggestions on fixing the optimizer / emitted code ? | ||
dalek | kudo/nom: cc13049 | (Stefan Seifert)++ | src/Perl6/World.nqp: Make "no precompilation;" usefull for avoiding automatic precomp |
09:22 | |
line-Perl5: 1d62b44 | (Stefan Seifert)++ | / (4 files): Prohibit precompilation of Inline::Perl5 While Inline::Perl5 itself is actually precompilation safe, modules that use Inline::Perl5 may not be precompiled if they use compile time features like use Foo:from<Perl5> which they usually will. The Perl 5 interpreter used by Inline::Perl5 represents external state that would not be saved during precompilation and would thus be missing when loading a precompiled module that depends on it. Since we have no way to tell Perl 6 to not precompile reverse dependencies, prohibit precompilation of Inline::Perl5 itself. |
|||
09:24
zengargoyle left
09:25
zengargoyle joined
|
|||
dalek | p: 5a5a4eb | (JJ Merelo)++ | README.pod: Adds info on using it |
09:28 | |
p: 9c3b296 | (JJ Merelo)++ | README.pod: Uses URLs |
|||
p: 4247d1f | niner++ | README.pod: Merge pull request #262 from JJ/master Info on using NQP |
|||
ast: e2fcaab | lizmat++ | S17-promise/at.t: Add tests for Promise.at |
|||
kudo/nom: 1faeb30 | lizmat++ | src/core/Promise.pm: Implement Promise.at, skids++ for spotting absence |
09:29 | ||
kudo/nom: 3172033 | lizmat++ | t/spectest.data: Run Promise.at tests |
|||
09:31
Akagi201 joined
|
|||
dalek | c: faae5ff | lizmat++ | doc/Type/Promise.pod: Add documentation for Promise.at |
09:32 | |
09:32
sno left
|
|||
lizmat | afk for a few hours& | 09:34 | |
09:38
RabidGravy joined
09:44
haidarian joined
|
|||
gfldex | day 13 in the advent calender is scheduled, proofreading is welcome | 09:55 | |
[Tux] | test 50000 22.841 22.720 | 09:57 | |
test-t 50000 16.469 16.347 | |||
csv-parser 50000 25.549 25.428 | |||
09:58
lolisa joined,
Begi joined
|
|||
[Tux] | Q: I have a Str with "aaXbbYccXddXeeY" (X and Y being $fh.nl-in) | 09:58 | |
I want to split that into [ "aaX", "bbY", "ccX", "ddX", "eeY" ] | 09:59 | ||
If Str is "aaXbbYccXddXeeYff" (X and Y still being $fh.nl-in) | 10:00 | ||
I want to split that into [ "aaX", "bbY", "ccX", "ddX", "eeY", "ff" ] | |||
suggestions for best approach? | |||
10:00
Begi2 joined
10:02
spider-mario joined,
Begi left
|
|||
[Tux] | aa, bb, .. ff can be anything, even empty, as long as it does not contain X or Y. ff cannot be empty | 10:02 | |
timotimo | m: "aaXbbYccXff".split(["X", "Y"]).perl.say | ||
camelia | rakudo-moar 317203: OUTPUT«("aa", "bb", "cc", "ff")» | ||
timotimo | m: "aaXbbYccXff".split(["X", "Y"], :kv).perl.say | 10:03 | |
camelia | rakudo-moar 317203: OUTPUT«("aa", 0, "X", "bb", 1, "Y", "cc", 0, "X", "ff")» | ||
timotimo | m: "aaXbbYccXff".split(["X", "Y"], :v).perl.say | ||
camelia | rakudo-moar 317203: OUTPUT«("aa", "X", "bb", "Y", "cc", "X", "ff")» | ||
10:03
Begi2 is now known as Begi
|
|||
[Tux] | I have played with those already | 10:03 | |
timotimo | m: "aaXbbYccXff".split(["X", "Y"], :v).rotor(2).perl.say | ||
camelia | rakudo-moar 317203: OUTPUT«(("aa", "X"), ("bb", "Y"), ("cc", "X")).Seq» | ||
[Tux] | there is ff gone missing | 10:04 | |
timotimo | m: "aaXbbYccXff".split(["X", "Y"], :v).rotor(2, :partial).perl.say | ||
camelia | rakudo-moar 317203: OUTPUT«(("aa", "X"), ("bb", "Y"), ("cc", "X"), ("ff",)).Seq» | ||
timotimo | i was just looking for the name of the flag :) | ||
m: "aaXbbYccXff".split(["X", "Y"], :v).rotor(2, :partial).map(-> $a, $b { $a ~ $b }).perl.say | |||
camelia | rakudo-moar 317203: OUTPUT«("aa Xbb Y", "cc Xff").Seq» | ||
timotimo | m: "aaXbbYccXff".split(["X", "Y"], :v).rotor(2, :partial).map(-> $a, $b? { $a ~ $b }).perl.say | 10:05 | |
camelia | rakudo-moar 317203: OUTPUT«("aa Xbb Y", "cc Xff").Seq» | ||
timotimo | oh, wrong | ||
m: "aaXbbYccXff".split(["X", "Y"], :v).rotor(2, :partial).map(*.join).perl.say | |||
camelia | rakudo-moar 317203: OUTPUT«("aaX", "bbY", "ccX", "ff").Seq» | ||
[Tux] | \o/ | ||
timotimo | now that we have something that works, we can find something that looks/performs good, too :P | 10:06 | |
[Tux] | looks testworthy! | ||
timotimo | (if it performance becomes a concern soon enough. it usually does) | ||
rotor may be overkill here | |||
m: "aaXbbYccXff".split(["X", "Y"], :v).map(-> $a, $b? {$a ~ ($b // "")}).perl.say | |||
camelia | rakudo-moar 317203: OUTPUT«("aaX", "bbY", "ccX", "ff").Seq» | ||
gfldex | use .index and provide your own iterator? | ||
Begi | tadzik (or others) : a website for Bailador would be really great | 10:10 | |
[Tux] | m: dd "a,b,c\n1,foo,bar\n".split($*IN.nl-in,:v).map(->$a,$b?{$a~($b//"")}) | 10:15 | |
camelia | rakudo-moar 317203: OUTPUT«Seq $var = ("a,b,c\n", "1,foo,bar\n", "").Seq» | ||
[Tux] | why is there a trailing ""? | 10:16 | |
RabidGravy | If anyone happens to be looking at panda today, I'm getting: | 10:18 | |
"==> Bootstrapping Panda | |||
Use of uninitialized value %ENV of type Any in string context | |||
Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in sub MAIN at bootstrap.pl:64" | |||
it still seems to work though | 10:24 | ||
10:32
pippo joined
10:36
lolisa left
10:44
azawawi joined
|
|||
azawawi | hi #perl6 | 10:44 | |
[Tux] | m: class C { has $!x; method new (Str $s){$!x:=$s;};method close{$!x="Foo";}};my Str$s;C.new($s).close;$s.say; | 10:48 | |
camelia | rakudo-moar 317203: OUTPUT«Cannot bind attributes in a type object in method new at /tmp/FjOBUMe0h7:1 in block <unit> at /tmp/FjOBUMe0h7:1» | ||
[Tux] | is there some way to do that? | ||
pippo | azawawi: o/ | 10:49 | |
10:51
sno joined,
vendethiel joined
|
|||
vendethiel | o/, #perl6 | 10:51 | |
[Tux] | almost there … :) | ||
can I distinguish between $c.foo("aaa") and my$a="aaa";$c.foo($a); using multi method foo (Str $s) and multi method foo (Str $s is rw) ? | 10:55 | ||
10:58
bjz left
|
|||
Begi | I'll use Perl6 on Ubuntu now. I think (and I hope) it will be better than Windows | 10:58 | |
moritz | [Tux]: with a sufficiently new rakudo, that works | ||
[Tux] | rakudo is only 3 hours old, and I just tested, it works | 10:59 | |
[Tux] raises himself to the next step | |||
moritz | Begi: the majority of developers use some kind of Linux (and many Debian based), so yes, that should help | ||
11:00
pierre-vigier left,
bjz joined,
pierre-vigier joined
|
|||
[Tux] | All tests successful. | 11:01 | |
Files=27, Tests=20977, 49 wallclock secs ( 2.83 usr 0.15 sys + 101.75 cusr 1.99 csys = 106.72 CPU) | |||
Result: PASS | |||
[Tux] merges … | |||
11:02
pierre-vigier left
|
|||
timotimo | [Tux]: your new method gets passed a re-containered version of the $s; you may want \s instead | 11:04 | |
11:05
bjz left
|
|||
timotimo | oh, "is rw" should also give you that, yeah | 11:05 | |
[Tux] | just pushed. comments welcome on github.com/Tux/CSV/commit/3a0c558c...7dcb37e3c4 | ||
11:05
bjz joined
|
|||
[Tux] | that is enough perl6 success for one day :) | 11:06 | |
hoelzro, feel free to steal and improve from that commit for your IO::String, so I can remove it from my internals :) | |||
pippo | Any one can explain me what .bless does as in self.bless? | 11:08 | |
nine | pippo: it creates an object | 11:09 | |
11:09
spacebat joined
|
|||
nine | pippo: bless is the low level part of a constructor | 11:09 | |
pippo | nine: OK so self is a reference to current object and bless will create an object identical to the one referred to by bless? | 11:10 | |
nine: OK so self is a reference to current object and bless will create an object identical to the one referred to by self? | |||
nine | pippo: doc.perl6.org/language/classtut#___top | 11:11 | |
pippo: doc.perl6.org/routine/bless | |||
pippo | nine: thank you very much. | ||
spacebat | I'm defining a few functions and tending to use keyword arguments, declaring them and passing them individually is working fine, but how do I collect a bunch of arguments, either all or something like a hash slice of a few keyword args, and pass them on to another function? I've tried variants of @_ to no avail | ||
related: how can I determine if an argument was passed or not? | 11:13 | ||
11:16
leont joined
|
|||
moritz | spacebat: use *%named for named arguments and *@pos for positional argument, or |c for either | 11:17 | |
and passing them on to another function with other(|@pos) or other(|%named) for example | |||
spacebat: and then you can check with %named<key>:exists if it was passed | |||
spacebat | thanks moritz I'll try that | 11:20 | |
I saw mention of |c but had no clue how that works | |||
11:21
raoulvdberge joined
|
|||
spacebat | I'm used to verbosity like (defun foo (&rest args &key bar (baz nil baz-p)) (apply #'qux args)) | 11:22 | |
11:25
azawawi left
|
|||
moritz | m: sub call(&code, |args) { code |args }; call &say, 42 | 11:26 | |
camelia | rakudo-moar 317203: OUTPUT«42» | ||
11:26
nebuchadnezzar left
11:27
WABBFX8 joined
|
|||
spacebat | right I get that, thanks :) | 11:29 | |
11:30
abaugher_ left
11:31
abaugher_ joined
11:36
leont left
11:39
yakudza left
|
|||
dalek | osystem: 9abe3a1 | (Karl Rune Nilsen)++ | META.list: Add Unicode::UTF8-Parser to ecosystem See github.com/krunen/unicode-utf8-parser |
11:40 | |
11:51
RabidGravy left,
pippo left
11:52
pierre-vigier joined
11:57
pierre-vigier left,
snarkyboojum left
12:03
TEttinger left
12:08
vendethiel left
12:13
pierre-vigier joined
|
|||
gfldex | if i would want to read the implemenation of bless, where would i need to look? | 12:16 | |
timotimo | probably in Mu.pm | 12:19 | |
grondilu | Mu.pm | ||
grondilu ran grep -r ' bless(' * in src/core | |||
timotimo | github.com/rakudo/rakudo/blob/nom/...Mu.pm#L108 | ||
directly below that is "BUILDALL" which is what gets called on the created object | |||
gfldex | thanks | 12:20 | |
12:32
nebuchadnezzar joined
12:36
domidumont left
|
|||
masak | hi, #perl6 | 12:43 | |
yoleaux | 04:51Z <ChristopherBotto> masak: Looks like RT #126270 is fixed | ||
masak | you can thank Travis for digging up the bug in rt.perl.org/Public/Bug/Display.html?id=126827 | 12:44 | |
things worked locally for me, since I hadn't updated rakudo for ages. | |||
but they failed in Travis. | |||
12:44
kjs_ joined
12:45
z8 joined
|
|||
masak | yeah, I was running fdd236 from 2015-11-18. | 12:46 | |
:) | |||
back in 2009 in my second Perl 6 talk ever, I came up with this analogy of the ecosystem being a test-bed for Rakudo regressions. | 12:47 | ||
and not just as a static thing, but when you do refactors and renamings and restructurings of various kinds, passing from (it is hoped) one state to an equivalent one. | 12:48 | ||
that's exactly what happened in this case. | |||
the offending commit in 007 was github.com/masak/007/commit/492fad...c7ecae8e3, a very trivial rename. it un-earthed the rakudobug. | 12:49 | ||
(so glad I did `git add -p` and extracted it from the commit after it -- that sure paid off when reverting!) | |||
12:50
z8 left
|
|||
masak | I feel like blogging about this :) | 12:51 | |
(about how refactors unearth regressions) | |||
spacebat | still struggling a bit to pass a hash slice to a function: tried f(|%h<a b>) f(|%h<a b>:kv) f(|%h<a b>:p) but in each case f is complaining that I'm passing positionals | 12:52 | |
f(|%h) doesn't work because %h has a few extra keys that f isn't expecting | |||
12:55
cognominal joined,
kid51 joined
|
|||
masak | spacebat: a hash slice is a list | 12:55 | |
spacebat: that's your problem | |||
let me code up a solution | |||
spacebat | yeah, I also tried &f.apply(...stuff) but apply isn't a method | 12:56 | |
could be lisp braindamage :) | |||
timotimo | is the precedence of | there right? | ||
spacebat | I tried f(|(%h<a b>:kv)) to no avail | ||
moritz | you need |%(...) | 12:57 | |
timotimo | m: sub foo(*%kw) { say %kw.perl }; my %h = :1a, :2b, :3c; foo(|%(%h<a b>:kv) | ||
camelia | rakudo-moar 317203: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ruHkUO7v6eUnable to parse expression in argument list; couldn't find final ')' at /tmp/ruHkUO7v6e:1------> 3y %h = :1a, :2b, :3c; foo(|%(%h<a b>:kv)7⏏5<EOL>» | ||
spacebat | ah | ||
timotimo | m: sub foo(*%kw) { say %kw.perl }; my %h = :1a, :2b, :3c; foo(|%(%h<a b>:kv)) | ||
camelia | rakudo-moar 317203: OUTPUT«{:a(1), :b(2)}» | ||
timotimo | ^- here's a working example | ||
spacebat | thanks | ||
masak | m: sub f(:$foo, :$bar) { say "$foo $bar" }; my %h = :foo<OH>, :bar<HAI>, :!baz; f(|%(%h<foo bar>:kv)) | 12:58 | |
camelia | rakudo-moar 317203: OUTPUT«OH HAI» | ||
masak | ah, timotimo++ beat me to it | ||
spacebat | moritz set me on the path and you've shown me further along, thanks | ||
so .apply and .call don't exist because with these syntactical options, there is no need | 12:59 | ||
12:59
RabidGravy joined
|
|||
moritz | correct | 13:00 | |
masak | that's a nice way to view it, yes :) | 13:01 | |
timotimo | moritz: :) | 13:02 | |
er, masak :) | |||
spacebat | f(|%(%h<a b>:kv)) is a little dense, either I'll get used to it or find a slicker idiom in time | 13:03 | |
13:03
Skarsnik joined
|
|||
timotimo | m: sub foo(*%kw) { say %kw.perl }; my %h = :1a, :2b, :3c; foo(|%%h<a b>:kv) | 13:04 | |
camelia | rakudo-moar 317203: OUTPUT«Too many positionals passed; expected 0 arguments but got 2 in sub foo at /tmp/9t_f78fzzE:1 in block <unit> at /tmp/9t_f78fzzE:1» | ||
timotimo | :< | ||
gfldex | m: my Capture $c.=new(list=>(1,2,3),hash=>{a=>4,b=>5}); sub foo(*@a, *%h){dd @a, %h}; foo(|$c); | 13:06 | |
camelia | rakudo-moar 317203: OUTPUT«Array $var = $[1, 2, 3]Hash $var = ${:a(4), :b(5)}» | ||
gfldex | spacebat: you can also construct the capture by hand ^^^ | ||
spacebat | right, I'll look into captures | 13:07 | |
I guess that's what the c in |c means | |||
13:08
kjs_ left
|
|||
stmuk | www.serveraptor.com/ might be interesting for anyone wanting to try rakudo on obscure OSes | 13:10 | |
anyone for Minix? :) | |||
Skarsnik | not even GNU/Hurd | 13:14 | |
13:15
Zoffix left
|
|||
stmuk | sadly Hurd is 32 bit only | 13:16 | |
13:16
Zoffix joined,
isBEKaml joined
|
|||
Skarsnik | *download debian/hurd* | 13:19 | |
I am curious now x) | |||
13:20
isBEKaml left,
rurban left
13:30
molaf joined
13:33
abaugher_ left
13:35
abaugher_ joined
13:37
xpen joined
|
|||
El_Che | I just read jnthn's latest blogpost: 6guts.wordpress.com/2015/12/05/get...christmas/ . Now that supply got an overhaul, what's the fundamental difference between $supply.tab + $supplier.emit and $channel.poll + $channel.send? | 13:41 | |
13:41
moritz_ joined,
luis` joined,
jantore_ joined,
arnsholt_ joined
|
|||
El_Che | jnthn: there is a copy paste typo in the code example in your blogpost | 13:41 | |
13:41
advwp joined,
obra_ joined,
ashleydev joined,
chewie_2082 joined
13:42
_sri joined,
Util joined,
dbohdan_ joined,
sjn__ joined
13:43
haidarian left,
[ptc] left,
eternaleye left,
M-Illandan left,
luis left,
dbohdan left,
chewie_1982 left,
go|dfish left,
sftp left,
moritz left,
xdbr left,
ashleyde1 left,
arnsholt left,
jantore left,
advwp_ left,
obra left,
orevdiabl left,
b2gills left,
ilmari left,
Util_ left,
_sri_ left,
sjn left,
tony-o left,
go|dfish joined
13:44
lucasb joined,
[ptc] joined
13:45
vendethiel joined,
sftp joined
|
|||
El_Che | is it about a sigle vs multiple readers of the same data? | 13:45 | |
timotimo | with a supply, you immediately force the tappers to react | ||
with a channel, you're free to read at your leisure | 13:46 | ||
13:47
revdiablo joined,
b2gills joined,
M-eternaleye joined
|
|||
lucasb | a tiny typo slipped in the last ecosystem META.list commit | 13:48 | |
timotimo | oh | ||
githubuksercontent; that's novel | 13:49 | ||
El_Che | in my code I used a channel in order to read a huge ldif file (ldap db dump) while converting the lines into a datastructure by polling the channel. That seemed very natural to me. I was looking at the docs to see if that a typical way to do things on perl6. (I had a look at promisses, but it does not apply on that context) | ||
dalek | osystem: c29a2f2 | timo++ | META.list: fix tiny typo; lucasb++ |
13:50 | |
lucasb | timotimo++ :) | ||
13:50
M-Illandan joined
13:52
Akagi201 left
13:54
tony-o joined
13:55
isacloud left,
kjs_ joined
13:56
isacloud joined
13:57
ilmari joined
14:06
spacebat left
|
|||
hankache | is anyone interested in translating perl6intro.com to their native language? | 14:08 | |
we already started a French translation | |||
RabidGravy | nine++ # that %?RESOURCES thing so works | ||
nine | Yeah :) | ||
14:09
xdbr joined
|
|||
timotimo | <3 | 14:09 | |
14:09
spacebat joined
|
|||
RabidGravy | also it works with sub-paths in the resources directory which is really cool | 14:09 | |
nine | We just have to find a nice way to make it platform independent. Having a hard coded p5helper.so in META.info doesn't help all that much on Windows | ||
RabidGravy: really? I already implemented that? | |||
RabidGravy | either that or it works by accident ;-) | 14:10 | |
Zoffix | m: my $var’one = 42; say $var’one | ||
camelia | rakudo-moar 317203: OUTPUT«5===SORRY!5=== Error while compiling /tmp/VRTFkyapZ_Bogus postfixat /tmp/VRTFkyapZ_:1------> 3my $var7⏏5’one = 42; say $var’one expecting any of: constraint infix infix stopper postfix…» | ||
RabidGravy | i.e. I have "resources" : [ "lib/utmphelper.so"] here and it seems to work fine | ||
hankache | anyone here is native German or Chinese speaker? | 14:11 | |
nine | hankache: native German speaker here | ||
hankache | hi nine | ||
RabidGravy | hankache, I can translate to "South East London" if you want ;-) | ||
nine | m: say "/tmp".IO.child("foo/bar").abspath | 14:12 | |
camelia | rakudo-moar 317203: OUTPUT«/tmp/foo/bar» | ||
nine | RabidGravy: ah, that's the reason ^^^ | ||
hankache | RabidGravy :) does that include words like "blimey" | ||
14:12
samb1 left
|
|||
RabidGravy | Nah, that's more "hollywood cockney" ;-) | 14:12 | |
innit | 14:13 | ||
14:13
[ptc] left,
SmokeMachine__ left
|
|||
Zoffix | Weird | 14:13 | |
nine | RabidGravy: specs want %?RESOURCES<foo><bar><baz> to work for accessing subdirectories, too | ||
hankache | nine i was looking at perl6intro.com traffic and noticed that after English, Chinese and German are the most used languages of people who visited | 14:14 | |
14:14
SmokeMachine__ joined
|
|||
Zoffix | hankache, in section "1.7.1. Identifiers", "var’one" shows up with an incorrect apostrophe. But when I went to make a PR, in the source, it actually *is* correct. | 14:14 | |
hankache | I was wondering if anyone would like to translate to those two | ||
Zoffix it's a rendering issue | 14:15 | ||
Zoffix | .u ’ | ||
yoleaux | U+2019 RIGHT SINGLE QUOTATION MARK [Pf] (’) | ||
Zoffix | .u ' | ||
yoleaux | U+0027 APOSTROPHE [Po] (') | ||
hankache | i guess | 14:16 | |
14:16
sftp left
|
|||
hankache | asciidoctor | 14:17 | |
is getting lost when it comes to apostrophes and single quotation marks | |||
we already started a French translation with the guys at #perlfr | 14:18 | ||
14:19
[ptc] joined
|
|||
masak | nine: hi! :D | 14:19 | |
14:19
espadrine joined
|
|||
nine | hi masak ;) | 14:20 | |
RabidGravy | nine, I suspect that in the fullness of time the dynamic libraries should be in their own thing to handle the different names for different platforms, plus being able to enumerate required dynamic libraries (not just locally created ones) will help downstream packagers *and* help a more clever installer that might offer to install 3rd party libraries for you | ||
masak | nine: guess you saw rt.perl.org/Public/Bug/Display.html?id=126827 | ||
nine: I'm investigating it now. will add to the ticket when I know more. | 14:21 | ||
14:21
AlexDaniel joined
|
|||
ChoHag | What's the significance of the $ in $[1,2,3] or $(1,2,3)? | 14:22 | |
masak | ChoHag: "item, not list" | 14:23 | |
14:23
vendethiel left
|
|||
nine | masak: haven't seen that yet. I'm mostly afk this weekend. | 14:23 | |
masak | got it. | 14:24 | |
14:24
sftp joined,
vendethiel joined
|
|||
masak | don't let me inconvenience you, then :) I'll just try to do as much of the investigation work as possible for when you get back | 14:24 | |
ChoHag | So what's the difference between {:a($(1,2,3))}, {:a($[1,2,3])} and {:a([1,2,3])}? | ||
jnthn | El_Che: Channels are used when you want to pass work between different threads, like if you're setting up producer/consumer things. Supplies are for when you want to have a chain of operations that will be performed on the triggering thread, as far as is possible. | ||
masak | jnthn: "channels are for communication, supplies are for observers" -- is that a fair description? | 14:25 | |
nine | masak: if 87288285f6f398ec7cba0900312ced4b580d79ed is to blame, it may just be an older precompilation issue that surfaced because we precompile everything that's too slow to run away now... | ||
jnthn | Yes, something like | ||
14:26
samb1 joined
14:27
xpen left
|
|||
nine | masak: to find that out, it would help if you could test with a version before 3b943782768260d4422933f4e2e71be40429c570 with manual precompilation | 14:27 | |
masak | how do I do manual precompilation? | 14:30 | |
14:30
virtualsue joined
|
|||
El_Che | jnthn: thx | 14:31 | |
jnthn: typo in you blogpost, last line in the supply example | 14:32 | ||
jnthn | why? | ||
Where? :) | 14:33 | ||
nine | masak: perl6 --target=mbc -o Foo.moarvm Foo.pm | ||
jnthn is looking at can't see a typo :) | |||
Zoffix | Huh? Cannot find method 'run_alt' in method paste at /home/[..blah..]/lib/Pastebin/Gist.pm6:31 , but there's no run_alt method on that line: github.com/zoffixznet/perl6-Pasteb...st.pm6#L31 | ||
El_Che | jnthn: ctrl + f -> $supplier.emit('oh$supplier.emit('hai | 14:34 | |
masak | nine: do I need to put the Foo.moarvm anywhere in particular for it to be picked up? | ||
jnthn | El_Che: Finds nothing | ||
It's two lines... | 14:35 | ||
$supplier.emit('oh'); | |||
$supplier.emit('hai'); | |||
grondilu | last time I tried to precompile something, I got: | ||
perl6 --target=mbc -o Foo.moarvm Foo.pm | |||
sorry | |||
===SORRY!=== | 14:36 | ||
Cannot dump this object; no dump method | |||
jnthn | It's --output= not -o | ||
El_Che | I get this: | ||
# Emit on it | |||
$supplier.emit('oh$supplier.emit('hai | |||
let me try an other browser | |||
Skarsnik | Zoffix, H::UA has the same one :) | 14:37 | |
nine | masak: the old implementation just looked alongside the .pm6 file | ||
Zoffix | Skarsnik, seems like an issue with panda. If I clone the repo and run the tests, it works fine | ||
Skarsnik, or maybe precomp stuff... For some reason I don't got lib/.precomp dir right now when I ran tests and they passed | 14:38 | ||
jnthn | El_Che: Odd...reading it on my blog itself, or some aggregator? | ||
Skarsnik | blame precomp stuff? x | ||
Zoffix | Skarsnik, well, it's one of the variables I see different between the failing and passing modes :) | 14:39 | |
jnthn | Looks fine for me on pl6anet too though | ||
masak | nine: got it -- will try. | 14:40 | |
grondilu | FYI -o is listed as a possibility in perl6 --help | ||
El_Che | jnthn: strange. The html code shows 2 lines. | ||
Zoffix | jnthn, when did it end up on pl6anet? For some reason the list on perl6.org hasn't updated yet :/ | ||
El_Che | jnthn: on FF and Chrome on win8.1 shows one line | 14:41 | |
14:41
kjs_ left
|
|||
El_Che | maybe this pc (not mine) | 14:41 | |
Zoffix | Looks fine on mine | ||
jnthn | Zoffix: Dunno, I only looked there just now to see if that was to blame | ||
El_Che: OK. Well, I've about zero interest in hunting browser rendering bugs... :) | 14:42 | ||
14:42
ilmari left
|
|||
Zoffix | Skarsnik, weird. Doing panda install . in a cloned repo worked :S | 14:43 | |
RabidGravy | tadzik, you about it | 14:44 | |
er, about? | 14:45 | ||
(losing control of my fingers here.) | |||
El_Che | jnthn: claudio.ulyssis.be/6guts.png | ||
weird that FF and Chrome both have the same output | 14:46 | ||
14:48
rurban joined
|
|||
masak | $ perl6 --target=mbc -o B.moarvm B.pm | 14:48 | |
===SORRY!=== | |||
Cannot dump this object; no dump method | |||
timotimo | maybe -o is broken | ||
masak | grondilu: I just got exactly the same message! | ||
timotimo | try the full name? | ||
masak | ok. | ||
...nope. no luck. | 14:49 | ||
timotimo | :< | ||
masak | ok, unless a miracle appears, I am unable to test nine's hypothesis. | ||
it's not related to -o | 14:50 | ||
I get it even without the -o option | |||
timotimo | huh! | ||
well, without the -o option, --target=mbc being broken is known | |||
14:50
Akagi201 joined
|
|||
masak | seems the brokenness has been unified to include the -o option, then... :) | 14:52 | |
jnthn | El_Che: Indeed; especially as it looks fine for me in Chrome also | 14:53 | |
masak: It's --output=Foo.pm.moarvm, not -o | |||
I didn't even know we had a -o option | |||
El_Che: Plus I'm on Windows also, though 7 | 14:54 | ||
jnthn saw other pepole using 8 and decided "never" :) | |||
El_Che | I'll check later on my linux machine. | 14:55 | |
masak | jnthn: I went looking for the -o option in source, and didn't find one. so maybe we don't have one :P | ||
jnthn | -o noes... | 14:56 | |
masak | good news! it works on the commit before, with manual precompilation \o/ | ||
so it's *not* an ancient error surfacing only now | 14:57 | ||
timotimo | good! | ||
14:57
espadrine left
|
|||
Zoffix | ShimmerFairy, has that bug been reported? The Cannot find method 'run_alt' you say also happens in H::UA? | 14:57 | |
ShimmerFairy | ? | 14:58 | |
Zoffix | Sorry | ||
Skarsnik, has that bug been reported? The Cannot find method 'run_alt' you say also happens in H::UA? | |||
masak | which means I should keep investigating 8728828... | ||
masak .oo( S<tab>, has that bug been reported? ) | |||
Zoffix | It was Sh<tab> because I have really fat fingers :P | ||
nine | masak: why is that good news? Now I have to fix it ;) | 14:59 | |
El_Che | is the .nl method suppose to change: doc.perl6.org/type/IO#Newline_options. Supplying nl => '\n\n' does not work, while giving it random chars (e.g. 'a' does work). | ||
Skarsnik | I assume it was related to other bug like this (like find_method in DBIis), so I did not repport it | ||
El_Che | in the rakudo changelog I see this: + New IO::Handle.nl-in now allows multiple line-endings to be set | ||
would it mean that that would fix my problem? | |||
14:59
pierre-vigier left
|
|||
masak | nine: hm. I may have spoken too soon. | 15:00 | |
El_Che | (I am parsing ldif, separated by an empty line) | ||
masak | nine: I just went one commit back, not to before 3b943782 | ||
nine: trying from that one. | |||
Zoffix | Seems it's comming from ./nqp/src/QRegex/Cursor.nqp or ./nqp/src/QRegex/NFA.nqp | 15:03 | |
grepped panda/Moar/nqp/rakudo and that's the only place I see run_alt method | |||
cognominal | is it possible to invite camelia on a irc.perl.org channel ? how ? | 15:04 | |
masak | nine: ok, now it's conclusive. building off 3b943782^, with modules precompiled, everything works fine. | 15:05 | |
masak adds this to the ticket | |||
Skarsnik | cognominal, just add a conf entry on p6evalbot I think | ||
DrForr | Hurr. The '>>' in '@<foo>>>.ast' isn't documented as an operator... | 15:06 | |
At least that I can see. | |||
15:07
pdcawley left
|
|||
DrForr | I'm trying to figure out where a seemingly extraneous comma is coming in when I generate an array in a grammar. | 15:07 | |
15:09
pdcawley joined,
znpy joined
|
|||
nine | masak: I still doubt it's actually 8728828 that's to blame. Between 3b943782 and 8728828 there's a lot of refactoring, especially some changes touching the handling of global merging. Might be a good idea to bisect that (with manual precompilation in every step) | 15:12 | |
ChoHag | How can I modify va;ues of a list in a for loop looping over that list/ | ||
masak | nine: ok, understood. | 15:13 | |
Zoffix | cognominal, which channel? | ||
masak | nine: will do. | ||
nine | masak++ | ||
geekosaur | ChoHag, <->? | 15:14 | |
in place of -> | |||
15:15
Akagi201 left,
khw joined
|
|||
ChoHag | That does it. | 15:16 | |
Zoffix | cognominal, just add the channel here and restart the bot: github.com/perl6/evalbot/blob/mast...rg.conf#L2 | 15:17 | |
JimmyZ | jnthn: I told you too, I saw: $supplier.emit('oh$supplier.emit('hai :P | 15:18 | |
don't know why | |||
jnthn: not only ff, chrome, aslo IE | 15:20 | ||
hankache | Zoffix i think cognominal wants to add it to #perlfr | ||
15:20
ilmari joined
15:21
mohae joined
15:23
Begi left
|
|||
dalek | albot: 45d27f7 | (Zoffix Znet)++ | irc.perl.org.conf: Add a couple more channels on irc.perl.org |
15:24 | |
Zoffix | hankache, well, I added it to config but I don't have access to pull the update and restart camelia :) | 15:25 | |
hankache | Zoffix whos has? | ||
Zoffix | hankache, I bet nine does, since it runs off their account :P | 15:26 | |
cognominal | thx | 15:27 | |
Zoffix | hankache, oh wait, I might know how to do it | ||
hankache | Zoffix++ | 15:28 | |
hoelzro | [Tux]: sure, I'll incorporate that, as soon as I get panda-build&panda-test working =/ | ||
15:28
camelia left,
camelia joined
15:29
ChanServ sets mode: +v camelia,
rurban left
|
|||
Zoffix | hm, I may also have broken it :P The irc.perl.org version is taking forever to come back on | 15:30 | |
arnsholt_ | nine: Should I just go ahead and merge the precomp branch, or do are there more tihngs I can do to test it a bit more? | ||
15:30
arnsholt_ is now known as arnsholt
|
|||
arnsholt | nine: Incidentally, I think I see more or less how to implement "no precompilation" with the new single-process implementation | 15:31 | |
hankache | Zoffix: is it working? | ||
m: say 1 | 15:32 | ||
camelia | rakudo-moar 317203: OUTPUT«1» | ||
hankache | it is working here | ||
Zoffix | hankache, nope, it's gone awol | ||
hankache, it's p6eval on irc.perl6.org and it did not come back after I told it to pull and restart :( | |||
nine | arnsholt: yes, within the single-process we can just catch the X::Pragma::CannotPrecomp exception :) | 15:33 | |
15:33
luis` is now known as luis
|
|||
Zoffix | nine, I think I broke the irc.perl6.org version of the eval bot :) | 15:34 | |
hankache | nine can you help Zoffix please. He is trying to help us add camelia to ~perlfr on irc.perl.org | ||
#perlfr | |||
nine | arnsholt: if you think everything works, I'd just go ahead and merge. | ||
Zoffix | nine, I added two more channels in the config file in the commit above, told it to pull, then to restart and it never came back | ||
nine | Sorry, have to leave again :( Kitchen duty | 15:35 | |
Zoffix | No problem | ||
awwaiid | Is there a builtin thing to print out the tree of matches form a grammar? | 15:38 | |
pretty-print | |||
15:39
flussence left,
flussenc1 joined
|
|||
moritz_ | awwaiid: say $/ | 15:39 | |
Zoffix | It's also Grammar::Debugger and Grammar::Tracer in the ecosystem that make it easier to debug grammars | 15:40 | |
DrForr | I'm stil grumbling over a GLR change here... | ||
awwaiid | yeah, I was just starting to play with Grammar::Tracer, very nice | 15:42 | |
DrForr | Changing '$/<foo>>>.ast' to '@<foo>>>.ast' returns the correct data but adds a redundant comma (or maybe nil element) at the end of the data structures. | ||
15:43
spider-mario left
|
|||
arnsholt | nine: Yeah, that's pretty much what I was thinking for no precompilation. Some work has to be done to track the things that re implicitly no precomp by depending on a no precomp module, but that's mostly bookkeeping I think | 15:43 | |
arnsholt goes to merge | |||
Bah. Conflicts. | 15:44 | ||
15:45
csd_ left,
csd_ joined,
csd_ left,
csd_ joined
15:46
spider-mario joined
15:47
koo8 joined
|
|||
masak | nine: the results are in. a bisect of 3b943782^..87288285f, with precompilation at every step, turned up 87288285f as the first bad commit. | 15:48 | |
Zoffix | m: grammar G { token TOP { [<foo>\s*]+ }; token foo { \w+};}; class GA { method TOP ($/) { $/.make: @<foo>>>.ast }; method foo ($/) { $/.make: ~$/} }; say G.parse("foo bar baz", :actions(GA)).made | 15:55 | |
camelia | rakudo-moar 317203: OUTPUT«[foo bar baz]» | ||
Zoffix | m: grammar G { token TOP { [<foo>\s*]+ }; token foo { \w+};}; class GA { method TOP ($/) { $/.make: $/<foo>>>.ast }; method foo ($/) { $/.make: ~$/} }; say G.parse("foo bar baz", :actions(GA)).made | ||
camelia | rakudo-moar 317203: OUTPUT«[foo bar baz]» | ||
Zoffix | ¯\_(ツ)_/¯ | ||
15:55
flussenc1 left,
flussence joined
15:57
spider-mario left
|
|||
cognominal | after compiling rakudo and installing panda, I get Could not find Shell::Command:ver<True>:auth<True>:api<True> in... when doing panda install Task::Star | 16:00 | |
probably need an incantation to tell rakudo where panda stuff is :( | |||
Zoffix | cognominal, to resolve that, a lot of people had good fortune with nuking ~/.rakudobrew and ~/.perl6 and installing all the stuff from scratch | ||
cognominal | ok | 16:01 | |
hankache | yup nuke ~/.rakudobrew and ~/.perl6 and start from scratch | ||
i had the same issue yesterday | |||
cognominal | zoffix++ hankache++ | ||
hankache | see you later everyone | 16:02 | |
Zoffix | \o | ||
awwaiid | I'm trying to make a whitespace-indent data file parser (like a YAML), and am trying to pass the current "indent" to a token as a parameter, but something isn't quite right. gist.github.com/awwaiid/e5bdc58ce76866cc8ba3 has my current code, including some debugging. This isn't important (just playing), but any pointers are appreciated | 16:03 | |
16:03
hankache left
|
|||
awwaiid | someone asked me if I knew of some parsers that can parse the offsides rule, and I want to give them an example :) | 16:04 | |
moritz_ | awwaiid: I think tracking the indention in a dynamic variable would work better | ||
awwaiid | moritz_: great! how do I do that? | ||
moritz_ | :my $*IDENT = 4; | ||
I'm pretty sure we have examples for that in the ecosystem | 16:05 | ||
awwaiid | they get to "define" their indent just by indenting more. so like :my $*INDENT = $<current-indent> maybe? | ||
I noticed that the YAML impls in echosystem are generators, not parsers | |||
hoelzro | for CompUnit::Repository::Installation.files, what do $file and $name each represent? | 16:06 | |
16:06
znpy left
|
|||
moritz_ | awwaiid: arnsholt has an unfinished python implementation named 'snake'. Might be worth checking how it parses | 16:07 | |
(it's NQP, but the grammars don't differ so much) | |||
awwaiid | thanks moritz_ | ||
16:07
kjs_ joined
|
|||
hoelzro | I ask because the panda-test wrapper installed into my $PATH uses .files('panda-test') with no $name, and .files seems to me like it could never work without a provided $name | 16:07 | |
arnsholt | awwaiid: It's not *too* hard | 16:08 | |
Some fiddly bits, but nothing brainmeltingly hard | |||
awwaiid | ya, reading the Grammar of it now | ||
arnsholt | And to be fair, I stole large bits of the structure in snake from pmichaud++'s and alison++'s earlier pynie project | 16:09 | |
awwaiid | this has an interesting explicit stack of indent levels. I think I'll continue exploring letting the grammar manage that for a bit before I switch to that. | 16:11 | |
hoelzro | nine: would you mind answering a quick question I have about CURLI? | ||
I'm trying to get panda-build&panda-test working again | |||
16:12
znpy joined
16:17
ab5tract left,
ab5tract joined
|
|||
ugexe | probably not a point to panda build, as the files will be precomped into their own location once you `use` them | 16:19 | |
nine | hoelzro: shoot | ||
hoelzro | nine: in CURLI.files, what do $file and $name each represent? | ||
it looks to me like files will always fail if $name is Any | 16:20 | ||
and I'm trying to figure out why panda-test's wrapper uses .files('panda-test') | |||
nine | masak: ok, thanks for your hard work! Though the results are surprising, we can at least be sure now. | 16:21 | |
hoelzro: I don't see a reason for panda to use .files at all. Also .files doesn't really have a place in the new design (yet). I just patched it up a little to keep panda working. | 16:29 | ||
hoelzro | I don't think panda uses it directly; it looks like CURLI installs wrappers that invoke .files | ||
ugexe | originally it served as a way to navigate/access the files by their original names after CURLI changed their filenames to $number | 16:30 | |
[Coke] | We took a snapshot of anyone whose contributed up through about a week ago. I need to remember to go through recent pull requests for more names for December. | ||
nine | hoelzro: oh, that could very well be. I wonder if we can replace that by %?RESOURCES now | 16:31 | |
hoelzro | oh, %?RESOURCES is YI now? | ||
nine | hoelzro: yes, since yesterday :) | 16:32 | |
hoelzro | \o/ | ||
ugexe | originally file navigation was supposed to be handled by Distribution, so even if you had a Tar file your Distribution::Tar could still .content(<files bin/script>) without having to expand everything to the file system | 16:33 | |
Zoffix | We need to do some sort of a "call to Perl 6 module authors" (maybe a blog post somewhere prominent)? I can barely install a distro without it or its dependencies having some sort of fatal issues, and worse still, many of those actually have PRs waiting with the fix. Like this one: github.com/dnmfarrell/URI-Encode/pull/10 | ||
And that breaks 3 of my modules | 16:34 | ||
-_- | |||
oh.. the "call" would be to check for PRs and merge stuff (and fix any issues if they can) | |||
dalek | kudo/nom: 104623a | arnsholt++ | src/core/ (5 files): Initial sketch of precompilation in a single process. Unfortunately this doesn't quite work yet, as a circular dependency chain is falsely detected when precompiling the NativeCall libraries. |
16:35 | |
rakudo/nom: 299adc5 | arnsholt++ | src/core/CompUnit (2 files): | |||
16:35
dalek left
|
|||
arnsholt | Oh well. He ded | 16:35 | |
nine: Merged! | |||
16:36
dalek joined,
ChanServ sets mode: +v dalek,
[ptc] left
16:37
[ptc] joined
|
|||
Zoffix | GAH! "Cannot find method 'run_alt'" again.. now in another dist | 16:37 | |
Zoffix reaches for Acme::GiveUp | |||
JimmyZ | arnsholt: 'use nqp;' , I think it is not needed there | 16:38 | |
flussence | jnthn: just so you don't start thinking you're crazy: that blog post looks fine on all my browsers, and I have some pretty weird ones installed at that | 16:39 | |
grondilu | wow I was curious about v5 so I ran 'panda install v5'. That was somthing like half an hour ago. Still running :/ | 16:41 | |
(yeah 31min according to htop) | 16:42 | ||
ugexe | i put bitcoin miners in all my modules | 16:43 | |
grondilu | lol | 16:44 | |
16:44
luis left
|
|||
Zoffix | Well, I logged it. It may or may not be related to precomp stuff, so *pokes nine *: rt.perl.org/Ticket/Display.html?id=126832 | 16:45 | |
Juerd | jnthn: No, rejecting the tau PR does not result in an extra module because someone already has a Math::Tau in the ecosystem :) | 16:47 | |
ugexe | he just added a way to turn off precomp so manybe you can test Zoffix | ||
grondilu | though I should probably mention that it started with a warning (or error?) message: | ||
==> Fetching v5 | |||
Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in sub git-fetch at /usr/local/share/perl6/site/sources/CC8B1AB096E45379F3094E892E5F3C293A6BD26D:46 | |||
Use of uninitialized value %ENV of type Any in string context | |||
16:47
luis joined
|
|||
ugexe | i wonder if it does a temp %*ENV | 16:47 | |
m: say %*ENV.keys; { temp %*ENV; %*ENV<a> = 1; say %*ENV.keys; } say %*ENV.keys | 16:48 | ||
camelia | rakudo-moar 317203: OUTPUT«5===SORRY!5=== Error while compiling /tmp/07ZL_7lZy9Strange text after block (missing semicolon or comma?)at /tmp/07ZL_7lZy9:1------> 3p %*ENV; %*ENV<a> = 1; say %*ENV.keys; }7⏏5 say %*ENV.keys expecting any of: infix …» | ||
ugexe | m: say %*ENV.keys; { temp %*ENV; %*ENV<a> = 1; say %*ENV.keys; }; say %*ENV.keys | ||
camelia | rakudo-moar 317203: OUTPUT«(RAKUDO_NO_DEPRECATIONS PERLBREW_VERSION PERLBREW_PERL LANG LC_CTYPE SHELL PERL5LIB SHLVL PERLBREW_PATH PWD PERLBREW_HOME HOME MANPATH USER PERLBREW_ROOT PERLBREW_BASHRC_VERSION _ PERLBREW_MANPATH PATH LOGNAME)(RAKUDO_NO_DEPRECATIONS a PERLBREW_VERSION …» | ||
ugexe | m: say %*ENV.keys.elems; { temp %*ENV; %*ENV<a> = 1; say %*ENV.keys.elems; }; say %*ENV.keys.elems | ||
camelia | rakudo-moar 317203: OUTPUT«202120» | ||
arnsholt | JimmyZ: In PrecompilationRepository.pm? Yeah, it is needed. There's a call to nqp::getcomp | ||
ugexe | cool maybe that is fixed | ||
16:49
vendethiel left
|
|||
awwaiid | moritz_: arnsholt: I made some progress gist.github.com/awwaiid/d3ca4a4d4d895d696f51 -- still some weirdness, but now the current-indent is being tracked via params on tokens | 16:50 | |
notice the input uses many spaces and the output is normalized to 2 space indent | 16:51 | ||
lunch time! | 16:52 | ||
ugexe | a flag for turning off precomp for non-core stuff might be handy for testing if something is busted because of precomp | ||
-M"no precomp" wouldnt exactly work | |||
arnsholt | awwaiid: Cool! I can't remember the exact edge-cases I debugged in Snake, but if you git log the Grammar file you might get some pointers | 16:53 | |
JimmyZ | arnsholt: Isn't it free to use nqp:xxxx in core setting? | 16:54 | |
flussence | Zoffix: now that we've got proper :auth support, maybe we ought to start using perl6-community-modules more liberally in situations like that | ||
lucasb | JimmyZ, arnsholt: yes, I thought core didn't need 'use nqp' | 16:55 | |
Zoffix | flussence, not sure what you mean... what situations? | 16:56 | |
flussence | broken modules high up the ecosystem chain | ||
arnsholt | IIRC it triggered a warning during compilation, so I added it. Feel free to experiment with removing it =) | ||
Skarsnik | Zoffix, does the META file has author contact? | 16:57 | |
Zoffix | flussence, still not following you.. It's a module by some author... Is there a community module alternative for URI encoding? | ||
Skarsnik, no | |||
Skarsnik | it should? | ||
16:58
kjs_ left
|
|||
Skarsnik | but github send a mail when someone add a pr x) | 16:58 | |
flussence | Zoffix: github.com/perl6-community-modules is where we fork stuff when upstream is non-responsive and it needs to be fixed | ||
Zoffix | flussence, ah, wasn't aware of that | 16:59 | |
I ping URI::Econding author on that PR.. hopefully they'll notice | |||
s/ping/pinged/ | |||
17:00
csd_ left
17:03
csd_ joined
17:06
rurban joined,
flussence left
17:08
skids joined
|
|||
DrForr | Hidey-ho there, grammar/GLR question in regards to gist.github.com/drforr/f270ca6c14422033b660 | 17:13 | |
17:13
flussence joined,
vendethiel joined
|
|||
DrForr | It's probably purely aesthetic, but I'd like to remove the trailing comma on the second-to-last line. | 17:13 | |
moritz_ | DrForr: try ${ ID => "12" } | 17:14 | |
DrForr | Will do. | ||
That works. The next question is why - I'm guessing that the foo => 'bar' is a Pair and ${} does something to linearize it, but why? | 17:16 | ||
Seeing as with any luck I get to explain this little bit of trivia to a crowd of ~100 people in a few weeks... | 17:17 | ||
RabidGravy | Zoffix, for reference I gave up on URI::Encode and just put my fixed version right in URI::Template | 17:18 | |
jdv79 | is .t6 supported anywhere? | 17:19 | |
psch | hmm, that's a bit surprising | 17:23 | |
also, hi #perl6 | |||
m: my %h = a => 1, b => 2; my @a = [ %h ]; say @a.elems | |||
camelia | rakudo-moar 459a41: OUTPUT«2» | ||
psch | well, i guess it is single-arg-rule, in the end | ||
17:25
BenGoldberg joined
|
|||
skids | m: my $p = Promise.new; my $v = $p.vow; my $s = start { sleep 1; +"this throws"; $v.keep(True); }; await $s, $p | 17:30 | |
camelia | rakudo-moar 459a41: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5this throws' (indicated by ⏏) in block <unit> at /tmp/zxf1AxPYa7:1» | ||
skids | m: my $p = Promise.new; my $v = $p.vow; my $s = start { sleep 1; +"this throws"; $v.keep(True); }; await $p, $s; | ||
camelia | rakudo-moar 459a41: OUTPUT«(timeout)» | ||
skids | Doc clarification needed -- await calls .result on the list *in turn* not like allof()? | ||
psch | DrForr: "single arg rule" finds a lot of related explanations on the clog, but i don't think we have a comprehensive doc entry yet | 17:31 | |
JimmyZ | m: my %h = a => 1, b => 2; my @a = [ %h ]; say @a.perl | 17:32 | |
camelia | rakudo-moar 459a41: OUTPUT«[:a(1), :b(2)]» | ||
DrForr | Yeah, I ran across that while searching, I'll save reading for when I've got the test suite working again. | ||
17:34
zacts joined
|
|||
psch | the core i understand somewhat like "as long as a given level of a structured variable is a single item and the variable isn't explicitly treated as an item, flatten everything" | 17:34 | |
m: my @a = [[[[[[[[[[1]]]]]]]]]]; say @a.perl # like this | |||
camelia | rakudo-moar 459a41: OUTPUT«[1]» | ||
psch | m: my @a = [[[[[[$[[[[1]]]]]]]]]]; say @a.perl # or this | ||
camelia | rakudo-moar 459a41: OUTPUT«[[1],]» | ||
psch | note that only keeps one array around, because the inner ones are again not itemized and single elements | 17:35 | |
m: my @a = [[$[[[[$[[[[1]]]]]]]]]]; say @a.perl # | |||
camelia | rakudo-moar 459a41: OUTPUT«[[[1],],]» | ||
17:39
lucasb left
17:42
telex left
17:44
telex joined
|
|||
zengargoyle | has anybody used the %?RESOURCES stuff yet? i.e. is there a working module that uses it to find a .so file that i can cargo-cult-cut-paste from? :) | 17:46 | |
Skarsnik | err, find what .so file? | 17:47 | |
zengargoyle | find a .so file that is built/installed with the module. like Algorithm::Trie::libdatrie builds a libdatrie.so file that panda installs with the module and then needs to be found at runtime. | 17:49 | |
17:49
rurban left
|
|||
timotimo | zengargoyle: Inline::Perl5 uses it, i believe | 17:49 | |
17:51
domidumont joined,
rurban joined
|
|||
zengargoyle | timotimo: thanks, that'll probably get me started. | 17:52 | |
timotimo | :) | 17:53 | |
i wonder if Linenoise is already updated? | |||
RabidGravy | zengargoyle, see e.g github.com/jonathanstowe/p6-Sys-La...7e3ead916f | 17:54 | |
it's relatively trivial to be honest | 17:55 | ||
zengargoyle | yeah, ack'd for RESO in the Inline::Perl5. doing the rakudobrew dance ATM. | 17:57 | |
bah! | 17:58 | ||
psch | hrm | 17:59 | |
zengargoyle | Dynamic variable @*PRECOMP-WITH not found | ||
RabidGravy | You'll need to adjust the Build.pm META.info and Makefile.in (if you are using librarymake) | ||
arnsholt | zengargoyle: That's probably my fault! Is this while compiling Rakudo, or installing something? | 18:00 | |
psch | re-locking the same fh is allowed on moar, but not on jvm. that's the current r-j build hang-up, in case anyone was wondering | ||
zengargoyle | rakudobrew build panda; # after nuke; build moar; | 18:01 | |
18:01
profan left
|
|||
psch | (where "re-locking" means "without unlocking") | 18:01 | |
zengargoyle | SC not yet resolved; lookup failed # trying perl6 ./bootstrap.pl | ||
Skarsnik | %?RESOURCES work in context? I mean it only the ressources for the modules/namespace? | 18:03 | |
arnsholt | zengargoyle: I'll have a look at it, but don't have time to do it right away. But if you try to do the steps by hand and apply --ll-exception at the failing step it may very well turn out to be relatively straightforward, if you want to look at it yourself | 18:04 | |
RabidGravy | for a "distribution" as I read the code | ||
hoelzro | timotimo: I fixed it on Friday, but using an awful hack rather than %?RESOURCES | 18:05 | |
I'm hoping to change that today | |||
timotimo | :S | 18:06 | |
hoelzro | I'm wondering how to handle .so vs .dll in the resources list, though? | 18:08 | |
just list both? | |||
and do we use .dylib on OS X? | |||
Skarsnik | hm | 18:09 | |
good question actually | |||
zengargoyle | isn't extension somewhere in the $*VM or somesuch settings info? | ||
Skarsnik | ahah | 18:11 | |
18:12
pecastro_ left
|
|||
Skarsnik | look at I what I did to get the ext in rt.perl.org/Ticket/Display.html?id=126645 (toward the end) x) | 18:12 | |
zengargoyle wonders if `perl6 --version` should have a 'build date' component. | 18:13 | ||
18:13
azariah_ joined
18:14
koo8 left,
pecastro joined
|
|||
hoelzro | zengargoyle: I believe it is, but does that mean that we need to generate META.info based on the building OS? | 18:14 | |
Skarsnik | Na ressources should be typed | ||
[Coke] | nine: I have some failing precomp tests on OS X. | ||
t/spec/S10-packages/precompilation.t is failing tests 1,7 | 18:15 | ||
azariah_ | Is it possible to override the default value of an attribute in a derived class without repeating the entire attribute definition? | ||
Skarsnik | like Ressources : [ lib : "mylibfile" ] | 18:16 | |
azariah_, try in BUILD? | |||
arnsholt | [Coke]: Probably my fault! | 18:17 | |
I'll have a look at them tomorrow | |||
Skarsnik | but I am not sure it will work if you write method BUILD(:$!attrtochange = "foo"); it will not be called with a Class.new(:stuff, :stuff2) maybe | ||
azariah_ | Was just wondering if there was something like the "has +'attrname'" syntax in Moose | 18:18 | |
Skarsnik | damn Configure.pl does not work on hurd | 18:19 | |
lizmat | is it just me, or is every single spectest file broken atm ? | 18:21 | |
===SORRY!=== | |||
SC not yet resolved; lookup failed | |||
lizmat nukes install and rebuilds | |||
18:22
corbyhaas left
|
|||
zengargoyle | that's the same i'm getting trying to install panda from a fresh rakudobrew. starts happening with JSON__Fast | 18:23 | |
18:24
corbyhaas joined
18:25
woolfy joined,
woolfy left
|
|||
[Coke] | t/spec/S17-supply/syntax.t has some very fiddly failures on OS X. Trying to golf it, the abort keeps going away. | 18:28 | |
zengargoyle | if i rm -rf lib/.precomp between each prove t/*.t test, one test file passes, next fails. | ||
i.e. prove -e 'perl6 --ll-exception -Ilib' -v t/01-parse.t passes; run it again it fails; rm -rf lib/.precomp and it passes again. | 18:30 | ||
Skarsnik | lol | 18:31 | |
zengargoyle | bets other parts of panda install work because the only have one t/ file. :) | ||
RabidGravy | okay I was just going to bite the bullet and update the rakudo on the laptop. perhaps I won't | 18:32 | |
dalek | ecs: 5ce1177 | skids++ | S17-concurrency.pod: Update design doc section on Channels Channels use .closed not .done. Remove old earliest and related constructs. |
||
zengargoyle | can i blame precomp without sounding snarky? :) | 18:33 | |
18:34
Juerd left,
Juerd joined
18:35
profan joined
|
|||
lizmat | after a nuked install, spectest is still mostly dead :-( | 18:36 | |
===SORRY!=== | |||
SC not yet resolved; lookup failed | |||
zengargoyle | lizmat: does very first test pass? | 18:37 | |
18:37
nadim joined
|
|||
lizmat | looks like | 18:37 | |
but *not* if I run it again | 18:38 | ||
zengargoyle | precomp is making more than 1 test fail. | ||
Skarsnik | I wonder if precomp could be use with something like Mojo6::Template | ||
zengargoyle | lizmat: see my last few msgs, having same issue with installing panda | 18:39 | |
RabidGravy | it was working this morning, so I'm guessing you're looking at a commit since about 11 GMT | 18:40 | |
lizmat | reverting to before arnsholt's merge, makes things work again | ||
arnsholt: you still around ? | |||
zengargoyle | and if spectest is failing, i'm guessing in rakudo/nqp and not panda... | 18:41 | |
18:41
_nadim left
|
|||
lizmat | zengargoyle: yea, spectest of rakudo | 18:41 | |
I'm going to revert arnsholt's merge | 18:42 | ||
RabidGravy | iirc he knows what it is but didn't have time to fix it | 18:43 | |
lizmat | well, meanwhile nobody can develop anymore | ||
hmmm.... I guess I don't have enough git fu to revert the merge | 18:44 | ||
RabidGravy | yeah totally with reverting | ||
18:44
Actualeyes left
|
|||
psch | hm, do we have tests for file locks with multiple threads? | 18:45 | |
...do we have *any* tests for IO::Handle.lock? o.o | 18:47 | ||
RabidGravy | lizmat, I think it's "git revert -m 1 459a41890" | 18:49 | |
timotimo | is transpose.t broken in "make test"? | ||
oh, huh | 18:50 | ||
it seems to require "make install" first | |||
zengargoyle | RabidGravy: yeah, that looks right to me.... | 18:51 | |
RabidGravy | the result looks sane anyway :) | ||
timotimo | oh, it's the SC not resolved problem | ||
18:52
TEttinger joined
|
|||
psch | what does IO::Handle.lock actually do, anyway? on r-m i can run two interpreters that both .lock(2) the same file..? | 18:52 | |
lizmat | RabidGravy: verifying your findings... | 18:53 | |
psch | hm, might be lock modes that i'm ignorant of | ||
RabidGravy | Oh wait it might leave the merge faults from that merge | ||
timotimo | psch: linux only has "advisory" locks anyway ... | 18:54 | |
don't know if that makes a difference for your test case | |||
zengargoyle | revert diffed with 31720335a4d262a3195ca59f2dd25ad0e3247e4e shows nothing. | 18:55 | |
psch | timotimo: that just makes it more confusing, actually :/ | 18:56 | |
as in, javadoc says that jvm-level locks should be treated as advisory because they utilize the OS locking mechanism | |||
but the "let's just lock again and not care if it's locked already" impl for nqp-j lockfh dies with (what's essentially) "can't lock this again, it's already locked" | 18:57 | ||
timotimo | lol. | ||
it's making an effort :) | 18:58 | ||
psch | and well, nqp-m lockfh just seems to not do anything... vOv | ||
autarch | what's the format for advent calendar articles? is there a repo I can look at? | ||
psch | autarch: what do you mean "format"? they're usually submitted in the wordpress editor | 18:59 | |
autarch | oh, I see, can I get access to that then? | ||
psch: for the record, the perl 5 calendar uses a slightly tweaked POD format - github.com/perladvent/Perl-Advent/...-12-16.pod | |||
psch | autarch: i think moritz_ or PerlJam can invite you to the author group, but it's the same editor as any wordpress installation uses | 19:00 | |
lizmat | autarch: I think moritz can give you access to that | ||
autarch | moritz_: ^ | ||
timotimo | OK, so i have built a thingie that reports what lines have been hit via MoarVM; now to 1) somehow make that work with the spectests, 2) somehow generate a report from that | 19:01 | |
psch | timotimo: in any case, should IO::Handle.lock on r-m work twice on the same FH..? | ||
dalek | kudo/nom: ccf15ec | lizmat++ | src/core/ (6 files): Revert "Merge branch 'precomp-singleprocess' into nom" This reverts commit 459a41890766ce1706d79ee48c0ca5f8e91f6965, reversing changes made to 31720335a4d262a3195ca59f2dd25ad0e3247e4e. |
||
timotimo | psch: i have no idea? :( | 19:02 | |
19:03
Actualeyes joined
|
|||
timotimo | i haven't worked with file locks, like, ever | 19:03 | |
psch | timotimo: yah, me neither... | 19:04 | |
timotimo | maybe libuv's docs can help? | 19:05 | |
RabidGravy | linux does have mandatory locks www.kernel.org/doc/Documentation/f...ocking.txt but it's to be avoided | ||
DrForr | This seems very odd to me. I just made a 'is-deeply' test pass simply by reordering hash keys. Does Test::is-deeply do string comparison on a canonical ordering of data structures, by chance? | ||
DrForr sees if he can reproduce outside the grammar. | 19:06 | ||
Skarsnik | Ohh that could be why I have is-deeply test that does not work in DBIish stuff | ||
DrForr, try eqv | |||
19:06
ZoffixW joined
|
|||
ZoffixW | m: grammar G { token TOP { <foo> | <bar> }; token foo { \d+}; token bar { \D+} }; class GA { method TOP ($/) { say $/<bar>.WHAT }}; G.parse("42", :actions(GA)).made | 19:06 | |
camelia | rakudo-moar 459a41: OUTPUT«Nil» | ||
ZoffixW | weird | 19:07 | |
DrForr reads. | |||
timotimo | who can help me with Test::Harness? | ||
if it's about grammars, you might want .caps instead of .hash or something | |||
zengargoyle | locking is even worse over NFS, there's a Perl5 module that does extreem gymnastics to do NFS locking. | ||
dalek | kudo/nom: c4f8cad | (Juerd Waalboer)++ | src/core/Num.pm: Provide tau constant (also: τ) The Tau Manifesto <tauday.com/tau-manifesto> See also <en.wikipedia.org/wiki/Turn_(geomet...oposal> and <tauday.com/state-of-the-tau> A patch for S32 is also submitted, as is a spectest. |
19:08 | |
ZoffixW | m: gist.github.com/zoffixznet/9d78d31f9f6b38b1c8c5 | ||
camelia | rakudo-moar 459a41: OUTPUT«Use of Nil in string context in method message at /tmp/OA_ce2VLkF:30YESwat?Use of Nil in string context in method message at /tmp/OA_ce2VLkF:35» | ||
kudo/nom: dd5bcdb | lizmat++ | src/core/Num.pm: Merge pull request #614 from Juerd/nom Provide tau constant (also: τ) |
|||
Skarsnik | m: my %hash; %hash<a> = 1; %hash<b> = 2; say {b => 2, a => 1} eqv %hash; | ||
camelia | rakudo-moar 459a41: OUTPUT«True» | ||
ZoffixW | How come I'm getting that output? | ||
19:09
hankache joined
|
|||
autarch | is there any way to get a thread id? | 19:09 | |
I mean an id for the current thread, like the pid | |||
ZoffixW | Oh, it's due to ~ never mind | ||
lizmat | m: say $*THREAD # autarch | ||
camelia | rakudo-moar 459a41: OUTPUT«Thread.new(app_lifetime => Bool::False, name => "Initial thread")» | ||
autarch | lizmat: thanks | 19:10 | |
lizmat | m: say $*THREAD.id # autarch | ||
camelia | rakudo-moar 459a41: OUTPUT«1» | ||
Skarsnik | m: my %hash; %hash<a> = 1; %hash<b> = 2; say {b => 2, a => 1} eqv {a => 1, b => 2}; | ||
camelia | rakudo-moar 459a41: OUTPUT«True» | ||
timotimo | hum. leont could probably help me :P | 19:12 | |
cxreg | wondering what the semantics of a non-blocking await looks like | ||
19:12
ZoffixW left
|
|||
AlexDaniel | non-blocking await? | 19:12 | |
timotimo | cxreg: it'll just resume execution in a different task | ||
cxreg | oh ok | ||
timotimo | so from the perspective of the code the await is in, it'll still "block" | 19:13 | |
cxreg | but not from the vm's | ||
timotimo | that's right | 19:14 | |
cxreg | makes sense, thanks for clarifying. jnthn said he wanted to do that before p6.c but if the semantics dont change then it's probably fine if not | ||
autarch | is panda broken with the current moar/rakudo HEAD? | ||
AlexDaniel | Hooooraaaay for τ! | ||
lizmat | autarch: I just reverted a merge that broke things | ||
autarch: do you have that pulled ? | |||
autarch | lizmat: probably not, I rebuilt my perl6 about 20 minutes ago | ||
zengargoyle | lizmat++ | ||
RabidGravy | I don't thinkk I've ever used pi in any code that I have been paid for so the chances of tau changing my life are slim | 19:15 | |
zengargoyle | autarch: pull and you get τ for free! | ||
autarch | oh, thank goodness, that's exactly what I needed ;) | ||
AlexDaniel | m: τ | 19:16 | |
camelia | rakudo-moar ccf15e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/zAnbUv3KmGUndeclared routine: τ used at line 1» | ||
AlexDaniel | not yet! | ||
timotimo is excited for tau | 19:17 | ||
psch | huh | ||
hankache | Z | 19:18 | |
autarch | lizmat: is the error you fixed this one? "Could not find Shell::Command:ver<True>:auth<True>:api<True> in: ..." | ||
cause I Just did a "rakudobrew build moar" but I'm still getting that error | |||
psch | r-m apparently installs e.g. BOOTSTRAP.moarvm to $prefix/share/nqp/lib/Perl6/, but r-j installs to $prefix/share/lib/Perl6/ | ||
zengargoyle | i was hoping τ/2 would return π | ||
psch | (r-j obviously installs BOOTSTRAP.jar...) | 19:19 | |
RabidGravy | autarch, when was the *previous* time you did a rakudobrew? | ||
hankache | autarch: nuke ~/.rakudobrew and ~/.per;6 and start from scratch | ||
autarch | RabidGravy: maybe 20 minutes ago? | ||
RabidGravy | before that? | ||
hankache | i did it yesterday and it solved my issue | ||
~/.perl6 | |||
zengargoyle | autarch: rakudobrew nuke moar; rm -rf ~/.perl6; cd ~/.rakudobrew; git pull; cd -; rakudobrew build moar; ... | ||
cxreg | zengargoyle: arguably it's a bug that it does not? :) | 19:20 | |
autarch | too late, I nuked the dot dirs | ||
RabidGravy | wahay! | ||
El_Che | I would like to read file as records (in my case separated by \n\n) instead of lines. This does not work: | ||
m: spurt('/var/tmp/file1', "A\n\nB\n\nC\n\n"); my $fh = open('/var/tmp/file1', nl-in => "\n\n"); say $_.perl for $fh.lines; | |||
camelia | rakudo-moar ccf15e: OUTPUT«spurt is disallowed in restricted setting in sub restricted at src/RESTRICTED.setting:1 in sub spurt at src/RESTRICTED.setting:17 in block <unit> at /tmp/JK61dZea7p:1» | ||
El_Che | well, it just splits the output on "\n" instead of "\n\n" | 19:21 | |
hankache | Zoffix: Any news about inviting camelia to #perlfr ? | ||
zengargoyle | doing a git pull on rakudobrew seems easier than nuking/reinstalling it. | ||
cxreg | <banter> i wonder if the perl 6 excitement is really building, or if that's echochamber effect. seems like the HN discussion has been mostly positive. </banter> | ||
RabidGravy | zengargoyle, "rakudobrew self-upgrade" ;-) | ||
zengargoyle | ha, lol | 19:22 | |
autarch | yeah, _now_ you mention that | ||
hankache | rakudo self-upgrade didn't solve it for me | ||
i had to nuke ~/.rakudobrew | |||
zengargoyle | i have not yet ever had to nuke .rakudobrew... | 19:23 | |
AlexDaniel | by the way, there is some issue with rakudobrew. You can only use it if you put it into ~/.rakudobrew, no idea what happened. It was working just fine in any other directory earlier | ||
timotimo | rakudobrew self-upgrade only updates the rakudobrew installation itself | ||
El_Che | cxreg: the slashdot discussion was a trollfest | ||
timotimo | it does nothing to rakudo | ||
hankache | don't ask me why though, someone told me to do it and it just worked :) | ||
autarch | El_Che: unlike other slashdot discussions? | ||
lizmat | autarch: no, that's not in | 19:24 | |
*it | |||
zengargoyle | AlexDaniel: i still have /opt/rakudobrew... haven't seen any problems. | ||
RabidGravy | yes, but "rakudobrew self-upgrade; rakudobrew nuke moar" (and possibly the .perl6 directory) *should* do for the pre-curli to post-curli leap | ||
lizmat | fwiw, I bootstrapped panda ok on my machine after having nuked install a while ago | ||
RabidGravy | still building for me here | ||
zengargoyle | lizmat: me too! seems to be ok after the revert. | 19:25 | |
AlexDaniel | zengargoyle: that's interesting. I saw this problem on two different machines (on both it was working just fine for a looooong time), so something definitely happened I'm just not sure what exactly | ||
lizmat | but I can't install Inline::Perl5 | ||
RabidGravy | yeah, I thought that slashdot had actually replaced under bridges as to where trolls lived about fifteen years ago | ||
autarch | well, stuff seems to be working after rebuilding everything from scratch | 19:26 | |
AlexDaniel | m: say τ | ||
camelia | rakudo-moar ccf15e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/x6NFTJlPduUndeclared routine: τ used at line 1» | ||
timotimo | autarch: glad to hear it | ||
El_Che | autarch: :) | ||
RabidGravy | ah, did that rever too much (i.e. nine's %?RESOURCES stuff?) | ||
hankache | autarch++ | 19:28 | |
cxreg | El_Che: well. slashdot. | ||
lizmat | RabidGravy: yeah, suggestions for fixing ? | ||
dalek | p: 7ab9ad5 | peschwa++ | src/vm/jvm/runtime/org/perl6/nqp/io/FileHandle.java: Bring nqp-j lockfh handling in line with nqp-m. As noted in the comment in the file there might be a cleaner way to achieve this, the fact that re-locking a locked filehandle might be a bad things to allow aside. |
||
kudo/nom: 0ec5ad5 | peschwa++ | tools/build/Makefile-JVM.in: Correct lib path to install a working R-J. |
|||
psch | there, r-j builds and installs and at least basically works again | 19:29 | |
cxreg | El_Che: r/programming and HN are far superior these days, honestly | ||
timotimo | cxreg: they troll better? | ||
El_Che | cxreg: Last perl or perl6 that wasn't that but. It's not that it was negative, just too silly to even bother. I mean, I can appreciate a good troll, but this time it wasn't even funny | ||
last thread | |||
bartolin_ | psch++ | ||
autarch | hmm, I don't think ThreadPoolScheduler works like I think it should work ... gist.github.com/autarch/fc41bcaf31f05651a2c5 - everything runs in the same thread | ||
cxreg | timotimo: heh. fair. | ||
psch | bartolin_: i'm fairly confident spectest is still an undeniable mess, though... :) | ||
timotimo | autarch: oh! i have a clue why that might be %) | ||
autarch | timotimo: please share | 19:30 | |
psch starts that out of morbid curiousity... | |||
timotimo | autarch: jnthn recently built something that allows you to see dynamic variables from the context where a start block was placed | ||
bartolin_ too | |||
timotimo | perhaps it gets the $*THREAD value from before it got put into the ThreadPoolScheduler? | ||
oh | |||
autarch | timotimo: how could I figure this out? | ||
timotimo | you're using supplies | 19:31 | |
lizmat is getting very sad about the mess nom is in | |||
timotimo | supplies have a "pipeline" semantic kind of deal that means things are tried to run on the same thread for better locality | ||
OSLT | |||
try with start instead of tap | |||
(to see if i'm full of shit) | |||
jnthn | autarch: $supply.schedule-on($sched); | 19:32 | |
autarch: That's a no-op | |||
autarch: It returns something that you would then tap | |||
It doesn't work in-place | 19:33 | ||
autarch | jnthn: aha, that makes sense | ||
though the docs must be wrong, because they don't document a return value | |||
jnthn | Ah, sounds like. I don't think there's anything at all on a Supply that works in-place, fwiw | ||
bartolin_ | psch: actually, I hope the spectest on r-j is not that bad. I ran some test files manually the last days (while looking at some tests) and didn't see any new problems with those | 19:34 | |
lizmat | I'm about to restore files manually in nom that I think are right | ||
and then create a commit out of that to fix things | |||
autarch | jnthn: I think the docs may be way out of date on that then - I'll try to put some patches together once I finish my advent article | ||
lizmat | jnthn RabidGravy do you have better ideas ? | ||
AlexDaniel | m: say τ | 19:35 | |
camelia | rakudo-moar dd5bcd: OUTPUT«6.28318530717959» | ||
AlexDaniel | alriiiiight! | ||
jnthn | lizmat: You're planning to revert something? | ||
AlexDaniel | m: say τ == pi * 2 | ||
camelia | rakudo-moar dd5bcd: OUTPUT«True» | ||
lizmat | jnthn: I reverted arnsholt's merge badly | ||
psch | bartolin_: well, it starts with 55 lines of "No subtests run"... :/ | ||
19:35
lucasb joined
|
|||
lizmat | jnthn: now I need to revert that and then revert arnsholt's merge properly | 19:35 | |
jnthn: as I said, it's a mess | |||
bartolin_ | psch: oh :-( | 19:36 | |
jnthn | lizmat: How many commits were in the merge? | ||
lizmat: You can just list those to git revert | |||
lizmat feels like the wizard's apprentice watching the brooms go wild | 19:37 | ||
jnthn | lizmat: git-scm.com/blog/2010/03/02/undoing-merges.html has probably a lot more info than you want to know on it :) | ||
lizmat | I'm not interested in learning stuff atm, I'm interested in getting stuff right asap | 19:38 | |
AlexDaniel | m: my \r = 25; my $C = τ * r; say $C | ||
camelia | rakudo-moar dd5bcd: OUTPUT«157.07963267949» | ||
AlexDaniel | feels good :) | ||
19:39
raoulvdberge left,
brrt joined
|
|||
hankache test | 19:40 | ||
lucasb | by looking at github rendering of the commits, it looks like the lizmat's revert commit is exactly the reverse of arnsholt's one. why it was said that it reverted too much? | ||
lizmat | the %?RESOURCES work | ||
which is what Inline::Perl5 now depends on | |||
hankache knows how this works now :) | |||
grondilu is glad about tau | 19:41 | ||
psch | hm, and the ContextRef serialize stuff still pops up | ||
lucasb | ah, ok. maybe it was because arnsholt found some conflicts when merging (?) | ||
RabidGravy | there were | ||
19:43
AlexDaniel left,
azariah_ left
|
|||
autarch | is Supply.wait not blocking? | 19:43 | |
jnthn | It blocks | ||
m: Supply.iterval(1).wait; say 'here'; | 19:44 | ||
camelia | rakudo-moar dd5bcd: OUTPUT«Method 'iterval' not found for invocant of class 'Supply' in block <unit> at /tmp/cJRko05KqD:1» | ||
jnthn | m: Supply.interval(1).wait; say 'here'; | ||
autarch | hmm, that's not what I'm seeing | ||
jnthn | heh, of course that'll go on forever :) | ||
m: Supply.interval(1).head(2).wait; say 'here'; | |||
camelia | rakudo-moar dd5bcd: OUTPUT«(timeout)» | ||
rakudo-moar dd5bcd: OUTPUT«===SORRY!===last without loop construct» | |||
jnthn | o.O | ||
grondilu | fir use of tau in RC: rosettacode.org/wiki/Category:Perl_6 | ||
oops | |||
meant rosettacode.org/wiki/Fast_Fourier_t...orm#Perl_6 | |||
autarch | m: (1,2,3).Supply.tap( -> $x { say $ } ) | 19:45 | |
camelia | rakudo-moar dd5bcd: OUTPUT«(Any)(Any)(Any)» | ||
lucasb | so... it seems there was consensus about the tau thing? :) | ||
autarch | m: (1,2,3).Supply.tap( -> $x { say $x } ) | ||
camelia | rakudo-moar dd5bcd: OUTPUT«123» | ||
autarch | m: (1,2,3).Supply.tap( -> $x { say $x } ).wait | ||
camelia | rakudo-moar dd5bcd: OUTPUT«123Method 'wait' not found for invocant of class 'Tap' in block <unit> at /tmp/KqGHgHEH3p:1» | ||
autarch | m: my $s = (1,2,3).Supply; $s.tap( -> $x { say $x } ); $s.wait | ||
camelia | rakudo-moar dd5bcd: OUTPUT«123» | ||
lizmat | lucasb: no, there wasn't, but I bit the bullet by hoping for forgiveness | 19:46 | |
autarch | m: my $s = (1,2,3).Supply; $s.tap( -> $x { sleep 2; say $x } ); $s.wait | ||
camelia | rakudo-moar dd5bcd: OUTPUT«123» | ||
autarch | hmm, of course it works here :( | ||
lucasb | lizmat: I forgive you :) | ||
just kidding :) | |||
lizmat | it felt right to me, forward looking to the use of tau in the world | ||
autarch | it doesn't seemt to be waiting here - gist.github.com/autarch/cfa68f65b36a8cd5cd0b - there's no progress bar output except the call to $prog.?message($msg) | ||
jnthn | autarch: .wait is a form of .tap | 19:47 | |
19:47
brrt left
|
|||
autarch | If I replace .tap with .wait I get ... "Too many positionals passed; expected 1 argument but got 2" | 19:47 | |
lizmat gives up on fixing the mess nom is in | 19:48 | ||
jnthn | autarch: What are you actually wanting to do? :) | ||
.wait means "wait for the thing to complete and give me its final value" | |||
yoleaux | jnthn: Sorry, this command is admin-only. | ||
autarch | jnthn: run the $sub in up to N threads, one per thing in $items | ||
and wait for that to complete before returning | |||
19:48
robnox left
|
|||
lizmat | autarch: what you want, is Supply.throttle(N, -> { ... } ) | 19:50 | |
autarch | then what's Supply.schedule-on for? | ||
19:50
yqt joined
|
|||
lizmat | autarch: that's for special things like GTK binding, running on the GTK scheduler | 19:51 | |
jnthn | autarch: And get the items back in order? | ||
autarch | ah, ok | ||
jnthn: don't want anything back at all | |||
jnthn | lizmat: I think schedule-on could work for this | ||
autarch: Then what were you passing to .tap? :) | |||
autarch | jnthn: a subroutine that does some work | ||
jnthn | Ah | ||
m: Supply.from-list(1, 2, 3, 4).schedule-on($*SCHEDULER).do({ say "work on $_ on $*THREAD.id()" }).wait; say 'done'; | 19:52 | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«work on 1 on 3work on 2 on 4work on 3 on 5work on 4 on 6done» | ||
jnthn | oh, but that may not be parallel enough | 19:53 | |
autarch | yeah, the goal here is to parallelize an operation across N threads - there are no return values to care about | ||
19:53
ZoffixW joined
|
|||
jnthn | m: (1, 2, 3, 4).hyper.map({ say "work on $_ on $*THREAD.id()" }); | 19:53 | |
camelia | ( no output ) | ||
jnthn | m: (1, 2, 3, 4).hyper.map({ say "work on $_ on $*THREAD.id()" }).sink | 19:54 | |
camelia | ( no output ) | ||
ZoffixW | Hey, what's "AUTOGEN"? I'm getting "Ambiguous call to 'AUTOGEN'" | ||
jnthn | Hm, that *should* work... | ||
autarch | but I want to be able to limit it to a certain (user-specified) number of threads | ||
if there are 300 items it should not make 300 threads ;) | |||
19:54
rob joined
19:55
rob is now known as Guest54427,
Guest54427 is now known as robnox
|
|||
autarch | ah, I see hyper takes a batch size | 19:55 | |
moritz_ | you can always instantiate your own ThreadPoolScheduler with a differen max-threads | ||
doc.perl6.org/type/ThreadPoolScheduler | |||
not necessary with .hyper, but in general if you use promises etc. and want to limit the number of threads | 19:56 | ||
jnthn | m: for ^10 .rotor(4) { await do for @$_ { start { say "$_ on $*THREAD.id" } } } | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«0 on Thread<3>(<anon>).id1 on Thread<4>(<anon>).id2 on Thread<3>(<anon>).id3 on Thread<4>(<anon>).id4 on Thread<3>(<anon>).id5 on Thread<5>(<anon>).id6 on Thread<6>(<anon>).id7 on Thread<4>(<anon>).id» | ||
jnthn | There's another way | ||
Supplies aren't really a great tool for this because their goal is to tame concurrency rather than introduce it :) | 19:57 | ||
autarch | I'm just trying what someone told me to do a week ago, I think ;) | ||
lucasb | Isn't reverting the revert commit helping in this case? Then the repo arrives back at arnsholt's change. From there, it can be decided how to revert (or not) that correctly. | ||
moritz_ | m: for ^10 .rotor(4) { await do for @$_ { start { say "$_ on $*THREAD.id()" } } } | 19:58 | |
camelia | rakudo-moar 0ec5ad: OUTPUT«0 on 31 on 42 on 33 on 44 on 35 on 56 on 47 on 6» | ||
19:58
s_kilk joined
|
|||
autarch | so here it is with .hyper - gist.github.com/autarch/af2ac13e76ec0d487615 - and it doesn't seem to actually run the sub passed to .map - if I remove the .hyper() bit it does run it | 19:59 | |
20:00
Begi joined
|
|||
s_kilk | Would anyone here have any use for the `perl6.rocks` domain? I registered it (in a drunken frenzy) a few weeks ago, and would be willing to transfer it to the perl6 community, if something useful could be done with it | 20:00 | |
ZoffixW | s_kilk, how much does it cost? | 20:01 | |
s_kilk | eh, I'll just hand it over, no interest in keeping it. | ||
lizmat | s_kilk++ | ||
s_kilk | as long as it get's used for something cool | 20:02 | |
it could make for a great tutorial site | |||
ZoffixW | Anyone know why this line is giving me "Ambiguous call to 'AUTOGEN'; these signatures all match::(IRC::Client::Plugin::Debugger $: *%_):(IRC::Client::Plugin::Debugger $: *%_)" github.com/zoffixznet/perl6-IRC-Cl...nt.pm6#L33 The line above works fine | ||
jnthn | It'd be great if somebody made a Perl 6 geology library and put its site there :P | ||
ZoffixW | This is the only object in @!plugins and its .msg methods: github.com/zoffixznet/perl6-IRC-Cl...ger.pm6#L6 | ||
jnthn++ | |||
autarch | moritz_: your solution seems to do what I want | 20:03 | |
RabidGravy | lizmat, if you also revert the second (right) commit of the merge, fix the merge faults with "git checkout --ours <file>" then rebase to your last revision then you should have something you can work with | ||
autarch | except for not actually doing anything ...? I need to investigate further | 20:04 | |
RabidGravy | skipping the merge errors of course in the rebase | ||
lizmat | RabidGravy: at this moment, my confidence level at fixing this is zero, so I'm leaving it to someone else to fix | ||
I feel I would only make things worse | 20:05 | ||
bartolin_ | lizmat: do you have an opinion about integration/advent2014-day05.t (from roast)? AFAIU the test file fails (it's only run as stress test) because it uses the old Supply API. should we remove the test file or should it be updated to the new API? | ||
lizmat | pls update to new API | ||
hankache | ZoffixW: any luck with camelia on #perlfr? | ||
bartolin_ | oki doki (but 'll have to understand Supply and friends first :-) | 20:06 | |
jnthn | autarch: I put hyper and race in partially while working out how we'd do them as part of the GLR, never quite finished them (though they'd have done fine for your case), and was silly enough to not write tests to make sure we didn't bust what did work. :( | ||
ZoffixW | hankache, try to find one of the people who have access to the server with her and ask them to see why the irc.perl.org version died. I don't have access to it, so I've no idea what happened | ||
hankache | Zoffiw | ||
ZoffixW: thanks mate. | 20:07 | ||
jnthn | I suspect it'll be something silly... | ||
ZoffixW | Damn, I've been hitting these annoying bugs that I can't reproduce on small test cases :/ | ||
hankache | ZoffixW: who should I ask? | ||
jnthn | Embarassing I'm all like "I was stupid enough to write no tests" the evening before I teach a TDD class :P | ||
psch | m: role R { multi method f() { False }; multi method f(R) { say "from R" } }; class C does R { multi method f() { True }; multi method f(C $:) { say "from C" } }; C.new.f | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«Ambiguous call to 'f'; these signatures all match::(C $: *%_):(C $: *%_):(C $: *%_) in block <unit> at /tmp/HfmWjKo25h:1» | ||
psch | ZoffixW: ^^^ that's your latest golfed, isn't it? | ||
well, similar | |||
ZoffixW | hankache, nine and maybe moritz; but nine said they were busy ATM | 20:08 | |
psch | the signature for C.f isn't quite comparable :S | ||
hankache | ZoffixW: ok thanks | ||
moritz_ investigates | |||
ZoffixW | moritz_, I've added two extra channels for the bot to join, asked the bot to pull and then restart, and it never came back | 20:09 | |
psch doesn't really grok role/multi interactions particularly well... | |||
Skarsnik | role and mutli seem buggy x= | ||
psch | Skarsnik: i think it's mostly not completely clear how it should behave | 20:10 | |
Skarsnik: at least that's how i feel about it... :) | |||
moritz_ | Can't locate JSON.pm in @INC | ||
jnthn | It's clear enough once you remember that the design of roles is "works like you declared the thing in the class" :) | 20:11 | |
dalek | kudo/nom: 9a6b714 | lizmat++ | src/core/Thread.pm: Give Thread a better understandable .gist |
||
jnthn | Given that, you'd expect ambiguity :) | ||
ZoffixW | psch++ thanks. Commenting out the methods in my role fixed the issue | 20:12 | |
Skarsnik | m: role R { method foo() { ... } }; class A does R { multi foo(Int) {say "Int"}; multi foo() {say "A"}}; | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«===SORRY!===Method 'foo' must be implemented by A because it is required by a role» | ||
ZoffixW | I think going with multies was a mistake | ||
Skarsnik | m: role R { method foo() { ... } }; class A does R { multi method foo(Int) {say "Int"}; multi method foo() {say "A"}}; | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«===SORRY!===Method 'foo' must be implemented by A because it is required by a role» | ||
psch | m: role R { method foo() { ... } }; class A does R { proto method foo(|) {*}; multi foo(Int) {say "Int"}; multi foo() {say "A"}}; | ||
camelia | ( no output ) | ||
Skarsnik | so yeah, role and multi does not work x) | 20:13 | |
moritz_ | hankache, ZoffixW: camelia should be back on irc.perl.org | ||
psch | jnthn: yeah, i guess everything else is just trying to be too clever i suppose | ||
Skarsnik: it does, you just have to supply an explicit proto | |||
hankache | moritz_ ZoffixW thanks a lot | ||
Skarsnik | the proto sound like a bad workaround x) | ||
psch | Skarsnik: why workaround? | ||
ZoffixW | moritz_, it is, but running "m:" just says "<p6eval> rakudo-moar : OUTPUT«No such file or directory»" | 20:14 | |
jnthn | Skarsnik: Just because you don't have a clue how it works doesn't mean it doesn't work :/ | ||
Skarsnik | because why would I need another keyword? | ||
ZoffixW | moritz_, "rakudo-moar : OUTPUT«(timeout)Can't exec "./rakudo-m-inst/bin/perl6-m": No such file or directory at lib/EvalbotExecuter.pm line 194.cat: /home/camelia/rakudo-m-inst/revision: No such file or directory»" | ||
moritz_ | m: say 42 | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«42» | ||
Skarsnik | m: role R { multi method foo() { ... }; multi method foo(Str $a) {say $a}}; class A does R { multi method foo(Int) {say "Int"}; multi method foo() {say "A"}}; | 20:15 | |
camelia | ( no output ) | ||
moritz_ | ZoffixW: :( | ||
hankache | moritz_ it is not working there :( | ||
autarch | hmm, I'm starting to think I don't understand Perl 6 well enough to write the advent calendar article I'm supposed to write :( | ||
ZoffixW | autarch, do it! :) | ||
autarch | ZoffixW: uh, how does that help? | ||
Skarsnik | m: role R { multi method foo() { ... }; multi method foo(Str $a) {say $a}}; class A does R { multi method foo(Int) {say "Int"}; multi method foo() {say "A"}}; my $a = A.new; $a.foo("Hello"); $a.foo(); | 20:16 | |
camelia | rakudo-moar 0ec5ad: OUTPUT«HelloAmbiguous call to 'foo'; these signatures all match::(A $: *%_):(A $: *%_) in block <unit> at /tmp/jHxrNQi_gN:1» | ||
hankache | moritz_ say 123 will return rakudo-moar : OUTPUT«No such file or directory» | ||
moritz_ | hankache: yes | ||
ZoffixW | What's weird is *I* get this /msg from it: <p6eval> rakudo-moar : OUTPUT«(timeout)Can't exec "./rakudo-m-inst/bin/perl6-m": No such file or directory at lib/EvalbotExecuter.pm line 194.cat: /home/camelia/rakudo-m-inst/revision: No such file or directory#perlfr <hankache> rakudo-moar: say 123» | ||
Skarsnik | wait, there is nothing ambiquous here | 20:17 | |
ZoffixW | Skarsnik, sure is foo() in the role and foo() in the class | ||
psch | Skarsnik: there is. the stub from the role and the no-parameters candidate from the class have the same signature | ||
20:17
rurban left
20:18
darutoko left
|
|||
moritz_ | Skarsnik: I don't think stubbing a multi method works the way you seem to expect it to work | 20:18 | |
20:18
rurban joined
|
|||
ChoHag | If a recipient is a thing that receives, what's a thing that sends? | 20:18 | |
ZoffixW | ChoHag, sender | ||
Skarsnik | err, what are you saying? the { ... } is just to tell the class to have a foo method defined, why it should be called in the role? | 20:19 | |
moritz_ | Skarsnik: I think stubbing works only on the routine/proto level, not on the multi level | ||
ZoffixW | Skarsnik, roles add stuff. You can't have the same method in the role and in the class | ||
moritz_ | Skarsnik: because comparing signatures is Turing complete | 20:20 | |
(in the general case) | |||
ZoffixW | Skarsnik, so it doesn't really make sense to stub. What is it stubbing? | ||
moritz_ | maybe we should compile-time error on stubbed multis | ||
ZoffixW | I think stubs work, but not with Roles | 20:21 | |
I changed mine to class and it works fine | |||
psch | stubbing a multi in a role is weird | ||
Skarsnik | I still don't get it. why without mutli stub does what it supposed to do? force the class to have the method | ||
20:21
sjn__ is now known as sjn
|
|||
ZoffixW | Does it? | 20:21 | |
Skarsnik | yes | ||
ZoffixW | weird | ||
m: role Foo { method x { ... } }; class Bar does Foo { method z { say "42" } }; Bar.new.z | 20:22 | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«===SORRY!===Method 'x' must be implemented by Bar because it is required by a role» | ||
Skarsnik | so etheir the whole signature is not check (only the name) or it's really not clear how this work | ||
psch | Skarsnik: the latter, i think :) | ||
ZoffixW | m: role Foo { method x { ... } }; class Bar does Foo { method x { say "42" } }; Bar.new.x | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«42» | ||
20:23
lucasb left
|
|||
ZoffixW | m: role Foo { multi method x { ... } }; class Bar does Foo { method x { say "42" } }; Bar.new.x | 20:23 | |
camelia | rakudo-moar 0ec5ad: OUTPUT«===SORRY!===Cannot have a multi candidate for 'x' when an only method is also in the package 'Bar'» | ||
ZoffixW | m: role Foo { multi method x { ... } }; class Bar does Foo { multi method x { say "42" } }; Bar.new.x | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«Ambiguous call to 'x'; these signatures all match::(Bar $: *%_):(Bar $: *%_) in block <unit> at /tmp/a_IvSPdhLc:1» | ||
moritz_ | ZoffixW, hankache: my bad, I activated camelia on the wrong server :-) | ||
ZoffixW | :D | ||
20:23
s_kilk left
|
|||
stmuk | m: say $*W.perl | 20:24 | |
camelia | rakudo-moar 0ec5ad: OUTPUT«Failure.new(exception => X::Dynamic::NotFound.new(name => "\$*W"), backtrace => Backtrace.new)» | ||
ZoffixW | moritz_++ thanks. It works now | ||
moritz_ | stmuk: $*W is compile-time only | ||
m: BEGING { say $*W.^name } | |||
camelia | rakudo-moar 0ec5ad: OUTPUT«5===SORRY!5=== Error while compiling /tmp/OWg79VDN1LUndeclared name: BEGING used at line 1» | ||
moritz_ | m: BEGIN { say $*W.^name } | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«Perl6::World» | ||
psch | m: say "{ 236 / 2 } failing test files on r-j" | 20:25 | |
camelia | rakudo-moar 0ec5ad: OUTPUT«118 failing test files on r-j» | ||
stmuk | ah | ||
psch | dividing by two is hard :P | ||
stmuk | m: BEGIN { say $*W.perl } | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«5===SORRY!5=== Error while compiling /tmp/nYYY06nTWqAn exception occurred while evaluating a BEGINat /tmp/nYYY06nTWq:1Exception details: 5===SORRY!5=== Error while compiling  Method 'perl' not found for invocant of class 'Perl6::Wo…» | ||
stmuk | m: BEGIN { say $*W.^methods } | 20:26 | |
camelia | rakudo-moar 0ec5ad: OUTPUT«5===SORRY!5=== Error while compiling /tmp/YoaYyZfTvOAn exception occurred while evaluating a BEGINat /tmp/YoaYyZfTvO:1Exception details: 5===SORRY!5=== Error while compiling  Method 'gist' not found for invocant of class 'NQPRoutin…» | ||
stmuk | W=World? | ||
Skarsnik | m: say tau / 2 eq pi; | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«True» | ||
20:26
geraud joined
|
|||
ZoffixW | m: say tau / 2 == pi; | 20:26 | |
camelia | rakudo-moar 0ec5ad: OUTPUT«True» | ||
ZoffixW | Oh wait, the tau bikeshed ended? :D | ||
But I still have some popcorn left over! :D | |||
Skarsnik | it's probably because tau must be pi * 2? x) | 20:27 | |
20:27
spider-mario joined
|
|||
ZoffixW | That's how it's defined, yes | 20:27 | |
m: say pi*2 == tau; | |||
camelia | rakudo-moar 0ec5ad: OUTPUT«True» | ||
ZoffixW | m: say (pi*2).nude | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«Method 'nude' not found for invocant of class 'Num' in block <unit> at /tmp/07dKswAe_Z:1» | ||
ZoffixW | -_- | ||
m: role Foo { multi method x { ... } }; class Bar is Foo { multi method x { say "42" } }; Bar.new.x | 20:29 | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«42» | ||
ZoffixW | weird, eh? | ||
Juerd | m: tau.Rat.nude.say | 20:30 | |
camelia | rakudo-moar 0ec5ad: OUTPUT«(710 113)» | ||
cxreg | is this a known issue or a me problem? while panda building DBIish I get Cannot find method 'find_symbol' | ||
ZoffixW | m: pi.Rat.nude.say | ||
camelia | rakudo-moar 0ec5ad: OUTPUT«(355 113)» | ||
dalek | kudo-star-daily: 82f553e | coke++ | log/ (2 files): today (automated commit) |
||
kudo-star-daily: 57a91eb | coke++ | log/ (2 files): today (automated commit) |
|||
rl6-roast-data: c355b2f | coke++ | / (9 files): today (automated commit) |
|||
ZoffixW | cxreg, I saw that mentioned last night | ||
[Coke] just finds out about ribasushi's tilt.com campaign. | |||
cxreg | ZoffixW: maybe something that affects only new installs? o.o | 20:31 | |
ZoffixW | *shrug* | ||
stmuk | there was an interesting audio podcast interview with ribasushi on FLOSS Weekly | ||
20:31
CIAvash left
|
|||
Skarsnik | cxreg, yep travis build failt with the same error | 20:32 | |
ZoffixW | Hm, the whole story kinda made me depressed. | ||
cxreg | Skarsnik: ok thanks | ||
hankache | moritz_ thank you very much. it is working flawlessly | ||
moritz_++ | |||
20:32
domidumont left
20:33
JimmyZ left
20:35
mohae left,
mohae joined
20:37
JimmyZ joined
|
|||
hankache | m: say pi.Rat.nude | 20:41 | |
camelia | rakudo-moar 9a6b71: OUTPUT«(355 113)» | ||
hankache | m: say 355/113 | ||
camelia | rakudo-moar 9a6b71: OUTPUT«3.141593» | ||
hankache | m: say pi | ||
camelia | rakudo-moar 9a6b71: OUTPUT«3.14159265358979» | ||
hankache | isn't it weird? ^^ | ||
autarch | m: for (1..10).rotor(5) -> $chunk { $chunk.values.map { .say } } | 20:42 | |
camelia | rakudo-moar 9a6b71: OUTPUT«5===SORRY!5=== Error while compiling /tmp/NOKeuex4vLTwo terms in a rowat /tmp/NOKeuex4vL:1------> 3).rotor(5) -> $chunk { $chunk.values.map7⏏5 { .say } } expecting any of: infix stopper statement end s…» | ||
autarch | m: for (1..10).rotor(5) -> $chunk { $chunk.values.map: { .say } } | ||
camelia | ( no output ) | ||
autarch | that seems like a bug | ||
m: for (1..10).rotor(5) -> $chunk { .say for $chunk.values } | |||
camelia | rakudo-moar 9a6b71: OUTPUT«12345678910» | ||
hankache | I would have expected that both return the same result | ||
autarch | cause if that works shouldn't the .map also work? | ||
ZoffixW | m: say (355/113).Rat | 20:43 | |
camelia | rakudo-moar 9a6b71: OUTPUT«3.141593» | ||
ZoffixW | m: say (pi).Rat | ||
camelia | rakudo-moar 9a6b71: OUTPUT«3.141593» | ||
Juerd | hankache: | ||
m: say sprintf "%.14f", pi.Rat | |||
camelia | rakudo-moar 9a6b71: OUTPUT«3.14159292035398» | ||
Juerd | hankache: The digits are there, but not in the stringification. | ||
m: say sprintf "%.14f", pi | 20:44 | ||
camelia | rakudo-moar 9a6b71: OUTPUT«3.14159265358979» | ||
ZoffixW | m: say (355/113).WHAT | ||
camelia | rakudo-moar 9a6b71: OUTPUT«(Rat)» | ||
ugexe | sure, but you're being lazy | ||
ZoffixW | m: say (355/113).perl | ||
camelia | rakudo-moar 9a6b71: OUTPUT«<355/113>» | ||
ugexe | m: for (1..10).rotor(5) -> $chunk { eager $chunk.values.map: { .say } } | ||
camelia | rakudo-moar 9a6b71: OUTPUT«12345678910» | ||
Juerd | And yea, it's different... Don't know if it's a bug or a feature. | ||
hankache | m: say pi.Rat ~~ (355/113) | ||
camelia | rakudo-moar 9a6b71: OUTPUT«True» | ||
hankache | m: say pi.Rat == (355/113).Rat | 20:45 | |
camelia | rakudo-moar 9a6b71: OUTPUT«True» | ||
autarch | ugexe: ah, I see | ||
ZoffixW | m: say (355/113).perl, (pi).perl | ||
camelia | rakudo-moar 9a6b71: OUTPUT«<355/113>3.14159265358979e0» | ||
hankache | I see | ||
thanks Juerd | |||
timotimo | m: say (355e0 / 113e0).perl | 20:49 | |
camelia | rakudo-moar 9a6b71: OUTPUT«3.14159292035398e0» | ||
ZoffixW | hax | 20:50 | |
hankache | but in github.com/rakudo/rakudo/blob/nom/...um.pm#L238 | 20:52 | |
my constant pi = 3.14159_26535_89793_238e0; | |||
ChoHag | How can you find a common ancestor of two nodes in a tree structure? | ||
I know how I could do it, but there are bound to be more efficient algorithms. | |||
hankache | m: say pi.Rat.perl | 20:53 | |
camelia | rakudo-moar 9a6b71: OUTPUT«<355/113>» | ||
hankache | m: say 355/113.perl | 20:54 | |
camelia | rakudo-moar 9a6b71: OUTPUT«3.141593» | ||
timotimo | ChoHag: there's a trick of going up one from A, then one from B, then one from A again and from B again etc | ||
so you'll ever only take 2x as long as the difference in length to the common ancestor is | |||
ChoHag | That's basically what I was going to do. | ||
timotimo | for everything else, you're going to have to have a bit of precomputed info to give you hints | ||
ChoHag | Until one of the lines reaches a node already reached on another. | ||
timotimo | aye | 20:55 | |
autarch | jnthn: so are hyper and race just totally broken right now? | 20:58 | |
from my ad hoc testing it seems like they are, but I can't really be sure | 20:59 | ||
jnthn | autarch: Looks like...I'll hopefully get a proper look at them in the next day or two | ||
ZoffixW | m: say now; sleep 2 for ^4 .hyper(batch => 1); say now; | ||
camelia | rakudo-moar 9a6b71: OUTPUT«Instant:1449435627.944545Instant:1449435627.957176» | ||
ZoffixW | :( | ||
jnthn should get some rest | 21:00 | ||
timotimo | good rest, jnthn! | ||
and happy teaching :) | |||
ZoffixW | That's a good plan! | ||
timotimo | m: say "foobar".contains("ob") | ||
camelia | rakudo-moar 9a6b71: OUTPUT«True» | ||
ZoffixW | neat | ||
jnthn | Thanks, 'night o/ | 21:02 | |
ZoffixW | night | 21:03 | |
[Coke] | 11 days or so until the original 2015.12 scheduled release date. | 21:04 | |
ZoffixW | [Coke], is that the "Christmas" release? | 21:05 | |
dalek | ecs: 4c608a8 | skids++ | S17-concurrency.pod: Sync design docs to Supply/Supplier split |
||
[Coke] | Trying to track down this abort trap on os x. ran perl6-valgrind-m, which itself died with: | ||
./perl6-valgrind-m: line 11: 24053 Segmentation fault: 11 | |||
Skarsnik | will be the 18 | ||
[Coke] | was the 17th. | 21:06 | |
Skarsnik | Yes 17, I can't count x) | ||
[Coke] | if time permits, I'll cut the release on the 25th. | ||
timotimo | [Coke]: that's probably the line that tries to exec perl6? | 21:07 | |
21:08
bjz left
|
|||
timotimo | oh | 21:08 | |
fprintf can be interrupted in between characters? | 21:09 | ||
nadim | Good evening | 21:10 | |
ugexe | m: my %x = :a(1), :b(2); my %z = :b(500), :c(600); %x .= append(%z); say %x.perl # cool that this works | ||
camelia | rakudo-moar 9a6b71: OUTPUT«{:a(1), :b($[2, 500]), :c(600)}» | ||
timotimo | hello nadim | 21:11 | |
nadim | is everyone having a good day in P6 land? | ||
timotimo: hi :) | |||
timotimo | ugexe: troll people with :1a, :2b, :500b, :600c syntax! | ||
ZoffixW isn't having a good day | |||
Well, maybe I am. | |||
ZoffixW chugs another beer | 21:12 | ||
nadim | Nothing a good night sleep can't fix I hope | ||
or beer | |||
ZoffixW | Just kinda annoyed that my 4 days off were wrecked by noise neighbours. | ||
&noisy | 21:13 | ||
timotimo | m: $*OUT.print "hello" | ||
camelia | rakudo-moar 9a6b71: OUTPUT«5===SORRY!5=== Error while compiling /tmp/DCUyyqSQ3dTwo terms in a rowat /tmp/DCUyyqSQ3d:1------> 3$*OUT.print7⏏5 "hello" expecting any of: infix infix stopper statement end statement modifie…» | ||
ZoffixW | m: $*OUT.print: "hello" | ||
camelia | rakudo-moar 9a6b71: OUTPUT«hello» | ||
timotimo | this TTIAR could try to figure out it has a method call before it and suggest $*OUT.print: "foo" instead | ||
nadim | ZoffixW: party with them! | 21:14 | |
ZoffixW | nadim, they're a family of idiots with 3 fat children (and 4th on the way). I'm a semi-intelligent, semi-alcoholic loner... It just ain't gonna work :) | ||
timotimo watches a bunch of dots appear on his terminal | 21:15 | ||
Skarsnik | ZoffixW, I read 3 fat chicken x) | 21:16 | |
ZoffixW | lol | ||
cognominal | eat them :) | ||
ugexe | have you tried ordering 50 pizzas to their door? | ||
nadim | ZoffixW: move to Sweden, the more north the better, nobosy will even talk to you ;) | 21:17 | |
ZoffixW | nadim, that sounds so peaceful :) | ||
TEttinger | anonymous delivery of bulk high fructose corn syrup in convenient hamster-feeding-style tubes? | ||
more noise, then suddenly less | 21:18 | ||
nadim | ZoffixW: depends for how long ;) | ||
Well, I do have a little question, has someone decided about namespaces for modules or it is the same wild west as on CPAN? | 21:19 | ||
Skarsnik | same wild west | ||
ZoffixW | nadim, Wild West | ||
psch | well, only 16 of the 118 failing test files on r-j fail when ran with < make $file >... i suppose that's somewhat good | ||
Skarsnik | but yeah, should probably put some pointer like in the module writing guide? x) | ||
ZoffixW | actually wilder. CPAN used to have some sort of "module registration" in the past. We're starting from wildness from the start | ||
nadim brings out the old guns that make more smoke than harm from his chest | |||
ZoffixW | I really don't see much point in proper namespaces TBH | 21:20 | |
Skarsnik | Net::IRC or IRC? | ||
ZoffixW | Skarsnik, just IRC... why is there Net:: ? | ||
nadim | the point id for people looking for modules, not for maniacs that need all in the right place | ||
ZoffixW | That's a good example actually... I had module names with 78 characters in them in P5 | ||
Skarsnik | because that was the name of the IRC module on p5 | 21:21 | |
ZoffixW | nadim, but if I want IRC, I'll search for "IRC", not for "net" | ||
RabidGravy | there is tags in the META6 spec someday something can use it | ||
ZoffixW | And I won't be browsing the entire Net:: namespace in hopes I find something | ||
nadim | then you will find Net::IRC | ||
ZoffixW | RabidGravy, or that too | ||
nadim | stmuk: are you awake? | 21:22 | |
hankache | why does the "Modules" link at the bottom of Perl6.org point to perl6.org/whatever? | ||
Skarsnik | I have a module in writing, I don't know how to name it x) I could use Discord since it's about the Discord App x) | 21:23 | |
nadim | I am almost done with my first module, I need to give it a name soon, or I'll continue hacking in the miserable structure I have now | ||
Skarsnik: most often those went into App::Whatnot::YourStuff | 21:24 | ||
RabidGravy | need 32 modules still before christmas ;-) so get with the naming | ||
Skarsnik | lol | ||
21:24
bjz joined,
kaare_ left
|
|||
masak | nine: by the way, 007 isn't currently broken or anything. it was an easy revert to get 007 back to passing. | 21:25 | |
nine: I'm currently trying to partially apply the commit in various ways to see if I can narrow down what causes things to fail. | |||
Skarsnik | I can't make it my mind for name/class name like the main class is Discord::App but the rest is Discord::Guild Discord::User... so how to name this x) | ||
dalek | href="https://perl6.org:">perl6.org: ff30cac | (Zoffix Znet)++ | includes/footer: Link "Modules" in footer to eco site instead of /whatever (hankache++) |
21:27 | |
ZoffixW | Skarsnik, Discord::App => Discord.pm6 ? | ||
nadim | Data::Dump was nice as a to category but stmuk sat his module square on it, now we all have to make under modules that stop him to add anything :) | 21:28 | |
there's a Data::Dump::Perl6, I am adding Data::Dump::Tree | 21:29 | ||
ZoffixW | .oO( Dump::And::Dumper ) |
||
nadim | ZoffixW: yes, Bleah | ||
Skarsnik | There is a Data::Dump too? x) | 21:30 | |
[Coke] | ask .timtoady if it's late enough to update our HEAD revision to v6.c | ||
lizmat | nadim: in Perl 6 namespace collissions are not an issue | ||
[Coke] | .ask timtoady if it's late enough to update our HEAD revision to v6.c | ||
yoleaux | [Coke]: I'll pass your message to timtoady. | ||
nadim | nice to hear | ||
ZoffixW | Despite the silliness, it's actually my most-used module and the only one I have bound to a keyboard shortcut :) metacpan.org/pod/Acme::Dump::And::Dumper | ||
Skarsnik | I should write my dumb module idea I had for perl5: Acme::WTF, that trow random WTF? OMG!! in front of die message | ||
ZoffixW | Skarsnik, do it :) | 21:31 | |
21:31
znpy left
|
|||
ZoffixW | lizmat, I'm curious how ambiguities would be resolved. If I have "use Foo::Bar" in my code and there are Foo::Bar by two authors, which one wins? | 21:31 | |
nadim | yeah! as if it wasn't enough with the half zillion new error message we, poor newbies, have to learn | ||
lizmat | if you have both installed, the use statement will fail at compile time | ||
ZoffixW | Ah, lizmat++ thanks | 21:32 | |
nadim | that's not what I would call "not an issue"! | ||
ZoffixW | It what I'd call "break software X by installing a new module for software Y" :) | ||
lizmat | nadim: it will be a Perl6 best practice to be as specific as possible in your -use- statements | 21:33 | |
ZoffixW | Time will tell I spose | ||
lizmat | nadim: because it will free you from upgrade worries | ||
nadim | I am sure it will be fine :) where's the documentation? ;) | ||
hankache | documentation who? | 21:34 | |
;) | |||
21:35
bjz left
|
|||
ZoffixW | Well, after 2 days of blood and sweat, I finally have an IRC bot that parses messages and respond to server's PING and thus says alive \o/ | 21:35 | |
Skarsnik | lol | ||
hankache | ZoffixW++ | ||
Skarsnik | nice :) | ||
timotimo | PING is the hardest part | ||
21:35
Begi left
|
|||
ZoffixW | heh | 21:35 | |
Well, it was, kinda. PING responder is a Plugin. So making PING work, means any other plugin can work now too :) | 21:36 | ||
ZoffixW will be showing off Perl 6 at the Freenode's new year party, so that's what I'm making | 21:37 | ||
a New Years bot | |||
RabidGravy | :) | 21:38 | |
timotimo | the analysis tool that combines "log of lines hit" with a source file to generate an annotated html file of the original source ... is quite slow | 21:39 | |
Skarsnik | wtf hurd, why you stop booting :( | ||
timotimo | to be fair, only about 1/8 of the lines would actually be interesting, so it has to do a lot of work skipping stuff | 21:40 | |
adn just as i say that, it's done! | 21:41 | ||
ZoffixW | :P | ||
hankache | good night #perl6 | ||
lizmat | hankache: good night | 21:42 | |
RabidGravy | toodlepip | ||
dalek | ast: 2324965 | usev6++ | integration/advent2014-day05.t: Bring tests in line with new Supply API cmp. Rakudo commit a8231f14b2 and 6guts.wordpress.com/2015/12/05/get...christmas/ |
||
autarch | so I'm thinking that maybe I should write an article about Perl 6 pod instead of supplies, is anyone else planning to write about that? | ||
RabidGravy | not me | 21:43 | |
21:43
Sgeo_ joined
|
|||
autarch | I actually understand POD well enough to write about it, I think ;) | 21:43 | |
ZoffixW | autarch, that sounds like a good idea. P6 pod is still a mystery, at least to me :) | ||
Skarsnik | For me too x) | ||
autarch | I guess the only question is how much of it is still in flux at the moment | ||
21:43
hankache left,
znpy joined
|
|||
autarch | there was some talk of tweaking how the compiler deals with it a few weeks back | 21:43 | |
ZoffixW still waits for anyone to do anything about GitHub P6 pod: github.com/perl6/doc/issues/167 | |||
autarch | but I _think_ it was more along the lines of "let's change a few things", not "let's change everything" | 21:44 | |
psch | autarch: "the difference between what's proposed in S26 and what's tested in roast/S26-*" is what i'd guess is still in flux | ||
well, plus potential tickets on RT... | 21:45 | ||
autarch | psch: I think there's a fair bit of stuff in S26 that does work but isn't tested | ||
and also some things that are very obviously bugs which I've reported | |||
21:46
Sgeo left
|
|||
dalek | kudo/nom: 1b0ede7 | lizmat++ | src/core/Supply.pm: Fix indenting |
21:47 | |
kudo/nom: a1dc336 | lizmat++ | src/core/Supply.pm: Make sure done is passed on from original Supplier |
|||
psch | autarch: hm, right, coverage is probably less than it could (or should) be :/ | ||
timotimo | ugh, the html isn't cool at all | ||
ZoffixW: can i interest you in helping me do html stuff? :) | 21:48 | ||
Skarsnik | m: Core.say "ehllo"; | ||
camelia | rakudo-moar 9a6b71: OUTPUT«5===SORRY!5=== Error while compiling /tmp/gT4r3BTaS4Two terms in a rowat /tmp/gT4r3BTaS4:1------> 3Core.say7⏏5 "ehllo"; expecting any of: infix infix stopper statement end statement modifier…» | ||
21:49
leont joined
|
|||
RabidGravy | m: Core.say: "ehllo"; | 21:49 | |
camelia | rakudo-moar 9a6b71: OUTPUT«5===SORRY!5=== Error while compiling /tmp/0qc394lwzBUndeclared name: Core used at line 1. Did you mean 'Code'?» | ||
timotimo | i have a div with style="whitespace: pre-wrap" ... that's supposed to keep whitespace from the source around :\ | ||
Skarsnik | m: IO.say "ehllo"; | 21:50 | |
camelia | rakudo-moar 9a6b71: OUTPUT«5===SORRY!5=== Error while compiling /tmp/51RQICT0DOTwo terms in a rowat /tmp/51RQICT0DO:1------> 3IO.say7⏏5 "ehllo"; expecting any of: infix infix stopper statement end statement modifier…» | ||
Skarsnik | m: IO.say("ehllo"); | ||
camelia | rakudo-moar 9a6b71: OUTPUT«Cannot call say(IO: Str); none of these signatures match: (Mu $: *%_) in any at gen/moar/m-Metamodel.nqp:1693 in block <unit> at /tmp/0zg9cj3TiQ:1» | ||
Skarsnik | m: Mu.say("ehllo"); | 21:51 | |
camelia | rakudo-moar a1dc33: OUTPUT«Cannot call say(Mu: Str); none of these signatures match: (Mu $: *%_) in block <unit> at /tmp/dodZEwjDef:1» | ||
psch | grml | ||
so i was wondering just now why camelia isn't current on j: | |||
and it's because i forgot bumping the NQP_REVISION once again /o\ | |||
well, assuming she would be up to date if it can build | 21:52 | ||
which it can, and she's on a commit that's not even particularly old | |||
soo, yeah, i'll bump that i guess | |||
Skarsnik | m: Execption.die("Hello"); | ||
camelia | rakudo-moar a1dc33: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Jw1yaupu7uUndeclared name: Execption used at line 1. Did you mean 'Exception'?» | ||
Skarsnik | m: Exception.die("Hello"); | ||
camelia | rakudo-moar a1dc33: OUTPUT«Too many positionals passed; expected 1 argument but got 2 in block <unit> at /tmp/fBvBLp2yaV:1» | ||
ZoffixW | timotimo, I have an X-amount of beers in my so.. | 21:53 | |
ZoffixW squints | |||
dalek | kudo/nom: fdc6bd9 | peschwa++ | tools/build/NQP_REVISION: Bump NQP_REVISION for nqp-j lockfh fix. |
||
ZoffixW | timotimo, right, supposed to. | ||
Skarsnik | *trie to figure how call the die/say routine from 'core'* | ||
timotimo | huh. the script wasn't terribly slow. i was just running it on the file that was the result before i sorted and uniq'd it! | 21:54 | |
psch | m: sub say { put "nope" }; &CORE::say("yope") | ||
camelia | rakudo-moar a1dc33: OUTPUT«yope» | ||
psch | m: sub say($) { put "nope" }; &CORE::say("yope"); say | ||
camelia | rakudo-moar a1dc33: OUTPUT«5===SORRY!5===Argument to "say" seems to be malformedat /tmp/xXCH1TC6HS:1------> 3 { put "nope" }; &CORE::say("yope"); say7⏏5<EOL>Other potential difficulties: Unsupported use of bare "say"; in Perl 6 please use .say if you mean…» | ||
psch | m: sub say($) { put "nope" }; &CORE::say("yope"); say "foo" | ||
camelia | rakudo-moar a1dc33: OUTPUT«yopenope» | ||
psch | Skarsnik: ^^^ | ||
timotimo | which has 12925636 lines | ||
Skarsnik | Oh thx | ||
ZoffixW | huh? Somehow META.info highlighter in Atom knows which fields are valid and which ain't | ||
Skarsnik | lol nice | 21:55 | |
ZoffixW suspects MadcapJack is being awesome on that one | |||
timotimo, what was the html help? | |||
21:56
pecastro left
|
|||
timotimo | i've got a <div> with whitespace: pre-wrap and a bunch of <span> in there to give me a bit of styling. but initial whitespace disappears :( | 21:56 | |
Skarsnik | timotimo, you should push people to work on the qt profiler stuff x) (I would if I did not have already a lot of stuff to do :() | 21:57 | |
21:58
Ben_Goldberg joined
|
|||
ZoffixW | timotimo, use "pre" instead of "pre-wrap" ? | 21:58 | |
timotimo | can try, but that didn't work before when i tried | 21:59 | |
i can upload that html thing | |||
flussence | pre-wrap should work there... | ||
ZoffixW | Doesn't work in my browser | ||
22:00
BenGoldberg left
|
|||
ZoffixW | Oh wait.. it works :S | 22:00 | |
wtf | |||
timotimo, <style>*{white-space: pre-wrap}</style> works, to be more exact | |||
timotimo, default value for it is "normal", not "inherit" so I'm guessing your spans aren't getting pre-wrapped | 22:01 | ||
timotimo | well, i set span to have that, too | ||
ZoffixW | 8shrug* | ||
timotimo | you'll has a .html file soon | 22:02 | |
it's only 3.6 MB, so it'll be up very soon ... not! | |||
ZoffixW | :S | ||
timotimo | t.h8.lv/core_setting_report.html | ||
ZoffixW | twitter.com/xbs/status/626781529054834688 | ||
timotimo | huh | 22:03 | |
22:03
pecastro joined
|
|||
timotimo | "unknown property name: whitespace" | 22:03 | |
ZoffixW | timotimo, it's white-space | ||
timotimo | oh?! | ||
well...! | |||
ZoffixW | :D | ||
That file froze my browser :( | 22:04 | ||
22:04
snarkyboojum joined
|
|||
timotimo | only 35k lines, dood | 22:04 | |
try refreshing | 22:05 | ||
it's a bit smaller now | |||
ZoffixW | nah | ||
timotimo | perhaps i want to put in javascript to generate the line nubers, so it doesn't have to be in the source file? | ||
lizmat | .tell arnsholt I've given up on fixing the merge/revert mess that killed %?RESOURCES | ||
yoleaux | lizmat: I'll pass your message to arnsholt. | ||
lizmat | .tell nine I've given up on fixing the merge/revert mess that killed %?RESOURCES | ||
yoleaux | lizmat: I'll pass your message to nine. | ||
ZoffixW | timotimo, I think doing so would make things worse | ||
timotimo | oh. perhaps. | 22:06 | |
22:06
autarch left
|
|||
ZoffixW | One word: pagination | 22:06 | |
timotimo | lizmat: t.h8.lv/core_setting_report.html - check it out! this is a coverage report of what the spec test suite hits in the core setting! it's probably also wrong in places and it has no idea about lines that spread over multiple lines! | ||
flussence | timotimo: if they're one line per span, I'm pretty sure you could make the numbers appear using pure css... | ||
timotimo | flussence: patches welcome :) | ||
flussence | already on it :) | 22:07 | |
22:07
autarch joined
|
|||
lizmat | timotimo: so red is not tested ? | 22:07 | |
timotimo | gist.github.com/timo/47c79bb05d89ea5b19c5 | ||
ZoffixW | timotimo, span:before { counter-increment: num; content: counter(num) ": "; } | ||
timotimo | lizmat: that's how i'd interpret it. but it seems weird in some places already :) | ||
ZoffixW | (untested) | ||
flussence | Zoffix++ got there first :) | 22:08 | |
lizmat | timotimo: well, if any line in a sub is covered, surely the line with sub is as well ?? | ||
timotimo | like: how the fucking hell does trait_mod:<is> with $parent only have the X::Inheritance::Unsupported line covered? | 22:09 | |
lizmat: i use the line number annotations we have in the .moar file which only gets generated wherever there's code and only for the start of a BB .. it can still be improved quite a bit | |||
flussence | lazy evaluation? | ||
timotimo | but i have no good way to figure out which lines are "dead" | ||
dalek | ecs: c76134b | PerlJam++ | S12-objects.pod: minor word dup |
||
timotimo | but the } is "covered" | 22:10 | |
so maybe we just have an off-by-one. | |||
lizmat | timotimo: looks promising! | ||
timotimo | i can perhaps cause line numbers to be generated for the code that gets made for signature handling; that'd probably get most sub lines green | 22:11 | |
lizmat | fwiw, comment lines don't have to be in this, right ? | ||
timotimo | yah, i *think* all lines are offset by a single line | ||
flussence: so it actually works? what zoffix pasted? | 22:12 | ||
22:12
cygx joined
|
|||
cygx | o/ | 22:12 | |
yoleaux | 02:38Z <Zoffix> cygx: would be nice to mention in github.com/cygx/p6-nqp-eval why one would want to EVAL :lang<nqp>; as opposed to regular EVAL.... at least for outsiders like me to make sense of the module :) | ||
22:13
Ben_Goldberg left
|
|||
flussence | timotimo: if it doesn't, you could be lazier and s/span/li/ :) | 22:13 | |
cygx | someone should fix the Day 7 advent post before it goes live | ||
22:13
Ben_Goldberg joined
|
|||
cygx | the code examples display &quot; instead of ' | 22:13 | |
ShimmerFairy: ^^ | |||
timotimo | pff. li. | ||
22:14
Ben_Goldberg left
|
|||
Skarsnik | Damn, there is no croak? | 22:14 | |
22:14
Ben_Goldberg joined
|
|||
flussence | Skarsnik: &die gives a backtrace in p6, no need for croak any more | 22:15 | |
22:15
Ben_Goldberg left
|
|||
Skarsnik | well croak was nice to blame the calling code | 22:15 | |
22:15
Ben_Goldberg joined
|
|||
timotimo | flussence, ZoffixW, now i get a whole bunch of 1: and no newlines ... | 22:15 | |
flussence | Skarsnik: «sub () is hidden-from-backtrace» does that now too | ||
timotimo: ow. | 22:16 | ||
ZoffixW | timotimo, ah, you need a counter-reset on the div for it to work. here: jsfiddle.net/tjazsn0e/ | ||
22:16
Ben_Goldberg left
|
|||
Skarsnik | it's.... glorious | 22:17 | |
root@testperl6:~/piko/acme-wtf# perl6 -I lib -e 'use Acme::WTF; die "fuck it"' | |||
WTF?! fuck it | |||
in block <unit> at -e:1 | |||
22:17
Ben_Goldberg joined
|
|||
ZoffixW | heh | 22:17 | |
flussence | ignore me and listen to zoffix, I've gotten kinda rusty at web stuff | ||
(I really need to fix that) | |||
ZoffixW | Using <ol> and a bunch of <li>s makes more sense to me than a <div> with a bunch of <span>s FWIW :) | ||
timotimo | ZoffixW: i can change it, of course | 22:18 | |
22:18
lolisa joined
|
|||
timotimo | and ... yeah ... very bad performance on that page | 22:18 | |
ZoffixW | That should also cut down on the amount of markup :) | ||
m: ('div' ~ 'span').chars - ('ol' ~ 'li').chars | 22:19 | ||
camelia | rakudo-moar fdc6bd: OUTPUT«WARNINGS:Useless use of "-" in expression ".chars - ('ol' ~ 'li').chars" in sink context (line 1)» | ||
ZoffixW | m: say ('div' ~ 'span').chars - ('ol' ~ 'li').chars | ||
camelia | rakudo-moar fdc6bd: OUTPUT«3» | ||
timotimo | wow. | ||
flussence | in the meantime, I've been trying to run `panda smoke`: a handful of modules deadlock on precomp after hitting some error or other during normal compilation, and when it gets to v5 panda itself just gets stuck in a busy loop. | ||
ZoffixW | Yeah, smoke smoked just 19 modules for me last time I tried and just sat there the entire night on some JSON module | 22:20 | |
timotimo | ZoffixW: can you f5 on that page and show me why the whitespace gets lost again? | ||
ZoffixW: JSON::Fast used to busy-loop some time ago because moarvm stopped throwing when eqat goes over the string length | 22:21 | ||
22:21
molaf left
|
|||
flussence | timotimo: s/whitespace/white-space/ | 22:22 | |
timotimo | damn | ||
that got reverted? | |||
cygx | flussence: note that v5 is busted right now | ||
timotimo | thank you :) | ||
cygx | flussence: I've started to do something about that in the unrot branch | ||
it predates the merger of automatic precompilation, though | 22:23 | ||
22:23
Ben_Goldberg left
|
|||
ZoffixW | flussence++ # I looked at it and didn't even notice the "whitespace" issue :) | 22:23 | |
timotimo, you also have an opening <li> but a closing </span> :) | |||
timotimo | oops | ||
22:23
Ben_Goldberg joined,
AlexDaniel joined
|
|||
ZoffixW | timotimo, FWIW, you can omit </li> (it's optional), to save on some markup | 22:24 | |
timotimo | newest version is up with the off-by-one work-arounded | ||
ugh, that looks super shitty now | |||
ZoffixW | timotimo, and maybe change convered/uncovered to c/u for same reasons | ||
timotimo | ah, yeah | ||
22:25
Ben_Goldberg left
|
|||
timotimo | can you tell me how to make the list items fit snug again? | 22:26 | |
RabidGravy | cygx, I think that nine's change to make Inline::Perl5 (and thus %?RESOURCE) work overlapped with amsholt's change which lizmat reverted thus gone boom | ||
flussence | I think removing the white-space: pre on <ol> should fix that | ||
timotimo | oh? | 22:27 | |
ZoffixW | timotimo, are you able to generate a much smaller file? :) My browser locks up when I try to enable my web dev tools | ||
timotimo | ah, sorry | ||
ZoffixW | Or what flussence said :) | ||
flussence | as long as it's on <li>, it'll keep the indent | ||
timotimo | yeah, i can do that. gimme a sec. | ||
looks better now, yeah | |||
flussence | .oO( the great thing about chromium's engine is the browser UI remains perfectly responsive even when nothing inside it is :D ) |
||
timotimo | :) | 22:28 | |
cygx | RabidGravy: not Inline::Perl5, v5 | ||
not the same thing at all | |||
RabidGravy | ah okay, sorry only half reading | 22:29 | |
timotimo | only 1.7 MB | ||
OK, now how do i make the highlighting prettier? | 22:30 | ||
Skarsnik | use HightLight::Pretty? | ||
timotimo | i'm thinking it'd be nice to have a gradient to make it less intense to the left | ||
also, how about some particle effects? | |||
the mouse cursor should spew sparkly stars every time it moves between a red and a green line | |||
Skarsnik | xD | ||
autarch | seen moritz_ | ||
timotimo | ideally, these "lines" would wobble when the mouse penetrates such a barrier | ||
autarch | c'mon, bot, y u no love me? | 22:31 | |
flussence | .seen moritz_ | ||
yoleaux | I saw moritz_ 20:24Z in #perl6: <moritz_> m: BEGIN { say $*W.^name } | ||
autarch | ah | ||
timotimo | also, when every line currently on the screen is green, all letters ought to dance a happy dance | ||
cygx | hm... - apparently, wordpress does not recognize HTML entities in [code] blocks... | ||
autarch | oh, I guess he's probably asleep | ||
.tell moritz_ I need access to the advent calendar blog to post my article at some point | |||
yoleaux | autarch: I'll pass your message to moritz_. | ||
ZoffixW | autarch, what's your username, I can give you it | 22:32 | |
timotimo | oh, if you have code, someone in here had a tool (or rather: a how-to) to get prettified code into the shitty wordpress editor | ||
autarch | ZoffixW: autarch, preferably | ||
timotimo: yes, there will be code | |||
timotimo | who was it again? | 22:33 | |
ZoffixW | autarch, "WordPress.com username does not exist or invalid email address."... You can either /msg me your email address and after I add you WP will ask you to register an account, or you can do that first and give me the username you chose :) | ||
flussence | timotimo: there's an unencoded «postfix:<i>» on line 30047 that messes up the output | ||
timotimo | ah, that's what it is. | 22:34 | |
autarch | ZoffixW: oh, this is wordpress.com - I'm houseabsolute there - some rotten rotter took my preferred nick before I could | ||
timotimo | i have a .subst("<", "<") in there | ||
ZoffixW | timotimo, you sure there was someone? The only thing I know of is this method: irclog.perlgeek.de/perl6/2015-12-02#i_11647545 | ||
timotimo | oh, it needs to be :g | ||
flussence | needs a :g | ||
timotimo | that's the one | ||
ZoffixW | autarch, Invitation(s) sent. | ||
autarch | I thought you were just asking me what account name I wanted, not what I already had ;) | ||
ZoffixW++ | |||
ZoffixW | .tell moritz_ never mind, I sent autarch an invite | ||
yoleaux | ZoffixW: I'll pass your message to moritz_. | ||
timotimo | the next changes for this thingie will be in moarvm | 22:35 | |
22:35
karim32 joined
|
|||
timotimo | getting more green lines | 22:36 | |
22:37
ming_ joined
|
|||
karim32 | when iterating over a key-value structure, how do I get access to the 1st and 2nd element in "map"? I know about "_$" which is the 1st element. | 22:38 | |
$_ | |||
22:39
znpy left,
krakan left,
krakan joined
|
|||
autarch | of course I'm greylisting wordpress.com :( | 22:40 | |
but it'll get here eventually | |||
timotimo | karim32: are you iterating over a hash? if so, are you using .pairs or .kv or something like that? | 22:41 | |
m: my %h = :1a, :2b, :3c; %h.map({ say "$^a, $^b" }) | 22:42 | ||
camelia | rakudo-moar fdc6bd: OUTPUT«a 1, c 3Too few positionals passed; expected 2 arguments but got 1 in block <unit> at /tmp/qzn9FcaITA:1» | ||
timotimo | ah, that gives you the Pair objects | ||
m: my %h = :1a, :2b, :3c; %h.map({ say "$_.key yay $_.value" }) | |||
camelia | rakudo-moar fdc6bd: OUTPUT«a 1.key yay a 1.valuec 3.key yay c 3.valueb 2.key yay b 2.value» | ||
timotimo | m: my %h = :1a, :2b, :3c; %h.map({ say "$_.key() yay $_.value()" }) | ||
camelia | rakudo-moar fdc6bd: OUTPUT«a yay 1c yay 3b yay 2» | ||
karim32 | tnx | ||
timotimo | yw | ||
cygx | ok, I went ahead and fixed the Day 7 posting | 22:43 | |
let's hope I didn't mess anything up | |||
a history of my changes can be found at gist.github.com/cygx/0ac6aa9922627cc2c2ea | |||
skids | m: my @a = <a b c>; @a.kv.map({ "$^a $^b".say }); @a.kv.map(-> $a, $b { "$a $b".say }); # 2 different ways to make your map closure 2-arity | 22:44 | |
camelia | rakudo-moar fdc6bd: OUTPUT«0 a1 b2 c0 a1 b2 c» | ||
timotimo | t.h8.lv/nqpcore_coverage_report.html <- ZoffixW, much smaller file | ||
cygx | .tell ShimmerFairy I had to do some emergency surgery on your Day7 posting as something went wrong with HTML-encoding the code samples; cf gist.github.com/cygx/0ac6aa9922627cc2c2ea for what I did in case I messed up somewhere | 22:45 | |
yoleaux | cygx: I'll pass your message to ShimmerFairy. | ||
ZoffixW | cool | ||
AlexDaniel | hmmm a post about unicode | 22:46 | |
why does it use '' instead of ‘’? :) | |||
or <<>> instead of «» | 22:47 | ||
dalek | osystem: 9fedcd8 | (Sylvain Colinet)++ | META.list: A step toward 500 modules for X-MAS, github.com/Skarsnik/acme-wtf |
22:48 | |
Skarsnik | oh | ||
it was the real ecosystem, not my fork xD | |||
masak | .tell nine this may help a bit, too: gist.github.com/masak/32f236bca8f2857d82fc -- I spent some time building various combinations of parts of the commit that fails. | ||
yoleaux | masak: I'll pass your message to nine. | ||
masak | yoleaux: that's awfully kind of you. thanks. | 22:49 | |
cygx | AlexDaniel: it does use « » in places | ||
RabidGravy | Skarsnik++ :) | ||
cygx | specifically, in the comparison of unicode and Texas variants | ||
AlexDaniel | cygx: ah right! Indeed! | ||
ZoffixW | heh | 22:50 | |
Skarsnik++ | |||
Skarsnik | and forget to put Test::META in the depend >< | ||
jdv79 | ZoffixW: gh pod6 is likely not happening any time soon, right? | 22:52 | |
ugexe | generally you would put authoring tests in /xt and not add modules used by those tests to your dependencies | ||
dalek | kudo/nom: 51bc6c3 | lizmat++ | src/core/asyncops.pm: We lost Supply.await, it's .wait now |
22:53 | |
kudo/nom: 7ef08c8 | lizmat++ | src/core/Supply.pm: We need a preserving Supplier |
|||
Skarsnik | more people should use Test::META x) | ||
ZoffixW | jdv79, if only based on my not working on it and not being interested on working on it ¯\_(ツ)_/¯ But GitHub did tell me that if anyone wants to make their code detect P6 pod properly they're open to it :) | ||
ugexe | the end user shouldnt have to test the meta file | ||
you as the author should | |||
22:54
znpy joined
|
|||
ZoffixW | jdv79, I think Step 1 would be making GitHub simply not choke on P6 pod and render it as raw file with line numbers | 22:54 | |
jdv79 | sounds easy enough. get a newbie to do it:) | 22:56 | |
detecting should be simple. rendering it. meh. | |||
geraud | Is there anyone with tuits on CompUnit::Repository::Installation whose grey cells I could borrow for a while? | 22:58 | |
nadim | I get "seq has already been iterated ..." how do I reset the iterator on it? | ||
lizmat | geraud: I'm afraid nine is offline, and my grey cells are about to get very mushy | 22:59 | |
Skarsnik | jdv79, probably need a pod6tohtml that is not in perl6 x) | ||
jdv79 | nadim: its one shot. not possible | ||
you have to prevent that before it happens | |||
try .cache ? | |||
nadim | what would .cache do, I can check but it's faster if you tell me | 23:00 | |
jdv79 | Skarsnik: pod6 require the compiler | ||
Skarsnik | well that pretty infortunate x) | ||
jdv79 | hence my comment | ||
or the majority of the sentiment | |||
it'll be "a while" | 23:01 | ||
karim32 | is using %h<key> syntax for referring to a key in hash more recommendable than %h{"key"} ? | ||
Skarsnik | it's better for the eyes :) | ||
nadim | is there a way to grep out elements of a list in-place? | 23:02 | |
jdv79 | karim32: this is perl, you know | ||
timotimo | nadim: @foo .= grep is the closest you'll get, i'm afraid | ||
nadim | eg: not do $e = $e.grep: none(Int) | ||
Skarsnik | but I think if you write %h<key with whitespace> you get a list of value ? | ||
timotimo | otherwise you'd have to go a-splicn' | ||
Skarsnik: yes | |||
geraud | lizmat: thanks. Sorry to be pushy, but just before they liquify completely, if you had to guess what CompUnit::Repository::Installation.files($file) does, what would be your best case? I'm still trying to parse the body of the method, but I'm miserably failing. Any pointer would help me trying to investigate why I can't build p6doc's index. | ||
nadim | timotimo: grep is what got me in the "seq has already been iterated ..." to start with | 23:03 | |
23:03
karim32 left,
ChoHag left
|
|||
timotimo | oh? | 23:04 | |
will you paste a bit of code for us? | |||
lizmat | geraud: it attempts to find the given file name in the <files> section of any installed distribution | ||
is what my guess is | |||
geraud | lizmat: s/best case/best bet/. liquifying too. | ||
23:05
snarkyboojum left
|
|||
psch | m: my $a = [1,2,3,4]; $a = [$a.grep(* %% 2)]; say $a | 23:05 | |
camelia | rakudo-moar fdc6bd: OUTPUT«[2 4]» | ||
psch | nadim: grep isn't the problem, the $ sigil is | ||
nadim: it basically says "i know if i have to treat the stuff i put in or get as a List manually" | 23:06 | ||
s/get/get out/ | |||
nadim | ok | ||
psch | m: my @a = 1,2,3,4; @a .= grep( * %% 2 ); say @a # no trickery here | ||
camelia | rakudo-moar fdc6bd: OUTPUT«[2 4]» | ||
nadim | and if I have $a, how do I tranform it? @()? | 23:07 | |
psch | nadim: did you see my first eval in the last few minutes? | ||
nadim | I see [ around the lot] | 23:08 | |
jferrero | 2 | ||
psch | nadim: right, because i assumed you have an Array at the start. if you don't (and don't want after) you can @() to get a List | ||
m: my $a = [1,2,3,4]; $a = @($a.grep(* %% 2)); say $a.WHAT | 23:09 | ||
camelia | rakudo-moar fdc6bd: OUTPUT«(List)» | ||
psch | in this example maybe weird, 'cause we start with an Array and grep ourselves a List from that Array... vOv | ||
i'm assuming consistency there might matter | |||
23:10
lolisa left
|
|||
nadim | psch: thanks, even after a few days I still fin this a bit ... upsetting, I have no problems with a zillion references in reference but Lists, Sea, Hashes, Indexed Hashes, and whatnot make the whole thing unsigtly till it the patterns get burned in my brain | 23:11 | |
psch | nadim: well, the easiest way around it is to be consistent with using the right sigil... | 23:13 | |
jdv79 | [Coke]: first i'm hearing about ribasushi's thing as well. idk how i feel about it though. there's a lot to read... | ||
23:14
lolisa joined,
spider-mario left
|
|||
geraud | lizmat : thank you very much. Now, am I correct to assume that if :$name isn't provided, the method will blow up? | 23:15 | |
m: use nqp; my $name; say nqp::sha1($name); | |||
camelia | rakudo-moar 7ef08c: OUTPUT«Cannot unbox a type object in block <unit> at /tmp/GDjiv8F3TA:1» | ||
geraud | like that? | ||
nadim | psch: absolutely, I'll refactor the whole thing tomorrow and see if I can wrap my head around that | ||
lizmat | geraud: looks like | ||
geraud | okay, now I'm going somewhere. | 23:16 | |
nadim | psch: absolutely, I'll refactor the whole thing tomorrow and see if I can wrap my head around that | ||
dalek | osystem: deb7bea | (Zoffix Znet)++ | META.list: Add IRC::Client to eco See github.com/zoffixznet/perl6-IRC-Client |
23:18 | |
psch | nadim: good luck :) | ||
jdv79 | plugins? do people still use that term? feels dated. | 23:19 | |
AlexDaniel | jdv79: what's the new term? | 23:20 | |
jdv79 | extension, addon, idk... | ||
it just feels like i would avoid it. /me is just rambling... | |||
module ^H | |||
Skarsnik | Zoffix, you forget to put a countdown for x-mas 500 modules! | ||
ZoffixW | Plugins is dated? | 23:21 | |
ZoffixW laughs | |||
jdv79 | are we going to get a rush of bs dists just o hit 500? | ||
ZoffixW | I don't care even if we do. | ||
But I do plan of releasing another one shortly | |||
RabidGravy | but it would be cool | ||
ZoffixW | 2 more actually | 23:22 | |
Google::Time and IRC::Client::Plugin::HNY | |||
Skarsnik | I have 2 other planned x) | ||
ZoffixW | And maybe IRC::Client::Plugin::BotLink | ||
(though I don't yet know how to make that one work in more than 1 channel) | |||
23:22
lucasb joined
|
|||
RabidGravy | 27 modules needed now :) | 23:23 | |
AlexDaniel | ZoffixW: hmm what's the difference between IRC::Client and Net::IRC::Bot? | ||
(and why are these in different namespaces?) | 23:24 | ||
Skarsnik | it has plugins? x) | ||
AlexDaniel | Net::IRC::Bot has plugins too | ||
jdv79 | I'm tempted to add some dup named dists just to what breaks | 23:25 | |
ZoffixW | AlexDaniel, I looked at it and your comment kinda put me off using it for my New Years bot: github.com/TiMBuS/Net--IRC/issues/...-154736548 | ||
AlexDaniel | well!… :) | ||
RabidGravy | they work differently, the authors have different ideas about the interface, stuff | ||
ZoffixW | AlexDaniel, and as I've recently mentioned above, I see no reason for IRC stuff to be in Net:: namespace. | ||
Just more characters to type | |||
RabidGravy | it's too early to get thinged up about "namespaces" unless someone does something stupid at the top level | 23:26 | |
ZoffixW | AlexDaniel, and I think a more real reason for IRC::Client is... I don't know Perl 6. I want to learn Perl 6. And IRC stuff seems like a good pathway to acquire experience, so hence my doing-it-from-scratch approach. | ||
RabidGravy | which is good | 23:27 | |
ZoffixW | That's how I learned P5. And I think I can apply what I hated about POE::Component::IRC to my design of the core IRC stuff | ||
ZoffixW & # commuting | 23:28 | ||
23:28
ZoffixW left
|
|||
AlexDaniel | ZoffixW: hmm 「interval()」 thing kinda makes sense, I think. But is there any way to send stuff from another thread? | 23:28 | |
jdv79 | well, i am seriously considering renaming and adding my URI module. might be too disruptive though. probably try that locally first. | ||
AlexDaniel | just in time! | ||
jdv79 | would have to finish it first though:( | ||
23:32
RabidGravy left
|
|||
AlexDaniel | .tell ZoffixW basically I care about two things: 1) Can I do async stuff? and 2) If one of the plugins receives a message and interprets it in some way, is there any way for it to tell other plugins to ignore this message? Because when making a bot you can throw in a bunch of stuff, but you probably don't want your bot to answer twice for some message if both plugins trigger on it. That being said, sometimes you want it… | 23:34 | |
23:34
rurban left
|
|||
yoleaux | AlexDaniel: I'll pass your message to ZoffixW. | 23:34 | |
masak | 'night, #perl6 | ||
jdv79 | Even if someone throws up a dumb top level ns its much less an issue with auth | ||
AlexDaniel | .tell ZoffixW implement these and I will be a happy man | ||
yoleaux | AlexDaniel: I'll pass your message to ZoffixW. | ||
dalek | kudo/nom: f24d2e0 | lizmat++ | src/core/Promise.pm: Not sure it's wise to do junctions inside locks |
||
23:35
Peter_R left
23:36
ming_ left
23:37
vendethiel left
23:38
rindolf left
|
|||
timotimo | lizmat: the optimizer should really have turned that into the same code you manually wrote | 23:38 | |
timotimo heads to sleep | |||
gnite everyone! | |||
lizmat | good night, timotimo | ||
zengargoyle | hrm... if «use Module:auth<github:zengargoyle>;» is to be a thing, with a decent module-to-repo mapping... modules could be automagically found and installed on demand. | 23:39 | |
jdv79 | timotimo: later | 23:40 | |
lizmat | zengargoyle: yes, that's the idea | ||
it's a pluggable design (to use an old meme) | |||
23:40
MadcapJake joined
|
|||
AlexDaniel | .tell ZoffixW maybe there has to be some sort of big dispatch thing with priorities and stuff, I don't know actually. But basically the reason I said that Net::IRC::Bot needs some reworking was because my plugins were conflicting and I was unable to find any non-ugly solution to this. One simple example: you want your bot to reply to “MyBot: !commands” message and at the same time you might want it to reply to any other message that was | 23:41 | |
not handled, e.g. “MyBot: hi bot” should answer with “Please don't talk to me!” | |||
yoleaux | AlexDaniel: I'll pass your message to ZoffixW. | ||
AlexDaniel | dammit | ||
.tell ZoffixW not handled, e.g. “MyBot: hi bot” should answer with “Please don't talk to me!”. That's just something to consider, maybe it will give you some ideas for better implementation. | 23:42 | ||
yoleaux | AlexDaniel: I'll pass your message to ZoffixW. | ||
jdv79 | wonder if you could just model that with MMD and the like | 23:43 | |
AlexDaniel | .oO( maybe it would have been better if I wrote an email ) |
23:44 | |
hmm why are we using .oO | 23:45 | ||
23:45
p6_nb joined
|
|||
AlexDaniel | 🗭( maybe because this does not render that well ) | 23:45 | |
.u 🗯🗮 | 23:46 | ||
yoleaux | No characters found | ||
AlexDaniel | .u 🗮 | 23:47 | |
yoleaux | No characters found | ||
AlexDaniel | yoleaux: you are old, aren't you? | ||
.u 🗩 | |||
yoleaux | No characters found | ||
ugexe | `no precompilation;` is not doing anything for me... the commit earlier today made it seem like it should work? | 23:48 | |
lizmat | ugexe: perhaps we lost that in the merge mess :-( | 23:51 | |
p6_nb | hi there. will there be windows binaries for 2015.11 rakudo? thanks in advance ... | 23:53 | |
lizmat | p6_nb: I assume you mean for Rakudo Star ? | 23:54 | |
ugexe | lizmat: the code is still there so its probably deeper than that | ||
p6_nb | lizmat: correct | ||
lizmat | all core devs are pretty busy or vast asleep... so I'm not sure | 23:55 | |
ugexe | `RAKUDO_MODULE_DEBUG=1 perl6 -e 'use Test;'` maybe Test isnt the best example, but it does the same for all modules in -Ilib when testing against them | 23:56 | |
lizmat | in fact, I'm going to migrate from group 1 to group 2 myself now | ||
so good night, #perl6! | |||
ugexe | `RAKUDO_MODULE_DEBUG=1 perl6 -e 'no precompilation; use Test;'` rather | ||
23:58
lucasb left
23:59
snarkyboojum joined
|