»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend! | feather will shut down permanently on 2015-03-31 Set by jnthn on 28 February 2015. |
|||
00:13
colomon joined
|
|||
LonelyGM | good night #perl 6 :) | 00:16 | |
vendethiel | g'night | 00:20 | |
00:21
gfldex left
00:24
aborazmeh joined,
aborazmeh left,
aborazmeh joined
00:25
LonelyGM left
00:43
aborazmeh left
00:48
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
dalek | kudo-star-daily: fba1aaf | coke++ | log/ (2 files): today (automated commit) |
00:52 | |
kudo-star-daily: 482f76b | coke++ | log/ (2 files): today (automated commit) |
|||
rl6-roast-data: 2d21a10 | coke++ | / (9 files): today (automated commit) |
|||
rl6-roast-data: 66d15a2 | coke++ | / (9 files): today (automated commit) |
|||
00:57
skids joined,
eli-se left
01:01
aborazmeh left
01:04
aborazmeh joined,
aborazmeh left,
aborazmeh joined,
isBEKaml left
01:06
BenGoldberg left,
isBEKaml joined
01:12
Rounin left
01:50
grondilu left
|
|||
nbdsp | .moon | 02:04 | |
yoleaux | New Moon (0.01) | ||
02:05
bcode joined
02:06
noganex joined
02:09
noganex_ left
|
|||
dalek | ecs: 9831c81 | skids++ | S03-operators.pod: Remove an extra word. |
02:16 | |
02:28
atta_ is now known as atta
02:49
nbdsp left
03:20
colomon left
03:29
BenGoldberg joined
03:32
BenGoldberg left
03:45
cschwenz joined,
telex left
03:46
telex joined
03:51
egrep left
03:52
egrep joined
03:56
[ptc] left
03:59
[ptc] joined
04:01
egrep left,
egrepnix joined
04:02
egrepnix is now known as egrep,
araujo joined
04:09
egrep left
04:11
egrep joined
04:37
aborazmeh left
04:39
isBEKaml left
04:40
isBEKaml joined
05:00
laouji joined
05:03
aborazmeh joined,
aborazmeh left,
aborazmeh joined
05:07
aborazmeh left
05:14
tinyblak joined
05:19
mr-foobar left
05:21
mr-foobar joined
05:25
aborazmeh joined,
aborazmeh left,
aborazmeh joined
05:45
Patterner joined
05:49
Psyche^ left
|
|||
cschwenz | From yesterday: 19:28 raydiak looks like spec changes..."source-url" was the old place to declare it, now specs say it goes in "source" in a "support" subobject...but Cairo's meta has "source-url" inside "support", so not valid either the old or new way I guess | 05:54 | |
where is the referenced spec? | |||
skids | probably design.perl6.org/S22.html | 06:01 | |
cschwenz | thanks :-) | 06:04 | |
doc.perl6.org/language/modules is in conflict with design.perl6.org/S22.html#DISTRIBUTION . who (or what process) updates doc.perl6.org/ ? | 06:10 | ||
skids | doc is in github pel6/doc repo. I don;t know if the update scripts are in there as well. Changes to the repo auto-update within 10 minutes or so. | 06:11 | |
cschwenz | thanks! :-) | 06:12 | |
skids | However, there is a dichotomy between modules.perl6.org and S22. | ||
cschwenz | ??? | ||
can you explain the dichotomy? | |||
skids | S22 is intended for CPAN, IIRC, and modules.perl6.org is "the ecosystem" which predates that. | 06:13 | |
isBEKaml | I think he means thatThere are no start and end dates. You can join at any time and start learning. You can pick a learning path of your choosing and learn at your own pace. modules.perl6.org do not always keep up with spec changes in S22 | ||
grr | |||
isBEKaml really should fix the touch pad | |||
skids | (predates not CPAN itself but S22) | ||
cschwenz | does panda track S22? | ||
isBEKaml | I think he means that modules.perl6.org do not always keep up with spec changes in S22 | ||
skids | I seem to recall panda getting a few updates for S22 but likely not all the way, yet. | 06:15 | |
cschwenz | hmm | ||
skids | There's a lot of work needed in this area. | 06:16 | |
cschwenz | so, when creating a module for deployment… there are three moving targets to take into consideration? (S22, de facto, and panda) | ||
skids | Well, the latter two are mostly the same. | 06:19 | |
For now you'll want a META.info in the current ecosystem format and then a META6.json in the S22 format. | |||
cschwenz | is there a versioned copy of S22? | ||
skids | Not sure they are stamping versions on the desgn docs quite yet. | 06:20 | |
cschwenz | :-( | ||
skids | If you look at Sum (one of my modules) it has both files, if you need examples. | ||
cschwenz | okay, will do | 06:21 | |
skids | The design docs are github perl6/specs. | ||
06:23
kaare_ joined
06:30
araujo left
06:32
rindolf joined
06:35
skids left
06:43
araujo joined
06:45
araujo left
06:46
aborazmeh left,
[TuxCM] left
06:49
isBEKaml left
06:50
aborazmeh joined,
aborazmeh left,
aborazmeh joined
07:00
lizmat joined
|
|||
lizmat | good *, #perl6 from the last day of the QA Hackathon on Berlin | 07:03 | |
*in rather :-) | |||
nwc10 | good *, lizmat | 07:04 | |
please pass on my good *s to everyone else. | |||
I hope tinita is still feeling sane. | |||
cschwenz | good *, lizmat :-) | 07:07 | |
lizmat | nwc10: tinita_ is still asleep, I think... :-) | 07:08 | |
or having a quiet breakfast somewhere :0) | 07:09 | ||
07:11
FROGGS joined
|
|||
cschwenz | when creating classes, both JSON::Tiny and Sum:: have their classes start with "class X::…", why is the X there? i would have thought the main class name would have been the same as either the module or file name. | 07:12 | |
s/main/primary/ | |||
FROGGS | lizmat / tadzik / bartolin_: I'm going to stay at home.... does not make much sense to spend 2+ hours in buses to be at the betahaus for not more than 3 hours | ||
lizmat | :-( but understandable :-( | 07:13 | |
07:13
minde joined
|
|||
FROGGS | :/ | 07:13 | |
nwc10 | were the busses busses yesterday too? (or trains?) | 07:14 | |
lizmat | they were busses all the time, I understand | ||
although FROGGS only lives 1km outside of Berlin, it's still an hour's ride from his place to the Betahaus | 07:15 | ||
(Berlin is not small) | |||
FROGGS | would take more time on sunday, but I dont know how much | 07:16 | |
nwc10 | I thought that only London was London. If you see what I mean. | 07:17 | |
I didn't realise that Berlin was just as epic | 07:18 | ||
cschwenz | <soapbox> if we want truly liveable mega-cities, then we will need a shift in thinking about how we construct cities. (current modes of building cities max out around 1 million people) </soapbox> | 07:20 | |
FROGGS | if there were no railworks it would take about 30 minutes to the center on business days, and about 45 to the betahaus | ||
07:20
[TuxCM] joined
07:21
minde left
|
|||
nwc10 | aha, so I was sort of guessing right about rail works? | 07:25 | |
FROGGS | probably... I did not get the reference about london :o) | 07:26 | |
Timbus | cschwenz, generally classes that begin with X:: are exception classes | 07:30 | |
nwc10 | FROGGS: it takes ages to get anywhere, unless it happens to align exactly with key transport routes | 07:33 | |
well, from anywhere arbirary to anywhere arbitrary else | |||
bartolin_ | g'morning, #perl6 | 07:34 | |
FROGGS | :o) | ||
morning bartolin_ | |||
bartolin_ | o/ FROGGS | ||
07:37
aborazmeh left
|
|||
FROGGS | okay I learned something: the name of the SC one deserializes must be the same as the one that gets serialized | 07:37 | |
07:38
cschwenz1 joined
|
|||
cschwenz1 | Timbus: what do you mean by exception classes? | 07:39 | |
FROGGS | m: say X::AdHoc | ||
camelia | rakudo-moar 1edd51: OUTPUT«(X::AdHoc)» | ||
FROGGS | cschwenz: this ^^ | ||
an exception type | |||
cschwenz1 | FROGGS: can you point me to some tutorials/docs/whatever where i can read more about them? | 07:40 | |
lizmat | doc.perl6.org/type.html perhaps ? | 07:41 | |
FROGGS | cschwenz: www.youtube.com/watch?v=rymhMkCUtuA | ||
cschwenz: moritz.faui2k3.org/files/talks/2013...xceptions/ | 07:42 | ||
07:42
cschwenz left
|
|||
cschwenz1 | thanks! :-) | 07:42 | |
07:45
cschwenz1 left,
cschwenz joined
07:48
darutoko joined
07:53
rindolf left,
anaeem1 joined
|
|||
dalek | ast: 2be443b | usev6++ | S03-sequence/basic.t: Add tests for containers returned from seq iterator |
07:56 | |
07:56
_mg_ joined
|
|||
labster | m: Str.Str.codes; say "alive"; | 07:59 | |
camelia | rakudo-moar 1edd51: OUTPUT«use of uninitialized value of type Str in string context in block <unit> at /tmp/o2s4ZeqSSF:1alive» | ||
07:59
_mg_ left
|
|||
labster | m: m: Str.codes; say "alive"; | 07:59 | |
camelia | rakudo-moar 1edd51: OUTPUT«Invocant requires a 'Str' instance, but a type object was passed. Did you forget a .new? in method codes at src/gen/m-CORE.setting:8603 in block <unit> at /tmp/isVWcUVTb8:1» | ||
labster | looks like something is missing a multi candidate. | 08:01 | |
lizmat | well.... | 08:02 | |
Mu.Str returns '' | |||
labster | also it's kinda hilarious that it suggests fixing CORE.setting | ||
Because that's what I'm doing. | 08:04 | ||
lizmat | labster: removing D: from Str.pm lines 61,62,63 ? | ||
labster: cause that fixes it for me | 08:05 | ||
08:05
RabidGravy joined
|
|||
labster | Well, Str.codes should return 0 with a warning | 08:06 | |
lizmat | $ 6 'Str.Str.codes' | ||
Invocant requires a 'Str' instance, but a type object was passed. Did you forget a .new? | |||
should it? | |||
labster | .chars does, it's the same idea. | 08:07 | |
yoleaux | ' , . a d e h i m o s t | ||
labster | .botsnack | ||
yoleaux | :D | ||
synbot6 | om nom nom | ||
labster | m: Str.chars.say | 08:09 | |
camelia | rakudo-moar 1edd51: OUTPUT«use of uninitialized value of type Str in string context in block <unit> at /tmp/O8fB1CG30j:10» | ||
08:10
cschwenz1 joined,
cschwenz1 left,
anaeem1__ joined
08:11
cschwenz1 joined,
anaeem1 left
|
|||
labster | Is str $!value in class Str equivalent to the result of nqp::unbox_s()? | 08:11 | |
lizmat | yeah, was just looking at that, but yeas | 08:12 | |
*yes | |||
according to BOOTSTRAP.nqp anyway | |||
labster | Because I think there are a lot of methods in Cool.pm that can be made faster by removing the unboxing op in Str.pm. | 08:13 | |
lizmat | Str.HOW.add_attribute(Str, BOOTSTRAPATTR.new(:name<$!value>, :type(str), :box_target(1), :package(Str))); | ||
labster | Yeah, I saw that line, just didn't know how to interpret it :) | 08:14 | |
08:14
cschwenz left,
cschwenz1 left
|
|||
lizmat | has str $!value is box_target # in Perl 6 code | 08:14 | |
08:15
anaeem1__ left
|
|||
labster | Yeah, it's the "is box_target" part I'm less clear on. I don't really know NQP, but I think I'm learning. | 08:15 | |
08:16
araujo joined,
anaeem1_ joined
|
|||
lizmat | afaik, box_target is what is used to encapsulate self | 08:16 | |
so nqp::unbox_s(self) is the same as $!value | |||
(someone please correct me if I'm wrong) | 08:17 | ||
FROGGS: making CURLI even more lazy by doing the from_json (or whatever we're using) inside candidates() once? | 08:18 | ||
instead of in BUILD ? | |||
labster | Well, for now, the opinion of lizmat++ is good enough for me. I'm going to try moving some methods from Cool.pm to Str.pm and see if I can find some speed improvements. | 08:22 | |
08:23
MARTIMM joined
08:27
gfldex joined
|
|||
tadzik | FROGGS: ah, okay :( | 08:29 | |
08:30
cschwenz joined
|
|||
FROGGS | lizmat: yes, that might make sense | 08:33 | |
unless the common case is to use a module | |||
lizmat | yes, but probably not from all CUR's at once | 08:34 | |
08:34
rindolf joined
08:35
cschwenz is now known as cschwenz_
|
|||
FROGGS | lizmat: true | 08:35 | |
lizmat | FROGGS: especially if you're developing a module, it will most likely live in a CURLF anyway | ||
08:35
cschwenz_ is now known as cschwenz
|
|||
lizmat | and not get to the CURLI | 08:35 | |
FROGGS | yes, on the other hand you probably load the modules from the biggest CURLI | 08:36 | |
(non-dev stuff) | |||
08:36
cschwenz is now known as cschwenz_
|
|||
lizmat | will, I think the extra check would be dwarved by the CPU used for the search | 08:36 | |
so the gain of not having to do it when *not* needed, could be significant in many use situations | 08:37 | ||
one could even go so far as to create a separate CURLI for e.g. the whole of CPAN / ecosystem | |||
08:37
cschwenz_ is now known as cschwenz1
|
|||
lizmat | and a smaller CURLI with the ones you need regularly :-) | 08:38 | |
08:38
leont joined,
cschwenz1 is now known as cschwenz
|
|||
bartolin_ | FROGGS: wrt the freebsd failure with closing a pipe: do you think the following would be sane: github.com/usev6/MoarVM/commit/a3c1c21987 | 08:38 | |
FROGGS: (it passes spectests on freebsd and linux for me) | 08:39 | ||
08:44
MARTIMM left
08:45
anaeem1_ left,
anaeem1 joined
08:49
cschwenz left
08:50
cschwenz joined,
anaeem1 left
|
|||
dalek | kudo/nom: 788834d | lizmat++ | t/harness: Don't show Inline::Perl5 message for specific test |
08:51 | |
FROGGS | bartolin_: I dunno | ||
nwc10: can you judge? github.com/usev6/MoarVM/commit/a3c1c21987 | |||
08:55
eli-se joined
|
|||
masak | good antenoon, #perl6 | 08:57 | |
moritz | \o masak | 08:58 | |
08:58
nbdsp joined,
travis-ci joined
|
|||
travis-ci | Rakudo build passed. Elizabeth Mattijsen 'Don't show Inline::Perl5 message for specific test' | 08:58 | |
travis-ci.org/rakudo/rakudo/builds/59101185 github.com/rakudo/rakudo/compare/1...8834d4606a | |||
08:58
travis-ci left
|
|||
FROGGS | hi masak | 08:58 | |
08:59
dolmen joined
|
|||
moritz | m: say unival [1] | 09:00 | |
camelia | rakudo-moar 1edd51: OUTPUT«Cannot call unival(Array); none of these signatures match: (Str $str) (Int $code) in block <unit> at /tmp/dSCSbOzJT0:1» | ||
moritz | m: say univals [1] | ||
camelia | rakudo-moar 1edd51: OUTPUT«Cannot call univals(Array); none of these signatures match: (Str $str) in block <unit> at /tmp/wAeMoJMQvY:1» | ||
moritz | m: say unival "12foo" | 09:01 | |
camelia | rakudo-moar 1edd51: OUTPUT«1» | ||
moritz | m: say [1].unival | ||
camelia | rakudo-moar 1edd51: OUTPUT«Cannot call unival(Int); none of these signatures match: (Str $str) (Int $code) in method unival at src/gen/m-CORE.setting:4755 in block <unit> at /tmp/JO3PQphJ2d:1» | ||
moritz | it's a bit weird to have method unival in Cool, but not coerce | ||
I mean, what's the point? | 09:02 | ||
m: say '¾a'.univals | 09:04 | ||
camelia | rakudo-moar 1edd51: OUTPUT«0.75 NaN» | ||
moritz | m: say '¾'.univals.^name | 09:05 | |
camelia | rakudo-moar 1edd51: OUTPUT«List» | ||
moritz | m: say '5'.ord.unival | 09:06 | |
camelia | rakudo-moar 1edd51: OUTPUT«5» | ||
dalek | c: a87aab2 | moritz++ | lib/Type/ (2 files): unival, univals |
09:09 | |
c: b6d9fb1 | moritz++ | WANTED: update WANTED |
|||
nwc10 | FROGGS: I think that that commit is reasonable. I'm a bit surprised that the waitpid() call is blocking (I thought we were deep down trying to be a non-blocking event loop) | 09:25 | |
FROGGS: according to the docs, the only time you get a return value of EINTR is if it was interrupted by a signal | |||
so I think it it's safe to loop on it | 09:26 | ||
09:26
TimToady left
|
|||
FROGGS | k | 09:28 | |
09:28
TimToady joined
|
|||
FROGGS | we have to block for a spawned process to get its exit status... and I dont know other way to do that | 09:28 | |
lizmat | I assume "use nqp" should have the same scope semantics as "use fatal", right ? | ||
FROGGS | probably, yes | 09:29 | |
lizmat | as in: only allow in the scope that has nqp:: calls, but not in inner scopes ? | ||
FROGGS | only lexical inner scopes, but not scopes you call into | 09:30 | |
so this should be valid I think: use nqp; sub foo { nqp::whatever(); for ^2 { nqp::alsothat() } } | 09:31 | ||
so 'use nqp' needs to set a lexical/local variable, and we need to check for that when calling nqp ops somehow | 09:34 | ||
tadzik | hmm, in Perl 6 grammars, where do you put :Perl5/:P5 to make it work? | ||
FROGGS | but I think it is easy to get wrong / unperformant | ||
m: grammar G { rule TOP { :P5 \N{EURO SIGN} } }; say G.parse('€') | 09:36 | ||
camelia | rakudo-moar 788834: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7lh2_Z5EvAUnrecognized regex modifier :Pat /tmp/7lh2_Z5EvA:1------> 3grammar G { rule TOP { :P7⏏055 \N{EURO SIGN} } }; say G.parse('€')» | ||
FROGGS | tadzik: this is meant to work I think | ||
RabidGravy | with NativeCall if one has a C prototype like "void syslog(int priority, const char *format, ...);" how does one present the additional arguments? | 09:42 | |
FROGGS | RabidGravy: varargs? these are not yet implemented :o( | 09:43 | |
RabidGravy: I imagine they will just end up as a slurpy positional | 09:44 | ||
RabidGravy | right, fake it up time then ;-) | ||
FROGGS | yeah :/ | 09:49 | |
tadzik | FROGGS: or, maybe even a better question: is there any working code in the wild that generates grammars? | ||
like, does add_method('TOP', m{arysnraysn}) | 09:50 | ||
maybe that'd Just Work | |||
09:52
isBEKaml joined
|
|||
dalek | kudo/nom: 227cc6f | lizmat++ | src/Perl6/Grammar.nqp: Centralize use/no token handling |
09:52 | |
lizmat | tadzik: jnthn.net/papers/2013-yapcna-gramma...nerate.pdf | 09:54 | |
FROGGS | lizmat: that talk was about generating text from datastructures using grammars | 09:58 | |
tadzik: IIRC someone tried and failed to add tokens/rules | 09:59 | ||
lizmat | ok, I guess I was just looking at "generating" and "grammars" :-) | ||
FROGGS | :o) | ||
tadzik | FROGGS: right. You can add methods, but you'd need to know what is the perl 6 method code equivalent to 'token Foo {blablabla}' | 10:00 | |
FROGGS | aye | 10:02 | |
which is not trivial at all | |||
so we probably want a .^add_rule and .^add_token | |||
or so | |||
vendethiel | o/, #perl6 | 10:03 | |
FROGGS | hi vendethiel | ||
tadzik | /usr/bin/ld: /home/tadzik/.plenv/versions/5.20.0/lib/perl5/5.20.0/x86_64-linux/CORE/libperl.a(op.o): relocation R_X86_64_32S against `PL_sv_yes' can not be used when making a shared object; recompile with -fPIC | 10:05 | |
/home/tadzik/.plenv/versions/5.20.0/lib/perl5/5.20.0/x86_64-linux/CORE/libperl.a: error adding symbols: Bad value | |||
nine: ^ | |||
nine | tadzik: recompile with -fPIC? | ||
yoleaux | 18 Apr 2015 19:07Z <nbdsp> nine: thanks, for advise about CArray[int8]! | ||
tadzik | recompile what :) | ||
it worked before | |||
FROGGS: huh. It just works :o | 10:09 | ||
r: gist.github.com/tadzik/626b00a9c7e26228979e | |||
camelia | rakudo-moar 788834: OUTPUT«「yaaaaaaay」» | ||
..rakudo-jvm 788834: OUTPUT«cannot connect to eval server: Connection refused» | |||
tadzik | FROGGS: ^ | 10:10 | |
FROGGS | O.o | 10:11 | |
nine | Inline::Perl5 builds just fine here | ||
FROGGS | ahh of course | ||
nine | ==> Successfully installed Inline::Perl5 | ||
10:11
spider-mario joined
|
|||
tadzik | huh | 10:12 | |
FROGGS | the regex gives you the right code object | ||
nice | |||
[TuxCM] rebuilds 5.20.2 without debugging ... | |||
tadzik | FROGGS: now this is a problem: | 10:14 | |
r: "yayayayaaay" ~~ regex :Perl5 { [ya]+y } | |||
camelia | rakudo-jvm 788834: OUTPUT«cannot connect to eval server: Connection refused» | ||
..rakudo-moar 788834: OUTPUT«===SORRY!===Cannot invoke this object (REPR: P6opaque, cs = 0)» | |||
tadzik | so Perl 5 regexes are not invokable | ||
but are they interpolatable in Perl 6 regexes? :D | |||
FROGGS | m: say "yayayayaaay" ~~ m:P5 { [ya]+y } | 10:18 | |
camelia | rakudo-moar 788834: OUTPUT«False» | ||
FROGGS | m: say "yayayayaaay" ~~ regex { :P5 [ya]+y } | 10:19 | |
camelia | rakudo-moar 788834: OUTPUT«5===SORRY!5=== Error while compiling /tmp/gMhZED_2vCUnrecognized regex modifier :Pat /tmp/gMhZED_2vC:1------> 3say "yayayayaaay" ~~ regex { :P7⏏055 [ya]+y }» | ||
tadzik | m: say "yayayayaaay" ~~ m:P5 {[ya]+y} | ||
camelia | rakudo-moar 788834: OUTPUT«「yayayayaaay」» | ||
tadzik | :o | ||
FROGGS | m is a quoting construct, regex is a declarator | ||
tadzik | yes | ||
but I tried anyway :P Method 'match' not found for invocant of class 'Any' | |||
FROGGS | making the :P5 regex modifier work should not be that hard btw... it is just I'm still working on the serialization stuff | 10:20 | |
ab5tract | FROGGS: regarding serialization -- are you using any existing libraries for that? | 10:21 | |
FROGGS | ab5tract: no, just nqp ops | 10:22 | |
ab5tract | FROGGS: okay. I was going to point to Sereal as a good existing option that has some nice features for supporting dynamic languages | 10:25 | |
github.com/Sereal/Sereal | |||
for binary serialization, specifically. which I guess may not be what you are currently hacking on? | 10:26 | ||
I am pretty sure that it is meant to be explicitly Artistic licensed, but I will ask after that | 10:29 | ||
10:29
Rounin joined
10:30
mohij joined
|
|||
dalek | kudo/nom: 43db2d5 | lizmat++ | / (4 files): Make use/no nqp a pragma |
10:30 | |
FROGGS | ab5tract: it is about serializing Perl 6 datastructures, which is exactly what we do when we precompile modules... so I do just the same | 10:32 | |
masak .oO( it is about ethics in game journalism ) | 10:33 | ||
tadzik | masak, stahp | 10:34 | |
masak blames his pattern-matching abilities | |||
10:34
FROGGS_ joined
|
|||
leont | nine: found it | 10:36 | |
10:38
tinyblak left,
FROGGS left
10:40
tinyblak joined
10:52
yvan1 left
|
|||
dalek | pan style="color: #395be5">perl6-examples: c4c99b9 | paultcochrane++ | lib/Pod/Htmlify.pm6: Extract repeated metadata collection code into its own routine |
10:53 | |
pan style="color: #395be5">perl6-examples: 3dfe034 | paultcochrane++ | lib/Pod/ (2 files): Revert commit 974e959 This had removed the wrong pod-insertion code. |
|||
pan style="color: #395be5">perl6-examples: f650e84 | paultcochrane++ | lib/Pod/Htmlify.pm6: Stop adding source code when no pod in source ... and this time do it in the right place! |
|||
leont | paste? | 10:54 | |
10:56
espadrine joined
|
|||
dalek | kudo/nom: 9861648 | lizmat++ | src/Perl6/Actions.nqp: Sample code handling nqp::ops without 'use nqp' |
10:58 | |
lizmat | so what *are* we going to do if something has nqp::foo without use nqp ??? | ||
options: die, warn, deprecated type message ? | 10:59 | ||
dalek | ast: 4729c24 | usev6++ | S32-exceptions/misc.t: Don't test for error message "will never work" |
11:01 | |
eli-se | delete offending code | 11:10 | |
vendethiel | damn | ||
lizmat | eli-se: that would be close to rm -rf ecosystem | ||
eli-se | works pretty well in practice; see github.com/munificent/vigil | ||
vendethiel | aug 2014 is "2 years ago" for github? what? | 11:12 | |
lizmat | .oO( brought to you from the future :-) |
||
DrForr | "15 minutes into the future" | 11:14 | |
RabidGravy | has anyone indicated that they are thinking about making a logging framework? | ||
timotimo has considered making a lagging framework | 11:15 | ||
dalek | pan style="color: #395be5">perl6-examples: dc21a89 | paultcochrane++ | categories/interpreters/ (3 files): Document 'interpreters' category examples |
||
pan style="color: #395be5">perl6-examples: 7ab417d | paultcochrane++ | categories/interpreters/calc.p6: Wrap main code in MAIN sub |
|||
11:15
lolisa joined
|
|||
eli-se | here's my logging framework: IO, map and grep. | 11:16 | |
RabidGravy | :-O | 11:17 | |
eli-se | here's how you filter by level: messages.grep(*.level != DEBUG) | ||
dalek | ecs: b41dada | lizmat++ | S (5 files): s/MONKEY_TYPING/MONKEY-TYPING/ |
||
lizmat | DrForr: 15 minutes is enough, as long as you can recurse :-) | 11:18 | |
eli-se | all that is useful that a logging library can still offer is a log record struct and a logging DSL | 11:19 | |
DrForr | that's a Promise. | ||
eli-se | and perhaps a formatting thing. supplies are sufficient for everything else | ||
DrForr | Must...resist...UHF joke. | 11:20 | |
timotimo | don't change the channel | 11:21 | |
don't touch that dial! | |||
we have it all on UHF! | 11:22 | ||
eli-se | but none of that filter and handler stuff that are crappy substitutes for callables and supplies | ||
DrForr | Kick off your sneakers, stay around for awhile | ||
11:27
colomon joined
11:29
mr-foobar left,
tinyblak left
|
|||
ab5tract | FROGGS_: okay, I wasn't sure if the work was going into Storable territory or not | 11:31 | |
11:32
laouji left
|
|||
FROGGS_ | ab5tract: if it is good enough for an internal thing it might be also good enough as a general purpose module... | 11:32 | |
11:32
laouji joined
|
|||
FROGGS_ | ab5tract: the good thing about the used nqp ops is that we also can serialize routines that way | 11:33 | |
11:34
colomon left
|
|||
nbdsp | Greetings! Could someone advise please how to correctly update Rakudo from Git? When I do 'git pull', 'make', 'make install' I get then an error "Missing or wrong version of dependency 'src/gen/m-CORE.setting' " when using some module or when installing some module with "panda install ...". Clean new install of Rakudo solves the problem, but how to correctly update from git? | 11:36 | |
RabidGravy | make distclean? at a guess | ||
masak | nbdsp: after 'git pull', you'll want something like 'perl Configure.pl --gen-moar --gen-nqp --backends=moar' | ||
lizmat | git pull/make/make install usually works for me | ||
masak | nbdsp: that should fix it. | ||
lizmat | also, if you have strange errors: rm -rf install | 11:37 | |
masak | nbdsp: very occasionally, it doesn't. than I... what lizmat said. | ||
11:37
mr-foobar joined
|
|||
nbdsp | thanks! will try. | 11:37 | |
dalek | pan style="color: #395be5">perl6-examples: fbb5baa | (Steve Mynott)++ | / (2 files): fix ?? precedence |
11:38 | |
pan style="color: #395be5">perl6-examples: caf2efe | (Steve Mynott)++ | / (5 files): Merge branch 'master' of github.com:perl6/perl6-examples |
|||
lizmat | .tell jnthn I want to eradicate 'use' from the settings (we discussed this before, a long time ago) | ||
yoleaux | lizmat: I'll pass your message to jnthn. | ||
lizmat | .tell jnthn use Perl6::BOOTSTRAP would then become something like 'bootstrap-from-nqp Perl6::BOOTSTRAP' | 11:39 | |
yoleaux | lizmat: I'll pass your message to jnthn. | ||
lizmat | .tell jnthn that would allow us to handle "use" / "require" / "need" etc completely from Perl6 | 11:40 | |
yoleaux | lizmat: I'll pass your message to jnthn. | ||
lizmat | .tell jnthn with associated flexibility and compile time pluggability | ||
yoleaux | lizmat: I'll pass your message to jnthn. | ||
masak | ++lizmat # sounds worthy | ||
lizmat | .tell jnthn allowing something like: "use Inline::Python; use FooLib<from:python>" | 11:41 | |
yoleaux | lizmat: I'll pass your message to jnthn. | ||
lizmat spend the better part of the past 24 hours finding 3.5 codepaths that load modules | 11:42 | ||
there should really be only 2: one for bootstrapping, one for all the others | |||
FROGGS_ | but use Inline::Python; use FooLib:from<python> already works, no? | ||
11:43
tinyblak joined
|
|||
masak .oO( watch the new episode of Three And A Half Codepaths ) | 11:43 | ||
boarding a train & | 11:44 | ||
FROGGS_ | but yeah, having another codepath for nqp-ish module loading and one for P6ish sounds sane | 11:45 | |
11:49
rivarun left
11:50
rivarun joined
11:51
eli-se left,
BenGoldberg joined
11:53
dolmen left
11:54
nbdsp left
11:55
Rounin left
11:56
Rounin joined,
colomon joined
|
|||
timotimo | look at the wiktionary article on "apocalypse", example sentence of meaning 1 is about perl6 ... | 12:05 | |
tadzik | :D | ||
indeed | 12:06 | ||
12:09
Gothmog_ left
12:10
Gothmog_ joined
|
|||
itz | is there anything outside of vim which colourises perl6? | 12:18 | |
tadzik | github :) | ||
RabidGravy | print it out, use crayons ;-) | ||
12:19
rmgk is now known as Guest74755,
rmgk_ joined,
Guest74755 left,
rmgk_ is now known as rmgk
|
|||
dalek | pan style="color: #395be5">perl6-examples: 7c69243 | (Steve Mynott)++ | htmlify.pl: add cookbook chapter nos and sockets reference |
12:20 | |
itz thinks RabidGravy colourises his code with spilt beer | 12:21 | ||
[ptc] | itz: pygments does, but you want that in an editor I'm assuming... | 12:22 | |
12:24
colomon left
|
|||
itz | I was thinking for perl6-examples | 12:24 | |
[ptc] | my plan was to use the pygments code which docs.perl6.org uses | 12:25 | |
itz | ah cool | ||
moritz | Text::VimColor is also an option | ||
12:25
RabidGravy left
|
|||
itz | ptc: I was wondering about a quick hack to remove the # vim: line as well | 12:25 | |
[ptc] | itz: have a look at how htmlify.p6 in perl6/doc does it, if you're looking for inspiration :-) | 12:26 | |
12:26
laouji left
|
|||
itz | will do | 12:27 | |
[ptc] | itz: quick hack currently being implemented | 12:28 | |
dalek | kudo/nom: bc7b4fa | lizmat++ | src/Perl6/ModuleLoader.nqp: Some more debugging info |
12:31 | |
kudo/nom: ecfb15c | lizmat++ | src/core/CompUnitRepo.pm: Don't specify "load" if there is none |
|||
12:31
laouji joined
|
|||
spider-mario | I have used pygments’ perl6 lexer to colorize Turtle “code” | 12:36 | |
it works quite well | 12:37 | ||
it recognizes @prefix and <…> | |||
12:38
RabidGravy joined
12:39
colomon joined
|
|||
spider-mario | hm, interestingly, it doesn’t seem to work that well on github | 12:39 | |
moritz | github has stopped using pygments, iirc | 12:41 | |
12:41
colomon left
12:47
cschwenz left
|
|||
[ptc] | we need to convince github to implement perl6 highlighting somehow. Dunno how though :-/ | 12:48 | |
12:51
lolisa left
12:52
Rounin left
12:53
yvan1 joined
|
|||
dalek | pan style="color: #395be5">perl6-examples: dbcf8ec | (Steve Mynott)++ | categories/cookbook/ (13 files): flesh out pod more |
12:53 | |
tadzik | gists do have Perl6 hilighting | 12:54 | |
moritz | [ptc]: by opening an issue? | 12:57 | |
dalek | pan style="color: #395be5">perl6-examples: 5b3e591 | paultcochrane++ | lib/Pod/Convenience.pm6: Remove vim coda from source code in html |
13:04 | |
pan style="color: #395be5">perl6-examples: 257224f | paultcochrane++ | categories/cookbook/ (13 files): Merge branch 'master' of github.com:perl6/perl6-examples |
|||
13:04
lolisa joined
13:05
dolmen joined
13:06
tinyblak left
|
|||
dalek | ast: aa419eb | usev6++ | S02-literals/pairs.t: Use throws_like with EVAL (tests are still not specific but don't rely on being caught at runtime) |
13:08 | |
13:15
kaare_ left
13:20
andreoss joined,
xtreak joined
|
|||
andreoss | m: my @s := False, False, True ... *; @s[1000]=False; say @s[1000] | 13:20 | |
camelia | rakudo-moar ecfb15: OUTPUT«Cannot assign to a readonly variable or a value in method ASSIGN-POS at src/gen/m-CORE.setting:2233 in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:3459 in block <unit> at /tmp/6PdscrqrYO:1» | ||
andreoss | m: my @s := False, False, True ... *; say @s.perl; | 13:22 | |
camelia | rakudo-moar ecfb15: OUTPUT«(ListIter.new,)» | ||
andreoss | what's wrong here? | 13:23 | |
m: my @s = lazy False, False, True ... *; @s[1000]=False; say @s[1000] | 13:25 | ||
camelia | rakudo-moar ecfb15: OUTPUT«False» | ||
13:28
rurban_ joined
|
|||
dalek | kudo/nom: 1659550 | lizmat++ | lib/Test.pm: throws_like Str will EVAL in the scope of caller |
13:31 | |
13:38
rurban_ left
|
|||
lizmat | m: my @a := False,True; say @a; @a[1] = False | 13:40 | |
camelia | rakudo-moar ecfb15: OUTPUT«False TrueCannot modify an immutable Bool in method ASSIGN-POS at src/gen/m-CORE.setting:9320 in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:3459 in block <unit> at /tmp/NvSi5VLpFf:1» | ||
dalek | ast: cdf3ea4 | usev6++ | S32-exceptions/misc.t: Fix two tests now EVAL'd in scope of caller |
||
lizmat | andreoss: ^^ perhaps the same thing ? | ||
andreoss: I mean my code, not the commit message | |||
13:41
tinyblak joined
13:42
silug left
13:43
mr-foobar left
|
|||
dalek | ast: b0b8187 | usev6++ | S02-literals/pairs.t: Use "throws_like '$code'" |
13:49 | |
13:51
zakharyas joined,
diana_olhovik_ joined,
kbenson joined
|
|||
tadzik | jnthn: are you around, perchance? | 13:53 | |
14:02
skids joined,
anaeem1_ joined,
anaeem1_ left
14:11
aborazmeh joined,
aborazmeh left,
aborazmeh joined,
andreoss left
|
|||
dalek | ast: 2f3f43e | usev6++ | S02- (2 files): Change to EVAL'd form of throws_like |
14:12 | |
DrForr | tadzik: Panda question for ye - I'm getting the (rakudo) error 'Usupported serialization format version 12' (without the tyop) when attempting to run 'panda install Debugger::UI::CommandLine'. I've pulled panda from the git repo 10 minutes ago, and rakudobrew'd the latest maybe an hour ago. I assume I need to blow away a directory somewhere and rebuild? | 14:13 | |
tadzik | DrForr: ow. Yeah, nothing else comes to my mind | 14:14 | |
dalek | kudo/nom: ee40c0e | lizmat++ | src/ (2 files): Eradicate 'use' from CORE settings First step to sanitizing the 3.5 code paths to loading a compilation unit. |
||
DrForr | Fair enough. | ||
tadzik | rakudobrew nuke moar && rakudobrew build moar && rakudobrew switch moar && rakudobrew build panda && panda install Debugger::UI::CommandLine | ||
this *should* be foulproof | |||
er | 14:15 | ||
foolproof, yeah :) | |||
DrForr | Obviously I have to self-upgrade first :) | ||
14:16
aborazmeh left
|
|||
tadzik | oh yes :) | 14:16 | |
jnthn | tadzik: Yes, for a little bit :) | ||
yoleaux | 11:38Z <lizmat> jnthn: I want to eradicate 'use' from the settings (we discussed this before, a long time ago) | ||
11:39Z <lizmat> jnthn: use Perl6::BOOTSTRAP would then become something like 'bootstrap-from-nqp Perl6::BOOTSTRAP' | |||
11:40Z <lizmat> jnthn: that would allow us to handle "use" / "require" / "need" etc completely from Perl6 | |||
11:40Z <lizmat> jnthn: with associated flexibility and compile time pluggability | |||
11:41Z <lizmat> jnthn: allowing something like: "use Inline::Python; use FooLib<from:python>" | |||
tadzik | jnthn: gist.github.com/tadzik/7e7fcb0dfaf9be7dd9d9 funny riddle for you :) | ||
tl;dr: a "token {}" object can only be passed once, otherwise it gets broken in transport | 14:17 | ||
lizmat | jnthn: after consultation with masak and FROGGS_, I just went for it | ||
jnthn | lizmat: We're not putting in anything magical like a "bootstrap-from-nqp", if nothing else we are going to just check that --setting=NULL was passed and assume we should call the approprite things on $*W to do it. | 14:18 | |
No point adding special syntax when we can just wedge it in somewhere around -M handling. | |||
So that makes it simpler, even. | |||
lizmat | so no setting should assume loading Perl6::BOOTSTRAP ? | 14:19 | |
I can do that :-) | |||
jnthn | lizmat: Note tha it's not "no setting" which defaults to CORE, but rather an explicit --setting=NULL | 14:20 | |
lizmat: But we hang more things off that peg already. | |||
lizmat | found it | ||
jnthn | lizmat: See the line "unless %*COMPILING<%?OPTIONS><setting> eq 'NULL' {" for example :) | 14:21 | |
ok :) | |||
lizmat | yeah that one :-) | ||
jnthn | Except that's an unless and you're doin an if :) | 14:22 | |
Note that use is still going to have to go through $*W | |||
Since it needs to do some code-gen | |||
But it can from there call Perl 6 code. | |||
tadzik: Can you try nqp::decont($<bottom>.ast[0]) ? | 14:23 | ||
tadzik | jnthn: ...that works | 14:24 | |
so, putting it in anything containerizes it | |||
and I don't want that, right? | |||
it worked! | 14:25 | ||
THIS CHANGES EVERYTHING | |||
jnthn | tadzik: Yeah, I may well fix add_method :) | 14:26 | |
So you needn't do that hack. | |||
tadzik | jnthn: we were just thinking with sjn that add_method could perhaps say "WTF this is containerized (╯°□°)╯︵ ┻━┻" | 14:27 | |
(or any metamodel method) | 14:28 | ||
jnthn | yeah, building a fix now | ||
Could you do a roast test for it? | |||
lizmat: About nqp::op I think they need to give deprecation warning if used without nqp::op | 14:31 | ||
Sorry | |||
if used without *use nqp* :) | |||
lizmat | ok | ||
jnthn | lizmat: Last I checked, though, I noticed that nothing in Perl6::Grammar used deprecations | ||
14:31
dolmen left
|
|||
lizmat | what is the way to get at the line number at that point ? | 14:31 | |
jnthn | lizmat: And then wondered if that is because nobody figured how to do the plumbing. | ||
lizmat | I think the plumbing can be handled :-) | 14:32 | |
skids | tadzik: JFYI, I install rakudo in a different path, and this has caused no end of rakudobrew/panda problems. Seems a different problem every week these days :-) | ||
tadzik | skids: :o | ||
14:33
kaare_ joined
|
|||
skids tries tadzik's foolproof recipe, with an instal path, and some extra deleting to start. | 14:34 | ||
dalek | kudo/nom: c94393f | lizmat++ | src/ (2 files): Hardwire the bootstrap, jnthn++ |
14:35 | |
jnthn | lizmat: Search for HLL::Compiler.lineof in src/Perl6/World.pm | ||
lizmat | jnthn: okidoki | ||
jnthn | lizmat: Or even better example, SET_FILE_LINE | 14:36 | |
That has file and line number retrieval | |||
dalek | ast: 03018ed | usev6++ | S14-roles/mixin.t: Unskip passing test for rakudo.jvm (RT #119371) |
14:38 | |
synbot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=119371 | ||
lizmat | I only need the line number initiall | 14:41 | |
y | |||
dalek | kudo/nom: 9890d88 | jnthn++ | src/Perl6/Metamodel/M (2 files): Missing nqp::decont on method additions. Fixed meta-programming bug reported by tadzik++. |
14:43 | |
tadzik | sjn: | 14:44 | |
sjn++ is onto the roast test :) | |||
jnthn++ Thanks! | |||
you know what I have, you know what I have? | |||
lizmat | .... ? | 14:45 | |
tadzik | A SURPRISE \o/ | ||
jnthn | Aww, I was hoping for cake! | ||
DrForr | THE CAKE IS A LIE.</obRef> | 14:46 | |
tadzik | jnthn: I wrote a module that generates Perl 6 Grammars from BNF grammars | 14:47 | |
jnthn | tadzik: Much wow! | ||
tadzik++ | |||
tadzik | \o/ | ||
DrForr | tadzik: Quelle coincidence, I'm debugging an ANTLR4 grammar parser for much the same reason :) | ||
tadzik | :) | ||
jnthn: have you seen the Qt profiler too? | 14:48 | ||
14:48
laouji left,
dayangkun joined
|
|||
tadzik | (on the note of advertising my products) | 14:48 | |
jnthn | tadzik: I didn't have chance to look closely yet, but saw a screenie :) | 14:49 | |
Looks cool :) | |||
tadzik | \o/ | ||
14:49
Rounin joined
|
|||
tadzik | doesn't do half of what your does, but it needs less than a second to load a 20MB file | 14:49 | |
14:49
orevdiabl left
|
|||
tadzik | timotimo also said that an angular upgrade may help a lot with the webui too | 14:50 | |
skids | tadzik: now just adapt it for ASN.1 (You do not actually want to try this, ASN is pathological :-) | ||
14:50
dayangkun left
|
|||
DrForr | I've been segfaulting the grammar engine the last few days ;) | 14:50 | |
jnthn | ASN = A Sordid Notation? :) | 14:51 | |
skids | Abstract Syntax Notation | ||
lolisa | Does it has anything todo with AST? | ||
tadzik | 2 things | ||
(☞゚ヮ゚)☞ | 14:52 | ||
jnthn | DrForr: Is that RT #124333? | ||
synbot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=124333 | ||
jnthn | DrForr: If so, does "SEGV the compiler" mean that it actually crashes while compiling? | ||
14:52
revdiablo joined
|
|||
skids | lolisa: No, it is self-modifying BNF where they forgot to put in semicolons to help the parser. | 14:52 | |
tadzik | jnthn: oh, I also found a way to segfault the compiler :) | ||
jnthn | tadzik: Did you put yours in RT? :P | ||
DrForr | Segfaults while running the tests. It's a helluva waterbed as well. | 14:53 | |
lolisa | Don't get it... You mean index "+" := plus kinds of stuff? Any link? | ||
geekosaur | the right way to do ASN.1 is to use someone else's library | ||
tadzik | jnthn: not yet :) | ||
dalek | ast: 39edd9f | usev6++ | S02-names-vars/names.t: Use typed exeption (1 test); use EVAL'd form of throws_like (4 tests) |
||
jnthn | DrForr: OK, I'll try and reproduce it tomorrow when I'll have lots of time when I can concentrate well and don't have distractions :) | ||
DrForr | jnthn: Yes, RT #124333 | ||
synbot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=124333 | ||
skids | geekosaur: nobody's library does ASN "right" either. | ||
geekosaur | yes, but it becomes someone else's problem :) | 14:54 | |
14:54
laouji joined
|
|||
DrForr | I'm pretty sure it's to do with either the UnicodeLetter declaration, or a left-recursive declaration on 'in'. | 14:54 | |
geekosaur | lolisa: ASN.1 is an attempt at supporting typed binary data streams. the spec is pathological and implementations are painful | ||
lolisa | Thx. Find it on wiki | 14:55 | |
skids | lolisa: www.itu.int/ITU-T/studygroups/com1...0-0207.pdf # base ASN.1 spec. It will fry your brain. | ||
lolisa: sites.google.com/site/ramaswamyr/a...sing-asn-1 # a good article on why ASN.1 is ugly | 14:56 | ||
lolisa | Thx... I just though it is some theoretical stuff... Sorry but I am not very interested in it :) | 14:57 | |
DrForr | jnthn: I'll also warn you the code is very fragile. It's got nothing to do with tests that pass or don't pass, all I have to do is comment out one test and the problem goes away. Or comment out a grammar rule. | 14:58 | |
jnthn | DrForr: Well, if it's GC related, or memory corruption related, I have means to provoke it. :) | 14:59 | |
DrForr | valgrind++ # I'm guessing :) | ||
14:59
spider-mario left
15:00
colomon joined
|
|||
dalek | ast: d100d7c | usev6++ | S02-names-vars/names.t: Revert use of typed exception (39edd9fa0a) X::Method::NotFound looks wrong, actually |
15:00 | |
DrForr | I'd guess GC or related, but I don't have the tools/skillset to tackle the problem here. Yet. | ||
Also, while I was working on perl6-readline, I noticed that GNU libreadline exports variables as well as functions. Is there a binding yet in NativeCall for that? | 15:03 | ||
jnthn | I think so | 15:04 | |
I think FROGGS++ implemented that a while ago | |||
dalek | osystem: d2279e8 | tadzik++ | META.list: Add Grammar::BNF |
||
tadzik | \o/ | ||
jnthn | \o/ | ||
DrForr | Okay, I'll look. I didn't see that mentioned in docs, but I figured it was just there but silent. | ||
15:05
colomon left
|
|||
DrForr | (though there's a crashing bug in that module too.) | 15:05 | |
skids | Could someone pull PR #405 into rakudo please? | 15:06 | |
Oh dear it has picked up a merge conflict since. | |||
skids wonders how to see such a conflict in github UI. | 15:08 | ||
tadzik | jnthn: btw, that localized $/ in the gist; we shotgun-coded it in so it works, but should it really be necessary? | ||
jnthn | DrForr: Well, due to the nature of NativeCall there's plenty of ways to get SEGVs by mis-using the module that we can't do anything about, since there's no introspection API to see if you're calling the C code right :) | 15:09 | |
DrForr | Oh, that was a separate issue. | ||
jnthn | tadzik: Yes | ||
tadzik: Your alternative solutions are to "$/ is copy" in the signature, or just not call the thing you bind in the signature $/ | 15:10 | ||
(But then you can't say $<...> | |||
) | |||
tadzik | right | ||
15:10
cschwenz joined
|
|||
jnthn | I think you have the first case of needing to deal with that issue I've seen where I can't say "bah, you're doing 2 pass parsing, you deserve the pain" :P | 15:11 | |
FROGGS_ | DrForr: there is a sub called cglobal | ||
DrForr | I don't mind SEGVing because I did something stupid, this was that I couldn't invoke a binding because the compiler didn't consider typed arrays correctly. | ||
jnthn | Ah | ||
Maybe NativeCall ain't using 6pe right yet :) | |||
DrForr | cglobal, gotcha. | ||
dalek | ast: 78f18c3 | (Salve J. Nilsen)++ | S12-meta/grammarhow.t: Test if one can pass containerized values to GrammarHOW.^add_method |
||
tadzik | sjn++ | ||
15:12
cschwenz left,
cschwenz joined
|
|||
tadzik | where does dalek get nicknames from these days? | 15:12 | |
FROGGS_ | rakudo/CREDITS | 15:14 | |
15:17
robinsmidsrod left
|
|||
DrForr | Hrm, my name seems to have gotten skipped (from Parrot days, I was release manager after Simon.) | 15:18 | |
15:19
robinsmidsrod joined
|
|||
timotimo | o/ | 15:22 | |
jnthn: i finally figured out why my mast_localref stuff was the b0rk | |||
FROGGS_ | m: use NativeCall; say &cglobal.signature | 15:23 | |
camelia | rakudo-moar 9890d8: OUTPUT«(Any $libname, Any $symbol, Any $target-type)» | ||
FROGGS_ | introspection++ | ||
hi timotimo | |||
timotimo | turns out i locally overrided $res_kind so i ended up with NQPMu (probably) in the $res_kind at the end of compile_var, which the rest of the compiler interpreted to mean "generate a new register that's nulled and use that henceforth" | ||
DrForr | Aha, thanks. | ||
timotimo | jnthn: i'm not exactly sure what a variable that's decl'd to be a localref would ... do ... ? | 15:25 | |
except if it's a parameter; in that case it can make sense to me | |||
15:28
laouji left
15:29
cschwenz left
|
|||
timotimo | i suppose i should build the same tests for lexicalref/lexical that i've built for localref/local | 15:30 | |
jnthn | timotimo: Same as if it's decl'd as a lexicalref | ||
timotimo: It's an obj type register and you may bind to it | |||
lizmat | jnthn others: how would I do: @*NQP_VIOLATIONS[$line].push($op) | ||
in nqp (Grammar) ? | |||
timotimo | jnthn: OK, so i'd op<bind> something that'd decl'd local but referenced in localref scope into the localref'd thing? | 15:31 | |
jnthn | timotimo: If you access it as a localref you get the thing in the register | ||
timotimo: If you access it as a local then you get it decont'd. | 15:32 | ||
timotimo | and if i access it as a local, i get the value | ||
jnthn | decont_[ins] | ||
*nod* | |||
timotimo | OK, that makes a lot of sense | ||
jnthn | lexical and lexicalref behave the same way | ||
timotimo | good, i think i can make tests for that | ||
jnthn | We need them to be very close semantically since we lower lexicals to locals. | ||
15:32
zakharyas left
|
|||
timotimo | right | 15:32 | |
and maybe even build the pieces of the optimizer that do the lowering later today | |||
jnthn | lizmat: I'd...not do it like that as the array will end up sparse? | 15:33 | |
15:33
eli-se joined
|
|||
jnthn | lizmat: I'd probably keep a %*NQP_VIOLATIONS | 15:33 | |
lizmat | even keyed to line number ? | ||
I mean, how many lines do we expect in a compunit ? | |||
jnthn | No, I'd key it on the op | ||
%*NQP_VIOLATIONS{$op} | 15:34 | ||
*or | |||
*or* | |||
lizmat | that doesn't make sense from a deprecation message point of view, I would think | ||
jnthn | Why? Don't you want to know what you did, and where you did it? | ||
dalek | pan style="color: #395be5">perl6-examples: 7704d1a | (Steve Mynott)++ | categories/interpreters/RPN.pl: remove duplicate line |
||
jnthn | And grouped by where? | ||
uh, grouped by *what* | |||
15:34
BenGoldberg left
|
|||
jnthn | Anyway, easiest way is to just keep an array of violations if you don't need any grouping | 15:35 | |
moritz | nqp:: is easy enough to grep for | ||
group by file name? | |||
jnthn | @*NQP_VIOLATIONS.push([$op, $line]) | ||
lizmat | but the fix is not changing each call, the fix is adding an "use nqp" as the simplest solution | ||
15:35
xtreak left
|
|||
lizmat | to the applicable scope | 15:35 | |
jnthn | lizmat: Fair enough, then just keep one violation or a list of violations. | ||
15:36
BenGoldberg joined
|
|||
jnthn | lizmat: There's no auto-viv in NQP | 15:36 | |
lizmat | this is different from the other deprecation messages where you would need to change actual calls | ||
I know | |||
but somehow I lack the foo to vivify manually | |||
my @lines := nqp::getlexdyn('@*NQP_VIOLATIONS'); # is this valid ? | 15:37 | ||
jnthn | it's odd | ||
my @lines := @*NQP_VIOLATIONS; is the same. | |||
skids | tadzik: gist.github.com/skids/86b2cd3bf4412efa44ac | 15:38 | |
15:38
colomon joined
|
|||
jnthn | @*NQP_VIOLATIONS[$line] := @*NQP_VIOLATIONS[$line] // []; @*NQP_VIOLATIONS[$line].push($thingy); | 15:38 | |
Is probably the shortest you can do. | |||
lizmat | @*NQP_VIOLATIONS is defined as part of the compunit initialization, under Extra | ||
jnthn | Uh | ||
without pre-fetching it as a temp | |||
If you do my @lines := @*NQP_VIOLATIONS; first then it's just (@lines[$line] := @lines[$line] // []).push($thingy) | 15:39 | ||
tadzik | skids: the thingy with panda on jvm is known | ||
I spent 3 hours trying to minimize the testcase and it drove me nuts | 15:40 | ||
skids | tadzik: Last night I edited it to just "when Exception" and got through it, but the switchback to moar was still broken after that. | ||
lizmat | jnthn++ :-) | 15:41 | |
jnthn | lizmat: But I'd still do hash instead. :) | ||
uh, do *a* hash... | |||
.oO( Freud strikes again! ) |
|||
ugexe | skids: i always do a manual rehash or i get similar problems seemingly randomly | ||
jnthn | lizmat: They're gonna be strings in the deprecation message anyway :) | 15:42 | |
lizmat | jnthn: that's true, but I sort of expect many nqp::ops *if* they are being used anyway | ||
jnthn | True. :) | 15:43 | |
lizmat | or not at all | ||
jnthn | Anyway, no point discussing it overly much, since this is code that we will kill pre-Christmas anyway :) | ||
lizmat | indeed :-) | ||
skids | ugexe: what is this "manual rehash" you speak of? :-) | ||
masak | wow, fancy this Christmas being *the* Christmas! | 15:44 | |
ugexe | rakudobrew rehash | ||
jnthn | :) | ||
masak | even I, the Grinch, is slightly enthused by it. | ||
jnthn | I'll likely be gone-ish for the rest of the evening, but will be hacking on NFG and RTs all day tomorrow. :) | ||
15:44
telex left
|
|||
masak | m: say Date.new # when is the Big Day? | 15:44 | |
camelia | rakudo-moar 9890d8: OUTPUT«2015-12-24» | ||
masak | jnthn: o/ | ||
jnthn | o/ | 15:45 | |
timotimo | jnthn: i have a quick gist for you | ||
jnthn | timotimo: ok, be quick! | ||
skids | ugexe: no joy. But thanks. | ||
timotimo | gist.github.com/timo/40ccf1f09f3b94f47f2d | ||
is that totally wrong? | |||
sjn | tadzik: stackoverflow.com/questions/9475642...ta-grammar | ||
timotimo | there's a decont in the spesh log that i wouldn't expect there | ||
15:46
telex joined
|
|||
jnthn | timotimo: yeah, what the heck | 15:47 | |
decont r2(2), r1(1) const_s r3(1), lits(hooray) assign_s r2(2), r3(1) | |||
That's never gonna work, surely | 15:48 | ||
timotimo | yes, very much not so | ||
but the qast is right in principle? | |||
jnthn | That decont should not be there | ||
Yes the QAST looks right | |||
timotimo | good | ||
that's all i need to know | |||
jnthn | the bytecode we get looks busted | ||
timotimo | now i can go hunting :) | ||
jnthn | OK | ||
timotimo | have a nice evening! | ||
jnthn gone :) | |||
timotimo | o/ | ||
jnthn | you too! o/ | ||
ugexe | skids: if thats the solution, it would need to be done after you switch and before you build panda | 15:49 | |
because it looks like you are using a panda built for the opposite VM | 15:50 | ||
although that could be due to not properly respecting the --prefix stuff as well | |||
sjn | tadzik: www.hcs64.com/files/pd1-3-schorre.pdf | 15:52 | |
ugexe | try invoking panda directly instead of using the rakudobrew shim | ||
dalek | pan style="color: #395be5">perl6-examples: 4916405 | (Steve Mynott)++ | / (2 files): start web automation section |
||
timotimo | ah, that was easy to find | 15:54 | |
zu früh gefreut! | 15:55 | ||
[Coke] | still -1 from me on Date.new being christmas, btw. ew. | 15:57 | |
lolisa | zu frxFCh gefreut!? What's that? | 16:00 | |
16:00
synbot6 left
|
|||
timotimo | premature celebration, so to speak | 16:01 | |
16:01
colomon left
|
|||
dalek | pan style="color: #395be5">perl6-examples: 3ff0590 | (Steve Mynott)++ | categories/cookbook/09directories/09- (4 files): 4 more directory examples |
16:03 | |
16:04
araujo left
|
|||
leont | New trick, xABHARNESS_PERL=perl6 prove t/perl6.txBB | 16:05 | |
itz | "by Christmas we always meant the Julian Calendar" :) | 16:06 | |
[Coke] | I just did a fresh build of rakudo-moar and tried to run make spectest, and get: | ||
perl t/harness --fudge --moar --keep-exit-code --tests-from-file=t/spectest.data | |||
Unhandled exception: Unsupported serialization format version 15 (current version is 12) at <unknown>:1 (blib/Perl6/Pod.moarvm:<dependencies+deserialize>:239) | |||
tadzik | what is this madness ┻━┻ ︵ヽ(`Д´)ノ︵ ┻━┻ | 16:07 | |
lizmat | [Coke]: fwiw, there was some chatter about ser format versions on MoarVM earlier todat | 16:09 | |
*today | |||
16:11
slavik joined
|
|||
lizmat | jnthn: I'm not sure how to skip the non-initialized elements, nqp::isnull() doesn't seem to cut it ? | 16:13 | |
my $ops := @*NQP_VIOLATIONS[$line]; | |||
next if nqp::isnull($ops); | |||
skids | Hrm, MD.pm6 in Sum just spins and slowly eats ram when compiling mbc now. That will be "fun" to try to find the cause of. But for now, going to try to sleep off rest of this cold. | 16:17 | |
lizmat | skids++ and get better! | ||
16:18
MARTIMM joined
|
|||
itz | things like gethostbyname don't exist anymore do they? I assume they can be loaded via nativecall? | 16:23 | |
16:23
skids left
16:24
cschwenz joined,
cschwenz is now known as cschwenz_,
cschwenz_ is now known as cschwenz1
16:25
cschwenz1 is now known as cschwenz,
BenGoldberg left
|
|||
timotimo | anything that's C can be nativecalled - except i think var args are missing | 16:26 | |
16:28
laouji joined,
colomon joined
|
|||
itz | oh gethostbyname does exist | 16:31 | |
ermmm gethostname | 16:32 | ||
16:33
laouji left
16:35
Ven joined
|
|||
Ven | should the "gotcha about <foo> + vs <foo>+" be added to faq.perl6.org? (I'm looking for it atm) | 16:35 | |
flussence | whatever happened to the C++ nativecall thing? | 16:36 | |
Ven | seems like Grammar::Debugger won't step through proto regexes? | 16:39 | |
DrForr | timotimo: Ah, I was going to go digging for varargs as well, after the cglobal thing they're the last thing I need for a complete binding to readline. | 16:40 | |
Ven | what's going on | ||
timotimo | cool | ||
Ven | the debugger sees " <expr> + %% ',' " and bails out. just plainly bails out. I don't get to see it try the options | 16:41 | |
(and trying to make that rule "regex" to backtrack doesn't help at all) | |||
16:42
grondilu joined
16:44
zakharyas joined
|
|||
Ven | Grammar::Debugger seems to be too unreliable? I change the rule call, that's one of the options of expr (expr:sym<call>) make the debugger unable to step through <expr>. | 16:46 | |
flussence | there's a long-term problem with it having side effects, something to do with LTM | 16:47 | |
DrForr | I'm working with a grammar myself and haven't been able to use ::Debugger on it. Not just you. | 16:48 | |
colomon | I usually use Grammar::Tracer, but that doesn’t work well for complicated parses. | 16:49 | |
DrForr | The last time I tried that I couldn't get anything out of a failed parse. | 16:50 | |
nine waves from Vienna | |||
Is there a way to hoik into serialization/deserialization of my module? | 16:51 | ||
flussence | oh... I wrote a test for that bug and forgot all about it - github.com/flussence/p6-misc/blob/...feb2015.p6 | ||
[Coke] | yup, tried again with a fresh copy of rakudo - getting the error about serialization format consistently. | ||
tadzik | wow, fast trains | 16:52 | |
[Coke] | ah... bug in t/harness. | 16:55 | |
dalek | kudo/nom: d4a9878 | Coke++ | t/harness: Use the correct perl6 to check for Inline::Perl5 |
16:57 | |
16:58
colomon left
16:59
colomon joined
17:00
laouji joined
|
|||
timotimo | tadzik: you're going back home? | 17:00 | |
tadzik | timotimo: no, but I noticed nine having arrived already | 17:01 | |
nine | Coke: thanks for fixing my bug | ||
tadzik | I'll be back home monday late evening | ||
nine | tadzik: took a plane to Vienna, now a train to Linz | ||
tadzik | ah | ||
that explains it | 17:02 | ||
[Coke] | nine: no worries, glad I was able to figure it out | ||
nwc10 | nine: direct train! | ||
nine: are you at the airport currently? | 17:03 | ||
17:05
laouji left
|
|||
[TuxCM] | [Coke], is that nom patch for jvm? | 17:05 | |
nine | nwc10: just entered the bus to Westbahnhif | ||
nwc10: no direct trains at this time, but next year we'll finally have good connections | |||
[Coke] | [TuxCM]: the thing I just patched was so that "make spectest" uses the same perl6 that it uses to run the tests to see if Inline::Perl5 was installed. previously it used first in path. | 17:06 | |
nwc10 waves in at the airport | |||
(from here, can't see much more than the top of the control tower) | 17:07 | ||
nine | :) | ||
lolisa dont get what is going on | |||
17:08
tadzik left,
tadzik joined
|
|||
dalek | kudo/nom: 7075007 | lizmat++ | src/Perl6/ (2 files): List nqp::op violations after a compunit compiled It turned out to be pretty bad to use the standard DEPRECATED mechanism for this. So instead of that, it's not writing the message to STDERR after the compunit has been compiled. |
17:08 | |
nine | nwc10: do you have a quick idea on how to detect if we're compiling the main script in P5's pp_ctl.c? I'd like to make my use v6; support a little safer | 17:10 | |
I already improved its error handling on the way to the airport | 17:11 | ||
nwc10 | offhand, no. | ||
nine | Ok, will dig around a bit | ||
I don't think I'll make much progress on Inline::Perl5's precompilation support. That will probably require more infrastructure in Rakudo. | 17:13 | ||
dalek | kudo/nom: 5d707b6 | lizmat++ | src/Perl6/Grammar.nqp: Fix typo |
17:15 | |
17:18
mr-foobar joined
|
|||
lizmat | nine: seems like you have to patch: | 17:19 | |
Compilation unit 'lib/Inline/Perl5.pm6' contained the following violations: | |||
Line 765: | |||
nqp::getcurhllsym | |||
:-) | |||
17:19
lichtkind joined
|
|||
nine | lizmat: oh, a use nqp should fix that, shouldn't it? | 17:24 | |
FROGGS_ | nine: that's correct | ||
lizmat | yes, that's the idea ? | ||
nine | Will be fixen once I'm on the train :) | 17:25 | |
typing on phone sucks... | |||
17:25
Rounin left
17:26
Rounin joined
|
|||
Ven wonders how he should parse a postfix if... <expr> 'if' <expr> will be recursive :( | 17:29 | ||
lizmat | jnthn: would it make sense to expose nqp %*PRAGMAS hash as %?PRAGMAS like $?LINE ? | 17:33 | |
geekosaur | perl itself handles postfix if as a statement modifier instead of an expression | 17:34 | |
17:34
Ven left
|
|||
eli-se | vendethiel: don't do that | 17:35 | |
instead, design your grammar so that either operand is an expression with a higher precedence than postfix if expressions | 17:36 | ||
vendethiel | eli-se: yeah, yeah. | ||
geekosaur thinks expression-if should have both then and else (compare ?? !!), if-then is a statement | |||
eli-se | then it's just <higher-precedence-than-if-expr> followed by zero or more ('if' <expr>) | 17:37 | |
geekosaur | (of which postfix if is a subcase) | ||
17:37
[TuxCM] left
|
|||
eli-se | just make if a function that takes a Boolean and two functions. | 17:39 | |
lizmat | afk for kuchen kaiser& | 17:42 | |
dalek | line-Perl5: 3e23d8c | (Stefan Seifert)++ | lib/Inline/Perl5.pm6: Explicitly use nqp; for nqp::getcurhllsym Thanks to lizmat++ for pointing this out |
||
17:43
leont left
17:49
FROGGS_ is now known as FROGGS
17:50
cschwenz left
|
|||
lichtkind | hai lizmat | 17:59 | |
nine | ribasushi: was module-authors the mailing list mentioned in today's discussion? | ||
18:04
lolisa left
18:06
zakharyas left
|
|||
nine | lizmat: that's odd. With current rakudo and your lazy @*INC patch, make test passes. Panda is still broken. File::Find tests successfully but Shell::Command fails with write string requires an object with REPR MVMOSHandle | 18:19 | |
.tell lizmat that's odd. With current rakudo and your lazy @*INC patch, make test passes. Panda is still broken. File::Find tests successfully but Shell::Command fails with write string requires an object with REPR MVMOSHandle | 18:21 | ||
yoleaux | nine: I'll pass your message to lizmat. | ||
18:23
aborazmeh joined,
aborazmeh left,
aborazmeh joined
18:26
_mg_ joined,
isBEKaml left
18:36
egrep left
|
|||
eli-se | .botsnack | 18:37 | |
yoleaux | :D | ||
nine | .tell lizmat seems like commit 43db2d5bbe75be4cb842d43991248c29b4a1897a is responsible for the progress. Maybe because use nqp; no longer invokes any ModuleLoader? | 18:38 | |
yoleaux | nine: I'll pass your message to lizmat. | ||
18:39
aborazmeh left
18:43
virtualsue joined,
virtualsue left
|
|||
nine | .tell lizmat Shell::Command's tests fail with a precompiled Shell::Command, but not with the source version | 18:56 | |
yoleaux | nine: I'll pass your message to lizmat. | ||
19:12
Rounin left
19:15
zakharyas joined
19:19
tinyblak left
19:21
spider-mario joined
19:28
skids joined
|
|||
FROGGS | .tell jnthn after successfully bootstrapping panda I try to install a dist, and then it explodes when serializing a null object: gist.github.com/FROGGS/c6d637b32e4665ec3882 | 19:33 | |
yoleaux | FROGGS: I'll pass your message to jnthn. | ||
FROGGS | .tell jnthn I believe this object is a string, the absolute path to the panda script that is currently running (aka $*EXECUTABLE)... is there something I need to take care of? | 19:35 | |
yoleaux | FROGGS: I'll pass your message to jnthn. | ||
19:38
nbdsp joined
|
|||
nbdsp | Greetings! I wonder, does someone else have the same problem with 'use DBI:from<Perl5>;'? The followong two lines take several minutes to execute with a query result consisting of one row with one text field (several KB of text): my $arrayref = $sth.fetchall_arrayref; say $q[0].decode('utf8'); Profile stat is here: pastebin.com/wMwAsJLv | 19:38 | |
dalek | kudo/jsoff: 52b1be7 | FROGGS++ | src/core/CompUnitRepo/Local/Installation.pm: use nqp::(de)serialize instead of json to improve performance |
19:39 | |
FROGGS | .tell jnthn I pushed to rakudo/jsoff in case you are curious | ||
yoleaux | FROGGS: I'll pass your message to jnthn. | ||
nbdsp | my $arrayref = $sth.fetchall_arrayref; for @$arrayref -> $q { say $q[0].decode('utf8'); } | ||
19:41
colomon left,
beastd joined
|
|||
FROGGS | nbdsp: cant you upload the html file? | 19:42 | |
19:45
[TuxCM] joined
|
|||
nbdsp | FROGGS: will upload | 19:46 | |
dalek | q: 24f3a7c | lizmat++ | answers.md: Mention Larry's announcement |
19:54 | |
nbdsp | Err, pastebin has the limit 512 KB and the file report is about 1 MB. Is there another place for uploading? | 19:55 | |
Oh, I'jj upload to git | |||
lizmat | gist.github.com is used often around here, don't have any ideas about its limits though | ||
yoleaux | 18:21Z <nine> lizmat: that's odd. With current rakudo and your lazy @*INC patch, make test passes. Panda is still broken. File::Find tests successfully but Shell::Command fails with write string requires an object with REPR MVMOSHandle | ||
18:38Z <nine> lizmat: seems like commit 43db2d5bbe75be4cb842d43991248c29b4a1897a is responsible for the progress. Maybe because use nqp; no longer invokes any ModuleLoader? | |||
18:56Z <nine> lizmat: Shell::Command's tests fail with a precompiled Shell::Command, but not with the source version | |||
lizmat | use nqp not needing ModuleLoader is probably the reason, yes... | 19:56 | |
19:56
yqt joined
19:57
nbdsp left,
revdiablo left,
revdiablo joined
|
|||
skids | m: Array.new(0,1,2,3,4), { "OHAI $_".say; Array.new($_[1,2,3,0]); } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } # What broke Sum::MD | 19:58 | |
camelia | rakudo-moar 5d707b: OUTPUT«0(Int)1(Int)2(Int)3(Int)» | ||
skids | m: [ 0,1,2,3,4 ], { "OHAI $_".say; [ $_[1,2,3,4,0] ]; } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } # works but... | 20:00 | |
camelia | rakudo-moar 5d707b: OUTPUT«[0, 1, 2, 3, 4](Array)OHAI 0 1 2 3 40(Int)OHAI 1 2 3 4 01(Int)OHAI 2 3 4 0 12(Int)OHAI 3 4 0 1 23(Int)» | ||
20:00
_mg_ left
|
|||
skids | m: [ 0,1,2,3,4 ], { "OHAI $_".say; Array.new($_[1,2,3,4,0]); } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } | 20:01 | |
camelia | rakudo-moar 5d707b: OUTPUT«[0, 1, 2, 3, 4](Array)OHAI 0 1 2 3 40(Int)OHAI 00(Int)Unhandled exception: Index out of range. Is: 1, should be in 0..0 at <unknown>:1 (/home/camelia/rakudo-inst-2/share/perl6/runtime/CORE.setting.moarvm:throw:4294967295) f…» | ||
lizmat | skids: I probably did that | 20:02 | |
looking at the issue now | |||
skids | Not sure what the proper flattenning behavior is, but weird in any case that the "say" in the first one does nothing. | 20:03 | |
lizmat | star: [ 0,1,2,3,4 ], { "OHAI $_".say; Array.new($_[1,2,3,4,0]); } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } | 20:05 | |
star-m: [ 0,1,2,3,4 ], { "OHAI $_".say; Array.new($_[1,2,3,4,0]); } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } | |||
m-star: [ 0,1,2,3,4 ], { "OHAI $_".say; Array.new($_[1,2,3,4,0]); } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } | 20:06 | ||
20:06
nbdsp joined
|
|||
lizmat | what was it again? | 20:06 | |
camelia | star-m 2015.03: OUTPUT«(timeout)[0, 1, 2, 3, 4](Array)OHAI 0 1 2 3 40(Int)OHAI 00(Int)OHAI 00(Int)OHAI 00(Int)OHAI 00(Int)OHAI 00(Int)OHAI 00(Int)OHAI 00(Int)OHAI 00(Int)OHAI 00(Int)OHAI …» | ||
nbdsp | The file report is here: github.com/nbdsp/profile-report/bl...ofile.html | ||
lizmat | m: my $a = 1; $a[0] = 3 # skids, isn't this really the problem? | 20:08 | |
camelia | rakudo-moar 5d707b: OUTPUT«Cannot modify an immutable Int in method ASSIGN-POS at src/gen/m-CORE.setting:2231 in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:3457 in block <unit> at /tmp/vjzKls6AHe:1» | ||
skids | lizmat: No, nothing get modified, other then the being-built array-of-arrays. | 20:09 | |
FROGGS | nbdsp: 99.4% spend in unpack_return_values at lib/Inline/Perl5.pm6:425 | ||
20:11
domidumont joined
20:13
[TuxCM] left
|
|||
skids | m: array[uint32].new(0,1,2,3,4).item, { "OHAI $_".say; array[uint32].new($_[1,2,3,4,0]).item; } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } # This works OK for my purposes and is probably more correct. | 20:14 | |
camelia | rakudo-moar 5d707b: OUTPUT«array[uint32].new(0, 1, 2, 3, 4)(array[uint32])OHAI 0 1 2 3 40(Int)OHAI 1 2 3 4 01(Int)OHAI 2 3 4 0 12(Int)OHAI 3 4 0 1 23(Int)» | ||
nbdsp | FROGGS: Is it normal for this function to take so long? | ||
20:21
leont joined
|
|||
lizmat | some benchmarks: | 20:23 | |
m: my int $max = 1000000; loop (my int $i = 0; $i < $max; $i = $i + 1) { }; say now - INIT now # fastest | |||
camelia | rakudo-moar 5d707b: OUTPUT«0.006822» | ||
lizmat | m: my Int $max = 1000000; loop (my Int $i = 0; $i < $max; $i = $i + 1) { }; say now - INIT now # both Ints instead of natives, slower | 20:24 | |
camelia | rakudo-moar 5d707b: OUTPUT«0.49885572» | ||
lizmat | m: my Int $max = 1000000; loop (my int $i = 0; $i < $max; $i = $i + 1) { }; say now - INIT now # mixed int and Int, slowest | ||
camelia | rakudo-moar 5d707b: OUTPUT«0.7657925» | ||
lizmat | skids: ^^^ there are several cases like that in Inline::Perl5 # nine :-) | 20:25 | |
20:25
zakharyas left
20:28
MARTIMM left
20:31
domidumont left
|
|||
nine | I guess it's so slpw because I have to copy blobs byte by byte from CArray[int8] | 20:32 | |
Proper buf support for NativeCall will improve this a lot | 20:33 | ||
nbdsp: if you can try passing decoded strings from P5 to P6. Should be much, much faster | 20:34 | ||
nbdsp | nine: how to do this? | 20:35 | |
20:37
laouji joined
|
|||
nine | nbdsp: tell your dbd to decode text fields. Recent DBD::Pg will do this automatically. DBD::mysql has some mysql_enable_utf8 flag. Others will probably too | 20:40 | |
nbdsp | Thanks! | ||
nine | nbdsp: please report your results :) | 20:41 | |
nbdsp | Yes. | 20:42 | |
nine | Really time to sleep now. Good night #perl6 :) | ||
20:43
laouji left
20:45
diana_olhovik_ left
|
|||
skids | Oh, I guess my last example didn't "work fine". | 20:48 | |
20:51
darutoko left
|
|||
lizmat | night, nine! | 20:52 | |
nbdsp | When I do as follows, the time doesn't seem to improve: my $dbh = DBI.connect( "DBI:mysql:database=testDB; mysql_enable_utf8=1; host=localhost; port=3306;", "user", "password" ); The size of text field if the query is about 75 Kb. Maybe the utf8 flag needs to be set in some other place? | 20:56 | |
*in the query | |||
20:57
dolmen joined
|
|||
DrForr | Incidentally, github.com/drforr/perl6-ANTLR4.git # ANTLR4 grammar for perl6 - Still a few kinks to work out, but it can handle the sample CSV grammar from ANTLR4. | 21:02 | |
dalek | kudo-star-daily: 7ebf7bd | coke++ | log/ (2 files): today (automated commit) |
21:05 | |
RabidGravy | in NativeCall is there a possibility that "const char *" is not doing something right when given a Str? | ||
seems to come up with random garbage | 21:06 | ||
skids | m: my $i = 0; my @a = [0,1,2,3], { [$_[1,2,3,0]] } ... { $i++ == 4 }; @a.perl.say # note the last one is not itemized, another layer to the issue. | 21:08 | |
camelia | rakudo-moar 5d707b: OUTPUT«[[0, 1, 2, 3], [1, 2, 3, 0], [2, 3, 0, 1], [3, 0, 1, 2], 0, 1, 2, 3]<>» | ||
skids | (or maybe the same layer from a different view) | 21:09 | |
Hah. I got bit by ?"0" == True :-). Bad me. | 21:16 | ||
21:21
mohij left
|
|||
lizmat | shutting down& | 21:21 | |
21:21
lizmat left
21:32
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
[Coke] | t/spec/S17-procasync/kill.t is passing, but slow. Any reason not to add it to spectest.data ? | 21:39 | |
RabidGravy | is sprintf implemented in such a way as it can be subverted^Wleveraged^Waugmented to provide domain specific formats? | 21:47 | |
dalek | kudo/nom: c14bc41 | Coke++ | tools/update-passing-test-data.pl: This isn't a Perl 6 test, don't try to run it. |
21:49 | |
kudo/nom: 4c1ae0d | Coke++ | t/spectest.data: Run these passing tests ...some of which were recently fudged |
|||
ast: efb1904 | Coke++ | S32-str/length.t: Fudge for rakudo Also make sure .length dies with appropriate exception type |
|||
21:50
andreoss joined
|
|||
andreoss | how can i have several :nth in subst? | 21:51 | |
21:51
skids left
|
|||
andreoss | m: "11123".subst("1", "0", :nths(1 3)); | 21:51 | |
camelia | rakudo-moar 5d707b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7pjfpgp5S9Two terms in a rowat /tmp/7pjfpgp5S9:1------> 3"11123".subst("1", "0", :nths(17⏏5 3)); expecting any of: infix infix stopper statement end …» | ||
raydiak | m: say "11123".subst("1", "0", :nth(1, 3)) # or :nth<1 3> if you prefer to skip the comma | 22:04 | |
camelia | rakudo-moar 5d707b: OUTPUT«01023» | ||
22:04
aborazmeh left
22:05
rindolf left
22:09
zjmarlow joined
22:12
kaare_ left,
zjmarlow left
22:15
bjz left
22:17
nbdsp_ joined,
nbdsp_ left,
nbdsp left
22:18
jack_rabbit joined,
nbdsp joined
22:25
nbdsp left
22:31
dolmen left
22:34
rararara joined,
eli-se left
22:37
RabidGravy left
22:38
skids joined
22:41
colomon joined
22:46
jack_rabbit left
22:47
jack_rabbit joined,
zeleiadi joined
22:48
lichtkind left
22:51
anaeem1 joined
22:55
zeleiadi left
22:59
lizmat joined
23:01
zeleiadi joined
|
|||
lizmat | [Coke]: re irclog.perlgeek.de/perl6/2015-04-19#i_10468028 (t/spec/S17-procasync/kill.t) | 23:02 | |
I would recommend against it as the tests that *really* matter, are TODO's because we cannot actually send signals yet | 23:03 | ||
23:09
gfldex left
23:10
vendethiel left
23:16
rararara left
|
|||
[Coke] | lizmat++ thanks. | 23:19 | |
23:20
laouji joined
23:21
yqt left
23:23
andreoss left
23:24
BenGoldberg joined
23:25
laouji left,
anaeem1 left
|
|||
japhb | Is Proc::Async now running correctly on r-j? | 23:36 | |
Or still just r-m? | |||
lizmat | japhb: I have no idea | 23:38 | |
japhb | Fair enough. :-) | 23:40 | |
How was the hackathon? (I know it occurred, but I have no idea what awesomeness transpired ....) | 23:41 | ||
dalek | kudo/nom: 4ba4aab | lizmat++ | src/Perl6/Grammar.nqp: Handle all pragmas with -M (not just "strict") |
23:43 | |
lizmat | well, if you look at the past 4 days git log | ||
I would think a lot has happened on the P6 end :-) | 23:44 | ||
there was a lot of discussion at the QA hackathon | |||
mostly about P5 / CPAN | |||
I'm pretty sure we will here more about that in the near future from the people involved | 23:45 | ||
also: PAUSE has been migrated from Apache/mod_perl to Plack | |||
and 5.24 (next year) will most likely allow you to transparently execute Perl 6 code if Inline::Perl6 is installed | 23:46 | ||
5.22 is already in code freeze, so we were too late for that | |||
act.qa-hackathon.org/qa2015/wiki?node=Results for a list of achievements | 23:47 | ||
23:48
telex left
23:50
telex joined,
zeleiadi left
|
|||
timotimo | lizmat: oooh you improved autogenerated accessors? | 23:52 | |
lizmat | One of the most exciting things I saw was tadzik developing a BNF to Perl 6 grammars converter | ||
timotimo | how? | ||
:D | |||
23:52
espadrine left
|
|||
lizmat | they have D: on them, and they don't show up in backtraces | 23:52 | |
m: class A { has $.a }; A.a | 23:53 | ||
camelia | rakudo-moar 4c1ae0: OUTPUT«Invocant requires a 'A' instance, but a type object was passed. Did you forget a .new? in block <unit> at /tmp/NXg_R_vxCG:1» | ||
timotimo | ah | ||
the next step for autogenerated accessors will be to actually generate code for them rather than just having closures that close over the attribute name | 23:54 | ||
that ought to make accesses a bit cheaper | |||
23:54
leont left
|
|||
timotimo | but custom code will be bigger in ram than just a closure clone :\ | 23:54 | |
lizmat | I guess we could do that for autogenerated accessors in the core settings | 23:55 | |
or have a pragma like "use more memorry" | |||
that would autogenerate them in a different way ? | 23:56 | ||
so with 5.24 you should be able to say: "perl -Mv6 -e '.say for ^10' | 23:58 | ||
iff Inline::Perl6 is installed | |||
lizmat is tired and goes to sleep& | 23:59 |