»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by sorear on 25 June 2013. |
|||
00:01
flussenc1 joined,
sorear joined
00:02
flussence left,
flussenc1 is now known as flussence,
chenryn_ joined
00:03
brother joined,
baest_ joined,
hoelzro joined,
isacloud______ joined,
integral_ joined,
integral_ left,
integral_ joined
00:04
ChoHag joined,
erkan left
00:05
hobbs joined,
ggherdov__ joined
00:06
virtualsue_ joined
00:07
tokuhirom_ joined
00:08
colomon_ joined
00:13
chenryn left,
virtualsue left,
colomon left,
ChoHag_ left,
vike1 left,
hoelzro_ left,
baest left,
Pleiades` left,
no-doz left,
tokuhirom left,
ggherdov_ left,
isacloud_____ left,
hobbified left,
sorear_ left,
brother| left,
skarn left,
integral left,
ggoebel1111117 left,
colomon_ is now known as colomon,
virtualsue_ is now known as virtualsue,
tokuhirom_ is now known as tokuhirom
00:14
jerrycheung joined,
skarn joined
00:15
skarn is now known as Guest43064,
isacloud______ is now known as isacloud_____
00:35
Alina-malina left,
aindilis left,
aindilis joined
|
|||
carlin | Illegal attempt to pop empty temporary root stack | 00:35 | |
sounds... fun | 00:36 | ||
00:39
chenryn_ left
|
|||
timotimo | github.com/MoarVM/MoarVM/blob/mast...ots.c#L146 - breakpoint this and get us a traceback please | 00:42 | |
carlin | I'll try and golf the code that causes it tonight | 00:47 | |
it involves async and threads, so all the stuff that makes fun things happen | 00:48 | ||
00:51
virtualsue left
01:00
yeahnoob joined
01:02
pat_js` joined
01:12
dayangkun joined,
slmult0 joined
01:16
raiph joined
01:21
FROGGS_ joined
|
|||
BenGoldberg | m: my %a; %a{(<12 12a 1>).pick(*).Str.sort} += 1 for 1..1000; %a.say; | 01:21 | |
camelia | rakudo-moar 351c12: OUTPUT«"1 12 12a" => 2, "1 12a 12" => 2, "12 1 12a" => 2, "12 12a 1" => 2, "12a 1 12" => 2, "12a 12 1" => 2» | ||
BenGoldberg is confused. | |||
Shouldn't all the values add up to 1000? | |||
01:23
Sqirrel left
|
|||
BenGoldberg | m: my %a; %a{(12, <12a>, 2).pick(*).sort.Str} += 1 for 1..1e3; %a.say; | 01:23 | |
camelia | rakudo-moar 351c12: OUTPUT«"12 12a 2" => 344, "12a 2 12" => 321, "2 12 12a" => 335» | ||
BenGoldberg | That's better, for some definition of better. | 01:24 | |
01:24
FROGGS left
01:26
skids joined
|
|||
BenGoldberg | m: my %a; %a{($_ %% 2).sort} += 1 for 1..1e3; %a.say; | 01:35 | |
camelia | rakudo-moar 351c12: OUTPUT«"False" => 2, "True" => 2» | ||
BenGoldberg | What is going on there? | ||
01:36
dayangkun left
|
|||
colomon | m: .say for 1..1e3 | 01:37 | |
camelia | rakudo-moar 351c12: OUTPUT«1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253…» | ||
BenGoldberg | n: my %a; %a{($_ %% 2).sort} += 1 for 1..1e3; %a.say; | 01:38 | |
camelia | niecza : OUTPUT«Cannot open assembly './run/Niecza.exe': No such file or directory.» | ||
BenGoldberg | P: my %a; %a{($_ %% 2).sort} += 1 for 1..1e3; %a.say; | ||
camelia | pugs: OUTPUT«/home/p6eval/.cabal/bin/pugs: error while loading shared libraries: libperl.so.5.14: cannot open shared object file: No such file or directory» | ||
colomon | what's the .sort meant to be doing? | 01:39 | |
01:39
rindolf joined
|
|||
BenGoldberg | I'd intended to do something with .sort.Str, and accidentally typoed it as .Str.sort ... and then discovered this really strange outcome you see here. | 01:39 | |
m: 1.sort.WHAT.say | 01:40 | ||
camelia | rakudo-moar 351c12: OUTPUT«(List)» | ||
BenGoldberg | P: my %a; %a{($_ %% 2).list} += 1 for 1..1e3; %a.say; | 01:41 | |
camelia | pugs: OUTPUT«/home/p6eval/.cabal/bin/pugs: error while loading shared libraries: libperl.so.5.14: cannot open shared object file: No such file or directory» | ||
BenGoldberg | m: my %a; %a{($_ %% 2).list} += 1 for 1..1e3; %a.say; | ||
camelia | rakudo-moar 351c12: OUTPUT«"False" => 2, "True" => 2» | ||
BenGoldberg | m: my %a; %a{"blah".list} += 1 for 1..1e3; %a.say; | 01:42 | |
camelia | rakudo-moar 351c12: OUTPUT«"blah" => 2» | ||
BenGoldberg | m: my %a; %a{"blah".list} += 1 for 1..4; %a.say; | ||
camelia | rakudo-moar 351c12: OUTPUT«"blah" => 2» | ||
BenGoldberg | That's golfed enough, I suppose... | 01:43 | |
colomon | oh! | 01:45 | |
01:47
raiph left
|
|||
colomon has theories, but none of them actually explain what we're seeing | 01:47 | ||
01:48
kurahaupo left
|
|||
colomon | m: my %a; for 1..4 { %a{"blah".list} += 1; }; %a.say | 01:48 | |
camelia | rakudo-moar 351c12: OUTPUT«"blah" => 2» | ||
colomon | m: my %a; for 1..4 { %a{"blah"} += 1; }; %a.say | ||
camelia | rakudo-moar 351c12: OUTPUT«"blah" => 4» | ||
colomon | m: my %a; for 1..4 { %a{"blah".list} += 1; %a.say }; %a.say | 01:50 | |
camelia | rakudo-moar 351c12: OUTPUT«"blah" => 2"blah" => 2"blah" => 2"blah" => 2"blah" => 2» | ||
01:52
slmult0 left
|
|||
colomon | m: my %a; say %a{"blah".list}.WHAT | 01:52 | |
camelia | rakudo-moar 351c12: OUTPUT«(Parcel)» | ||
colomon | m: my %a; say %a{"blah".list}.perl | ||
camelia | rakudo-moar 351c12: OUTPUT«(Any,)» | ||
colomon | m: my %a; say (%a{"blah".list} += 1).perl | 01:53 | |
camelia | rakudo-moar 351c12: OUTPUT«(2,)» | ||
colomon | m: my %a; say %a{"blah"}.perl | 02:01 | |
camelia | rakudo-moar 351c12: OUTPUT«Any» | ||
colomon | m: my %a; say %a{"blah"}.WHAT | ||
camelia | rakudo-moar 351c12: OUTPUT«(Any)» | ||
02:04
pat_js` left
02:05
rindolf left
02:13
telex left
02:19
chenryn joined
02:22
Guest43064 left,
Guest43064 joined,
Guest43064 is now known as skarn
02:48
noganex_ joined,
kaleem joined,
rindolf joined
02:50
slavik left,
hagiri joined
02:51
noganex left
03:03
slavik joined,
hagiri left
03:10
jerrycheung left
03:12
PZt joined
03:14
chenryn left
03:16
chenryn joined
03:27
kaleem left
|
|||
dalek | ecs: a7e69b5 | (L. Grondin)++ | S99-glossary.pod: FIFO is a queue and LIFO is a stack |
03:31 | |
03:48
kaare joined,
kaare is now known as Guest14887
03:57
jerrycheung joined
04:02
araujo left
04:25
[Sno] left
04:31
BenGoldberg left
04:32
chenryn left
04:36
circ-user-41MtE joined
|
|||
circ-user-41MtE | helloo | 04:36 | |
04:42
circ-user-41MtE left
04:43
circ-user-oppkc joined,
circ-user-oppkc is now known as joescript
04:45
hagiri joined
04:46
hagiri left
04:48
camelia left,
Guest14887 left
04:59
chenryn joined
05:05
grondilu joined
05:08
joescript left
05:20
Alina-malina joined,
kaare joined,
kaare is now known as Guest85393
05:21
Guest85393 is now known as kaare__
05:24
molaf joined
|
|||
grondilu | m: class A { has @.i; multi method new(*@i) { self.new: :i(Mu) }; }; say A.new(); | 05:26 | |
^ this almost crashes my computer locally. | 05:29 | ||
seems to be an infinite recursive loop but that seems wrong to me. self.new(:i(Mu)) should not call new(*@), should it? | 05:30 | ||
05:37
kaleem joined
05:38
Sqirrel joined
|
|||
grondilu | m: class A { has @.i; multi method new(@i) { self.new: :i(Mu) }; }; say A.new(); | 05:39 | |
p6: say "hi" | |||
nine | .tell lizmat: and true enough comes the morning I'm a bit more positive. Allowing - in identifiers is not the only incompatible change. Perl 5 doesn't support real named arguments for example so there's got to be some workarounds anyway. And one can always call $foo->call_method('perl6-method', ...) anyway... | 05:45 | |
yoleaux | nine: What kind of a name is "lizmat:"?! | ||
nine | .tell lizmat[3~: and true enough comes the morning I'm a bit more positive. Allowing - in identifiers is not the only incompatible change. Perl 5 doesn't support real named arguments for example so there's got to be some workarounds anyway. And one can always call $foo->call_method('perl6-method', ...) anyway... | ||
yoleaux | nine: What kind of a name is "lizmat[3~:"?! | ||
nine | .tell lizmat and true enough comes the morning I'm a bit more positive. Allowing - in identifiers is not the only incompatible change. Perl 5 doesn't support real named arguments for example so there's got to be some workarounds anyway. And one can always call $foo->call_method('perl6-method', ...) anyway... | 05:46 | |
yoleaux | nine: I'll pass your message to lizmat. | ||
05:49
chenryn left
06:00
chenryn joined
|
|||
vendethiel | o/ | 06:09 | |
06:09
molaf left,
cognome left
06:10
SamuraiJack joined,
cognome joined,
[Sno] joined
06:13
vendethiel left,
cbk1090 left
06:14
cognome left
06:21
mr-foobar joined
06:23
jerrycheung left
06:24
rindolf left,
rindolf joined
06:27
FROGGS_ left
06:31
slmult0 joined
06:32
Sqirrel left
06:41
slmult0 left
06:42
slmult0 joined,
jack_rabbit joined
06:46
slmult0 left
06:47
cognome joined
06:51
cognome left
06:56
zakharyas joined
07:00
FROGGS joined
|
|||
dalek | kudo/match: 510e68d | (Tobias Leich)++ | src/core/Cursor.pm: attempt to patch Cursor.MATCH like in nqp |
07:03 | |
07:09
denis_boyun_ joined,
jack_rabbit left
07:18
slmult0 joined
07:19
Maddingu1 is now known as Maddingue
|
|||
FROGGS | jnthn: can you please take a look at github.com/rakudo/rakudo/commit/51...nt-7780349 ? | 07:20 | |
jnthn: I guess you spot my error easily | 07:21 | ||
07:25
chenryn left
07:28
chenryn joined,
virtualsue joined
|
|||
FROGGS | nine: and you won't be able to access dynamic variables or compile time constants... and we also don't know how Perl 6 code will really be used in ten years | 07:37 | |
so there might be bigger problems coming that we do not know yet (wrt. Perl 5 interop) | |||
moritz will be offline the next ~9 days (the good kind of offline :-) | 07:44 | ||
07:45
cognome joined
|
|||
nwc10 | mr-foobar: h | 07:45 | |
er | |||
fat fingers | |||
moritz: have fun | |||
FROGGS | moritz: enjoy it :o) | 07:46 | |
mberends | +1 | 07:48 | |
lizmat | moritz: enjoy! | ||
yoleaux | 05:46Z <nine> lizmat: and true enough comes the morning I'm a bit more positive. Allowing - in identifiers is not the only incompatible change. Perl 5 doesn't support real named arguments for example so there's got to be some workarounds anyway. And one can always call $foo->call_method('perl6-method', ...) anyway... | ||
lizmat | nine: good morning :-) | ||
moritz | thanks nwc10, FROGGS, lizmat | 07:49 | |
07:50
cognome left,
denis_boyun_ left
07:54
fhelmberger joined
07:59
darutoko joined,
dayangkun joined,
telex joined,
vikeOne joined,
ggoebel1111117 joined,
telex left
08:00
telex joined
08:04
ggherdov__ left,
ggherdov__ joined,
isacloud_____ left,
isacloud_____ joined
08:05
virtualsue left
08:07
erkan joined
08:10
dwarring left
08:16
camelia joined
08:17
ChanServ sets mode: +v camelia
08:18
dalecooper joined
08:26
pmurias joined
|
|||
pmurias | shouldn't we have runinstead and shellinstead? | 08:26 | |
08:29
lizmat_ joined,
lizmat left
|
|||
pmurias | hmm, what's a good way to create a temporary file in nqp? | 08:30 | |
08:31
kurahaupo joined
08:32
dwarring joined
08:33
lizmat joined
08:35
lizmat__ joined,
lizmat left,
lizmat_ left,
dalecooper left
08:37
lizmat joined,
lizmat__ left
|
|||
dwarring | I've bisected parrot failures affecting advent2010-07.t and other advent tests... | 08:39 | |
(test suite had been out of action on parrot for about a week) | 08:40 | ||
08:40
kjs_ joined
|
|||
FROGGS | dwarring: and? | 08:41 | |
dwarring | looks like this test started hanging around rakudo commit 3e96fe51a29fd3758fe774b5e3e95aae9e7196dd | ||
FROGGS | dwarring: I am about checking panda on parrot again | ||
dwarring: yes, that seems also to be the panda problem | 08:42 | ||
sergot | hi o/ | ||
FROGGS | hi | ||
lizmat | dwarring: going to check that now | ||
(as that commit was my doing) | |||
dwarring | there's also a second regression at df2f8b4954477f02f2481f981a7d7c564a959544 | 08:43 | |
hoping this gist explains things a bit more - gist.github.com/dwarring/12c1e32440a8aea43337 | |||
(see comments) | |||
lizmat | dwarring: I'm on it | 08:44 | |
08:45
cognome joined
|
|||
dwarring | ok lizmat++ | 08:45 | |
hope that helps | 08:46 | ||
FROGGS | is there a reason to prefer nqp::box_s("foo", Str) over nqp::p6box_s("foo")? and, is there a difference in the resulting thing? | 08:47 | |
lizmat | hmmm... p6box_s isn't even documented ? | 08:49 | |
08:49
cognome left
|
|||
dwarring zzzz& | 08:50 | ||
FROGGS | lizmat: where are you looking? | ||
08:50
SamuraiJack left
|
|||
lizmat | github.com/perl6/nqp/blob/master/d...s.markdown | 08:51 | |
FROGGS | lizmat: it is not an nqp op, it is an rakudo ext-op | ||
all nqp::p6* are | |||
08:51
sjn left
|
|||
lizmat | eh, then why has it the nqp:: prefix ? | 08:51 | |
good night, dwarring! | |||
FROGGS | because we register it that way :o) | ||
I think because we can access it is Perl6/Action.nqp this way | 08:52 | ||
in* | |||
so, I've build all backends now, in case I should test something | 08:53 | ||
lizmat | m: my str $a= "a"; say nqp::p6box_s($a) | ||
camelia | rakudo-moar 351c12: OUTPUT«a» | ||
lizmat | I don't see a difference from this end: to me it's just another (undocumented) nqp:: operation | ||
daxim__ | <www.wilfred.me.uk/blog/2014/09/15/c...ology/> "there’s a huge design space of how macro systems can be implemented" (via HN) | ||
lizmat | (still building parrot, my is it slow compared to moar) | 08:54 | |
FROGGS | lizmat: yes, now wonder features get more quickly implemented nowadays :o) | ||
08:56
Ven joined
|
|||
Ven | .tell masak www.wilfred.me.uk/blog/2014/09/15/c...macrology/ | 08:56 | |
yoleaux | Ven: I'll pass your message to masak. | ||
08:56
Ven left
|
|||
dalek | p-js: 351cae7 | (Pawel Murias)++ | tools/build/ (2 files): Make the Makefile install the required support js modules. |
08:57 | |
09:01
dakkar joined
09:03
slmult0 left
09:04
ClarusCogitatio left
09:06
ClarusCogitatio joined
|
|||
lizmat | rebuilding rakudo on parrot: real4m27.370s = 267 seconds | 09:07 | |
on moar: 0m43.920s = about 6x as fast | 09:08 | ||
09:13
Celelibi left
|
|||
lizmat | looks like parrot has a problem with basic math | 09:23 | |
1 + 1 + 0 = 0 | |||
09:23
sjn joined
09:24
virtualsue joined
|
|||
lizmat | more specifically: $moving = $chars + 1 + nqp::eqat($ns, $CRLF, $nextpos); | 09:29 | |
seems to come out as 0 always on parrot | |||
FROGGS | m: say nqp::eqat(nqp::unbox_s("foo\r\nbar"), nqp::unbox_s("\r\n"), 3) | 09:31 | |
camelia | rakudo-moar 351c12: OUTPUT«1» | ||
FROGGS | p: say nqp::eqat(nqp::unbox_s("foo\r\nbar"), nqp::unbox_s("\r\n"), 3) | ||
camelia | rakudo-parrot 351c12: OUTPUT«1» | ||
FROGGS | p: say nqp::eqat(nqp::unbox_s("foo\r\nbar"), nqp::unbox_s("\r\n"), 4) | ||
camelia | rakudo-parrot 351c12: OUTPUT«0» | ||
FROGGS | m: say nqp::eqat(nqp::unbox_s("foo\r\nbar"), nqp::unbox_s("\r\n"), 4) | ||
camelia | rakudo-moar 351c12: OUTPUT«0» | ||
FROGGS | m: say nqp::eqat(nqp::unbox_s("foo\r\nbar"), nqp::unbox_s("\r\n"), -1) | ||
camelia | rakudo-moar 351c12: OUTPUT«0» | ||
FROGGS | p: say nqp::eqat(nqp::unbox_s("foo\r\nbar"), nqp::unbox_s("\r\n"), -1) | ||
camelia | rakudo-parrot 351c12: OUTPUT«0» | ||
FROGGS | p: say nqp::eqat(nqp::unbox_s("foo\r\nbar"), nqp::unbox_s("\r\n"), 55) | ||
camelia | rakudo-parrot 351c12: OUTPUT«0» | ||
FROGGS | m: say nqp::eqat(nqp::unbox_s("foo\r\nbar"), nqp::unbox_s("\r\n"), 55) | ||
camelia | rakudo-moar 351c12: OUTPUT«0» | ||
FROGGS | hmmm | ||
lizmat: what is the test case you're using? | 09:32 | ||
09:33
donaldh joined
|
|||
lizmat | say "a\r\nb\nc\n".lines.elems | 09:33 | |
FROGGS | k | ||
lizmat | that hangs on parrot atm | ||
if I put the result of nqp::eqat in a temp variable, it works ok | 09:34 | ||
something like my int $extra = nqp::eqat; $moving = $chars +1 $ extra; | 09:35 | ||
s/$/+/ | |||
FROGGS | eww | ||
lizmat | some code gen, maybe optimization issue ? | 09:36 | |
FROGGS | I would say that a code-gen bug on parrot is very unlikely | ||
and we cannot change the optimization level for perl6-p because some stuff relies on optimization and will break without | 09:37 | ||
lizmat hates it when she can only try 12 hypotheses an hour | |||
I'll put in some conditional parrot code then, yuck :-( | |||
FROGGS | I recompile right now with some debugging output... | 09:38 | |
nwc10 | do we know which OSes/distributions package Rakudo (on Parrot)? | ||
eg does macports? does cygwin have a packaging system, and does it? which BSD ports? (etc) | 09:39 | ||
FROGGS | nwc10: I only know about daxim++'s work for opensuse | 09:42 | |
nwc10 | I know that I've installed it on debian, and on ubnutu we have | ||
This is perl6 version 2013.12 built on parrot 5.9.0 revision 0 | |||
FROGGS | p: say nqp::eqat(nqp::unbox_s("foo\r\nbar"), nqp::unbox_s("\r\n"), 3) | 09:43 | |
camelia | rakudo-parrot 351c12: OUTPUT«1» | ||
FROGGS | p: say 0 + nqp::eqat(nqp::unbox_s("foo\r\nbar"), nqp::unbox_s("\r\n"), 3) | ||
camelia | rakudo-parrot 351c12: OUTPUT«1» | ||
FROGGS | p: say 0 + 1 + nqp::eqat(nqp::unbox_s("foo\r\nbar"), nqp::unbox_s("\r\n"), 4) | ||
camelia | rakudo-parrot 351c12: OUTPUT«1» | ||
FROGGS | why does that work here? | 09:44 | |
lizmat | because you're not using variables? | ||
pmurias | lizmat: reducing the bug to an nqp level test that we could put into the nqp test suit would be great | 09:45 | |
FROGGS | then it might be really a code-gen bug | ||
09:45
cognome joined
|
|||
FROGGS | it could be that eqat uses a hard coded register | 09:45 | |
lemme look | |||
lizmat | but one that exists on parrot only | ||
jvm is also clean, I just checked | |||
FROGGS | lizmat: code-gen is backend specific | 09:46 | |
lizmat | hnmmm... scratch that: jvm seems also infected :-( | 09:48 | |
oops, no, I just wasn't patient enough :-( | |||
pmurias | all the code-gen in jvm, moar, parrot is a very similiar manner | 09:49 | |
09:49
cognome left
|
|||
dalek | kudo/nom: bac255d | (Elizabeth Mattijsen)++ | src/core/Str.pm: initial fix for hanging Str.lines on parrot |
09:52 | |
FROGGS | p: my str $CRLF = nqp::unbox_s("\r\n"); my int $chars; say $chars + 1 + nqp::eqat(nqp::unbox_s("a\r\nb"), $CRLF, 0) # here is the bug | 09:56 | |
camelia | rakudo-parrot 351c12: OUTPUT«0» | ||
FROGGS | it vanishes when I make $chars an Int, and also when I replace nqp::eqat by a literal 0 | 09:57 | |
09:59
anaeem1 joined
|
|||
lizmat | shall I rakudobug it ? | 10:01 | |
FROGGS | yes... | 10:02 | |
in the meantime I try to understand it | |||
lizmat | RT #122783 | 10:07 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122783 | ||
dalek | kudo/nom: dc83803 | (Elizabeth Mattijsen)++ | src/core/Str.pm: Temp fix for other candidates, RT #122783 |
||
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122783 | ||
10:08
yeahnoob left
10:10
ribasushi left
|
|||
FROGGS | eww: | 10:11 | |
p: sub infix:<+>(int $a, int $b) { nqp::add_i($a, $b) }; my int $chars; say $chars + 1 + nqp::eqat(nqp::unbox_s("a"), nqp::unbox_s("b"), 0) | |||
camelia | rakudo-parrot 351c12: OUTPUT«0» | ||
FROGGS | p: sub infix:<+>(int $a, int $b) { 7; nqp::add_i($a, $b) }; my int $chars; say $chars + 1 + nqp::eqat(nqp::unbox_s("a"), nqp::unbox_s("b"), 0) | ||
camelia | rakudo-parrot 351c12: OUTPUT«1» | ||
10:12
mberends left
|
|||
FROGGS | I guess it is an optimization problem with infix:<+> on natives | 10:12 | |
10:14
virtualsue left
|
|||
lizmat | guess so: well at least the parrot spec test is not hanging anymore | 10:17 | |
10:22
virtualsue joined
|
|||
dalek | kudo/nom: 9c3634d | (Elizabeth Mattijsen)++ | src/core/Str.pm: Mention #122783 for posterity |
10:22 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122783 | ||
10:34
leont joined
|
|||
lizmat | leont: I'm thinking about changing the API of Proc::Async.new | 10:34 | |
will that be a big problem for you? | |||
instead of :path, :args, use positionals | |||
also allow direct %ENV setting :-) | 10:35 | ||
(with .start) | |||
leont | I don't really care about the API, I'll adapt to it | ||
lizmat | ok | ||
leont | Just warn me when flag day comes ;-) | 10:36 | |
10:37
Woodi left
10:38
ribasushi joined
|
|||
leont | Direct %*ENV setting would be sensible too, yes. Not that I've needed it so far. | 10:41 | |
dalek | ecs: 5123177 | (Elizabeth Mattijsen)++ | S17-concurrency.pod: Make .stdout/.stderr suppliers more generic |
10:45 | |
10:45
cognome joined
|
|||
lizmat first waits for any reactions to spec changes ^^^ | 10:45 | ||
10:46
dayangkun left
|
|||
FROGGS | lizmat: other methods usually use the :bin colonpair to switch between strings and bufs | 10:47 | |
lizmat | aha, an extra reason not to call it "stdout_bytes" :- | ||
) | |||
FROGGS | :o) | ||
10:50
cognome left
10:51
chenryn left
|
|||
dalek | ecs: d21d857 | (Elizabeth Mattijsen)++ | S17-concurrency.pod: Be more like other IO: :bytes -> :bin FROGGS++ |
10:52 | |
lizmat | does Win have an "echo" ? | ||
10:53
denis_boyun_ joined
|
|||
lizmat | .oO( portable Proc::Async tests ) |
10:53 | |
FROGGS | lizmat: yes | ||
lizmat | ok, cool | ||
FROGGS | C:\MoarVM>echo 42 | ||
42 | |||
leont | lizmat: those changes look very sensible to me | 10:55 | |
Also, implementation was with underscores, spec with hyphens… | 10:58 | ||
lizmat | yes, I didn't change the implemented API yet | ||
pending feedback on the spec | |||
10:59
chenryn joined
|
|||
dalek | ast: 47c637e | (Elizabeth Mattijsen)++ | S17-procasync/basic.t: Add basic Proc::Async test |
11:15 | |
11:16
baest_ is now known as baest
11:22
skids left
|
|||
dalek | kudo/nom: f48eb19 | (Elizabeth Mattijsen)++ | t/spectest.data: Add basic Proc::Async test for moar only |
11:28 | |
11:38
raiph joined
11:40
kurahaupo left
11:44
mberends joined
11:45
cognome joined,
brrt joined
11:50
cognome left
11:58
kurahaupo joined
11:59
anaeem1 left
12:00
anaeem1 joined
|
|||
leont | How do I do the equivalent of \1 in a rule? | 12:00 | |
brrt | ehm, i'm not sure, but if i recall correctly, a rule is a token with autmatic whitespace ignoring or something, and neither supports backtracking. but i'm not sure if that's what you mean | 12:01 | |
in which case there wouldn't be an equivalent. but you'd have to ask somebody else to be sure | 12:04 | ||
leont | Ah, it seems "$1" did the trick. | 12:06 | |
brrt | then i'm wrong :-) | 12:19 | |
leont | Hmmm, no I may have been wrong, I think my test passed by accident | 12:21 | |
timotimo | i'm just now running into some hard drive trouble :\ | 12:23 | |
nine suddenly remembers to make a backup.... | 12:26 | ||
lizmat loves her Time Machine | |||
12:27
u-ou joined,
u-ou is now known as Guest85949
|
|||
raiph | p5-to-p6: $_ = "ab"; s/(a)/b\1/ | 12:28 | |
camelia | p5-to-p6 : OUTPUT«$_ = 'ab';s:P5!(a)!b!» | ||
lizmat | leont: $0 maybe, they start at 0 in Perl 6 | ||
timotimo | i should really do backups, too ... | 12:32 | |
12:37
SamuraiJack joined
|
|||
timotimo | FROGGS: you most probably need to keep the hllize in the match code | 12:42 | |
12:45
cognome joined
12:47
anaeem1 left
|
|||
leont was looking for the problem in all the wrong places, again | 12:48 | ||
12:48
muraiki joined
|
|||
raiph | .seen Ulti | 12:49 | |
yoleaux | I saw Ulti 12 Sep 2014 16:19Z in #perl6: <Ulti> TimToady what would your bacon number have been? | ||
12:50
cognome left
|
|||
pmurias | how is p5-to-p6 implemented? | 12:50 | |
12:57
bowtie_ left
13:02
guru joined
13:03
guru is now known as Guest15375,
Guest15375 is now known as ajr_
|
|||
FROGGS | timotimo: hllize does not change anything though | 13:03 | |
Bisecting: 358 revisions left to test after this (roughly 9 steps) | 13:05 | ||
>.< | |||
bisecting rakudo@parrot | |||
this will take months! | |||
brrt | ... :-o | 13:06 | |
leont | 9 steps, that isn't that bad, is it? | ||
brrt wonders if that is worth the trouble | |||
FROGGS | brrt: I think it is | 13:08 | |
brrt: because that can pop up everywhere | |||
good that I don't have to recompile parrot... "only" nqp and rakudo :o) | 13:09 | ||
13:09
firnsy left
13:10
kaare__ left,
kaleem left
13:11
kaleem joined
13:13
bowtie joined,
bowtie is now known as Guest89424
13:14
firnsy joined,
kurahaupo left
13:16
bcode left,
fhelmberger_ joined
13:17
mike121 joined
13:19
firnsy left
|
|||
pmurias | how hard would it be to add nqp-js to camelia? | 13:19 | |
dalek | p-js: 7d08260 | (Pawel Murias)++ | src/vm/js/ (2 files): Implement hashes partially. |
||
p-js: 917dbb0 | (Pawel Murias)++ | / (5 files): Implement nqp::const::* and nqp::stat. |
|||
p-js: 1ea4ff2 | (Pawel Murias)++ | src/vm/js/QAST/Compiler.nqp: Fix bug. |
|||
p-js: 80f126d | (Pawel Murias)++ | src/vm/js/QAST/Compiler.nqp: Implement nqp::existskey |
|||
p-js: 2e2538d | (Pawel Murias)++ | src/vm/js/ (2 files): Implement nqp::existspos |
|||
13:19
fhelmberger left
|
|||
p-js: 9a076b1 | (Pawel Murias)++ | src/vm/js/ (3 files): Implement nqp::radix. Pass test 83. |
|||
p-js: 54745dc | (Pawel Murias)++ | src/vm/js/nqp-runtime/runtime.js: Fix indentation. |
|||
carlin | Illegal attempt to pop empty temporary root stack - gist.github.com/carbin/595b569fb120657eda8a | ||
13:21
fhelmberger_ left
|
|||
dalek | ast: 9e5f4bc | (Elizabeth Mattijsen)++ | S17-procasync/print.t: Add .print/.say test: needs TODO :-( |
13:25 | |
kudo/nom: 8002629 | (Elizabeth Mattijsen)++ | t/spectest.data: Add Proc::Async .print test, for moar only |
|||
13:27
mike121 left
|
|||
[Coke] | is nqp-js standalone or does it require a cross compiler still? | 13:28 | |
brrt | FROGSS++ for very awesome persistence | 13:30 | |
nwc10 | brrt: what did FROGGS do this time? | 13:33 | |
jnthn | evening, #perl6 | ||
lizmat | jnthn o/ | ||
nwc10 | good UGT heresey, jnthn | ||
lizmat hopes jnthn had dinner and beer | 13:34 | ||
[Coke] wonders if nwc10 means "heresy" | |||
nwc10 | [Coke]: almost certainly | ||
jnthn discovered Sichuanese bacon rice! o.O | 13:35 | ||
dalek | p-js: 78ed2ac | (Pawel Murias)++ | src/vm/js/ (3 files): Pass test 40. Implement nqp::ishash, converting "foobar" to a number gives 0 now. |
||
FROGGS | pmurias: I've no idea how to do that... so it would be very hard for *me* :/ | 13:36 | |
13:38
fhelmberger joined
|
|||
masak | aww, too bad the "Perl 6" example last in www.frantic.com/notes/Perl-6---Is-i...--151.html doesn't actually work as intended in Perl 6 :/ | 13:38 | |
yoleaux | 08:56Z <Ven> masak: www.wilfred.me.uk/blog/2014/09/15/c...macrology/ | ||
masak looks | |||
pmurias | [Coke]: currently cross compiling on top of moarvm | 13:39 | |
13:39
kaleem left
|
|||
brrt | FROGGS is apparantly disecting a parakudo bug | 13:40 | |
nwc10 ^ | |||
13:41
kaleem joined
13:43
donaldh left
|
|||
lizmat wonders what the "PSA" stands for at S01:82 | 13:43 | ||
synopsebot Link: perlcabal.org/syn/S01.html#line_82 | |||
tadzik | Public Service Announcement? | ||
lizmat | "RFCs are rated on "PSA" ? | 13:44 | |
FROGGS | P is for Problem I think | ||
jnthn | Problem, Solution, Acceptabnce | ||
FROGGS | yeah | ||
was about to say | |||
:o) | |||
13:44
firnsy joined
|
|||
[Coke] | S99:PSA | 13:45 | |
synopsebot | Link: perlcabal.org/syn/S99.html#PSA | ||
Timbus_ | masak, 4 ~~ @array doesn't work? | ||
13:45
cognome joined
|
|||
[Coke] | there's some S99:LHF | 13:45 | |
synopsebot | Link: perlcabal.org/syn/S99.html#LHF | ||
masak | m: my @array = <a b c d>; say 4 ~~ @array | 13:46 | |
camelia | rakudo-moar f48eb1: OUTPUT«False» | ||
dalek | ecs: ed4cd1e | (Elizabeth Mattijsen)++ | S99-glossary.pod: Add PSA lemma |
||
masak | m: my @array = 4, 4, 4, 4; say 4 ~~ @array | 13:47 | |
camelia | rakudo-moar f48eb1: OUTPUT«False» | ||
jnthn | lizmat: github.com/perl6/specs/commit/5123177528 feels like a step backwards, in so far as I'd rther we tried to eliminate cases where an adverb changes the return type of things, not add more of them... | ||
masak | Timbus_: is that "doesn't work" enough for you? :) | ||
Timbus_ | i see | ||
masak | Timbus_: in Perl 6, the rhs decides on the matching semantics. | ||
Timbus_: this is the thing that got realized/corrected after Perl 5 amicably side-stole smartmatching. | |||
lizmat | jnthn: but they both return a Supply, regardless of named param ? | ||
masak | Timbus_: before then, the ideal was a misguided aim for symmetry. | 13:48 | |
[Coke] | lizmat++ | ||
jnthn | lizmat: Supply isn't the real type | ||
masak | Timbus_: but even under that interpretation, it was kind of a stretch to have $elem ~~ @array mean "is it in the array?" | ||
Timbus_ | yeah, ~~ has been quite a problem for both 5 and 6 | ||
jnthn | lizmat: I mean, it *is*, but it's not the type the programmer cares about. | ||
lizmat | S17:1024 | ||
synopsebot | Link: perlcabal.org/syn/S17.html#line_1024 | ||
masak | Timbus_: I wouldn't say it's been a problem for 6. | ||
13:48
firnsy left
|
|||
nine | But all people really wanted from ~~ was Python's "in" operator. | 13:49 | |
lizmat | "Getting information back from the external process's C<STDOUT> or C<STDERR>, is done by a C<Supply> that either gets characters or bytes." | ||
PerlJam | nine: you mean "P5 people"? | ||
nine | PerlJam: yes. | ||
masak | m: say 3 (in) [2, 3, 5, 6] | ||
camelia | rakudo-moar f48eb1: OUTPUT«===SORRY!=== Error while compiling /tmp/AdiZDD3eZ4Two terms in a rowat /tmp/AdiZDD3eZ4:1------> say 3 ⏏(in) [2, 3, 5, 6] expecting any of: postfix infix stopper infix or me…» | ||
masak | m: say 3 (elem) [2, 3, 5, 6] | ||
camelia | rakudo-moar f48eb1: OUTPUT«True» | ||
masak | \o/ | ||
nine | PerlJam: I'm sure smartmatch is a lot smarter in Perl 6. But on the other hand "in" is all I ever really missed in P5. | 13:50 | |
13:50
cognome left
|
|||
masak | m: say 3 ∈ [2, 3, 5, 6] | 13:50 | |
Timbus_ | well in perl5 people use 'grep' to mean 'in', knowing it might be suboptimal. in perl 6 you can do the same and it works | ||
camelia | rakudo-moar f48eb1: OUTPUT«True» | ||
PerlJam | nine: aye. | ||
(me too :) | |||
jnthn | lizmat: It's kinda like arguing that something returning a Buf or a Str dependin gon adverb is OK because both are storable in a Scalar... | ||
Timbus_ | and last i tested its optimal, due to laziness | ||
masak | well, those of you who missed "in", see ∈ and (elem) above. | 13:51 | |
13:51
chenryn left
|
|||
jnthn | lizmat: Supply and Promise are just asynchronous container types rather than the type of data involved in the operation, so I tend to consider them "transparent" | 13:51 | |
nine | masak: that's cute :) Would be even better if there was a ∈ key on my keyboard... | ||
lizmat | jnthn: I guess I look at it differently then | 13:52 | |
nine | But (elem) is just fine as well | ||
lizmat | it's more like an addition to $, @ and % to me | ||
pmurias | research.microsoft.com/en-us/projec...raphy.aspx - one way to handle stuff that's not typable on a keyboard | ||
lizmat | also transparant, but the same for both cases | ||
pmurias | in the Operators section | 13:53 | |
jnthn | lizmat: Well, that's not a bad wy to look at it, given that I think if we had things where you get an Array[Int] back normally, but an Array[Str] if you wrote an adverb, we'd likely consider it LTA design | 13:54 | |
pmurias | jnthn: do we have something in nqp land to create a temporary file? | 13:55 | |
jnthn | pmurias: No | ||
lizmat | jnthn: and what about :bin on open() ? | 13:56 | |
jnthn | pmurias: If you mean the "unique name" part | ||
lizmat | how is that different from Proc::Async.new.stdout(:bin) ? | ||
pmurias | a "unique name" part is what I'm looking for | ||
lizmat | from the IO::Handle\'s outside youc can't see it's in bin mode | 13:57 | |
jnthn | lizmat: You get a file handle back either way. What's more notable is that you use .get and .lines for a chars view, and .read for a Buf view | ||
Opening a file as :bin and doing .get is probably erroneous. | |||
I ain't defending :bin there, though] | 13:58 | ||
lizmat | agree.... | ||
jnthn | That's not a particularly great bit of design either. | ||
pmurias | jnthn: I want add a --target=node, so "nqp-js --target=node -e 'Hello'" would work like "nqp-js --target=js -e 'Hello' | node" | ||
lizmat | jntthn: hysterical raisins, yes | 13:59 | |
jnthn | For chewing through binary data it'd be much nicer to have an API that was good for reading in binary data | ||
pmurias | jnthn: but writing to a tmp file and the calling "node tmp" would be fine too | ||
jnthn | pmurias: Yeah. Well, I think PID and nqp::time_n() together would give you a sufficienlty unique thing. | 14:00 | |
14:02
bcode joined
14:03
firnsy joined
14:05
mberends left
14:07
brrt left
|
|||
lizmat | jnthn: by the way, when testing this functionality, I found problems: | 14:08 | |
14:08
firnsy left
|
|||
lizmat | t/spec/S17-procasync/print.t # has 3 todo tests because the .print is not arriving in the async process apparently | 14:08 | |
If I'm doing something wrong, let me know | 14:09 | ||
14:09
kjs_ left
14:11
Rotwang joined
14:13
mr-foobar left
|
|||
jnthn | lizmat: I assume you are await'ing the Promise that print returns? | 14:14 | |
lizmat | checking if that makes a diff | 14:15 | |
jnthn | isa_ok $pc.print( "Hello World" ), Promise; | ||
Looks like it's being thrown away | |||
lizmat | yes, as I'm waiting for the proc's start Promise at the end | 14:17 | |
hmmm... getting "This process is not opened for write" now | 14:18 | ||
jnthn | Right, meaning you were discarding that error beforehand, I guess? | 14:19 | |
lizmat | the promise for print is roken | ||
broken | |||
I guess so | |||
hmmm... | |||
jnthn | Hm, does the test open the process with :w? | ||
ah, seems not | |||
lizmat | ah... | 14:20 | |
jnthn | So it doesn't open the handle to its stdin. | ||
So, quite accurate error :) | |||
lizmat | indeed, so that's what :w is for | ||
not specced yet :-) | |||
will do in a mo | |||
jnthn | Cool | 14:21 | |
Happy ot see tests/spec :) | |||
lizmat | hmmm... it appears that the note is not going to STDERR | ||
14:23
skids joined
14:24
kaare_ joined
|
|||
lizmat | isn't the Promise of the P::A.start supposed to return the Proc::Status object ? | 14:24 | |
jnthn | yes | ||
lizmat | ok | 14:25 | |
ah, I see what's wrong | |||
jnthn | errand, bbi10 | 14:26 | |
14:33
anaeem1 joined
14:38
treehug88 joined,
fhelmberger left
14:39
fhelmberger joined
14:42
kjs_ joined
|
|||
jnthn back | 14:43 | ||
dalek | ast: 34cf39f | (Elizabeth Mattijsen)++ | S17-procasync/print.t: Properly wait for .print/.say, jnthn++ |
||
lizmat | jnthn: the stdout test is flapping | ||
14:43
ajr_ left,
fhelmberger left
|
|||
lizmat | if it flaps, it only contains "Hello World" | 14:43 | |
and misses the "Started" and "Done" | 14:44 | ||
now, the "Done" I can sort of understand, maybe | |||
hmmm.... | |||
but losing the "Started" ? | |||
14:44
guru joined
14:45
guru is now known as Guest54884,
Guest54884 is now known as ajr_
|
|||
jnthn | Sounds odd | 14:45 | |
lemme look at latest | |||
14:45
cognome joined
|
|||
jnthn | lizmat: Yes, something odd must be going on :S | 14:47 | |
14:48
Ven joined
|
|||
Ven | pmurias: github.com/pmurias/nqp-js/commit/2e2538d8c9 are you sure that's the correct behavior? | 14:48 | |
m: say (1, 2, 3)[-1]; # no negative | |||
camelia | rakudo-moar 800262: OUTPUT«Unsupported use of [-1] subscript to access from end of Parcel; in Perl 6 please use [*-1] in method gist at src/gen/m-CORE.setting:13496 in sub say at src/gen/m-CORE.setting:15106 in block <unit> at /tmp/G6LLqQULMJ:1» | ||
dalek | ecs: 59a1d61 | (Elizabeth Mattijsen)++ | S17-concurrency.pod: Better spec :ENV and :w for Proc::Async.new |
||
Ven | pmurias: Also, you might want to use a Map rather than just an object for p6hashes | ||
m: class A{}; my %h; %h{A.new} = 5; say %h | 14:49 | ||
camelia | rakudo-moar 800262: OUTPUT«"A<140474676297232>" => 5» | ||
Ven | ^ in JS, keys have to be strings (though we're doing something similar in p6?) | ||
14:50
cognome left
|
|||
Ven backlogs once in a while | 14:52 | ||
14:53
Rotwang left
|
|||
hoelzro | o/ #perl6 | 14:58 | |
PerlJam | greetings hoelzro | ||
15:02
ajr joined,
ajr_ left,
mberends joined,
ajr is now known as Guest20373,
Guest20373 is now known as ajr_
|
|||
lizmat | cycling& | 15:04 | |
15:07
brrt joined
15:10
bjz left
|
|||
pmurias | Ven: generally speaking nqp::existpos should die | 15:13 | |
* existspos | |||
Ven | pmurias: should it? | ||
pmurias | die as in be removed | ||
15:14
bjz joined
|
|||
pmurias | the whole "sparse" array behavior can be just implemented in the Perl 6 layer without a low-level nqp::existspos support | 15:14 | |
Ven: but there is a test for negative indexes being passed to nqp | 15:15 | ||
Ven | oh, I see. | 15:16 | |
pmurias | github.com/perl6/nqp/blob/master/t...pop.t#L141 | ||
as far as I know in nqp hash keys are strings, and the objects as keys support in done in the Perl 6 setting | 15:17 | ||
15:17
Woodi joined
|
|||
pmurias | but good to know someone is reading the commits ;) | 15:17 | |
Ven | Always :). | 15:20 | |
sorry for the noise | |||
dalek | p: db41176 | jonathan++ | tools/build/MOAR_REVISION: Get a MoarVM with profiling improvements. |
15:22 | |
15:23
firnsy joined,
firnsy left,
firnsy joined
|
|||
dalek | kudo/nom: 90288f9 | jonathan++ | / (2 files): Mark various extops up as allocating. We missed these in the allocation profile before now, and they can be very significant sources of objects. Includes version bump to get the MoarVM additions to support this. |
15:23 | |
15:24
chenryn joined
15:27
mr-foobar joined
15:31
eternaleye left
15:35
denis_boyun_ left
15:36
eternaleye joined
|
|||
FROGGS | jnthn: can you take a look into that please before you go to bed? github.com/rakudo/rakudo/commit/51...nt-7780349 | 15:36 | |
15:37
zakharyas left,
Ven left
|
|||
jnthn | FROGGS: Not sure what you're meaning on the hllize bit off hand; a method call includes emitting a hllize | 15:41 | |
15:41
brrt left,
kaleem left
|
|||
FROGGS | ahh, okay, nice :o) | 15:41 | |
15:41
anaeem1 left
|
|||
FROGGS | jnthn: I guess I am asking how to sneak a Parcel into $!list instead of the Array | 15:42 | |
as seen in the .DUMP | |||
15:42
anaeem1_ joined
|
|||
jnthn | FROGGS: Hmm, is that not coming from the @EMPTY_LIST? | 15:44 | |
FROGGS: In which case, my @EMPT_LIST := infix:<,>() may do it | |||
FROGGS | jnthn: ohh, that could be it indeed | ||
I've not thought about @EMPTY_LIST at all :o) | 15:45 | ||
15:45
cognome joined
15:48
chenryn left
|
|||
jnthn | :) | 15:48 | |
Hope it helps a bit | |||
jnthn should rest now... | |||
15:49
pat_js joined
|
|||
FROGGS | jnthn: thank you :o) and sleep well | 15:50 | |
15:50
cognome left
15:51
FROGGS[mobile] joined
|
|||
ajr_ | Is this www.theregister.co.uk/2014/09/15/fr...ed_breach/ relevant? | 15:56 | |
16:01
FROGGS left
|
|||
pmurias | virtualsue: if you have any questions about nqp-js don't hesitate to ask, I tend to backlog the channel (or at least skim the log for mention of my name / nqp-js) | 16:03 | |
jnthn | pmurias: Was that for Ven? :) | ||
virtualsue | probably :) | ||
pmurias | yes | 16:05 | |
virtualsue: sorry | |||
virtualsue | no worries | ||
pmurias | virtualsue: but if you have any questions about nqp-js feel free to ask anyway ;) | ||
16:08
[Sno] left
16:09
[Sno] joined
|
|||
jnthn drops jnthn.net/tmp/hk.jpg for anybody who likes city views by night (was from this weekend in hong kong :)) | 16:09 | ||
'night, #perl6 | |||
16:09
eternaleye left
16:10
[Sno] left
16:14
FROGGS joined
16:16
telex left
16:18
telex joined
16:19
dwarring left,
eternaleye joined
|
|||
dalek | p-js: 41259ee | (Pawel Murias)++ | src/vm/js/QAST/Compiler.nqp: Remove considered TODO. |
16:22 | |
p-js: 1c41a1e | (Pawel Murias)++ | src/vm/js/ (3 files): Pass test 41. Implement foo(|%named). |
|||
16:23
cognome joined,
araujo joined
16:31
eternaleye left
16:33
eternaleye joined
16:35
jaffa4 joined
|
|||
jaffa4 | hi all | 16:39 | |
it is the same: Calling 'Print_c' will never work with argument types (Draw, RichText, Rect, IntTypedCArray[int32]) | |||
Expected: :(Draw $w, RichText $text, Rect $page, IntTypedCArray[int32] $pagelist) | |||
16:39
eternaleye left
|
|||
jaffa4 | when the same is not the same | 16:39 | |
16:40
raiph left
16:45
kaleem joined
16:46
virtualsue left
|
|||
Timbus_ | m: Thread.new(code => {IO::Socket::Async.listen('127.0.0.1', 1234)}).run; say "Ok"; | 16:47 | |
camelia | rakudo-moar 90288f: OUTPUT«OkIllegal attempt to pop empty temporary root stack» | ||
Timbus_ | narrowed it down for you, carlin | ||
16:47
eternaleye joined
16:48
liztormato joined
16:49
pmurias left
|
|||
liztormato | jaffa4: Pretty sure that Type[int32] is not completely implemented | 16:49 | |
Timbus_ | i dont know for sure but, isn't the typecheck here meant for the perl6 side of things? | 16:55 | |
16:56
eternaleye left
|
|||
Timbus_ | like, you could use IntTypedCArray[Int] and it should be fine? | 16:56 | |
16:58
ggoebel1111118 joined
|
|||
FROGGS[mobile] | liztormato: these types do work in nativecall | 16:59 | |
16:59
skids left
|
|||
FROGGS | jaffa4: can you provide a short script that shows the problem? | 16:59 | |
jaffa4: the problem might be about how you create that array or so | 17:00 | ||
17:00
ggoebel1111117 left
|
|||
jaffa4 | IntTypedCArray[Int] comes in as an argument as passed in as an arguement | 17:00 | |
FROGGS | I don't understand that sentence | 17:01 | |
tony-oo | timotimo: whats up | ||
17:01
tony-oo is now known as tony-o
|
|||
FROGGS | jaffa4: ahh, you are literally passing IntTypedCArray[Int] ? | 17:02 | |
17:02
dakkar left
17:03
eternaleye joined,
ajr_ left
|
|||
jaffa4 | froggs... pastebin.com/4BctuHNR | 17:04 | |
17:05
guru joined,
guru is now known as Guest79464
17:06
Guest79464 is now known as ajr_
|
|||
jaffa4 | how can I initialise a CArray with a perl array? | 17:09 | |
FROGGS | jaffa4: loop over the elems and .push to the CArray or set the values by index | ||
17:10
Akagi201 left
|
|||
jaffa4 | FROGGS: can you see the paste? | 17:10 | |
17:11
denis_boyun_ joined
|
|||
FROGGS | jaffa4: yes, and I think you should not pass a CArray[int32] type object, only pass instances | 17:11 | |
17:11
eternaleye left
|
|||
jaffa4 | is it a bug, right/ | 17:12 | |
FROGGS | so, you sub should be like: multi sub Print(Draw $w,RichText $text,Rect $page,CArray[int32]:D $pagelist) | ||
jaffa4: yes, sort of | |||
jaffa4 | It cannot be multi , it is not implemented yet | ||
17:13
spider-mario joined
|
|||
jaffa4 | CArray[int32]:D? | 17:13 | |
D? | |||
FROGGS | for Defined | ||
17:15
denis_boyun_ left
17:16
denis_boyun joined
|
|||
FROGGS | jaffa4: okay, I can confirm it is a bug | 17:18 | |
jaffa4: it looks like removing the type annotation (CArray[int32]) of the Print sub helps... | 17:19 | ||
17:19
kaleem left
|
|||
jaffa4 | not sure what you mean | 17:20 | |
17:20
eternaleye joined
|
|||
jaffa4 | What is the final look for both functinos? | 17:20 | |
17:20
liztormato left
|
|||
FROGGS | -multi sub Print(Draw $w,RichText $text,Rect $page,CArray[int32] $pagelist) { | 17:23 | |
+multi sub Print(Draw $w,RichText $text,Rect $page, $pagelist) { | |||
change sub Print like that | |||
17:26
eternaleye left
17:28
zakharyas joined
|
|||
jaffa4 | yes, that is effective | 17:30 | |
17:31
FROGGS left
17:32
eternaleye joined
17:35
ajr_ left
17:36
FROGGS joined
17:38
camelia left
17:41
eternaleye left
17:43
eternaleye joined
17:49
kjs_ left
17:51
FROGGS[mobile] left
|
|||
[Coke] | moritz, diakopter: I can't ssh to host08: ssh_exchange_identification: Connection closed by remote host | 17:56 | |
looks like 7 is still up, though. | 17:57 | ||
timotimo | hey tony-o | 17:59 | |
nice to see you're here; i'll have to be AFK for a bit before we can talk | |||
tony-o: the core of my problem is i don't want there to be a $data ~= $read_character loop when i turn a http connection into a websocket one | |||
also, that connection wants to handle binary data properly, as websockets also support binary frames | 18:00 | ||
(and the framing itself uses binary data in the headers) | |||
18:03
guru joined,
guru is now known as Guest68614
18:04
Guest68614 is now known as ajr_
18:07
treehug88 left
18:08
slmult0 joined
18:09
dwarring joined
18:16
tphilipp joined
18:17
joescript joined
18:19
tphilipp left,
tphilipp joined
18:20
btyler joined
18:23
baest_ joined,
baest left
18:24
tphilipp left,
joescript left
18:25
denis_boyun left
18:26
slmult0 left,
denis_boyun joined,
slmult0 joined
18:34
[Sno] joined
|
|||
rindolf thinks that TimToady should totally do an www.reddit.com/r/IAmA . | 18:35 | ||
PerlJam | rindolf: What good would that serve exactly? | 18:38 | |
18:38
SamuraiJack left
|
|||
huf | he could talk about rampart | 18:40 | |
18:40
jack_rabbit joined
|
|||
rindolf | PerlJam: publicity. | 18:42 | |
PerlJam: and fame and fortune. | |||
PerlJam: Larry Wall is a star. | 18:43 | ||
PerlJam | rindolf: he's also a finite resource that we should be careful about "over-spending" | 18:44 | |
rindolf | PerlJam: well, it's worth it. | 18:45 | |
nine | rindolf: looks more like a place for attention whores. Which is the diametrical opposite of TimToady :) | 18:49 | |
18:49
slmult0 left
|
|||
rindolf | nine: well , it'll be good for Perl and Perl 6. | 18:52 | |
nine | rindolf: [citation needed] | 18:54 | |
rindolf | nine: good publicity. | 18:55 | |
18:56
darutoko left
18:57
kjs_ joined
19:02
eternaleye left
19:03
slmult0 joined
19:06
mattp_ left
19:07
brrt joined
19:08
zakharyas left
|
|||
brrt | why... don't you just ask him? he's here often enough :-) | 19:09 | |
huf | i think it would just descend into a "more than 10 years huehuehue"-fest | 19:10 | |
lizmat is surprised to see rindolf is worrying about Perl 6 | 19:20 | ||
none of his essays / blog posts / show this concern | |||
is he changing is opinion ? | |||
*his | |||
brrt | well, no surprise given perl6 awesomeness | 19:21 | |
:-) | |||
i'm never on reddit anymore. and hacker news has gotten boring too | 19:23 | ||
dalek | line-Perl5: 086acaa | nine++ | / (3 files): Translate Perl 5 exceptions to Perl 6 exceptions in run() |
19:24 | |
line-Perl5: 23f8ee1 | nine++ | / (3 files): Handle Perl 5 exceptions when calling Perl 5 functions |
|||
line-Perl5: fc91c47 | nine++ | / (3 files): Handle exceptions when calling Perl 5 package methods |
|||
line-Perl5: 2c8211e | nine++ | / (3 files): Handle exceptions when calling Perl 5 object methods |
|||
FROGGS | brrt: thedailywtf is still good though :o) | ||
dalek | ecs: 4559fe7 | (Elizabeth Mattijsen)++ | S01-overview.pod: Emphasize the letters of the acronym PSA |
||
brrt hasn't visited that in long | |||
FROGGS | brrt: don't do that now! you'll just waste time!! :P | 19:27 | |
brrt | true :-) | 19:28 | |
dalek | ecs: aebbc76 | (Elizabeth Mattijsen)++ | S99-glossary.pod: Add lemma for PPI |
||
19:29
mattp_ joined,
eternaleye joined
|
|||
nine | brrt: better write awesome code instead so others can write about your deeds :) | 19:30 | |
19:31
kurahaupo joined
|
|||
dalek | ecs: 581b3d2 | (Elizabeth Mattijsen)++ | S99-glossary.pod: Add lemma stub for pragma |
19:32 | |
timotimo | I forgot to take into account the size differences between eu and us when telling the gsoc my shirt size... | ||
19:32
virtualsue joined
|
|||
FROGGS | timotimo: common mistake *g* | 19:33 | |
I almost got mine today | 19:34 | ||
19:35
treehug88 joined
|
|||
lizmat | hmmm...t/spec/integration/advent2009-day04.t hangs on HEAD on OSX | 19:37 | |
but only when run from make ? | 19:38 | ||
brrt | timotimo: too large or too small | ||
19:38
mattp_ left
|
|||
hoelzro parsed that as "bangs HEAD on OSX" | 19:38 | ||
brrt | bbiab | ||
lizmat | hoelzro o/ and :-) | 19:39 | |
hoelzro | o/ lizmat! | ||
lizmat | well, that test file is not really special... :-( | ||
19:40
mattp_ joined
19:41
slmult0 left
19:42
slmult0 joined
19:43
brrt left
|
|||
lizmat | apparently only hangs when done in the spectest :-( | 19:44 | |
diakopter | m: say 3 | 19:52 | |
lizmat | three | ||
diakopter | aw, I guess host08 is offline; boo | 19:53 | |
lizmat | yup, no camelia | ||
diakopter | hm, java caused out of memory | 19:54 | |
bad rakudo-jvm/evalserver | |||
lizmat | I guess it wasn't properly limited | 19:55 | |
diakopter | rebuted | 19:56 | |
lizmat | diakopter++ | 19:58 | |
dalek | ecs: 0f271d7 | (Elizabeth Mattijsen)++ | S99-glossary.pod: Steal the first line for P5's perlpragma |
20:02 | |
20:03
camelia joined
|
|||
diakopter | bleh | 20:03 | |
m: say 3 | |||
20:03
rindolf left
|
|||
lizmat | Camelia still not online :-( | 20:04 | |
diakopter | she's waking up | ||
20:04
ChanServ sets mode: +v camelia
|
|||
camelia | rakudo-moar 90288f: OUTPUT«(timeout)» | 20:04 | |
diakopter | m: say 3 | ||
camelia | rakudo-moar 90288f: OUTPUT«(timeout)» | ||
diakopter | heh | ||
20:05
xragnar_ joined,
xragnar is now known as Guest7687,
xragnar_ is now known as xragnar
|
|||
diakopter | m: say 3 | 20:05 | |
camelia | rakudo-moar 90288f: OUTPUT«3» | ||
dalek | line-Perl5: 1dd6c2f | nine++ | / (3 files): Handle exceptions thrown in Perl 6 code called from Perl 5 |
||
nine | Darn....I actually didn't want to implement this ^^^ today, but I couldn't stop once I was coding :) | 20:06 | |
lizmat | nine: so how do we call P6 code from P5 (inside P6) ? | ||
20:06
cognome left
20:07
jack_rabbit left,
cognome joined
|
|||
timotimo | brrmake an educated guess :) | 20:07 | |
nine | lizmat: $p5.run(q/ sub foo { my $foo = shift; $foo->bar } /); class Foo { method bar { say "hello"; } }; $p5.call('foo', Foo.new); | ||
20:07
eternaleye left
20:08
brrt joined
|
|||
timotimo | maybe it's time to write that weekly now ... | 20:08 | |
lizmat | :-) | 20:09 | |
++timotimo | |||
brrt | lizmat: one of the differences between spectest and direct runningis the handling of file handles | ||
20:09
Guest7687 left
|
|||
timotimo | nine: can you give me a little summary of what Inline::Perl5 can already do? | 20:09 | |
or is there perhaps a showcase example program that tries to show off everything? | |||
tony-o | timotimo: let me look at my source again so i can get some context | ||
yoleaux | 4 Sep 2014 21:17Z <timotimo> tony-o: i'm going to play around with your HTTP::Server::Async for a bit :) | ||
4 Sep 2014 21:29Z <timotimo> tony-o: it seems like your documentation and implementation disagree on the handling of the responsestack; your documentation says the sub should return True or False to influence further processing on the request, but the implementation seems to ignore the return value | |||
12 Sep 2014 09:53Z <timotimo> tony-o: i'm looking more into perl6-http-server-async and i'm not entirely sure how request.parse works. also, is it a good idea to try to re-parse the whole request string every time a new byte arrives? | |||
12 Sep 2014 09:58Z <timotimo> tony-o: i get it now; this is just because i asked you to make data lazy, and since we still need to handle chunked encoding, that still has to run every time ... | |||
12 Sep 2014 10:00Z <timotimo> tony-o: i think this is wrong, though: the chunked encoding thingie looks at %headers, but if $!headercomplete is set, it'll never assign anything to %headers. in fact, i see no code at all that assigns to %.headers in Request.pm6 ?! | |||
timotimo | spam spam spam :) | ||
.botsnack | |||
yoleaux | :D | ||
tony-o | oops | 20:10 | |
diakopter | .bostonack | ||
nine | timotimo: the README has examples of everything but the exception handling I just added: github.com/niner/Inline-Perl5 | ||
20:10
kjs_ left
|
|||
nine | timotimo: and exception handling works just like you'd expect in both languages. Use eval { } in Perl 5 and try/CATCH in Perl 6 :) | 20:11 | |
20:11
eternaleye joined
|
|||
timotimo | fuck yeah :) | 20:11 | |
exception handling works in both directions already? | |||
20:11
cognome left
|
|||
nine | timotimo: yes | 20:11 | |
timotimo | cool | 20:12 | |
20:13
virtualsue left
|
|||
tony-o | timotimo: the request only reparses headers if it didn't receive a \r\n\r\n | 20:13 | |
brrt | which uhm, if i recall correctly was also the issue of blocking restricted.setting | ||
brrt isn't doing much here but retelling information he vaguely heard | 20:14 | ||
20:14
virtualsue joined
|
|||
dalek | line-Perl5: 60097f0 | nine++ | t/exceptions.t: Add a test for P6 exception passed through P5 back to P6 to catch. |
20:14 | |
timotimo | tony-o: it's not the re-parsing i'm worried about | ||
nothing is untapping the piece of code that does $data ~= $received | 20:15 | ||
PerlJam | nine: Are you going to make Inline::Perl6 for P5 too? :) | ||
tony-o | it also doesn't assign anything to the request or mark it complete if it doesn't get \r\n\r\n | ||
timotimo | i'm not entirely sure, but i think that's quadratic | ||
20:15
eternaleye left
|
|||
nine | PerlJam: I'm....not sure :) | 20:15 | |
PerlJam: Inline::Perl6 would have to decide which Perl6 to actually embed. | 20:16 | ||
PerlJam | moarvm is reasonably small ;) | ||
lizmat | nine: the same applies for installations with multiple versions of perllib | 20:17 | |
tony-o | timotimo: does the untap need to happen when i close the connection? | ||
or are you talking about before hand | 20:18 | ||
before i realize that it might be a websock | |||
nine | lizmat: Inline::Perl5 will build with the perl you have in your $PATH. That's easy. But there is no _one_ Perl 6. There's Rakudo and maybe others. And even Rakudo comes with different backends with widely different embedding options. | ||
lizmat | but there *could* be just one perl6 in your path, no? | 20:19 | |
you would just need to find out from there where the lib lives | |||
tony-o | timotimo: the documentation is wrong now for the registered callback, i'm updating the readme | 20:20 | |
20:20
spider-mario left
|
|||
PerlJam | nine: you should just bundle rakudo+nqp+moarvm with Inline::Perl6 | 20:20 | |
(at least for the first approximation) | |||
nine | lizmat: the problem is, you need to support different backends. Or just require Rakudo MoarVM. Though I've no idea if there is even some embedding support for MoarVM. Right now it might even be easier to embed Rakduo+JVM since there's already an Inline::Java for Perl 5. | 20:21 | |
PerlJam | nine: oh, that's a good point too. | ||
diakopter | yes, moarvm builds a shared library by default | ||
20:22
b2gills joined
|
|||
nine | I'm not 100 % sure if it's even worth it. One can just wrap the existing code in an Inline::Perl5::run call and set up some hooks to get back to Perl 6. It's how I wrote a Catalyst action in Perl 6 for one of our existing code bases. | 20:22 | |
20:22
kjs_ joined,
slmult0 left
|
|||
nine | diakopter: then I guess all it needs is some documentation on how to use it :) | 20:22 | |
diakopter | it supports only one MVMInstance per process, though it's meant to support more someday, probably | 20:23 | |
20:23
firnsy left
|
|||
PerlJam | nine: the "worth it" part for me is that Inline::Perl6 lets the P5 programmer ease into P6 in a highly controlled manner without stepping too far outside of the P5 box. | 20:23 | |
20:23
denis_boyun___ joined
|
|||
PerlJam | nine: at least, if I had the gumption to do it, that would be why. | 20:24 | |
diakopter | the only tricky part of it would be getting the right headers included properly, though if you look at the Makefile for the main entry point in the moar executable, you'd simply copy how that does it | ||
(and load the perl6.moarvm from the right place) | 20:25 | ||
20:25
denis_boyun left
|
|||
nine | PerlJam: depends on if "use Inline::Perl5; use My::Hooks; my $p5 = Inline::Perl5.new; My::Hooks::setup_hooks($p5); $p5.run(q/ ... your P5 code here ... /);" in your main script is too far outside your P5 box. | 20:25 | |
diakopter | so you'd need to configure/incorporate the proper libpath entries when loading the perl6.moarvm | 20:26 | |
nine | diakopter: I really like how perl tells you exactly how you have to compile your code so you can embed it. | ||
PerlJam | nine: Say I'm a P5 programmer with a largist app already written in P5 and I learn about some neat P6 feature that I want to use. I think I'd rather leave my app mostly as-is and add a little piece that calls Inline::Perl6. | 20:27 | |
diakopter | well, it could be made easier, but moarvm is _just_ _as_ flexible as parrot when it comes to multilanguage, so it's just as flexible when embedding... | ||
PerlJam | s/ist/ish/ | ||
diakopter | nine: thing is, such embedding instructions would be not much less involved than making Inline::Perl6 (the way you've described it) itself, imho | 20:28 | |
20:32
dolmen joined
20:35
kst joined,
kjs_ left
|
|||
dalek | ast: 9781ce0 | (Elizabeth Mattijsen)++ | S02-magicals/KERNEL.t: Properly skip signal related tests on parrot/jvm |
20:38 | |
20:40
virtualsue left
|
|||
[Coke] sees that 08 is back for 42 minutes and has what looks like dead cron jobs on it. Coke re-runs today's runs. | 20:42 | ||
20:42
grondilu left,
mst left
|
|||
[Coke] | diakopter++, probably. | 20:43 | |
diakopter | something like that | ||
moritz will probably restart the evalbot the proper way later ;) | 20:44 | ||
lizmat | indeed, but you might want to check with diakopter whether it was the cronjob that killed 08 | ||
diakopter doesn't know and doesn't know how to find out | |||
[with available time/attention resources] | |||
[Coke] | they've been running on 07 for months with no issues. | 20:45 | |
and 08 is a bigger box. | |||
lizmat | [Coke]: ok | ||
PerlJam | .oO( maybe it just looks bigger from the outside ) |
20:46 | |
lizmat | m: class A { has constant $.pi = 22/7 }; say A.new.pi # from S03:5176 | ||
synopsebot | Link: perlcabal.org/syn/S03.html#line_5176 | ||
camelia | rakudo-moar 90288f: OUTPUT«===SORRY!=== Error while compiling /tmp/owyMOn1gYIVirtual call $.pi may not be used on partially constructed objectsat /tmp/owyMOn1gYI:1------> class A { has constant $.pi⏏ = 22/7 }; say A.new.pi # from S03:517…» | ||
synopsebot | Link: perlcabal.org/syn/S03.html#line_517 | ||
lizmat | std: class A { has constant $.pi = 22/7 } | ||
20:46
camelia left
|
|||
lizmat | :-( | 20:47 | |
that was a shortlived butterfly :-( | |||
20:47
camelia joined
|
|||
[Coke] | more cores, anyway | 20:48 | |
20:48
kaare_ left
|
|||
[Coke] | (and I didn't expand to use more I'm being good. everything is ulimited, so if a spec test goes crazy, it'll get killed eventually) | 20:48 | |
diakopter: I've completely moved off 07, btw. | 20:49 | ||
camelia | std : OUTPUT«Can't chdir to '/home/p6eval/std/snap': No such file or directory at lib/EvalbotExecuter.pm line 163. EvalbotExecuter::_auto_execute('HASH(0x1944cf0)', 'class A { has constant $.pi = 22/7 }', 'GLOB(0x184c470)', '/tmp/DQv85VayPN', 'std') called at lib/EvalbotExecuter.…» | ||
20:49
ChanServ sets mode: +v camelia
|
|||
dalek | kudo/nom: de16265 | (Elizabeth Mattijsen)++ | src/core/Num.pm: We have empty set ∅, then why not have π as well? Not for parrot, to prevent heat death parsing times. |
20:49 | |
lizmat | std: class A { has constant $.pi = 22/7 } | ||
20:49
camelia left
|
|||
diakopter | [Coke]: ok cool, thanks | 20:49 | |
camelia reports Lost connection to server irc.freenode.org. | 20:50 | ||
lizmat | ok, seems doing something with std: kills camelia | ||
timotimo | tony-o: the point is that we can't close the connection when we turn the connection into a websocket | ||
lizmat | seems like an oversight in the move to 08 | ||
20:50
camelia joined
|
|||
[Coke] | r: say π | 20:51 | |
lizmat | [Coke]: will need some time | ||
camelia | std : OUTPUT«Can't chdir to '/home/p6eval/std/snap': No such file or directory at lib/EvalbotExecuter.pm line 163. EvalbotExecuter::_auto_execute('HASH(0x1944cf0)', 'class A { has constant $.pi = 22/7 }', 'GLOB(0x1b9fcc0)', '/tmp/axmfKHx9Ko', 'std') called at lib/EvalbotExecuter.…» | 20:52 | |
20:52
ChanServ sets mode: +v camelia
|
|||
camelia | rakudo-jvm 90288f: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | 20:52 | |
..rakudo-{parrot,moar} 90288f: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUndeclared routine: π used at line 1» | |||
20:52
jaffa4 left
20:53
eternaleye joined
|
|||
btyler | (backlogging) RE '-' usage in names, it's something that started to stick to my fingers very quickly. I was writing hyphenated names in p5 without thinking about it until the compiler barked at me | 20:56 | |
20:56
denis_boyun___ left
|
|||
timotimo | can someone see if the pull request for perl6/modules.perl6.org works properly and merge it if it does? | 20:58 | |
[Coke] | another install-related borkage. If you rebuild rakudo in your build directory and cause new versions of your vm & nqp to be installed, you have a period of time where your installed perl6 isn't valid, right? (since there's a mismatch of the installed versions of the 3 tiers) | 21:00 | |
FROGGS | [Coke]: only for parrot and nqp-* | 21:01 | |
lizmat | [Coke]: maybe the same trick as the empty_set can be used to create π | ||
[Coke] | FROGGS: also moar. | 21:02 | |
FROGGS | [Coke]: no, usually not | ||
[Coke] | just verified. i reconfig'd, which installed nqp... which means my globally installed "perl6" is now borked until I happen to finish building rakudo-moar (here's hoping HEAD builds!) :( | ||
tony-o | timotimo got ya- i'll look at how that would work | ||
[Coke] | FROGGS: it's happening right now. | ||
I run my installed perl6, I get: | |||
$ perl6 | |||
Unhandled exception: Missing or wrong version of dependency 'gen/moar/stage2/QRegex.nqp' at <unknown>:1 (/Users/williamcoleda/perl6/languages/nqp/lib/Perl6/Pod.moarvm:<dependencies+deserialize>:237) | 21:03 | ||
timotimo | thanks :) | ||
FROGGS | [Coke]: correct, you have an nqp<->rakudo mismatch | ||
[Coke] | FROGGS: THAT IS WHAT I AM SAYING, YES. | ||
timotimo | but i'm discovering i was only really using that as a reason to procrastinate work on my project | ||
[Coke] | that the build/install process is borked that it allows that. | ||
FROGGS | [Coke]: though, you can happily pull and reconfigure and make install moar without such a problem | ||
[Coke] | ... which I am not complaining about. | 21:04 | |
PerlJam | [Coke]: you would have it build everything in a temp dir and then copy/mode when the rakudo build was successful? | 21:05 | |
FROGGS | [Coke]: ahh, so you are always trigger the rebuild in the rakudo dir... that's the difference to what I do :o) | ||
PerlJam | s/mode/move/ | ||
[Coke] | I did say "also moar". apologies. I haven't tried that particular combination. | ||
PerlJam: yes. | |||
21:07
cognome joined
21:08
eternaleye left,
anaeem1_ left
|
|||
dalek | ast: f696a6f | coke++ | S32-num/pi.t: add test for literal π lizmat++ |
21:08 | |
[Coke] | timotimo: i love jquery. | 21:09 | |
please use it wherever javascript is sold. | 21:10 | ||
timotimo | vanilla-js.com/ | 21:11 | |
21:12
cognome left
|
|||
gtodd | either in my testing of the perlmonks logfile pattern matching "benchmark" ( perlmonks.org/?node_id=1099617 )... perl6-m has got 40% faster ... or I wasn't careful to check what was running on my machine the first few times I ran the "benchmark" .... | 21:14 | |
tadzik | eleks.github.io/js2js/ | ||
gtodd | has anyone else noticed a speed up ? | ||
timotimo | gtodd: could be jit vs no jit | ||
gtodd | doh! | 21:15 | |
yeah that's it | |||
forgot I added that | |||
21:15
dolmen left
|
|||
[Coke] | the vanilla js documentation link is going to a straight js documention link. | 21:15 | |
timotimo | yes | ||
gtodd | timotimo: oh well ... so the "Great List Refactor" willl even be better than this ;-) | 21:16 | |
tadzik | thatsthejoke.jpg :P | ||
gtodd | haha | ||
timotimo | [Coke]: also check out where the "plugins" link leads | ||
[Coke] | Idon'tgetit.com | ||
gtodd | chocolatejs.org | ||
:P | |||
[Coke] | So you are not making a serious recommendation of technology I should look at? | ||
timotimo | oh, that exists, gtodd | ||
gtodd | so fat I use pure vanilla perl6 | ||
[Coke] | ok. in that case, I stick by jQuery. :P | 21:17 | |
timotimo | [Coke]: i was saying "jquery's features are partially supplanted by stuff that's natively available in js by now" | ||
and "jquery is bloat and people learn jquery instead of learning js" | |||
youmightnotneedjquery.com/ | 21:18 | ||
[Coke] | (natively available) ... do you support IE8 anywhere? | ||
leont | Perl6 doesn't have a monotonic timer yet, right? | ||
timotimo | no, when i detect an IE8, i display a huge overlay asking the user to upgrade | ||
:P | |||
leont: instant is monotonic | |||
m: say now.WHAT | |||
camelia | rakudo-moar 90288f: OUTPUT«(Instant)» | ||
timotimo | m: say now | ||
camelia | rakudo-moar 90288f: OUTPUT«Instant:1410815962.589945» | ||
21:19
eternaleye joined
|
|||
[Coke] | those samples are all much more verbose in IE than in jQuery. | 21:19 | |
and no note of whether the code is the same across browsers. | |||
so, I'll continue with jquery. definitely makes my job easier. | 21:20 | ||
leont | timotimo: are you sure? That looks like a wallclock time to me… | ||
S32/Temporal doesn't contain the word monotonic | 21:21 | ||
timotimo | m: say now - time | ||
camelia | rakudo-moar 90288f: OUTPUT«Instant:35.956720» | ||
timotimo | that's the amount of duplicate seconds | ||
leont | Wallclocks are notoriously unreliable for benchmarking purposes | ||
Right. That's taking out once source of non-monotonicity, but that's not giving monotonic guarantees | 21:22 | ||
AFAICT | |||
[Coke] | Anyway, if someone wants to use jquery in the future on web stuff, it's fine with me; we have people who can support it if needs be. | ||
21:23
kjs_ joined
|
|||
timotimo | ok :) | 21:23 | |
[Coke] | still lots of failures in rakudo-star dailies. | ||
what can we do to get fixes out to the modules that are failing? | 21:24 | ||
timotimo | poke the module owners or people with too much time | ||
speaking of people with too much time | |||
should get started on that weekly ... | |||
[Coke] | just a pita since I cannot easily mark a failure as "I already reported that". | 21:25 | |
nine | [Coke]: jquery is thankfully more and more obsolete. Its emphasis on making code easier to write completely missed that code is much more often read than written. | 21:26 | |
timotimo | [Coke]: oh damn, that's right | ||
21:31
eternaleye left
21:36
eternaleye joined
|
|||
[Coke] | nine: I find jquery MUCH easier to read. | 21:36 | |
"did they copy all this boilerplate required to do an ajax call with no library?" vs. "make an ajax call". | 21:37 | ||
lizmat just realized that Str.lines is also recognizing unicode line endings | 21:39 | ||
timotimo | "oh no!"? | ||
lizmat | S02:63 says: "Perl can count Unicode line and paragraph separators as line markers, but that behavior had better be configurable so that Perl's idea of line numbers matches what your editor thinks about Unicode lines. | 21:40 | |
synopsebot | Link: perlcabal.org/syn/S02.html#line_63 | ||
nine | [Coke]: speaking names vs. a function that has two names without any meaning at all and no less than 6 (!!) completely different uses. | ||
lizmat | to make it configurable, I think we need a CCLASS_CRLF | ||
I tried a diff for that: gist.github.com/lizmat/4f31120e7ca6bbebc16d | |||
diakopter | I think there was supposed to be some record separator (and maybe already there?) | ||
lizmat | does that make sense ? | ||
nine | sleep & | 21:41 | |
lizmat | good night nine! | 21:42 | |
timotimo | gnite nine :) | 21:43 | |
which person in here is perlpilot on github again? | 21:45 | ||
diakopter | PerlJam methinks | 21:46 | |
timotimo | ah, that makes sense | ||
lizmat | it does? | ||
timotimo | it doesn't? | 21:47 | |
lizmat | the names share the prefix Perl (case insensitively) | 21:48 | |
but that's about it :-) | |||
21:51
pmurias joined
|
|||
timotimo | well, i meant it more like "that rings a bell" | 21:53 | |
lizmat | ah, well it rang a bell for me as well, fwiw :-) | 21:54 | |
diakopter | PerlJam always reminds me of ToeJam & Earl | 21:55 | |
timotimo | p6weekly.wordpress.com/?p=232&s...76083d3297 - feedback pleez | 21:56 | |
tony-o | timotimo: it looks like i could just add an untap if i see the header 'Upgrade: websocket' | 21:57 | |
timotimo | tony-o: that's easy enough, but do you know how re-tapping it in order to read the rest of the headers will allow us to keep all data? | 21:58 | |
or will we be losing data in between? | |||
lizmat | timotimo: seems to be one <li> too many at the end? | 21:59 | |
tony-o | timotimo: i can untap after headers are complete | ||
21:59
slavik left
|
|||
timotimo | lizmat: that's something i can fix by myself ;) | 22:00 | |
also the extroduction pararaph is missing | |||
tony-o | oh i see what you mean, i can pass the headers to a handler after untapping or we can handle websockets via a 'register'ed sub | ||
lizmat | timotimo: moritz fixed the segfault when sending on a closes socket | 22:01 | |
timotimo | ah, nice | ||
lizmat | also: Bags and Mixes now return pairs, as per spec change | ||
timotimo | "return pairs"? | 22:02 | |
lizmat | m: say @(<a a b c c>.Bag) | ||
camelia | rakudo-moar de1626: OUTPUT«"a" => 2 "b" => 1 "c" => 2» | ||
timotimo | ah, when coerced to a list | ||
lizmat | unlike Set, which only returns keys in that case | ||
m: say @(<a a b c c>.Set) | |||
camelia | rakudo-moar de1626: OUTPUT«a b c» | ||
lizmat | this used to be keys for all Set/Bag/Mixes | 22:03 | |
timotimo | ah | ||
that's something you implemented? | |||
lizmat | yes | ||
timotimo | thank you :) | ||
lizmat | TimToady did a some reification work that I think, made the spectest at least 5% faster | ||
22:03
jack_rabbit joined
|
|||
lizmat | 02db739a82874e | 22:04 | |
pmurias | it's awesome that rakudo keeps getting faster, rather then the usual route of a Perl 6 implementation getting slower as features are added | 22:05 | |
tony-o | timotimo: how are you implementing web sockets? | ||
as a module or some kind of native p6 thing? | |||
timotimo | a module, of course | 22:06 | |
tony-o | are you extending it into the http-server-async space ? | ||
lizmat | timotimo: that's about it from my end, I think | 22:07 | |
timotimo | thank you :) | 22:08 | |
tony-o: i have not yet started, actually | |||
just read the rfc and thought about things, checked out if all our dependencies are good enough yet (base64, sha1) | |||
22:09
brrt left
|
|||
tony-o | timotimo: i'll put together a skeleton for the 'upgrade' header and include that as an example - | 22:10 | |
and fix the readme | 22:11 | ||
timotimo | cool, thanks :) | ||
any good ideas for how to best handle static file serving? | |||
22:11
slavik joined
|
|||
tony-o | probably another plugin - i'll put that together as the example of how to handle websockets too :-) | 22:12 | |
carlin | how should I test code that says/prints? | 22:14 | |
lizmat also calls it a night | |||
sleep& | |||
tony-o | carlin: what are you testing that says/prints? | 22:21 | |
anyone have output of what the separate is for windows @*INC ? | |||
22:22
kjs_ left
|
|||
carlin | tony-o: perl6 code, it's a command-line interface, so I want to test that output is what is expected | 22:24 | |
22:24
exixt left
|
|||
tony-o | you could probably run it in a process or hijack stdout | 22:25 | |
alexghacker | m: %t = a => 1; say !%t{"a"}:exists | 22:26 | |
camelia | rakudo-moar de1626: OUTPUT«===SORRY!=== Error while compiling /tmp/hzVCR3YvxKVariable '%t' is not declaredat /tmp/hzVCR3YvxK:1------> %t⏏ = a => 1; say !%t{"a"}:exists expecting any of: postfix» | ||
alexghacker | m: %t = a => 1; say !(%t{"a"}:exists) | ||
camelia | rakudo-moar de1626: OUTPUT«===SORRY!=== Error while compiling /tmp/IdLqG6DqgKVariable '%t' is not declaredat /tmp/IdLqG6DqgK:1------> %t⏏ = a => 1; say !(%t{"a"}:exists) expecting any of: postfix» | ||
alexghacker | m: my %t = a => 1; say !%t{"a"}:exists | ||
camelia | rakudo-moar de1626: OUTPUT«Unexpected named parameter 'exists' passed in sub prefix:<!> at src/gen/m-CORE.setting:4217 in block <unit> at /tmp/uQCwyixzmX:1» | ||
alexghacker | m: my %t = a => 1; say !(%t{"a"}:exists) | ||
camelia | rakudo-moar de1626: OUTPUT«False» | ||
alexghacker | as a perl6 newbie and many year perl5 veteran, it seems odd to me that unary ! binds more tightly than an adverb | 22:27 | |
can someone please explain that to me? | |||
TimToady | operator adverbs are just tighter than comma | 22:28 | |
however... | |||
m: my %t = a => 1; say %t{"a"}:!exists | |||
camelia | rakudo-moar de1626: OUTPUT«False» | ||
TimToady | you can negate the adverb in this case | ||
alexghacker | oooo.... shiny | ||
timotimo | good day, TimToady :) | ||
alexghacker | tyvm | ||
tony-o | m: my %t = a => 1; say so %t{"a"}:exists | ||
camelia | rakudo-moar de1626: OUTPUT«True» | ||
tony-o | m: my %t = a => 1; say !so %t{"a"}:exists | 22:29 | |
camelia | rakudo-moar de1626: OUTPUT«False» | ||
tony-o | i like negative the adverb, didn't know that worked | ||
timotimo | "!so" is equivalent to "not" :P | ||
TimToady | m: my %t = a => 1; say not %t{"a"}:exists | ||
camelia | rakudo-moar de1626: OUTPUT«False» | ||
TimToady | or you can just use the ! that's looser | ||
tony-o | if i'm in a role, how do i get the class that the role is in? | ||
TimToady | ::?CLASS or so | 22:30 | |
timotimo | TimToady: p6weekly.wordpress.com/?p=232&s...76867710ec ← looks good to you? | ||
22:31
treehug88 left
|
|||
tony-o | Could not locate compile-time value for symbol ::?OUTER | 22:32 | |
timotimo | that would be OUTER:: | ||
TimToady | I also finished adding .plan, so it works right now | ||
timotimo | oooh! | ||
i read that and thought "i need to note this!", but forgot >_< | 22:33 | ||
TimToady | and made require return True, but failed to get it to declare its symbol yet (though I added a test) | ||
the specchange of Bag and Mix returning pairs was also this week | 22:34 | ||
not just the implementation :) | |||
but mostly I've been studying up for the GLR | 22:35 | ||
tony-o | m: role T { method t(){ say OUTER::?CLASS; }; }; class U does T { }; U.new.t(); | 22:36 | |
camelia | rakudo-moar de1626: OUTPUT«===SORRY!=== Error while compiling /tmp/2iseSS2E7zTwo terms in a rowat /tmp/2iseSS2E7z:1------> role T { method t(){ say OUTER::⏏?CLASS; }; }; class U does T { }; U.new. expecting any of: post…» | ||
tony-o | sorry, i've been out of the loop on p6 for a little while writing an ios app | ||
TimToady | you shouldn't need OUTER there | 22:37 | |
tony-o | m: role T { method t(){ say ::?CLASS; }; }; class U does T { }; U.new.t(); | ||
camelia | rakudo-moar de1626: OUTPUT«(U)» | ||
tony-o | thank you | 22:38 | |
22:38
exixt joined,
kjs_ joined
|
|||
TimToady and Mrs TimToady have been married 35 years today! That's longer than many of you are old. :) | 22:42 | ||
diakopter | barley | 22:43 | |
timotimo | cool! :) | ||
22:45
cognome joined
22:46
eternaleye left
|
|||
tony-o | 5 years older than i am :-) congrats! | 22:48 | |
22:50
cognome left,
ajr_ left
|
|||
carlin wonders who the youngest here is | 22:50 | ||
22:52
kjs_ left
|
|||
TimToady | of the active contributors, probably Mouq++ | 22:52 | |
23:00
pmurias left
23:02
BenGoldberg joined
|
|||
tony-o | how old is mouq? | 23:03 | |
TimToady does not feel that that information is his to give out :) | 23:05 | ||
BenGoldberg | m: my %a; %a{"b"}.WHAT.say; | ||
camelia | rakudo-moar de1626: OUTPUT«(Any)» | ||
BenGoldberg | m: my %a; %a{"b".list}.WHAT.say; | ||
camelia | rakudo-moar de1626: OUTPUT«(Parcel)» | ||
BenGoldberg | m: my %a; %a{"b"} += 1; %a.say; | 23:06 | |
camelia | rakudo-moar de1626: OUTPUT«"b" => 1» | ||
BenGoldberg | m: my %a; %a{"b".list} += 1; %a.say; | ||
camelia | rakudo-moar de1626: OUTPUT«"b" => 2» | ||
BenGoldberg | m: my %a; say %a{"b".list} + 1; # AHA! | 23:07 | |
camelia | rakudo-moar de1626: OUTPUT«2» | ||
BenGoldberg | m: my %a; %a{"b".list}.say | 23:08 | |
camelia | rakudo-moar de1626: OUTPUT«(Any)» | ||
tony-o | TimToady: looking at ::?CLASS, how do i get that into a string? | ||
timotimo | you mean {::?CLASS}? | ||
23:09
cognome joined
|
|||
tony-o | yea | 23:09 | |
TimToady | .^name maybe? | ||
tony-o | m: class t { method y { {::?CLASS}.name.say; }; }; t.y; | 23:10 | |
camelia | rakudo-moar de1626: OUTPUT«» | ||
TimToady | no, no, timotimo was talking about interpolating inside "" | 23:11 | |
timotimo | aye | ||
TimToady | and I was talking about calling into the metaobject | ||
tony-o | oic, that doesn't work either | ||
TimToady | which needs a ^ | ||
timotimo | m: class t { method y { say "{::?CLASS}"; }; }; t.y; | ||
camelia | rakudo-moar de1626: OUTPUT«use of uninitialized value of type t in string context in method y at /tmp/lPD722ZcDI:1» | ||
tony-o | m: class t { method y { "{::?CLASS}".say }; }; t.y; | ||
camelia | rakudo-moar de1626: OUTPUT«use of uninitialized value of type t in string context in method y at /tmp/_FluJEIQ26:1» | ||
timotimo | m) | ||
m: class t { method y { say "{::?CLASS.^name}"; }; }; t.y; | |||
camelia | rakudo-moar de1626: OUTPUT«t» | ||
TimToady | or .gist if you don't mind the parens | 23:12 | |
tony-o | damn, getting lessons in p6 (again) after the break :-) | ||
ty | |||
timotimo | yw | 23:13 | |
23:13
cognome left
23:24
telex left
23:26
camelia left,
telex joined
23:28
araujo left
23:30
camelia joined
23:34
ChanServ sets mode: +v camelia
23:36
pat_js left
23:45
cognome joined
23:48
telex left,
telex joined
23:50
cognome left
|
|||
leont | Git a double free in moar, no idea how to make this case small though :-/ | 23:51 | |
23:52
camelia left,
Guest85949 left,
erkan left,
Alina-malina left
23:53
erkan joined,
erkan left,
erkan joined
|
|||
leont | It involved trying if @<foo> DWIMed (guess not) | 23:53 | |
23:53
Alina-malina joined
23:54
camelia joined,
Alina-malina left,
davido_ left
23:55
ChanServ sets mode: +v camelia,
Alina-malina joined,
davido_ joined
23:57
u-ou joined,
u-ou is now known as Guest83826
|