»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by moritz on 25 December 2014. |
|||
00:01
BenGoldberg joined
00:08
pmurias left
00:14
Mouq joined
00:16
fhelmberger joined
|
|||
skids | Sum:: += librhash support. Thankfully there are not as many hashing libs as hashing functions. | 00:18 | |
Of course I'll probably have to do one for OpenSSL libcrypto and one for that SSH standalone splinter of libcrypto | 00:20 | ||
And at some point talk someone into being Sum::'s windows dev, cuz I aint gonna. | 00:21 | ||
00:21
fhelmberger left
|
|||
hoelzro | .tell pmurias you said that the next bit of work is going to be around QASTNode; what exactly does that entail? | 00:41 | |
yoleaux | hoelzro: I'll pass your message to pmurias. | ||
00:43
diana_olhovik_ left
01:05
Alina-malina joined
|
|||
psch | yay, byte[] marshalling works now \o/ | 01:07 | |
now i just gotta dig up test cases for the 11 other possible typed arrays | 01:08 | ||
oh, nvm, it's 11 including byte[] | 01:09 | ||
and maybe i don't need SixModelObject[]..? | |||
psch sleeps & | 01:15 | ||
retupmoca | skids: just did a panda install Sum - passes all tests on my Windows 8.1 machine | 02:03 | |
oh, looks like the NativeCall tests are disabled right now | 02:06 | ||
skids | Yeah, as once runtime is entered fails happen unless those libs are installed. | ||
reupmoca++ thanks for testing. | 02:07 | ||
02:07
MadcapJake left
|
|||
skids | damn I typoed retupmoca++ again | 02:07 | |
Mouq | You reuped reupmoca? | 02:08 | |
skids | Right now I am having fun fighting with a hinky NativeCall scnario: gist.github.com/skids/b33fcda50e7dad774835 | 02:16 | |
02:17
fhelmberger joined
02:21
prime left
02:22
fhelmberger left
02:29
chenryn joined
|
|||
skids | Ah, it wasn't working because libmhash is broken. Heh. | 02:32 | |
02:59
adu joined
03:04
alini left
03:23
yeahnoob joined
03:26
prime joined,
noganex joined
|
|||
Mouq | m: my $*THIS; sub term:<this> { $*THIS }; sub new(&fn, |c) { { my $*THIS = {} but role {method FALLBACK($name) is rw { self{$name} }}; fn(|c); $*THIS } }; sub Constructor(\attr) { this.foo = attr }; say new(&Constructor, "bar"); say new(&Constructor, "baz"); say this.perl | 03:29 | |
camelia | rakudo-moar c453cd: OUTPUT«foo => barfoo => bazAny» | ||
03:29
noganex_ left
|
|||
Mouq | (It could be `new Constructor("bar")`, with new as a macro, but quasi's don't work with blocks in them, which we'd need for lexical $*THIS) | 03:31 | |
03:56
anocelot joined
04:08
anocelot left
04:10
dustinm` joined,
anocelot joined
04:13
btyler joined
04:19
anaeem1_ joined
04:21
dustinm` left
04:22
anaeem1_ left
04:23
anaeem1 joined,
telex left
04:24
telex joined
04:34
kaleem joined
04:39
telex left
04:51
telex joined
05:07
mr-foobar left
05:13
kaleem left
05:24
BenGoldberg left
05:42
chenryn left
06:04
dustinm` joined
06:07
xfix joined
06:12
dustinm` left
06:13
chenryn joined
06:22
Akagi201 joined
06:28
jack_rabbit joined
06:29
dustinm` joined
06:32
Rounin joined,
Mouq left
06:38
diana_olhovik_ joined
06:42
adu left
06:43
dustinm` left
06:45
dustinm` joined
06:49
chenryn left
06:50
kaleem joined
06:52
chenryn joined
06:53
jack_rabbit left
|
|||
vendethiel | .botsnack | 06:58 | |
yoleaux | :D | ||
vendethiel | .tell pmurias "function foo(){}" | ||
yoleaux | vendethiel: I'll pass your message to pmurias. | ||
06:59
vendethiel left
07:01
adu joined
07:06
gfldex joined
07:12
nbrown joined,
nbrown left
07:14
alini joined
07:15
TimToady joined
07:16
asdf12z_ left,
jack_rabbit joined
07:19
mj41 joined
07:21
mj41 left,
xfix left
07:23
asdf12z_ joined
07:27
gfldex left
07:28
FROGGS_ left
07:29
jack_rabbit left
07:30
adu left
07:35
espadrine joined
07:37
Ugator joined
07:38
chenryn left
07:42
darutoko joined
07:45
chenryn joined
07:57
FROGGS joined
08:02
alini left
08:04
kjs_ joined,
prime left
08:08
ab5tract joined
08:10
trone joined
|
|||
[Tux] | I cannot find it on doc.perl6.org: where can I see what can be used when I have CHECK in a class? | 08:13 | |
08:13
prime joined
08:14
Ugator left
|
|||
moritz | what you can use? every symbol that's in scope | 08:15 | |
[Tux] | like the class (and its methods)? | ||
moritz | yes | ||
classes are being built and composed at BEGIN time, so at CHECK time, everything should be rosy | 08:16 | ||
08:16
rurban_ joined
08:17
Mouq joined
|
|||
[Tux] | gist.github.com/Tux/dfe0257c49f38641f84a | 08:17 | |
then I am missing something | |||
FROGGS | foo is a method, not a sub | 08:18 | |
moritz | [Tux]: I've opened github.com/perl6/doc/issues/47 for you :-) | ||
FROGGS | at least, that's the first thing that comes to my mind | ||
08:18
fhelmberger joined
|
|||
[Tux] | a method and a sub both are Routine, right? | 08:18 | |
moritz | yes | ||
but you can't refer to method foo simply by writing foo | 08:19 | ||
methods live only in the method table | |||
FROGGS | [Tux]: but you call a method on its class or class instance | ||
[Tux] | I thought that the signature of alias would force it to be the method instead of a call to it | 08:20 | |
moritz | alias(C.^find_method('foo'), < bar > ) | ||
[Tux]: the arguments are evaluated first, then bound | |||
[Tux]: signature != p5 prototypes | |||
[Tux] | right | ||
timotimo | how do p5 prototypes behave? | ||
ISTR something about changing how the parser treats a sub based on its prototype or something? | 08:21 | ||
moritz | timotimo: they modify parsing of the argument list | ||
[Tux] | and what if C is subclassed? Then C.^find_method will return the wrong foo? | ||
08:21
Mouq left
|
|||
moritz | [Tux]: no | 08:21 | |
[Tux] | ok | ||
moritz | [Tux]: TheSubclass.^find_method would return the wrong one | ||
a class doesn't even know of its subclasses | |||
08:22
fhelmberger left
|
|||
[Tux] | drat. Slang::Tuxic is not (yet) in effect inside CHECK :( :( | 08:23 | |
gist.github.com/Tux/22f8ced78cf9dc87db69 | 08:25 | ||
FROGGS | but 'use' is BEGIN time... | ||
08:25
kjs_ left
|
|||
FROGGS | [Tux]: the way you line up curlies makes it hard to read your code | 08:26 | |
[Tux] | funny you say that. for me it is always vice versa :) | 08:27 | |
tux.nl/style.html if you want to know why | 08:28 | ||
FROGGS | [Tux]: well, that is something between you and the majority of the hackers :o) | ||
[Tux] is well aware of that | |||
missing :, gist.github.com/Tux/eacf46e310aed15795d1 works!!! :) :) | 08:30 | ||
FROGGS | ahh | 08:31 | |
glad you solved it | |||
08:33
sqirrel__ joined
08:34
diana_olhovik_ left
08:37
andreoss joined
|
|||
dalek | kudo/newio: 756a4ac | lizmat++ | src/core/Array.pm: [].VAR.name returns something more obviously wrong Namely "$ANON_VAR__10". The "$x" seen originally, was an artefact of the name used of the variable used to itemize in the circumfix sub. Hopefully, we can 988984e | lizmat++ | src/core/Distro.pm: Introduce Distro.tmpdir The logic for determining what a good temporary directory is, is really dependent on the Distro we're working under, not on the IO::Spec. One step closer to eradicating $*SPEC and IO::Spec! |
08:39 | |
lizmat | sorry dalek | 08:40 | |
08:40
dalek joined,
ChanServ sets mode: +v dalek
08:43
alini joined
|
|||
masak | good morning, #perl6 | 08:46 | |
moritz | good am, masak | ||
08:47
Mouq joined,
zakharyas joined
|
|||
[Tux] | callframe(0).annotations<line> is not valid in all contexts. is there a way to dynamically tell the current line? | 08:51 | |
or the current line of the caller | |||
FROGGS | $?LINE ? | ||
that's not the caller though | |||
08:53
chenryn left
08:54
chenryn joined
|
|||
Mouq | "Backtrace.new[mumble].line"? Not sure that's valid anywhere that callframe isn't, though | 08:56 | |
09:01
brrt joined
09:02
zakharyas1 joined
|
|||
[Tux] | In trying to slim down the situation that makes perl6 dump core, I found the combination that failed. | 09:03 | |
brrt | which perl6... moar? | ||
[Tux] | putting that first though makes the script segfault somewhere else :( | ||
moar | |||
FROGGS | [Tux]: what does make it crash? we need to ticket and resolv that | 09:04 | |
[Tux] | jnthn knows, but I'll greate a gist where you can copy to try to reproduce. one moment ... | ||
09:05
Mouq left
|
|||
brrt | :-) | 09:05 | |
09:08
Sqirrel_ left
09:09
espadrine left,
kjs_ joined
09:12
sqirrel__ left
|
|||
[Tux] | gist.github.com/Tux/e398c043a80ecf498a05 | 09:13 | |
including valgrind output | |||
[Tux] leaves for $work | 09:14 | ||
FROGGS | [Tux]++ | 09:17 | |
Humbedooh walks 5 meters from home to work....done | |||
FROGGS | :/ | 09:20 | |
jnthn is kinda encouraged that the SEGV can be re-produced with a smaller test case; it reduces the chance it's a GC bug :) | |||
Good morning, #perl6 | |||
FROGGS | I have to walk 200x as much as Humbedooh :o( | ||
morning jnthn | |||
jnthn: I can golf that in a moment (in can I can reproduce in the first place) | |||
jnthn | FROGGS: OK. I'll look at it probably at the weekend; I'd like to focus on natives stuff today. | 09:23 | |
Also there's another strings bug I/someone needs to tackle. | |||
09:23
ven joined
|
|||
jnthn | (RT'd by masak a while ago) | 09:23 | |
ven | o/, #perl6 | ||
FROGGS | ahh, will take a look when I have the chance | 09:24 | |
hi ven | |||
jnthn | FROGGS: I think there's also a macro in src/strings/ops.c that you can turn on, which does rope sanity checks after every operation. | ||
FROGGS | k | 09:25 | |
Humbedooh | FROGGS: I suppose I could do the walk 200 times if that makes you feel any better :) | ||
FROGGS | *g* | ||
not at all :P | |||
jnthn | Is this a bad time to mention I'm working at home today? :) | 09:26 | |
Also: nice, the MoarVM op-list parse/code-gen script (written in Perl 6) runs notably faster these days than in the past :) | 09:27 | ||
09:27
zakharyas1 left
|
|||
FROGGS | jnthn: no, my mood is in quite a good shape :o) | 09:27 | |
09:27
rindolf joined
|
|||
ven | eh, scala-to-js compiler no longer experimental. moore altjs :P | 09:32 | |
FROGGS | Program received signal SIGSEGV, Segmentation fault. | 09:34 | |
0x00007ffff79de055 in MVM_string_concatenate (tc=0x603690, a=0x7ffff6684cb8, b=0x0) at src/strings/ops.c:321 | |||
321 if (!IS_CONCRETE((MVMObject *)a) || !IS_CONCRETE((MVMObject *)b)) | |||
(b is NULL) | |||
09:35
fhelmberger joined
|
|||
masak shomehow read "which does rope salty checks", which gave him pause | 09:37 | ||
jnthn | FROGGS: Hmm. Wonder where it comes from... | 09:38 | |
FROGGS | jnthn: the salty rope check does not hit fwiw | ||
jnthn | FROGGS: No, that looks like a straight "it's NULL" | 09:40 | |
09:40
spider-mario left
|
|||
moritz | salty licorice rope checks | 09:40 | |
FROGGS | :S | 09:41 | |
jnthn | Salty licorice is my favorite troll gift. | ||
FROGGS | MVM_SPESH_DISABLE=1 hides it | ||
masak | moritz: do they have those in .de? or is it just Scandinavia? | ||
jnthn | FROGGS: Oh, curious... | 09:42 | |
FROGGS | MVM_JIT_DISABLE=1 does not hide it | ||
FROGGS tests inline and osr | 09:43 | ||
moritz | masak: dunno, I don't like licorice :-) | ||
dalek | kudo/newio: 6a6f145 | lizmat++ | src/core/Process.pm: Initialize $*TMPDIR from $*DISTRO.tmpdir |
09:44 | |
FROGGS | jnthn: MVM_SPESH_INLINE_DISABLE=1 and MVM_SPESH_OSR_DISABLE=1 have no effect | ||
arnsholt | I think salty liquorice is mostly a Scandinavian/Nordic thing | ||
lizmat | eh, aren't you forgetting NL here ? | ||
arnsholt | And the Dutch | ||
lizmat | salty liquorice is also very much a Dutch thing | ||
09:45
yeahnoob left
|
|||
lizmat | we even have the best salty liquorice in the world :-) | 09:45 | |
FROGGS | lizmat: which is not a good thing :o) | 09:46 | |
lizmat | it's *the* remedy for low blood pressure :-) | 09:47 | |
FROGGS | I'll keep the low blood pressure instead, thanks :o) | 09:49 | |
09:51
pecastro joined
09:53
kaleem left,
btyler left,
dagurval_ left,
Klaudioh left
09:54
btyler joined,
dagurval joined,
Klaudioh joined
09:55
abraxxa joined,
wicope joined
|
|||
dalek | kudo/newio: 1aeeb95 | lizmat++ | src/core/Distro.pm: Distro.tmpdir should return an .IO object |
09:56 | |
nine | I have the name of a sub in a variable. How can I call the corresponding sub? | 09:59 | |
10:00
espadrine joined
|
|||
mathw | o/ | 10:00 | |
moritz | nine: &::($name) | 10:01 | |
m: my $name = 'sin'; say &::($name)(pi) | |||
camelia | rakudo-moar c453cd: OUTPUT«1.22464679914735e-16» | ||
lizmat | m: my $a = sub { say "foo" }; $a() | 10:02 | |
10:02
dustinm` left
|
|||
camelia | rakudo-moar c453cd: OUTPUT«foo» | 10:02 | |
lizmat | ah, name | ||
grrr | |||
nine | moritz: thanks! | ||
lizmat | jnthn: is it correct that we still don't have an nqp:: op to follow a symlink ? | 10:03 | |
10:03
Bucciarati left
|
|||
jnthn | lizmat: Lemme check | 10:04 | |
10:04
avar left
|
|||
jnthn | I seem to recall a readlink at some point. | 10:04 | |
10:05
kaleem joined
|
|||
moritz | mlenz@mlenz-workstation:~/p6/rakudo/nqp (master)$ git grep readlink|wc -l | 10:05 | |
0 | |||
fwiw that's also the name I would have proposed :-) | |||
jnthn | I only see fileislink, symlink, and link | ||
dalek | line-Perl6: c57a1ec | (Stefan Seifert)++ | / (3 files): Implement calling parameterless P6 functions from P5 |
10:06 | |
lizmat | so I guess it's still NYI | ||
jnthn | Probably we should have a readlink | ||
10:07
kjs_ left
|
|||
lizmat | agree :-) | 10:07 | |
lizmat dives into nqp to see what would be needed | 10:08 | ||
dalek | p: 2071014 | lizmat++ | docs/ops.markdown: Fix copy-pasto |
10:09 | |
jnthn | lizmat: Well, needs VM-level addition first, I suspect. | 10:11 | |
github.com/libuv/libuv/blob/v1.x/i...uv.h#L1215 exists in libuv, which Moar uses for this stuff | 10:12 | ||
10:12
kaleem left
|
|||
lizmat | ok, I'll follow the track laid out by "symlink" and try to follow in its footsteps :-) | 10:13 | |
10:13
alini left
|
|||
jnthn | OK. Probably you need 1) function in fileops.c (and mention it in fileops.h), 2) Add readlink op to src/core/oplist (instructions at the top for how), run tools/updateops.p6, 3) implement op in interp.c to just call the function you write in fileops.c | 10:14 | |
10:15
Bucciarati joined
|
|||
FROGGS | and important, add the stuff to interp.c to directly before the sp_* ops | 10:15 | |
10:16
kaleem joined
|
|||
jnthn | I think the instructions at the top say that :) | 10:16 | |
10:16
avar joined,
avar left,
avar joined
|
|||
jnthn | Also, the way it gives you link back looks REALLY funky. o.O | 10:18 | |
Grep for readlink in docs.libuv.org/en/latest/fs.html | |||
lizmat | hmm.... running tools/update_ops.p6 gives me only 1 op afterwards ? | 10:20 | |
jnthn | lizmat: Not sure I follow | ||
Can you gist me something? | 10:21 | ||
lizmat | Parsed 1 total ops from src/core/oplist | ||
ah, could be I broke something in perl6 | 10:22 | ||
in the newio branch | |||
jnthn | That is entirely possible. | ||
If you gist me a diff of yoru src/core/oplist I can sanity check that before you go digging. | 10:23 | ||
dalek | kudo/newio: 8a27ceb | lizmat++ | src/core/IO/Pathy.pm: Oops, forgot .d |
||
jnthn | .oO( salty check ) |
||
lizmat | Parsed 670 total ops from src/core/oplist # much better :-) | 10:24 | |
jnthn | Sounds more like it :) | ||
nwc10 | it is, if your op isn't this one: en.wikipedia.org/wiki/One_instructi...t_computer | 10:25 | |
lizmat | jnthn: the diff after running upadte_ops.p6: gist.github.com/lizmat/a02f943058b0930ddd3e | 10:28 | |
seems like it got sorted somewhere in the middle ?? | 10:29 | ||
10:29
pmurias joined,
alini joined
|
|||
jnthn | lizmat: That's absolutely correct. | 10:29 | |
lizmat | so what about keeping numbers the same for binary compatibility ? | 10:30 | |
(existing) | |||
jnthn | lizmat: The ops beyond that are ones that are never allowed to appear in bytecode files | ||
pmurias | .tell ven re jscript, I'm not spending much effort right now towards compatiblity with it, but I think in the future it might be important | ||
yoleaux | 00:41Z <hoelzro> pmurias: you said that the next bit of work is going to be around QASTNode; what exactly does that entail? | ||
pmurias: I'll pass your message to ven. | |||
06:58Z <vendethiel> pmurias: "function foo(){}" | |||
jnthn | lizmat: The sp_ prefix is for spesh | ||
lizmat | ah, ok :-) | ||
jnthn | lizmat: Those are ops that only the dynamic optimizer is allowed to insert. | 10:31 | |
lizmat | I can commit this as adding a readlink stub, right ? | ||
Ah, I need more | |||
:-) | 10:32 | ||
jnthn | lizmat: I think you must add as stub in interp.c | ||
lizmat | yup | ||
jnthn | Otherwise the computed goto table will miss a label | ||
lizmat | indeed: src/core/oplabels.h:628:7: error: use of undeclared label 'OP_readlink' :-) | ||
jnthn | You'll add something like | ||
OP(readlink): | |||
MVM_exception_throw_adhoc(tc, "readlink NYI"); | |||
phone, brb | 10:33 | ||
back | 10:38 | ||
lizmat | added stub now, and Moar compiles | ||
jnthn | Moar ops! | ||
lizmat | I guess I now need to add a QAST::MASTOperations.add_core_moarop_mapping to src/vm/moar/QAST/QASTOperationsMAST.nqp ? | 10:41 | |
(first trying to get the stub in all the way, before messing more with Moar / libuv internals) | |||
FROGGS | lizmat: aye | 10:42 | |
10:45
diana_olhovik joined
10:55
pecastro left
10:59
pecastro joined
11:01
brrt left,
pecastro left
11:04
pecastro joined
|
|||
ab5tract | does anyone know why sillymoose hasn't released Module::Minter into the ecosystem? | 11:08 | |
github.com/dnmfarrell/Module-Minte...Minter.pm6 | |||
(i think that's sillymoose, but maybe i am wrong) | |||
11:15
bsh joined
11:16
kjs_ joined
|
|||
ab5tract | btw, digging into channels and supplies at $day_job with btyler. going to see if we can make that a $day-job sooner rather than later :) | 11:16 | |
moritz | ab5tract: if you have any qualms with the docs for Supply or Channel on doc.perl6.org, please let me know | 11:19 | |
ab5tract: (or open github issues about them) | |||
ab5tract | moritz: much appreciated. already enjoying the progress that has been made on them already | 11:20 | |
what i really need is an open ticket on myself, because i'm still new to trying to think in this way :) | |||
jnthn points out wiki2.enlightenedperl.org/index.php...Ideas_Page | 11:25 | ||
Wonder if we should migrate our ideas list there, or just link it from there? Maybe better for visibility to do the latter. | |||
uh | |||
the former | 11:26 | ||
gah :) | |||
11:29
bsh left
11:30
telex left
11:32
telex joined
|
|||
ab5tract | okay, first $ab5tract-problem .. how to construct a Promise such that it will call $channel.close at a specific time, such that we can use $channel.closed as a condition in a loop ( 'until $channel.closed' ) | 11:43 | |
but without wrapping the whole thing in an await | 11:44 | ||
dalek | p: 51b308b | lizmat++ | src/vm/moar/QAST/QASTOperationsMAST.nqp: Add mapping for nqp::readlink() on Moar |
11:46 | |
ab5tract | paste.booking.com/5wshk@raw | ||
but we just found $supply.Channel coercion, so that might help :) | |||
moritz | "The connection to the server was reset while the page was loading." | ||
ab5tract: is that a private server? | 11:47 | ||
Promise.in(15).then({ $channel.close }) | |||
ab5tract | yes, sorry | ||
but that's time based | 11:48 | ||
right? | |||
moritz | yes | ||
ab5tract | gist.github.com/anonymous/a624ddbed08512749b80 | ||
ven | pmurias: I am 100% convinced is irrelevant. mind explaining your stance? | ||
yoleaux | 10:30Z <pmurias> ven: re jscript, I'm not spending much effort right now towards compatiblity with it, but I think in the future it might be important | ||
11:49
travis-ci joined
|
|||
travis-ci | NQP build failed. Elizabeth Mattijsen 'Add mapping for nqp::readlink() on Moar' | 11:49 | |
travis-ci.org/perl6/nqp/builds/49729260 github.com/perl6/nqp/compare/20710...b308b775af | |||
11:49
travis-ci left
|
|||
moritz | ab5tract: Promise.alloff((^10).map: { ...}).then({$c.close}) | 11:49 | |
ab5tract: also perl6advent.wordpress.com/2014/12/...eepy-kind/ | 11:53 | ||
11:54
sqirrel__ joined
11:55
ven is now known as ven-,
noganex left,
Ven joined,
noganex joined
11:56
bonsaikitten left
11:57
xiaomiao joined
|
|||
ab5tract | moritz: yup, i've got all the advents and docs open :) | 11:58 | |
btyler | make that two of us | ||
ab5tract | gist.github.com/ab5tract/e214eccb652cfb6e514f | ||
11:59
isacloud left,
ggoebel111111113 left,
esaym153 left
|
|||
ab5tract | so the allof just about solves it, but i end up having to do some non-perl6-y feeling "guard guarding" to avoid the run time error | 11:59 | |
11:59
ggoebel111111113 joined
12:00
sivoais left,
simcop2387 left,
esaym153 joined
12:01
arnsholt left,
isacloud joined,
sjn joined
12:02
simcop2387 joined
|
|||
moritz | ab5tract: well, doing a loop is the wrong thing | 12:02 | |
12:02
arnsholt joined
|
|||
moritz | ab5tract: if you await the alloff promise, you know know you're done | 12:02 | |
ab5tract | yeah, but then | 12:03 | |
... hmmm ... | 12:04 | ||
moritz | ab5tract: or if you act on the things as they come in, use a Supply | ||
btyler | this (using a supply instead of a channel) does what we expected. is this the Right Way: gist.github.com/kanatohodets/b97a0...7c2f10389f ? | ||
moritz | *if you want to act | ||
btyler | heh, lost the race :) | ||
12:04
lizmat_ joined
|
|||
moritz | btyler: yes, that's how I'd do it | 12:04 | |
12:05
dalek left
|
|||
pmurias | Ven: internet explorer has a fair amount of market share | 12:05 | |
12:05
djanatyn left,
nyuszika7h joined
|
|||
moritz | btyler: and you won the race for the code, just lost the race for advise :-) | 12:06 | |
pmurias | Ven: if we don't support JScript, rakudo-js generated code will not run in internet explorer | ||
Ven | pmurias: IE is javascript, not jscript, really | 12:07 | |
12:07
lizmat left
|
|||
Ven | pmurias: quirks that jscript have introduced are not in use anymore. (stuff as in "foo() = 5") | 12:07 | |
ven- | and most of the others bug I'm always trying to avoid only exist up to ie6 | 12:08 | |
12:08
lizmat_ is now known as lizmat
|
|||
lizmat | hmm... appears I need to bump NQP first | 12:08 | |
moritz | lizmat: bump MOAR first in NQP | 12:10 | |
lizmat | need to fix Moar (again) first, then I'll bump :-) | ||
12:10
dalek joined,
ChanServ sets mode: +v dalek
|
|||
moritz | ok :-) | 12:10 | |
12:12
[Coke]_ joined,
kaleem left
12:13
sivoais joined,
[ptc]_ joined,
nine_ joined,
pmurias_ joined,
djanatyn joined
12:14
diegok joined,
rurban__ joined,
broquain1 joined
12:16
pmurias_ left,
pmurias_ joined
12:17
pmurias left,
pmurias_ is now known as pmurias
|
|||
pmurias | Ven: isn't JScript the name of the JavaScript engine inside Internet Explorer | 12:18 | |
Ven | pmurias: no, it's chakra | 12:19 | |
pmurias: jscript is what wsh uses | |||
12:19
Klaudioh left,
btyler left,
rurban_ left,
Akagi201 left,
anocelot left,
amalia left,
cdc left,
charsbar_ left,
Ulti left,
[ptc]_ is now known as [ptc]
|
|||
Ven | (window script host) | 12:19 | |
12:19
Akagi201 joined,
rurban joined
|
|||
pmurias | that's not supported | 12:19 | |
12:21
cdc joined,
Klaudioh joined,
btyler joined,
anocelot joined,
amalia joined,
charsbar_ joined,
Ulti joined,
Aaron`J joined,
revdiablo joined,
pnu joined,
grep0r joined,
japhb joined,
yogan_ joined,
Spot__ joined,
ggherdov joined
|
|||
pmurias | Ven: what I mostly care about supporting is commonly used browsers/node.js/and the thing facebook will be using for react.js native | 12:22 | |
Ven: other things will be supported if someone else is willing to either put in the work or convince me why it's important | 12:23 | ||
12:23
grep0r left
12:24
grep0r joined,
cdc is now known as Guest6226
|
|||
pmurias | Ven: wikipedia refers to the internet explorer JavaScript as JScript | 12:24 | |
dalek | p: 9f4ebea | lizmat++ | tools/build/MOAR_REVISION: Bump MOAR_REVISION to get readlink stub |
12:25 | |
12:25
kjs_ left
|
|||
Ven | pmurias: ... but nobody else. | 12:27 | |
it's what they used to have when ecma didn't exist. | |||
pmurias | Ven: but it seems wikipedia is being more and more controlled by shady/stupid people subverting the internal editiorial processes so it might not be trusted | ||
Ven | pmurias: I've stopped trusting wikipedia on topics I'm certain of long ago :P | ||
.oO( when they started adding "isomorphic javascript" |
12:28 | ||
12:28
travis-ci joined
|
|||
travis-ci | NQP build passed. Elizabeth Mattijsen 'Bump MOAR_REVISION to get readlink stub' | 12:28 | |
travis-ci.org/perl6/nqp/builds/49732627 github.com/perl6/nqp/compare/51b30...4ebea96839 | |||
12:28
travis-ci left
|
|||
pmurias | Ven: what's isomorphic javascript | 12:29 | |
? | |||
12:29
chenryn left
|
|||
Ven | pmurias: "javascript running both on the client and the server". or, rather, people trying to use words they don't understand... | 12:30 | |
12:31
xfix joined
|
|||
nine_ | Ven: back in ye olde days IE's scripting really was called JScript. | 12:32 | |
Ven | nine_: yes. I said "up to ie6" | ||
dalek | line-Perl6: 783e653 | (Stefan Seifert)++ | / (4 files): Support passing string arguments to P5 functions called from P6 Promoted Inline::Perl6Helper to a proper class that holds a pointer to my_perl and pass my_perl to all C wrappers. Allows Inline::Perl6 to be used from multiple P5 interpreters in the same process and allows re-using unmodified C code from Inline::Perl5. |
12:33 | |
12:34
Ugator joined
12:36
dj_goku_ left,
dj_goku joined
12:39
rmgk_ joined,
rmgk left,
rmgk_ is now known as rmgk
|
|||
ab5tract | m: sub dummy-id { return (^10).roll(*).join }; say dummy-id | 12:43 | |
camelia | rakudo-moar c453cd: OUTPUT«(timeout)» | ||
ab5tract | ^^ times out locally as well | 12:44 | |
moritz | ab5tract: yes, .roll(*) is an infinite list | ||
ab5tract: joining that takes infinite time | 12:45 | ||
ab5tract | m: say (^10).roll(*).join | ||
camelia | rakudo-moar c453cd: OUTPUT«(timeout)» | ||
moritz | m: say (^10).roll(*)[^20] | ||
camelia | rakudo-moar c453cd: OUTPUT«4 8 5 6 5 1 3 3 9 2 3 9 5 6 8 7 4 7 4 0» | ||
ab5tract | how bizare.. that has returned correctly for me before | ||
moritz | ab5tract: maybe you meant .pick(*)? or .roll(10)? | ||
ab5tract | moritz: i meant the latter, yeah. is there a shorthand for that? | 12:46 | |
moritz | ab5tract: no | ||
ab5tract | (and i see now that when it was returning, it was the .pick(*) version) | ||
moritz | there's nothing intrinsic in a 10-sided die that makes it more natural to roll it 10 times than any other number | 12:47 | |
12:49
skids left
|
|||
ab5tract | moritz: agreed, still i expect to see a fair amount of @things.roll( +@things ). but i'm not complaining nor taking the position that such is wrong | 12:50 | |
moritz | ab5tract: I don't expect that, fwiw | 12:52 | |
ab5tract: my experience with rolling dice is that I use 1, 2 or 3 dice much more often than 6 or 20 :-) | |||
12:55
anaeem1 left
|
|||
ab5tract | moritz: not a fan of 2nd edition Shadowrun then? ;) | 12:55 | |
12:57
Akagi201 left
|
|||
moritz | ab5tract: no, more Dark Eye (mostly popular in Germany) | 12:58 | |
psch | o/ | ||
13:02
dustinm` joined
|
|||
dalek | kudo-star-daily: bf07e36 | coke++ | log/ (9 files): today (automated commit) |
13:03 | |
nine_ | moritz: Lilyhammer++ :) | ||
13:03
[Coke]_ is now known as [Coke]
|
|||
jnthn | nine_++ # hacking on Inline::Perl6 | 13:04 | |
13:09
dustinm` left
|
|||
colomon | wait, is that a p5 module? | 13:13 | |
nine_ | colomon: yes | ||
colomon | sweet | 13:14 | |
moritz | nine_: glad you like it | 13:18 | |
ab5tract | nine_: i noticed last night that there is a mismatch in argument passing with Inline::Perl5 | 13:20 | |
nine_ | ab5tract: care to elaborate? | 13:21 | |
ab5tract | nine_: of course :) | ||
use Module:from<Perl5>; Module.method_which_takes_@_and_puts_it_in_a_hash( key1 => "thing", key2 => "other_thing" ) | 13:23 | ||
i had to rewrite it as | 13:24 | ||
Module.method_which_takes_@_and_puts_it_in_a_hash( "key1", "thing", "key2", "other_thing" ) | |||
btyler | what's the perl6 for this: my %foo = (a => 1, b => 2); %foo{qw(a b)}; #gives (a, 1, b, 2) -- the key/value pair hash slice | 13:25 | |
ab5tract | so perhaps some extra sugar around the FALLBACK code | ||
nine_ | ab5tract: oh yes, there's no multi method p6_to_p5 for Pairs yet. Should be trivial to implement. | ||
moritz | that's not an argument passing mismatch, more a mismatch between p5's and p6's => operator | ||
btyler: %foo<a b>:p | |||
btyler | ah ha, an adverb | ||
lovely | |||
FROGGS | m: my %foo = a => 1, b => 2; say %foo<a b> | ||
camelia | rakudo-moar c453cd: OUTPUT«1 2» | ||
moritz | m: my %foo = (a => 1, b => 2); say %foo<a b>:p.perl | ||
camelia | rakudo-moar c453cd: OUTPUT«===SORRY!=== Error while compiling /tmp/csQFPqS4tyTwo terms in a rowat /tmp/csQFPqS4ty:1------> %foo = (a => 1, b => 2); say %foo<a b>:p⏏.perl expecting any of: infix stopper infix o…» | ||
FROGGS | m: my %foo = a => 1, b => 2; say %foo<a b>:p | ||
camelia | rakudo-moar c453cd: OUTPUT«a => 1 b => 2» | ||
moritz | m: my %foo = (a => 1, b => 2); say (%foo<a b>:p).perl | 13:26 | |
ab5tract | moritz: it doesn't seem to affect anything in other places | ||
camelia | rakudo-moar c453cd: OUTPUT«("a" => 1, "b" => 2)» | ||
moritz | m: my %foo = (a => 1, b => 2); say (%foo<a b>:kv).perl | ||
camelia | rakudo-moar c453cd: OUTPUT«("a", 1, "b", 2)» | ||
btyler | perfect, thanks! moritz++/FROGGS++ | ||
dalek | p: 38cd1f0 | peschwa++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/BootJavaInterop.java: Implement marshalling of listy Types to typed Java arrays. |
||
ab5tract | and yes, the root of the mismatch stems from => being a real thing in perl 6, and not a fat comma | ||
moritz | btyler: :p for pair objects, :kv for keys/values list interleaved | ||
m: my @a = (a => 1, b => 2); say @a.elems; # for ab5tract | 13:27 | ||
camelia | rakudo-moar c453cd: OUTPUT«2» | ||
ab5tract | moritz: are you implying that i solved this without understanding that? :P | ||
moritz | $ perl -wE 'my @a = (a => 1, b => 2); say scalar @a' | ||
4 | |||
ab5tract: yes | |||
ab5tract | i know the differences, i'm saying that i've only encountered it in Inline::Perl5 wrt to argument passing | 13:28 | |
moritz: that's pretty uncharitable man | |||
i didn't just pull the solution out of my ass | |||
FROGGS | *g* | ||
moritz | ab5tract: why? it shows I have high confidence in your problem solving ability :-) | ||
ab5tract | well, that just proves you doubly wrong ;P | 13:29 | |
13:30
sqirrel__ left
13:31
bcode left
13:32
ven- left
13:33
bcode joined
|
|||
ab5tract didn't realize that being accused of not understanding lists in perl 5 would be such a trigger | 13:33 | ||
13:33
bcode left
|
|||
moritz didn't do such a thing | 13:35 | ||
hoelzro | o/ #perl6 | ||
13:36
bcode joined
|
|||
jnthn | o/ hoelzro | 13:39 | |
13:47
kaleem joined
|
|||
ab5tract | $supply.emit([ @array, %hash ]); # legal ? | 13:48 | |
moritz | yes | 13:50 | |
jnthn | Sure, you can emit whatever object you like | ||
(Just as you can take whatever you like.) | |||
ab5tract | we are getting a strange error: "cannot stringify this" which appears to trigger when we use $supply.emit in that way | ||
jnthn | m: my $s = Supply.new; $s.emit([ my @a, my %h ]); # golf? | 13:51 | |
camelia | ( no output ) | ||
ab5tract | trying to gold this now | ||
*golf | |||
jnthn | m: my $s = Supply.new; $s.tap(&say); $s.emit([ my @a, my %h ]); # golf? | 13:52 | |
camelia | rakudo-moar c453cd: OUTPUT«» | ||
jnthn | m: my $s = Supply.new; $s.tap(*.perl.say); $s.emit([ my @a, my %h ]); # golf? | ||
camelia | rakudo-moar c453cd: OUTPUT«[]» | ||
jnthn | OK, I'll leave you to golf :) | ||
13:54
zakharyas left
|
|||
hoelzro | pmurias: did you see my message about what needs to be done for QASTNode? | 13:54 | |
13:56
rindolf left,
zakharyas joined
|
|||
pmurias | hoelzro: hi | 13:56 | |
hoelzro: checking... | |||
13:59
sqirrel__ joined
|
|||
ab5tract | rindolf | 13:59 | |
rindolf's part message always catches my eye, but i'll never understand | |||
hoelzro | pmurias: there's no rush, I just wanted to talk about it so I have something to work on after work today =) | ||
pmurias | hoelzro: nqp::{istype,clone,curlexpad,findmethod} | 14:00 | |
hoelzro | pmurias: awesome, thanks! | ||
FROGGS | ab5tract: same for me :o) | ||
Ven | ab5tract: summer glau's the "crazy" character in firefly. she's apparently given extraordinary powers by her fans :o) | 14:02 | |
well, that's a misuse of "given". should be "attributed" | |||
btyler | m: my $sup = Supply.new; $sup.tap: -> [@foo] { say "yay"; } $sup.emit([1, 2]); | ||
camelia | rakudo-moar c453cd: OUTPUT«===SORRY!=== Error while compiling /tmp/vgqIBOccTITwo terms in a rowat /tmp/vgqIBOccTI:1------> new; $sup.tap: -> [@foo] { say "yay"; } ⏏$sup.emit([1, 2]); expecting any of: infix stopper …» | ||
btyler | moment, totally unrelated to supplies | ||
m: my $sup = Supply.new; $sup.tap: -> [@foo] { say "yay"; }; $sup.emit([1, 2]); | 14:06 | ||
camelia | rakudo-moar c453cd: OUTPUT«cannot stringify this in block <unit> at /tmp/gYK_YESL8k:1» | ||
btyler | jnthn: ^ | ||
and maybe this is ab5tract and I totally failing to understand something, but in any case the error is LTA | 14:07 | ||
psch | m: my $f = -> [@a] { say "ok" }; $f() | ||
camelia | rakudo-moar c453cd: OUTPUT«Too few positionals passed; expected 1 argument but got 0 in block <unit> at /tmp/eXB65z1YMz:1» | ||
psch | m: my $f = -> [@a] { say "ok" }; $f([1,2,3]) | ||
camelia | rakudo-moar c453cd: OUTPUT«cannot stringify this in block <unit> at /tmp/eh5vNIjRF3:1» | ||
psch | m: my $f = -> @a { say "ok" }; $f([1,2,3]) | ||
jnthn | btyler: It looks like a problem in error reporting | ||
camelia | rakudo-moar c453cd: OUTPUT«ok» | ||
moritz | m: my $sup = Supply.new; $sup.tap: -> @foo { say "yay"; }; $sup.emit([1, 2]); | ||
camelia | rakudo-moar c453cd: OUTPUT«yay» | ||
jnthn | The unpack is wrong | ||
moritz | btyler: if you do the signature correct, it works :-) | 14:08 | |
14:08
anaeem1 joined
|
|||
ab5tract | yup :) | 14:08 | |
btyler | right, figured we had something backwards | ||
moritz | but yes, the error message is LTA | ||
ab5tract | m: my $sup = Supply.new; $sup.tap: -> [@foo] { say "yay"; }; $sup.emit([[1]]); # works | ||
camelia | rakudo-moar c453cd: OUTPUT«yay» | ||
Juerd | Speaking of unpack, does Perl 6 have something like Perl 5's unpack? | ||
ab5tract | m: my $sup = Supply.new; $sup.tap: -> [@foo] { say "yay"; }; $sup.emit([1]); # LTA | ||
camelia | rakudo-moar c453cd: OUTPUT«cannot stringify this in block <unit> at /tmp/R7VyJmaeaO:1» | ||
ab5tract | just for the record, this becomes a lot more obvious once it's golfed ;) | 14:09 | |
moritz | Juerd: it has the beginnings of something like that, yes | 14:10 | |
Juerd: but the plan is to do it a bit differently; more like the nativecall interface | |||
[Coke] has stopped puking, sleeping, and is now, tentatively, at $dayjob. | 14:13 | ||
Juerd | moritz: I see. | 14:14 | |
Things like N/a is where Perl 5's unpack really shines and saves you a lot of work. | |||
jnthn | [Coke]: That does sound like an improvement. | 14:15 | |
14:16
Alina-malina left
|
|||
[Coke] | jnthn: except for the dayjob part! ;) | 14:16 | |
jnthn | tbh, I find pretty much every aspect of my dayjob preferable to puking... :P | 14:18 | |
nwc10 | can I remind you of that next time the coffee catches you out? | 14:19 | |
jnthn | Cold coffee doesn't taste *that* bad... | 14:21 | |
14:22
_mg_ joined
|
|||
ab5tract | okay, so i've re-golfed the "issue" we were running into | 14:23 | |
i think it is less straight-forward | |||
but prefacing it with "i'm not sure that this is wrong" | |||
14:23
Bowman42 joined
|
|||
ab5tract | m: my @a = <list of things>; my %h = %( hash => "of", things => "yup" ); my $sup = Supply.new; $sup.tap: -> [@a,%h] { say "yay"; }; $sup.emit([@a, %h]); # cannot stringify | 14:24 | |
camelia | rakudo-moar c453cd: OUTPUT«cannot stringify this in block <unit> at /tmp/B8ASweYEh9:1» | ||
pmichaud | Juerd: doc.perl6.org/routine/unpack # maybe | 14:25 | |
ab5tract | m: my @a = <list of things>; my %h = %( hash => "of", things => "yup" ); my $sup = Supply.new; $sup.tap: -> [@a,%h] { say "yay"; }; $sup.emit([ $@a, $%h ]); # itemize first | ||
camelia | rakudo-moar c453cd: OUTPUT«yay» | ||
pmichaud | good morning, #perl6 | ||
jnthn | morning, pmichaud o/ | ||
Juerd | pmichaud: It's a start | ||
jnthn | ab5tract: The [...] composer flattens | 14:26 | |
ab5tract: Try $sup.emit([$@a, $%h]) | |||
nwc10 | good UGT, Pm | ||
ab5tract | jnthn: see my second working example :D | 14:27 | |
okay, so that explains it | |||
jnthn | ab5tract: hah, I fixed a compile error between when I read your question and finished typing my answer..so didn't notice ;) | 14:28 | |
ab5tract | jnthn++ # a hero of mine | ||
FROGGS | *g* | ||
14:29
_mg_ left
|
|||
PerlJam | greetings #perl6 | 14:29 | |
psch | jnthn: the "cannot stringify" comes from $error[0] in the subsig binding code. .HOW.name on that $error[0] still can't stringify, which i don't understand :) | 14:30 | |
ab5tract | on a related note, we are having an interesting time trying to discuss $@a (aka []) without saying arrayref | ||
psch | ab5tract: itemized array? | ||
but i don't think [] is equivalent to $@a | |||
jnthn | psch: Hmmm...odd | ||
ab5tract | psch: i meant it as a structural reference | 14:31 | |
but itemized array just sounds weird | |||
psch | ab5tract: oh, right, "how it behaves in assignment" and that kind of stuff. right | ||
ab5tract | when you have an "itemized list" IRL, you are talking about the elements of the list being itemized. not the list itself | ||
psch | ah, right. that discussion happened a few weeks back iirc. itemified is the only alternative i remember but that's slightly awkward | 14:32 | |
ab5tract | psch: but yeah, "itemized array" has been one of the phrases we've been trying | ||
14:34
Ven left
14:35
skids joined
|
|||
psch | ab5tract: clog research reveals that raiph++ suggests "as [an]? item", and jnthn++ doesn't mind *ref. i might have imagined someone suggesting "itemified" :) | 14:38 | |
ah, no, that was timotimo++ | |||
or maybe masak++ | |||
14:39
Rounin left
|
|||
psch | jnthn: i'm not sure how to follow that $error around through the binder code | 14:39 | |
dalek | p/native-ref: 4c6574f | jnthn++ | src/vm/moar/QAST/QASTOperationsMAST.nqp: Map some native ref nqp::ops. |
||
jnthn | psch: Oh, I see it... | 14:41 | |
14:41
sqirrel__ left
|
|||
jnthn | Note that the thing that top-level handles the error is: | 14:41 | |
nqp::isinvokable(@error[0]) ?? @error[0]() !! nqp::die(@error[0]); | |||
Things that want to throw a typed exception do so by putting it into $error | |||
psch | ooh | 14:42 | |
jnthn | So assuming we have a string is errorneous | ||
psch | right, so subsig should do the same check? | ||
isinvokable that is | |||
jnthn | Search for X::TypeCheck::Binding in BOOTSTRAP.nqp to see where it happens | ||
Well, we could do that but...we still have no good way to attach the "oh btw it's in a subsig" ino | |||
jnthn glances at moritz++, resident typed exceptions expert :) | 14:43 | ||
s/ino/info/ | |||
14:44
H2O1 joined
14:49
anaeem1 left
14:50
H2O1 left
14:54
_mg_ joined
14:57
abraxxa left
|
|||
moritz | well, I'd just add an attribute for "in subsignature for parameter $parameter" | 14:59 | |
to X::TypeCheck::Binding | |||
or an array, if we allow arbitrarily nested subsigs | |||
14:59
amalia is now known as amaliapomian
|
|||
jnthn | moritz: X::TypeCheck::Binding is kinda not specific to signatures, though? | 15:00 | |
moritz: I was wondering if mixing in a role might be a way to go... | |||
moritz | jnthn: right, we should maybe start with a signature-specific error type | 15:03 | |
jnthn: mixing in things on the fly sounds a bit too spooky for me :-) | |||
15:04
_mg_ left
|
|||
psch | m: sub f(Int $x) { }; { EVAL "f('foo')"; CATCH { default { .perl.say } } } | 15:06 | |
camelia | rakudo-moar c453cd: OUTPUT«X::TypeCheck::Argument+{X::Comp}.new(filename => "EVAL_0", line => 1, column => Any, modules => Array.new(), is-compile-time => Bool::True, pre => "<BOL>", post => "f('foo')", highexpect => Array.new(), protoguilt => Bool::False, arguments => Array.new("st…» | ||
[Coke] | protoguilt? | 15:07 | |
15:07
kjs_ joined
|
|||
dalek | p: eb40eb0 | lizmat++ | tools/build/MOAR_REVISION: Bump Moar to get proper readlink(), FROGGS++ |
15:07 | |
[Coke] | lizmat++ | 15:08 | |
psch | m: proto foo($) {*}; multi foo(Int $) { "Int" }; { EVAL 'foo(1,2)'; CATCH { default { .perl.say } } } | 15:09 | |
camelia | rakudo-moar c453cd: OUTPUT«X::TypeCheck::Argument+{X::Comp}.new(filename => "EVAL_0", line => 1, column => Any, modules => Array.new(), is-compile-time => Bool::True, pre => "<BOL>", post => "foo(1,2)", highexpect => Array.new(), protoguilt => 1, arguments => Array.new("Int", "Int")…» | ||
psch | [Coke]: "does the proto prevent dispatch" i suppose | 15:10 | |
'cause &foo in that example can never take two scalars, no matter their type | |||
the .message has «$.protoguilt ?? "Calling proto of '" !! "Calling '"» | 15:12 | ||
andreoss | m: my \n = 0; say n...(n+10); | ||
camelia | rakudo-moar c453cd: OUTPUT«0 1 2 3 4 5 6 7 8 9 10» | ||
15:15
kaleem left
|
|||
andreoss | m: my \n = 2; say n, 2*n, 3*n ... n+10; | 15:18 | |
camelia | rakudo-moar c453cd: OUTPUT«2 4 6 8 10 12» | ||
andreoss | m: my \n = 2; say n, 2*n, 3*n ... n; | ||
camelia | rakudo-moar c453cd: OUTPUT«2» | ||
andreoss | m: my \n = 2; say n, 2*n, 3*n ... n+1; | ||
camelia | rakudo-moar c453cd: OUTPUT«2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100 102 104 106 108 110 112 114 116 118 120 122 124 126 128 130 132 134 136 138 140 142 144 146 148 150 152 154 1…» | ||
andreoss | m: my \n = 2; say n, 2*n, 3*n ... n+3; | 15:19 | |
camelia | rakudo-moar c453cd: OUTPUT«2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100 102 104 106 108 110 112 114 116 118 120 122 124 126 128 130 132 134 136 138 140 142 144 146 148 150 152 154 1…» | ||
andreoss | m: my \n = 2; say n, 2*n, 3*n ... 3; | ||
camelia | rakudo-moar c453cd: OUTPUT«2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100 102 104 106 108 110 112 114 116 118 120 122 124 126 128 130 132 134 136 138 140 142 144 146 148 150 152 154 1…» | ||
15:19
mr-foobar joined
|
|||
dalek | kudo/nom: 8e91140 | lizmat++ | tools/build/NQP_REVISION: Bump NQP to get nqp::readlink |
15:20 | |
moritz | andreoss: when the limit isn't matched exactly, it goes on forever | ||
nine_ | m: EVAL 'sub foo() { say "foo!"; }'; EVAL 'foo();'; | 15:21 | |
camelia | rakudo-moar c453cd: OUTPUT«===SORRY!=== Error while compiling EVAL_1Undeclared routine: foo used at line 1» | ||
nine_ | why is that? ^^^ | ||
jnthn | The code in an EVAL is its own lexical scope | ||
nine_ | jnthn: is there any way around that? | 15:22 | |
dalek | href="https://perl6.org:">perl6.org: fb2c904 | paultcochrane++ | README.md: Add link to the #perl6 irc channel |
||
href="https://perl6.org:">perl6.org: e798885 | paultcochrane++ | README.md: Add link to browsershots.org |
|||
href="https://perl6.org:">perl6.org: 3051f25 | paultcochrane++ | README.md: Add formatting to emphasise text in README |
|||
jnthn | m: EVAL 'our sub foo() { say "foo!"; }'; EVAL 'OUR::foo();'; | ||
psch | there is :context on EVAL, but i don't understand how it works | ||
camelia | rakudo-moar c453cd: OUTPUT«Cannot find method 'Any' in block <unit> at EVAL_1:1 in any <unit-outer> at EVAL_1:1 in sub EVAL at src/gen/m-CORE.setting:795 in block <unit> at /tmp/7glix27HYJ:1» | ||
jnthn | Hmm | ||
moritz | psch: it's for setting the outer scope | ||
jnthn | m: EVAL 'our sub foo() { say "foo!"; }'; EVAL 'GLOBAL::foo();'; | ||
camelia | rakudo-moar c453cd: OUTPUT«Could not find symbol 'foo' in method <anon> at src/gen/m-CORE.setting:14599 in any find_method_fallback at src/gen/m-Metamodel.nqp:2741 in any find_method at src/gen/m-Metamodel.nqp:988 in block <unit> at EVAL_1:1 in any <unit-outer> a…» | ||
moritz | psch: you can say EVAL($string, :context(CALLER)) or so | 15:23 | |
andreoss | moritz: is there something like n, 2*n, 3*n ... * where n < limit ? | ||
FROGGS | m: EVAL 'our sub foo() { say "foo!"; }'; EVAL '&GLOBAL::foo();'; | ||
camelia | rakudo-moar c453cd: OUTPUT«foo!» | ||
FROGGS | m: EVAL 'our sub foo() { say "foo!"; }'; EVAL '&OUR::foo();'; | ||
camelia | rakudo-moar c453cd: OUTPUT«foo!» | ||
jnthn | Oh, of course :) | ||
FROGGS++ | |||
psch | moritz: oh, i see | ||
FROGGS | :o) | ||
moritz | m: my \n = 5; say n, 2*n, 3n ... * >= 70 | 15:24 | |
camelia | rakudo-moar c453cd: OUTPUT«===SORRY!=== Error while compiling /tmp/EwphE6AQwaConfusedat /tmp/EwphE6AQwa:1------> my \n = 5; say n, 2*n, 3⏏n ... * >= 70» | ||
moritz | m: my \n = 5; say n, 2*n, 3* n ... * >= 70 | ||
camelia | rakudo-moar c453cd: OUTPUT«5 10 15 20 25 30 35 40 45 50 55 60 65 70» | ||
15:24
kaare_ left
|
|||
moritz | andreoss: ^^ | 15:24 | |
andreoss | thanks | ||
moritz | m: my \n = 5; say n, 2*n, 3* n ...^ * >= 70 # excluding the end | ||
camelia | rakudo-moar c453cd: OUTPUT«5 10 15 20 25 30 35 40 45 50 55 60 65» | ||
15:24
Mouq joined
|
|||
FROGGS | m: my \n = 5; say n, 2*n, 3* n ^... * >= 70 # also nice | 15:25 | |
camelia | rakudo-moar c453cd: OUTPUT«===SORRY!=== Error while compiling /tmp/ce82xYT8pZUnsupported use of . to concatenate strings; in Perl 6 please use ~at /tmp/ce82xYT8pZ:1------> my \n = 5; say n, 2*n, 3* n ^... ⏏* >= 70 # also nice» | ||
FROGGS | err | ||
nine_ | So it seems that $p6.call(...) needs a $scope parameter. Cause builtins are in CORE::, not in GLOBAL:: or OUR:: | 15:26 | |
psch | m: say &say.package.^name | ||
camelia | rakudo-moar c453cd: OUTPUT«GLOBAL» | ||
nine_ | Unhandled exception: No such symbol '&::GLOBAL::say' | 15:27 | |
moritz | m: say &MY::say | ||
psch | the first two : look wrong to me | ||
camelia | rakudo-moar c453cd: OUTPUT«(Any)» | ||
psch | m: say &GLOBAL::say.perl | ||
camelia | rakudo-moar c453cd: OUTPUT«Any» | ||
moritz | m: MY::('&say')(52) | ||
camelia | rakudo-moar c453cd: OUTPUT«===SORRY!===No such symbol 'MY::&say'» | ||
moritz | huh | ||
psch | m: say &UNIT::say | ||
camelia | rakudo-moar c453cd: OUTPUT«(Any)» | ||
psch | m: say &CORE::say | 15:28 | |
camelia | rakudo-moar c453cd: OUTPUT«use of uninitialized value $name of type Any in string context in block <unit> at /tmp/GTQpdeT3nv:1sub say (Any |) { #`(Sub|49029848) ... }» | ||
psch | m: say &CORE::say.perl | ||
camelia | rakudo-moar c453cd: OUTPUT«use of uninitialized value $name of type Any in string context in block <unit> at /tmp/ovKZVnh6yy:1sub say (Any |) { #`(Sub|60298008) ... }» | ||
dalek | c: e73ce03 | paultcochrane++ | lib/Language/modules.pod: Replace github by GitHub This is how the GitHub people render the name. |
||
c: 43b1c8f | paultcochrane++ | lib/Language/modules.pod: Link to markdown syntax documentation |
|||
c: e879e7b | paultcochrane++ | lib/Language/modules.pod: Minor typographical updates |
|||
jnthn | psch: The .package simply means "what package were we in when the thing was declared"; whether it was actually installed in the package is a separate question. | ||
moritz | [ptc]++ | ||
nine_ | m: my $name = "say"; &CORE::($name)("yes!"); | 15:29 | |
camelia | rakudo-moar c453cd: OUTPUT«yes!» | ||
nine_ | m: my $name = "say"; &GLOBAL::($name)("yes!"); | ||
camelia | rakudo-moar c453cd: OUTPUT«===SORRY!===No such symbol '&::GLOBAL::say'» | ||
moritz | m: &::('say')(42) | ||
camelia | rakudo-moar c453cd: OUTPUT«42» | ||
moritz | nine_: &::(...) gives you the same look up that 'say()' does | ||
15:29
xinming_ joined,
gfldex joined
15:30
Ven joined
|
|||
moritz | nine_: that is, first in the lexical scopes, then in CORE | 15:30 | |
nine_: 'our' isn't searched by default in Perl 6 | |||
andreoss | m: my @x := n, 2*n, 3* n ... * >= 70; say @x[* - 1]; | ||
camelia | rakudo-moar c453cd: OUTPUT«===SORRY!=== Error while compiling /tmp/71ZfPTRgkgUndeclared routine: n used at line 1» | ||
nine_ | m: EVAL 'our sub foo() { say "foo!"; }'; my $name = 'foo'; &::($name)(); | ||
camelia | rakudo-moar c453cd: OUTPUT«foo!» | ||
andreoss | m: my @x = n, 2*n, 3*n ... * >= 70; say @x[* - 1]; | 15:31 | |
camelia | rakudo-moar c453cd: OUTPUT«===SORRY!=== Error while compiling /tmp/2iJdxjuyZ_Undeclared routine: n used at line 1» | ||
nine_ | moritz: ah, seems like &::(...) already does enough magic for me | ||
moritz | andreoss: add your 'my \n' | ||
skids | m: my \n = 2; my @x = n, 2*n, 3*n ... * >= 70; say @x[* - 1] | ||
camelia | rakudo-moar c453cd: OUTPUT«70» | ||
15:31
pierrot left
15:32
pierrot joined
|
|||
andreoss | stupid me | 15:32 | |
15:32
profan joined
|
|||
dalek | c: 46b4504 | paultcochrane++ | lib/Language/modules.pod: Further typographical and formatting updates |
15:34 | |
15:35
andreoss left
15:37
Mouq left
15:45
andreoss joined
|
|||
andreoss | "@phi[k] = @phi[k] - (@phi[k] div n)"" that is 30 times faster than "@phi[k] -= (@phi[k] div n);" | 15:46 | |
15:47
rindolf joined
|
|||
dalek | kudo/newio: 8e91140 | lizmat++ | tools/build/NQP_REVISION: Bump NQP to get nqp::readlink |
15:48 | |
kudo/newio: 50a0dae | lizmat++ | tools/build/NQP_REVISION: Merge branch 'nom' into newio |
|||
line-Perl6: 167cbae | (Stefan Seifert)++ | / (2 files): Support passing all non-object data types from P6 to P5 Int, Book, Num, Rat, blob8, Hash, Positional |
15:50 | ||
jnthn | andreoss: Yeah, the optimizer doesn't make a great job of those just yet. The faster form is not only directly cheaper, but also will get better treatment from dynamic optimization too. | 15:51 | |
jnthn wonders if we've a perl6-bench entry for that yet | |||
FROGGS thinks that it is not true that Book is a non-object data type | 15:53 | ||
jnthn | A Book is a data structure derived from a Tree... | 15:54 | |
skids | And subclassed by Dict | ||
dalek | kudo/native-ref: 168ca22 | jnthn++ | src/vm/moar/ops/container.c: Update Rakudo scalar contspec for updated API. |
15:55 | |
moritz | jnthn: can 6pe be merged? or have you merged it already? | 15:56 | |
jnthn | moritz: Potentially. I'd like to at least see it tested against the Star modules. | 15:57 | |
If anybody fancies taking that on, to get it landed faster, please do. | |||
Also make sure that, when merged into nom, we don't lose any spectests. | |||
There's more work to do in the 6pe area, but I think what's in the branch being merged won't be terribly disruptive. | 15:58 | ||
moritz | jnthn: what's the moarvm branch name? or is it only nqp+rakudo? | 15:59 | |
nine_ | And Dict is really a Hash in Perl 5. So when Hashes are non-objects, the base of hashes cannot be objects either | ||
FROGGS | ;o) | 16:00 | |
jnthn | moritz: The MoarVM and NQP 6pe branches are both already merged | 16:01 | |
moritz | jnthn: oh, that simplifies things \o/ | ||
jnthn | moritz: So it's only the 6pe-mop one that is up for merge. | ||
The native-ref branches I'm currently working on will not be elligible for merge until after 2014.02 | 16:02 | ||
But I've plenty to be doing in them :) | |||
FROGGS | jnthn: I mused about testers.perl6.org... would be nice if we just did: PANDA_SUBMIT_REPORT=before-6pe panda smoke; <switch branach>; PANDA_SUBMIT_REPORT=after-6pe panda smoke | ||
and then a way to compare both tags | 16:03 | ||
switch branch* | |||
16:03
adu joined
16:06
kaleem joined
|
|||
nine_ | This really shows how easy Inline::Perl6 is to write: even in my condition and unable to type I can make decent progress. | 16:08 | |
jnthn | It's so easy when r-m has no embedding API! ;) | ||
16:09
espadrine left
|
|||
moritz | t/spec/integration/weird-errors.t test 5 has been failing for me for a while on moarvm | 16:09 | |
anybody know what's up there? | |||
jnthn | Not me | ||
Didn't see it on the last spectest I ran on this box but I've no idea when that wsa. | 16:10 | ||
moritz | and t/spec/S17-supply/start.t fails test nine here | ||
# expected: [1, 1] | |||
# got: [1, 1] | |||
16:12
espadrine joined
|
|||
nine_ | jnthn: it's not NativeCall which makes up for most of it :0 | 16:12 | |
;) | |||
16:13
diana_olhovik left
|
|||
dalek | kudo/newio: 459ebe6 | lizmat++ | src/core/IO/ (2 files): We can do .parent on files as well |
16:13 | |
lizmat | moritz: to me, that's a flapper | 16:16 | |
runs ok by itself | |||
16:19
xinming_ left
|
|||
jnthn | nine_: Wow, it's amazing how little you actually need in that .xs file | 16:20 | |
But yeah, I need to provide better APIs for doing what you're doing from Moar... | |||
PerlJam | nine_: Have you tried Inline::Perl5 on different versions of Perl 5? | 16:22 | |
nine_: I ask because my perlbrewed 5.20.0 has been working fine, but today I tried 5.20.1 and it barfed. I haven't had time to investigate if it's just me or a general problem. | 16:23 | ||
16:24
_mg_ joined
|
|||
PerlJam | nine_: I mean, I switched to 5.20.1 and attempted to install Inline::Perl5 with panda and it complains. | 16:24 | |
moritz | jnthn: on 6pe-mop I get a test failure in t/spec/S14-roles/mixin.t (last test), though that is one testing an exact error message | 16:26 | |
jnthn | moritz: Ah, yeah... | ||
moritz: Typed exception time? :) | |||
I do think the new text is an improvement. | |||
moritz | but running the code in that test on the command line seems to produce a fine error message | ||
jnthn: +1 to typed exceptions :-) | 16:27 | ||
jnthn | moritz: If you've the ork to put in a typed exception for it, feel free | ||
moritz: Otherwise I can do it in the next day or so | |||
nine_ | PerlJam: I'm actually developing Inline::Perl5 on 5.20.1 | 16:28 | |
moritz | jnthn: I'm now testing panda + star modules, so no idea if/when I'll get to it | 16:29 | |
jnthn | moritz: OK | ||
moritz | jnthn: ... or if I remember how to use a typed exception from a meta class/role :-) | ||
jnthn | Just serach for P6EX in src/Perl6/Metamodel :) | ||
16:32
fhelmberger left
|
|||
nine_ | I wonder if I shouldn't just go in and actually use Inline::Perl5 for implementing Inline::Perl6. I'll end up copying most of the code anyway. | 16:32 | |
pmurias | nine_: sharing code so that the Perl 5 objects behave the same in Perl 6 while using both of those modules seems like a good thing | 16:36 | |
dalek | kudo/newio: f5d730c | lizmat++ | src/core/IO.pm: Introduce MAKE-PARENT helper sub |
16:39 | |
ast: 5cea494 | skids++ | S32-exceptions/misc.t: Add test for RT #72816 |
16:40 | ||
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=72816 | ||
dalek | rl6-roast-data: 3600641 | coke++ | / (5 files): today (automated commit) |
16:41 | |
16:41
_mg_ left
16:42
raydiak joined
16:44
telex left
16:46
telex joined
16:50
synopsebot left
16:51
pierrot left,
pierrot joined,
jferrero left,
jferrero joined
16:52
synopsebot joined
|
|||
retupmoca | moritz: could I get you to look at github.com/cosimo/perl6-lwp-simple/pull/42 ? | 16:52 | |
16:53
kaleem left
16:54
alini left
16:55
zakharyas left
|
|||
dalek | p/native-ref: 4d77554 | jnthn++ | docs/6model/repr-compose-protocol.markdown: Spec nativeref compose protocol. |
16:55 | |
16:55
Ven left
16:59
Bowman42 left
17:00
sivoais left
|
|||
lizmat | hmmm... looks like STAT_EXISTS is false on a cyclic symlink | 17:00 | |
17:01
sivoais joined
|
|||
jnthn | Maybe that's the OS's way of saying "I can't bear to look..." :P | 17:02 | |
lizmat | yeah, which simplifies things :-) | ||
jnthn | Well, depends how portable that result is :) | ||
lizmat | true | 17:03 | |
ok, I'll build in a safeguard just in case | |||
hoelzro | that's consistent with Perl 5 | 17:05 | |
(at least) | |||
lizmat | hoelzro: what is consistent exactly? | 17:06 | |
hoelzro | lizmat: that -e $cyclic_symlink is falsy | ||
on my machine, anyway =) | |||
lizmat | ok, just checking to be 100% sure | ||
moritz | retupmoca: nag me again later today/tonight | 17:07 | |
now decommuting& | |||
hoelzro | it makes sense, in a way | ||
moritz | jnthn: fwiw rakudo 6pe-mop successfully tested star on moarvm | ||
hoelzro | there's no end of the chain of symlinks, so stat returns ELOOP | ||
jnthn | hoelzro: What OS are you trying it on, ooc? | 17:08 | |
moritz | really gone& | ||
jnthn | moritz: OK, cool! Thanks! | ||
hoelzro | jnthn: Arch Linux | ||
jnthn | OK, and lizmat is presumably on OSX. | ||
hoelzro | (I think any Linux distribution would do this, though) | ||
lizmat | yep | ||
jnthn | And it's moot on Windows. | ||
OK, so I guess we can skip the safeguard... :) | |||
hoelzro | I think so | ||
lizmat | okidoki | 17:11 | |
ah, and the libuv function actually follows symlinked symlinks already, so even more simple :-) | 17:15 | ||
17:16
_mg_ joined
|
|||
lizmat | ah, no, need to do that myself :-( | 17:17 | |
17:18
espadrine left,
sunnavy joined
|
|||
FROGGS | m: use Test; class Foo { method bar { } }; my $foo = Foo.new; my @a = <a b c d>; sub baz(|) { ok $foo.bar, "bar" }; for @a { for @a { baz @a } } # jnthn: that's [Tux]'s segfault | 17:19 | |
camelia | rakudo-moar 8e9114: OUTPUT«(signal SEGV)not ok 1 - bar# Failed test 'bar'# at /tmp/sjtxnWMYjo line 1not ok 2 - bar# Failed test 'bar'# at /tmp/sjtxnWMYjo line 1not ok 3 - bar# Failed test 'bar'# at /tmp/sjtxnWMYjo line 1not ok 4 - bar# Faile…» | ||
hoelzro | lizmat: you're following the symlinks by hand? | ||
FROGGS | jnthn: I golfed it 'a little' because I was unable to follow the problem in moar | ||
lizmat | yes, that seems to be needed | ||
hoelzro | lizmat: is that in Moar, or in NQP/Rakudo? | 17:20 | |
I remember deleting some manual symlink following logic from MoarVM a while back | |||
jnthn | FROGGS++ | ||
lizmat | at the moment I do it in Perl 6 | ||
hoelzro | ah ha | ||
jnthn | lizmat: What exactly do you need to handle, ooc? | 17:21 | |
dalek | kudo/newio: cf9e9fe | lizmat++ | src/core/IO.pm: Implement FILETEST-L |
||
lizmat | see above commit | ||
17:21
PZt joined
17:22
alini joined
|
|||
hoelzro | what's -L, again? | 17:22 | |
jnthn | lizmat: Remind me what -L is? | ||
haha :) | |||
lizmat | readlink | ||
jnthn | lizmat: Should it recurse? | ||
lizmat | well, good question | 17:23 | |
jnthn | It's not clear to me it should, fwiw. | ||
'cus then you have no way to get the "what exactly does this link to", plus we can't say it's the Perl 6 way of spelling readlink... | |||
TimToady | readlink should not recurse | 17:24 | |
dalek | p-js: 7bb9ec8 | (Pawel Murias)++ | src/vm/js/ (3 files): Add a --nyi=warn option to nqp-js to print out NYI stuff to standard error. |
||
p-js: 3539435 | (Pawel Murias)++ | TODO: Add a bunch of missing opcodes to TODO. |
|||
hoelzro thought readlink followed symlinks already | |||
17:24
Kristien joined
|
|||
FROGGS | lizmat: that's related: irclog.perlgeek.de/perl6/2014-11-10#i_9636226 | 17:24 | |
Kristien | hola | ||
TimToady | what if the program wants to count the indirections? | ||
lizmat | ok, fair enough :-) | ||
17:25
dustinm` joined
|
|||
TimToady | primitives need to be primitive | 17:25 | |
FROGGS | TimToady: clearly we should expose a stat_file_get_indirections(...) like there probably exists in PHP :o) | ||
dalek | p-js: 0ee266e | (Pawel Murias)++ | HACKING: Add a scavenging hint. |
||
17:26
FROGGS[mobile] joined,
FROGGS[mobile]2 joined,
FROGGS[mobile]2 left,
FROGGS[mobile]2 joined
|
|||
dalek | kudo/newio: e4823c0 | lizmat++ | src/core/IO.pm: Primitives need to be primitive |
17:27 | |
hoelzro | nope, nevermind | ||
pmurias | hoelzro: I added a bunch of stuff to the nqp-js TODO, they should be of varied difficulty | ||
hoelzro | pmurias: awesome, thanks! | ||
17:27
FROGGS left
17:30
FROGGS[mobile] left,
ingy1 joined
|
|||
lizmat | TimToady: how about a "desymlink" function that *would* recurse ? | 17:31 | |
17:32
Alina-malina joined
|
|||
FROGGS[mobile]2 | "de"? | 17:32 | |
PerlJam | lizmat: what's the use-case? | ||
dalek | c: 42f0d4e | paultcochrane++ | lib/Language/mop.pod: Typographical etc. corrections to mop.pod |
17:33 | |
c: de216c8 | paultcochrane++ | lib/Language/mop.pod: Wrap paragraphs consistently in mop.pod |
|||
c: f1699aa | paultcochrane++ | lib/Type/Metamodel/Finalization.pod: Move X<DESTROY> into documentation body This stops htmlify from complaining that it can't find the =SUBTITLE. |
|||
lizmat | well, -d on a symlink | ||
17:33
andreoss left
|
|||
TimToady | it's just a one-liner, which argues that it's not much bloat, but also not much utility | 17:33 | |
lizmat | I ran into this when testing tmpdir functionality | 17:34 | |
in OS X /tmp is a symlink | |||
TimToady agrees the use case is limited, not that may people are interested in absolute paths | |||
lizmat | I would like to know whether something resolves to a symlink or not | ||
*many ? | |||
TimToady | ya | ||
we don't need convenience features for seldom-used stuff | 17:36 | ||
lizmat | but this also implies that I can't really test for -d for features such as $*CWD | ||
because they might be valid if they\re a symlink as well | 17:37 | ||
hmmm... I think I know another way :-) | |||
FROGGS[mobile]2 | see the link I postet about stat | 17:40 | |
lizmat | FROGGS[mobile]2: once I'm done with readlink, I'll do lstat :-) | 17:41 | |
dalek | p-js: 6b20680 | (Pawel Murias)++ | HACKING: Add a hint how to get beautified output. |
17:43 | |
17:45
pmurias left
|
|||
timotimo | o/ | 17:46 | |
dalek | ecs/newio: 3b5f3b8 | lizmat++ | S16-io.pod: Readlink is not used often, so de-hufmannize |
||
17:47
lue left
17:49
Rounin joined
|
|||
dalek | kudo/newio: 3d80ceb | lizmat++ | src/core/IO.pm: FILETEST-L -> FILETEST-READLINE |
17:50 | |
FROGGS[mobile]2 | lizmat++ | 17:51 | |
geekosaur | READLINK? | ||
(hopefully that's just a commit message typo) | |||
lizmat | yes, commit message typo :-( | 17:52 | |
too late to fix now | |||
TimToady | doesn't need to be THAT dehuffmanized :) | ||
17:56
colomon left,
_mg_ left
|
|||
TimToady hits the road again for Seattle... | 17:57 | ||
afk & | |||
17:58
dustinm` left,
Mouq joined
17:59
lue joined
18:02
molaf joined
18:08
kjs_ left
18:10
tgt joined,
Alina-malina left,
ingy1 is now known as ingy
18:25
Mouq left
18:26
Hor|zon left
18:51
Alina-malina joined
18:54
rindolf left,
rindolf joined,
diana_olhovik joined
18:58
alini left
19:03
nsharrok joined,
trone left
19:04
Woodi left
|
|||
Kristien | .tell vendethiel I decided to write a custom VM | 19:06 | |
yoleaux | Kristien: I'll pass your message to vendethiel. | ||
Kristien | yoleaux: thanks you're great | ||
moritz blug again: perlgeek.de/blog-en/perl-6/2015-doc...6-org.html | 19:08 | ||
19:10
_mg_ joined
|
|||
jnthn | moritz++ | 19:10 | |
19:12
alini joined
19:15
beastd joined
19:16
alini left
19:19
nsharrok left
|
|||
pmichaud | moritz++ | 19:20 | |
I also wonder if there's a place for "what's the p6 equivalent of p5's XYZ?" | |||
moritz | pmichaud: there's certainly a place for that, though it's not on my personal agenda | 19:22 | |
19:22
kjs_ joined
19:23
Hor|zon joined
|
|||
moritz | pmichaud: also it might be economical to wait and see if there is really going to be a big migration movement from 5 to 6 at some point | 19:23 | |
19:24
diana_olhovik left
|
|||
moritz | pmichaud: maybe our users will come from unexpected corners (like the go folks expecting to attact C programmers, and attracted many python programmers) | 19:24 | |
dalek | kudo/nom: 7f20855 | moritz++ | src/core/ (2 files): move X::Does::TypeObject to operators.pm it reads much nicer to have the exception defined close to where it is thrown Also record the type that was attempt to mix into |
19:26 | |
retupmoca | moritz++ # blog | ||
dalek | c: bfefd0a | moritz++ | lib/Type/X/Does/TypeObject.pod: Document X::Does::TypeObject.type |
||
c: 70de3c2 | moritz++ | util/sync-build-log: Avoid syncing the results of a failed build |
|||
retupmoca | moritz: also, now nagging you again about LWP::Simple PR :) | 19:27 | |
19:27
virtualsue joined,
Hor|zon left
|
|||
moritz | retupmoca: looking... | 19:29 | |
retupmoca: first piece of feedback: I'd appreciate separate features in separate pull requests | |||
retupmoca: but that won't stop me from merging them :-) | |||
retupmoca | sorry, will split them in the future | 19:30 | |
19:31
alini joined
|
|||
pmichaud | my p5 question isn't driven by expected migration as much as within the past week I've already fielded a number of questions of the form "what's Perl 6's equivalent to Perl 5's ______?" So it's at least a frequently asked question. | 19:32 | |
moritz | pmichaud: that *is* a good reason for putting it into the docs | ||
pmichaud: please collect the specific quesitions you were ask (as far as you remember them) | 19:33 | ||
pmichaud | well, one was about unpack | ||
another was __FILE__ | |||
19:34
Kristien left
|
|||
pmichaud | another one that comes up (but is already documented) is "length" | 19:34 | |
another one (that I didn't have an answer for) was Moose's "required" flag on attributes | 19:37 | ||
jnthn | has $.foo = die "You must have a foo"; # or write an 'is required' trait that does the right thing; I'm sure there'll be modules | ||
19:37
Hor|zon joined
|
|||
pmichaud | jnthn++, but I'm also interested in seeing that documented/answered somewhere. the "required" question has come up for me at least twice within the past few months | 19:38 | |
anyway, these questions just made me wonder about a p5-to-p6 index of some sort. | 19:39 | ||
jnthn | It probably makes sense to have a place to collect them. | 19:40 | |
pmichaud | I'm afk for a while... probably until Monday-ish | ||
jnthn | Have a good weekend | 19:41 | |
[ptc] | moritz++ # blog | 19:42 | |
dalek | c: 82740f8 | paultcochrane++ | lib/Language/objects.pod: Typographical etc. corrections to objects.pod |
19:44 | |
c: cd2bed6 | paultcochrane++ | lib/Language/objects.pod: Wrap paragraphs consistently in objects.pod |
|||
c: e340b18 | paultcochrane++ | / (2 files): Merge branch 'master' of github.com:perl6/doc |
|||
jdv79 | whoa. wasn't there a perl 5 wiki that ?Schwern? spearheaded? i thought there was also a perl 6 wiki that looked similar. i can't find either. | 19:45 | |
muraiki | yeah, a wiki might be a nice way to let people contribute to docs | 19:49 | |
19:50
FROGGS joined
|
|||
hoelzro | it would be nice to be able to easily find information on operators, or p5->p6 info (ex. "p5: $0") | 19:51 | |
FROGGS | std: $0 | ||
camelia | std f9b7f55: OUTPUT«ok 00:00 135m» | ||
jdv79 | it looks like the perl5 wiki was taken down | 19:52 | |
skids | jdv79: The old stuff on www.perlfoundation.org/perl6/index....umentation is still up, if you meant that. | ||
19:53
dustinm` joined
|
|||
jdv79 | oh, look at that. | 19:53 | |
19:53
_mg_ left
|
|||
muraiki | is this "old stuff" in the sense of "stuff that's out of date and misleading?" :) | 19:54 | |
skids | Some of it. | ||
Some could use to be harvested into docs, with some proofreading, probably. | |||
19:55
Kristien joined
|
|||
skids | But don't bother to improve on that site because everyone hated editing using it. | 19:55 | |
muraiki | haha | 19:56 | |
jdv79 | wow, its like peering back 5/10 years ago | 19:57 | |
all old | |||
Util_ | moritz++ # For blog, p.s. doc.perl6.org is very nice | ||
moritz: re: "searching for variables, syntactic constructs and keywords isn't easily possible" | 19:58 | ||
Yesterday, I was thinking about this need, and started writing to meet it, but then I found these: | |||
www.perlfoundation.org/perl6/index.cgi?witch What Is This Character Here (WITCH) | |||
www.perlfoundation.org/perl6/index....dex_tablet | |||
Just FYI, as something to steal entries or organizational ideas from. | |||
19:58
Util_ is now known as Util
|
|||
ugexe | is there an easier way to search a Buf for a specific (in this case 3 bytes) sub-buffer other than using a loop like `for ^$buf.bytes { return 'utf8' if $buf.subbuf($_, 3) eqv Buf.new(0xEF, 0xBB, 0xBF) }`? | 19:58 | |
Util | Oh, I see conversation has outpased me :) | 19:59 | |
FROGGS | ugexe: this might be faster: github.com/sergot/http-useragent/b...nt.pm6#L54 | ||
jdv79 | i think some of that is on www.perl6.org/documentation/ already | 20:00 | |
Util | ugexe: will the .subbuf method work for your purpose? | ||
ugexe | it only needs to search the first 1024 bytes, so speed isnt too important. mostly just trying to do it as perl6y as possible | 20:03 | |
FROGGS | ugexe: I'd like to see a method on Blob or so for that purpose | 20:04 | |
20:04
dustinm` left
|
|||
ugexe | fwiw its something im working on for decoding detection for http::useragent | 20:04 | |
moritz | fwiw a possible workaround is to decode as latin-1, and then use string methods | 20:05 | |
ugexe | im not sure about latin-1, but for instance decoding baidu.com as 'ascii' caused an error | 20:06 | |
moritz | ugexe: ascii != latin-1 | ||
ugexe: ascii maps only half of the possible bytes | |||
ugexe: but latin-1 (or at least our implementation of it) maps all | 20:07 | ||
ugexe | ah. i almost considered using unpack('A1024') | ||
i assume for someone in the US that is likely using latin-1? | 20:08 | ||
moritz assumes so too | |||
FROGGS | TimToady: what do you think, do we want a .index method on Buf? | 20:09 | |
Util | ugexe: Idiomatic Perl 6 that does not need to be efficient... Hmmm. Untested: | ||
return 'utf8' if any(map {$buf.subbuf($_, 3)}, (^( [max] $buf.bytes - 3, 1024))) eqv Buf.new(0xEF, 0xBB, 0xBF) | |||
geekosaur | danger will robinson! the byte order mark is only defined in utf16, not utf8! | 20:12 | |
20:13
darutoko left
|
|||
dalek | kudo/native-ref: 6f5d937 | jnthn++ | / (2 files): Add a NativeRefHOW. |
20:13 | |
kudo/native-ref: 24974ca | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.nqp: Basic bootstrap of various native ref types. |
|||
20:14
espadrine joined
|
|||
FROGGS | I think that is quite 6y: | 20:15 | |
m: my $a = lines[0].encode; my $b = utf8.new(0x6d, 0x61, 0x6f); say $a.list.first-index({ $a.list[(state $i = -1) .. $i++ + $b.elems] ~~ $b.list }); | |||
20:15
dustinm` joined
|
|||
camelia | rakudo-moar 8e9114: OUTPUT«25» | 20:15 | |
ugexe | what does `my $a = lines[0].encode;` do? set the default encoding to something? | 20:20 | |
FROGGS | ugexe: encodes the given string to a Buf type (utf8 by default) | ||
m: say lines[0] # just some sample input | |||
camelia | rakudo-moar 8e9114: OUTPUT«Céad slán ag sléibhte maorga Chontae Dhún na nGall» | ||
20:20
rurban__ left
|
|||
FROGGS | m: say lines[0].encode | 20:20 | |
camelia | rakudo-moar 8e9114: OUTPUT«utf8:0x<43 c3 a9 61 64 20 73 6c c3 a1 6e 20 61 67 20 73 6c c3 a9 69 62 68 74 65 20 6d 61 6f 72 67 61 20 43 68 6f 6e 74 61 65 20 44 68 c3 ba 6e 20 6e 61 20 6e 47 61 6c 6c>» | ||
FROGGS | see | 20:21 | |
ugexe | ah gotcha | ||
skids | I always get envious when I see .gist use 0x< > | 20:22 | |
FROGGS | would be nice to have that as literals | 20:25 | |
skids | I'm happy to wait for 6.1.0 for that though :-) | ||
FROGGS | :o) | ||
me too | |||
20:34
Ugator left
|
|||
retupmoca | moritz++ # accepting PR | 20:41 | |
20:41
dustinm` left
20:43
kjs_ left
|
|||
moritz | jnthn: p-spectest and j-spectest are both clean after a 6pe-mop merge | 20:45 | |
20:45
alini left
|
|||
moritz | jnthn: testing star now, though it's slooow, and I don't know the exact expected outcomes (iirc both p-star and j-star aren't clean) | 20:46 | |
20:51
kjs_ joined
|
|||
jnthn | moritz++ | 20:52 | |
20:54
kjs_ left
|
|||
[Coke] | moritz++ indeed. | 20:58 | |
21:00
rurban__ joined
|
|||
moritz | [Coke]: fwiw parrot star doesn't hang anymore during module build (nor during test), so it would be awesome if you could re-enable it for your daily star runs | 21:04 | |
21:06
ingy left,
ingy joined
21:09
Rounin left
21:11
bobv joined
|
|||
hoelzro | would if my $value = routine() { ... } be considered an anti-pattern? | 21:15 | |
coming from Perl 5, I can see how a lot of others would make that mistake | 21:16 | ||
jnthn | hoelzro: That's a parse error, isn't it? | 21:17 | |
hoelzro | m: if my $a = 3 { say $a } | ||
camelia | rakudo-moar 7f2085: OUTPUT«3» | ||
jnthn | m: oh | ||
camelia | rakudo-moar 7f2085: OUTPUT«===SORRY!=== Error while compiling /tmp/DqLl29Qb8KUndeclared routine: oh used at line 1. Did you mean 'on'?» | ||
moritz | m: if my $v = sin(42) { say $v } | ||
jnthn | duh :) | ||
hoelzro | m: if my $a = 3 { say $a } ; say $a | ||
camelia | rakudo-moar 7f2085: OUTPUT«-0.916521547915634» | ||
rakudo-moar 7f2085: OUTPUT«33» | |||
jnthn | Misread :) | ||
moritz | hoelzro: well, if function() -> $value { ... } is certainly more idiomatic | 21:18 | |
hoelzro | jnthn: I was thinking about if a warning should be issued for that (not likely by default, though) | ||
jnthn | But yeah, you probably want if 3 ->$a { say $a } | ||
hoelzro | jnthn: exactly | ||
moritz chants linter, linter, linter | |||
jnthn | Not sure it wants a warning under normal conditions, feels more like a critic style thing | ||
hoelzro | jnthn, moritz: right | ||
is there an existing linter project? | 21:19 | ||
psch | it's not a mistake as such, is it? | ||
hoelzro | psch: well, to me, it would be | ||
psch | hoelzro: because the var stays alive outside the if scope? | 21:20 | |
(if it does.. :s ) | |||
m: sub foo { "bar" } ; if my $baz = foo() { say $baz }; say $baz | |||
camelia | rakudo-moar 7f2085: OUTPUT«barbar» | ||
psch | i don't disagree that it's not idiomatic, fwiw | ||
hoelzro | because if I use if(my $value = routine()) { ... } in Perl 5, I expect $value to go out of scope after the if block | ||
in Perl 6, it does *not* go out of scope | 21:21 | ||
psch | i guess i agree with moritz and jnthn, too much visibility for a variable seems like something for a linter | 21:22 | |
hoelzro | that sounds good to me | ||
dalek | kudo/native-ref: 4d1b9de | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.nqp: Register native reference types with HLL. |
21:25 | |
japhb | Is there a tempfile/tempdir generator in core? I know I'm tired, but 1. I could swear we had one, and 2. I'm not seeing it in the grep results (just the thing in IO::Spec that returns the machine tmp dir for each OS) | 21:26 | |
psch | japhb: ecosystem has File::Temp | 21:27 | |
japhb | psch++ # Thanks | 21:30 | |
21:30
dj_goku_ joined,
dj_goku left
21:35
[Sno] left
21:40
grettir joined
|
|||
dalek | kudo/native-ref: 3c56352 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.nqp: Configure native ref types as containers. |
21:40 | |
21:40
xfix left
21:41
dj_goku_ left
21:42
[Sno] joined
21:43
bobv left
|
|||
dalek | ar: aece474 | moritz++ | docs/announce/2015.01.md: release announcement: mention that parrot support maybe suspended/dropped in future |
21:44 | |
21:44
beastd|2 joined
21:46
dj_goku joined,
dj_goku left,
dj_goku joined
21:47
beastd left
|
|||
moritz | moritz.faui2k3.org/tmp/rakudo-star-...RC1.tar.gz # R* hopefully final release candidate | 21:48 | |
skids | started it building on my 32-bit system. If it doesn't abort, it might still be running when I get home in an hour :-) | 21:56 | |
22:01
grettir left,
skids left
|
|||
Peter_R | So what's the rational for stuff in if conditions not being scoped to the if? | 22:04 | |
22:04
FROGGS_ joined
|
|||
psch | Peter_R: the my in "if my $a" is scope at the same level as the if | 22:04 | |
Peter_R | Indeed, but why | ||
jnthn | Peter_R: Simpler scoping rules: things are declared inside the pair of curlies you see them in. | 22:05 | |
moritz | Peter_R: scoping is tied to blocks of curlies and their signatures | ||
psch | Peter_R: while the formal parameter to the block in "if foo() -> $x { }" is scoped to the block | ||
Peter_R | e.g. I find my $a; if blah to be more intuitive | ||
psch | because "-> $x { }" is general "this is a param to the block" syntax | ||
moritz | Peter_R: and nothing stops you from writing that | ||
timotimo | moritz: how do we feel about a comments/questions section in docs.perl6.org? | 22:06 | |
moritz | timotimo: negatively | ||
Peter_R | psch, as long as there is a way and it isn't too bad to use, sounds alright :) | ||
moritz | timotimo: the comments often get out of date, and then I don't know what to do with them. And they need to be modreated. | 22:07 | |
timotimo: if you are looking for ways to make contributions easier, a link to the respective source file on github would be a better way | |||
22:07
FROGGS left
|
|||
Peter_R | Hmm, this is actually better than the P5 way, because I'll never have to write my $persists; if($persists = ... | 22:08 | |
timotimo | OK | 22:09 | |
22:09
Mouq joined
|
|||
hoelzro | what powers the search bar on doc.perl6.org? | 22:11 | |
raydiak | hoelzro: jqueryui autocomplete widget + static generation at htmlify time | 22:13 | |
hoelzro | oh, so the terms are embedded in a JS file, or in the HTML? | ||
raydiak | in the js | ||
github.com/perl6/doc/blob/master/t...emplate.js | |||
hoelzro | interesting | ||
raydiak | and github.com/perl6/doc/blob/master/h...fy.p6#L529 | 22:14 | |
the end result is no extra traffic once the js is cached, and zero server load for the searches | |||
hoelzro | right, it's quite clever | 22:15 | |
I'm thinking about the conversation earlier, about moritz' blog post | |||
raydiak | I thought so too...I didn't design it, just integrated it | ||
raydiak backlogs | |||
hoelzro | (about 2.5h ago) | 22:16 | |
22:16
alini joined
|
|||
moritz | perlgeek.de/blog-en/perl-6/2015-doc...6-org.html that's the post | 22:16 | |
hoelzro | one thing I think about is "what if someone searches for ':'"? | 22:17 | |
or 'colon' | |||
22:18
adu left
|
|||
raydiak | well it used to handle all kinds of funny chars, but over time things have gotten out of sync and urls are wrong depending on what generated them | 22:18 | |
hoelzro | it would be nice if we had an interface that described invocants in signatures, paren-less call syntax, labels, etc | ||
I was thinking about other types of searches users might do (based on what I've asked, thought of, and seen here) | 22:19 | ||
raydiak | it would be nice if it generated a more extensive index perhaps, instead of just types and routines like moritz++'s blog says | ||
hoelzro | mhmm | ||
I feel like operators would be a good (yet difficult) next step | |||
moritz | hoelzro: maybe a bit like we handle routines, for example doc.perl6.org/routine/type | ||
hoelzro: that's simply the docs from all routines called 'type', and where they come from | 22:20 | ||
hoelzro | yeah, that would work | ||
moritz | we could the same for syntax/colon or syntax/: | ||
hoelzro | the canonical URL for ':' could be doc.perl6.org/operator/colon | ||
ooo, I like "syntax" better | |||
moritz | ... once we actually have the description, and index it will the relevant characters | ||
hoelzro | moritz: yes, that's the real work, isn't it? =) | 22:21 | |
moritz | anyway, time for sleep here. See y'all tomorrow | ||
hoelzro: aye | |||
& | |||
raydiak | g'night moritz | ||
hoelzro | o/ moritz | ||
timotimo | moritz: how do we feel about linking to this here IRC channel from docs.perl6.org more prominently? or maybe have some sort of "private-ish comment thread per page" thing? | ||
oh, i should get to bed, too! | |||
o/ | |||
hoelzro | timotimo: I was thinking about something like that as well | ||
kind of like perlbot on #perl | 22:22 | ||
raydiak | good night timo | ||
hoelzro | o/ timotimo | ||
jnthn | 'night, moritz++ | 22:24 | |
And timotimo :) | |||
22:27
kaare_ joined,
colomon joined
22:28
colomon left
22:29
colomon joined
22:30
grettir joined
|
|||
Mouq | moritz++ | 22:34 | |
22:34
Araq joined
22:35
pmurias joined
|
|||
Mouq | Re: nativetypes: htmlify *shouldn't* care what the filename is... it's designed to be able to read definitions (`=h1 class int`) where ever it finds them, so something like "lib/Type/native_int.pod" *should* work fine. This hypothesis is however untested | 22:38 | |
Mouq will work to document htmlify this weekend | |||
22:39
dolmen joined
|
|||
raydiak | .oO( metadocumentation ) |
22:39 | |
Mouq | Or perhaps, more generally, adding docs for contributing to the docs | ||
raydiak: Beat me to the punch :9 | |||
raydiak | :) | ||
Mouq has to do some cleaning first, alas | 22:40 | ||
22:42
rindolf left
22:43
nebuchadnezzar left
22:45
telex left,
nebuchadnezzar joined
22:46
telex joined
|
|||
raydiak | wrt search I wonder if we should have an indirection page for everything (not just syntax), and build a per-search-term result page which lists all doc pages containing a hit (sorted by hits); also wonder how much execution time that would add to htmlify | 22:46 | |
22:47
Araq left
|
|||
raydiak | easier even, have a big index listing page somewhere like you find in the back of a book, and have an 'Index: search-term' result listed for each term in the index which just links to an anchor on the big index page | 22:49 | |
(marginally easier, anyway) | 22:50 | ||
22:50
adu joined
|
|||
jnthn | If you're already doing jQuery UI for the search to work at all, could just generate a JSON blob mapping term to result set... | 22:50 | |
And use that blob to project out the list of terms for completion, and to generate the result list | 22:51 | ||
22:54
rurban left
|
|||
Mouq | raydiak: Don't we already do that with the disambiguation pages? | 22:57 | |
22:57
virtualsue_ joined
|
|||
Mouq | Oh, per-search-term | 22:57 | |
raydiak | Mouq: we have disambiguation pages? | ||
Mouq | For example: doc.perl6.org/routine/temp | 22:58 | |
22:58
virtualsue left,
virtualsue_ is now known as virtualsue
|
|||
Mouq | Or just doc.perl6.org/temp | 22:58 | |
raydiak | oh I haven't seen that...then yes perhaps we are :) | 22:59 | |
Mouq wonders why we don't seem to have an infix:<+> in the docs | |||
Weird... | 23:02 | ||
Mouq submits an issue for this bug | |||
23:09
rurban joined,
rurban left
|
|||
Mouq | So, htmlify has bulked up to an ungainly 743 hardly commented lines. I'm planning to review the code and pull what's sensible into individual modules. | 23:12 | |
23:13
virtualsue left
23:14
rurban__ left,
colomon left
23:15
colomon joined
|
|||
Mouq | Also, we have several files in lib/Perl6/ and lib/Pod that could be reclassified into their own repositories. One advantage of this is that they'd be more likely to be installed via panda, aka compiled, aka faster | 23:16 | |
jnthn | sleep; 'night | 23:23 | |
23:24
dolmen left
|
|||
raydiak | g'night jnthn...sorry I didn't get back to your suggestion, I'm still mulling it over...sent my wheels spinning in several different directions :) | 23:24 | |
Mouq | night jnthn :0 | 23:25 | |
:) | |||
* | |||
23:28
BenGoldberg joined,
colomon left,
BenGoldberg left
23:29
BenGoldberg joined
|
|||
Mouq | Inspired by the conversation a few nights ago about adding to core, I created github.com/Mouq/p6-Syntax-GetMethod | 23:30 | |
Please review :) | |||
23:34
colomon joined
23:40
colomon left
|
|||
BenGoldberg | m: class Human { has $!name; method whoami { $!name } }; say &Human::whoami; | 23:45 | |
camelia | rakudo-moar 7f2085: OUTPUT«(Any)» | ||
BenGoldberg | m: class Human { has $!name; method whoami { $!name } }; say &Human::asdfsadf; | ||
camelia | rakudo-moar 7f2085: OUTPUT«(Any)» | ||
BenGoldberg | What's happening there? | 23:46 | |
Mouq | p6: say &Huh::wtf | ||
camelia | rakudo-{parrot,moar} 7f2085: OUTPUT«(Any)» | ||
Mouq | p6: say &Huh::wtf; module Huh { our sub wtf { 42 } } | 23:47 | |
camelia | rakudo-parrot 7f2085: OUTPUT«sub wtf () { #`(Sub|5227838163442078284) ... }» | ||
..rakudo-moar 7f2085: OUTPUT«sub wtf () { #`(Sub|77553728) ... }» | |||
Mouq | Looks like something isn't doing parse-time checking properly | 23:48 | |
BenGoldberg | m: module Foo { }; class Foo { }; say 1; | ||
camelia | rakudo-moar 7f2085: OUTPUT«===SORRY!=== Error while compiling /tmp/un_TACniGdRedeclaration of symbol Fooat /tmp/un_TACniGd:1------> module Foo { }; class Foo ⏏{ }; say 1; expecting any of: generic role» | ||
BenGoldberg | If it's illegal to have both a module and a class of the same name, then we could use the same syntax for finding a function in a module and finding a method in a class. | 23:49 | |
Mouq | m: class Foo { method bar { 42 }; our sub bar { "not 42" } }; my &bar = Foo::bar; say bar | 23:50 | |
camelia | rakudo-moar 7f2085: OUTPUT«Type check failed in assignment to '&bar'; expected 'Callable' but got 'Str' in block <unit> at /tmp/YwVE8EOR0x:1» | ||
Mouq | Er | ||
m: class Foo { method bar { 42 }; our sub bar { "not 42" } }; my &bar = &Foo::bar; say bar | |||
camelia | rakudo-moar 7f2085: OUTPUT«not 42» | ||
23:52
tgt left
23:54
skids joined
|
|||
BenGoldberg | m: class Human { has $!name; method whoami { $!name }; our sub asdf { 'jkl;' }; }; say &Human::asdf; | 23:54 | |
camelia | rakudo-moar 7f2085: OUTPUT«sub asdf () { #`(Sub|71062016) ... }» | ||
BenGoldberg | m: class Human { has $!name; method whoami { $!name }; our sub asdf { 'jkl;' }; }; say &Human::asdf :method; | ||
camelia | rakudo-moar 7f2085: OUTPUT«sub asdf () { #`(Sub|60113488) ... }» | ||
BenGoldberg | Does that :method (which obviously doesn't do anything here) get passed to say? | ||
Because adding a named parameter is, imho, probably more perl6-ish than adding yet more syntax... | 23:57 | ||
Mouq | BenGoldberg: I'm not really sure where that method's going. It gets parsed as a fake_infix | 23:58 | |
It looks like it just gets thrown away? | 23:59 | ||
:/ | |||
23:59
beastd|2 left
|