»ö« 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:00
chenryn joined
00:06
ajr_ left
00:10
chenryn left
00:11
dayangkun joined
00:15
thou left
00:20
jnap1 left
00:22
carlin left
00:27
psch left
00:37
jnap joined
00:40
chenryn joined
00:47
chenryn left,
rurban1 joined
|
|||
BenGoldberg | .w manipulexity | 00:48 | |
yoleaux | Sorry, I couldn't find a definition for 'manipulexity'. | ||
01:27
rurban1 left
01:28
rurban1 joined
01:34
jack_rabbit joined
01:39
hoverboard joined
01:44
chenryn joined
01:45
rurban1 left
01:46
troydm left
01:51
chenryn left
01:54
FROGGS_ joined
01:58
klapperl joined,
jnap left,
FROGGS left
02:01
klapperl_ left
02:05
rurban1 joined
02:09
kurahaupo left,
Alina-malina left
02:11
Alina-malina joined
02:22
Alina-malina left
02:25
noganex_ left
02:32
rurban1 left
02:33
rurban1 joined
02:35
rurban2 joined
02:36
rurban2 left
02:37
rurban1 left
02:44
xinming joined
02:48
chenryn joined
02:52
chenryn left
02:55
rindolf joined
03:24
BenGoldberg left,
xinming left
03:37
cognominal left,
cognominal joined
03:40
xfix left,
xfix joined,
xfix left,
xfix joined
03:46
xinming joined
03:48
chenryn joined
03:50
[1]chenryn joined
03:53
chenryn left,
[1]chenryn is now known as chenryn
03:54
[particle] left
03:57
[Sno] left
04:02
kaare_ joined
04:13
anaeem1 joined
04:17
Alina-malina joined,
gfldex joined
|
|||
ren1us | for (0 .. @pulled.elems - 1) { | 04:36 | |
Is there anywhere on that line that seems to be modifying an immutable int? | |||
Because I really don't think there is | |||
perigrin | @pulled.elems - 1 ... maybe ? | 04:38 | |
ren1us | that wouldn't be modifying an int, though. it'd just be doing basic arithmetic without changing the value of an existing one | 04:39 | |
at least i assume | |||
perigrin | the assume is where I got hung too | 04:40 | |
and why there was a mabye? on the end | |||
04:40
vendethiel left
|
|||
perigrin | w/ 60 | 04:47 | |
04:50
pdcawley left
04:51
dwarring joined
04:52
xenoterracide__ joined
04:53
pdcawley joined
04:57
kaare_ left,
xenoterracide__ left
|
|||
lue | ren1us: are you by chance writing to $_ in the loop? | 05:03 | |
ren1us | @list[$_ + $pos] = @pulled[$_]; | 05:07 | |
^ the only line in the loop | |||
i don't think I am | |||
(lue) | |||
lue | ren1us: only other thing I can think of is getting rid of the unnecessary parens, so for 0..@pulled.elems-1 { | 05:08 | |
(also, if you want, you can rewrite the range as 0 ..^ @pulled.elems or even ^+@pulled ☺) | 05:12 | ||
ren1us | i'll give it a shot, but it takes a ridiculously long time to run through each iteration and only errored about 80 iterations in last time | 05:15 | |
34 seconds per iteration, actually, lol | 05:18 | ||
i should probably try to do something about that | |||
lue | If it happens in a consistent spot, you might be able to shortcut it for testing with something like 80..^+@pulled , or even just print the element of both arrays when it errors. | ||
ren1us | i know the array element, it just shouldn't really matter | 05:19 | |
but yeah i'm printing out the indexes now so that should help fix it if it happens again | 05:22 | ||
lue | ren1us: One last thought: if at some point in the code you do something like @list[$someplace] := 42 , you wouldn't be able to assign to that position in the list later. | 05:23 | |
05:23
[Sno] joined
|
|||
ren1us | I don't even know what the := operator does so I don't think I do that | 05:28 | |
05:29
kaare_ joined
|
|||
lue | OK, just thought I'd mention it :) . | 05:30 | |
moritz | doc.perl6.org/language/containers has an explanation of := (binding) | 05:34 | |
ren1us | moritz: I don't suppose you know what would be causing that error :P | 05:36 | |
05:38
hoverboard left
|
|||
moritz | ren1us: sorry, I haven't seen the error, and no time to backlog | 05:41 | |
05:42
Alina-malina left,
Alina-malina joined,
Alina-malina left,
Alina-malina joined
|
|||
ren1us | for (0 .. @pulled.elems - 1) { <--- after having run in its entirety a whole bunch of times, this line threw something about modifying an immutable int | 05:46 | |
and i'm pretty sure it's not modifying an immutable int | |||
05:48
[particle] joined
05:50
Alina-malina left
05:51
Alina-malina joined
|
|||
FROGGS_ | .tell jnthn look at this weird patch, that helps a lot: gist.github.com/FROGGS/0c85c2e1363abb4a45c1 | 05:57 | |
yoleaux | FROGGS_: I'll pass your message to jnthn. | ||
dwarring | r: my $x = [a => 10, b => 20]; say @$x; say %$x | 06:08 | |
camelia | rakudo-{parrot,jvm,moar} f8a933: OUTPUT«"a" => 10 "b" => 20("a" => 10, "b" => 20).hash» | 06:09 | |
dwarring | r: my $x = {a => 10, b => 20}; say @$x; say %$x | ||
camelia | rakudo-{parrot,moar} f8a933: OUTPUT«"a" => 10 "b" => 20{"a" => 10, "b" => 20}» | ||
..rakudo-jvm f8a933: OUTPUT«"b" => 20 "a" => 10{"a" => 10, "b" => 20}» | |||
dwarring would expect %$x to be the same in both cases | 06:10 | ||
doc.perl6.org/language/containers#F...Containers - indicates that % @ both flatten | 06:14 | ||
but %$hashref doesn't flatten, whereas @$arrayref does | 06:18 | ||
as does %$arrayref and @$hashref | 06:26 | ||
06:28
ingy left
06:32
FROGGS_ left
06:35
Isp-sec joined
06:39
ingy joined
06:40
hightower2 joined
06:44
FROGGS_ joined,
FROGGS_ is now known as FROGGS
06:45
potatogim joined
|
|||
lizmat | good *, #perl6 | 06:47 | |
won't be doing much here today, as I will be commuting again | |||
life is hard :-) | |||
& | |||
06:47
lizmat left
|
|||
timotimo | o/ | 06:49 | |
FROGGS | o/ | 06:51 | |
06:52
zakharyas joined
06:57
SamuraiJack_ joined
07:03
darutoko joined
|
|||
moritz | \o | 07:03 | |
R* test summary: jsonrpc fails t/server.t, doc fails t/typegraph.t (both on parrot) | 07:04 | ||
07:04
woolfy left
|
|||
FROGGS | moritz: moar is clean I suspect? | 07:05 | |
moritz | FROGGS: it is | ||
I didn't test JVM | |||
FROGGS | okay, that is at least something | ||
you don't have to, the fails will be the same as the last months | |||
07:06
igorsutton joined
|
|||
moritz | thought so | 07:08 | |
anybody interested in investigating the failures? | |||
FROGGS | interested yes | 07:10 | |
but I already do too much in parallel, so it will take time | 07:11 | ||
moritz has to &work :( | |||
ChoHag | if %foo contains a bunch of class attribute values, and |args from the sub's signature contains some more, some of which will overlap with %foo's entries, can I say $bar = Bar.new(%foo, \args) and have it DTRT? | ||
Also, is it |args in the sig to catch the arguments as is, then \args in a subsequent call to expand it to the arguments originally provided? | 07:12 | ||
timotimo | i think it's |args to expand it later | ||
ChoHag | I have not used containers enough for it to be second nature what does what. | ||
moritz | ChoHag: use |args to flatten something into an argument list | 07:28 | |
ren1us | okay this error is starting to really annoy me | ||
for 0..^pulled.elems { @list[$_ + $pos] = @pulled[$_]; } | 07:30 | ||
is there *any* reason why that should be attempting to modify an immutable Int | |||
moritz | yes | ||
m: my @list; @list[0] := 1; @list[0] = 42; | 07:31 | ||
camelia | rakudo-moar f8a933: OUTPUT«Cannot modify an immutable Int in method assign_pos at src/gen/m-CORE.setting:8787 in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2465 in block at /tmp/JcaNW2g2zX:1» | ||
timotimo | m: my @list := (1, 2, 3); @list[1] = 42; | ||
camelia | rakudo-moar f8a933: OUTPUT«Cannot modify an immutable Int in method assign_pos at src/gen/m-CORE.setting:1772 in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2465 in block at /tmp/qfVpnAPoGr:1» | ||
ren1us | i'm not using := though, or is it implied somewhere? | 07:32 | |
moritz | yes | ||
07:32
virtualsue joined
|
|||
moritz | calling functions binds the parameters | 07:33 | |
(it's not exactly the same as :=, but it's still binding) | |||
timotimo | aye, have "@list is copy" or "@list is rw" in your parameters | ||
ren1us | i pray this works | 07:34 | |
it's kinda funny, though, because that block runs properly over 100 times, and then almost randomly breaks | |||
timotimo | strange indeed. | 07:35 | |
ren1us | oh right i was going to submit that other rakudobug | 07:36 | |
ren1us goes to do that | |||
07:38
sqirrel joined,
telex left
07:40
telex joined
|
|||
masak | morning, #perl6 | 07:43 | |
timotimo | morning masak | ||
dalek | p: d7f23d9 | (Tobias Leich)++ | tools/build/MOAR_REVISION: bump moar rev for CPointer get/set_int |
07:44 | |
kudo/nom: cce7f9f | (Tobias Leich)++ | tools/build/NQP_REVISION: bump nqp rev for CPointer get/set_int |
|||
timotimo | sometimes i get a bit frustrated at the status of rakudo when some bug or other torments users and i have no clue/time/mojo to fix it | 07:46 | |
FROGGS | timotimo: I know what you mean... the cases where I can fix a bug are in the range of perhaps 20% :( | 07:48 | |
maybe even less | |||
masak | I know what you mean. | ||
not sure how to fix that, except plodding on and occasionally gaining insights into the architecture. | 07:49 | ||
07:52
kkielak joined
07:53
vaskozl joined
|
|||
dalek | volaj: b73c9b0 | (Tobias Leich)++ | lib/NativeCall.pm6: allow pointer math using OpaquePointer type We will now see the memory address a OpaquePointer is about when calling its .gist, it is also now round-trippable by calling .perl and EVAL. Also, it will return the memory address when being used as a number, so that we can walk the bytes of a CStr or obtain addresses of Ctsructs in a list when we know their size. |
07:53 | |
volaj: 3824daf | (Tobias Leich)++ | t/04-pointers. (2 files): add tests for new OpaquePointer methods These tests pass on all three backends, though a most recent rakudo is required. |
|||
volaj: 2f1be0f | (Tobias Leich)++ | / (3 files): Merge pull request #44 from FROGGS/pointer-math allow pointer math using OpaquePointer type |
|||
vaskozl | TimToady: Mr. Wall? I'm boggled by your mastery and efficiency over vim, it was amazing to watch one of your lectures. Might I be entitled to looking at some of your vimrc magic? | 07:58 | |
07:59
pecastro_ left
|
|||
timotimo | and with one hand only, too! | 08:01 | |
masak | it's so we mere mortals will have a chance to follow along. | 08:03 | |
vaskozl: out of curiosity -- what's your own level of mastery over vim? | |||
vaskozl | uhm, I don't really know, on what scale? | 08:04 | |
it's my primary editor, that's for sure! | 08:05 | ||
moritz | on any scale you like, really | 08:06 | |
08:06
denis_boyun_ joined
08:07
Isp-sec left
|
|||
vaskozl | it's feeble in comparison to #vim, but yet enough to answer the questions of ordinary warriors learning to find their way with vim | 08:08 | |
so I'm pretty confident with it using it for everything including note taking in all my classes for over an year now | 08:09 | ||
masak | vaskozl: let me put it like this: if I put you on Notepad, which features would you most miss from vim? | 08:10 | |
vaskozl | my vimrc is of a second order of magnitude and is only getting bigger as I expand vims features to the path of enlightment | ||
masak | (I would never put someone on Notepad, by the way. I can be cruel, but I'm not a monster.) | ||
08:11
labster joined
|
|||
vaskozl | masak: / , cw($) , C-v, :s/foo/bar/ | 08:11 | |
08:11
teodozjan joined
|
|||
vaskozl | like the ones I use all the time.. | 08:11 | |
gg, G, C-d, C-u, dd, pp, | 08:12 | ||
J, f, t, and so on so forth | |||
ChoHag | Why can't I return from inside a given inside a block which can be returned from? | 08:13 | |
vaskozl | these were the ones on top of my head, oh and 0-> $ | ||
08:13
denis_boyun_ left
|
|||
vaskozl | macros would be big thing too, not to mention be able to pipe content trough programs and return it on screen | 08:14 | |
masak | vaskozl: that gives me a pretty good idea -- thanks. | ||
ChoHag | masak: vim to notepad? I'd miss all of them. | ||
From insert mode to the 64K limit they probably still haven't fixed since Windows 3. | 08:15 | ||
masak | m: sub foo { given 42 { when 42 { say "here!"; return } } }; foo; say "alive" | ||
camelia | rakudo-moar f8a933: OUTPUT«here!alive» | ||
masak | ChoHag: you can. | ||
ChoHag | >64K? | ||
masak | no, you can return from inside a given. | 08:16 | |
ChoHag | Oh. | ||
masak | see above. | ||
moritz | ChoHag: I'm pretty sure Windows XP fixed the 64k limit in notepad | ||
ChoHag | Hmm interesting, now I can't return before the given. | 08:17 | |
vaskozl | oh and I somewhat forgot: notepad doesn't run in a bloody console | ||
ChoHag | I'm sure I checked that last time I was in this function (days ago). | ||
moritz | ChoHag: what do you mean by "can't return"? | 08:18 | |
ChoHag | vaskozl: For that, there's qbasic. | ||
Is ms edit still based on qbasic these days? | |||
Attempt to return outside of any Routine | |||
moritz | ChoHag: then the problem is that you've already returned. | ||
ChoHag | Maybe it was a sub {...} not a -> {...} when I tested. | ||
moritz | or that, yes | ||
ChoHag | Is there a difference? | ||
moritz | yes | ||
ChoHag | You can return and remain inside the function? | ||
moritz | return is bound to routines | ||
ChoHag | /block/whatever | 08:19 | |
moritz | ChoHag: you can be back | ||
m: sub f() { -> { return } }; f()() | |||
camelia | rakudo-moar f8a933: OUTPUT«Attempt to return outside of any Routine in block at src/gen/m-CORE.setting:556 in block at /tmp/PiF9iyKH4B:1» | ||
ChoHag | Oh that's cheating. | ||
moritz | by the time the inner code block is run, you've already returned the block from f() | ||
ChoHag | The return isn't in f, it's in f() | 08:20 | |
moritz | and the same can happen with lazy list generators | ||
ChoHag | I shall have to look in to that at some point. | ||
More weird things to break... | |||
moritz | m: sub f { return map { return }, 1..10 }; my @x := f(); say 'alive'; say @x[0]; | ||
camelia | rakudo-moar f8a933: OUTPUT«aliveAttempt to return outside of any Routine in block at src/gen/m-CORE.setting:556 in block at /tmp/4SJUV7k_ZO:1» | ||
ChoHag | Java is slow :( | 08:23 | |
moritz | English is slow :( | ||
masak | Humanity is slow :( | ||
moritz | the Sun is slow :-) | 08:24 | |
vaskozl | the galaxy is slow :( | ||
moritz | vaskozl: I'm glad it is | ||
08:26
jsn_ joined
|
|||
ChoHag | Depends on your point of view. | 08:27 | |
vaskozl | Hey, I just recompiled (or tried to) perl6, and now when I run it I get a missing dependency :/ -> gist.github.com/b77503eaa91b2f106d6b | ||
moritz | vaskozl: you might need to clean out the installation dir, and then run 'make install' again | 08:28 | |
vaskozl | oh right, should I run configure.pl again? | ||
moritz | no need for that, usually | 08:29 | |
vaskozl | got it, kudos | ||
08:30
dakkar joined
|
|||
ChoHag | Gah! Run test. Fail. Run with tracer statements (say <int> every other line). Success. | 08:44 | |
masak | sounds like grounds for a nice meaty rakudobug. | 08:46 | |
alternatively: get off my lawn! I've been with the projects since the presence or absence of a *comment* could cause a NullPMCAccess! :P | 08:47 | ||
ah, the pain. | |||
08:48
grondilu joined
|
|||
grondilu finally managed to write a PGN grammar that kind of works: gist.github.com/grondilu/1c0ef78e5deba7ba87f4 | 08:48 | ||
(not tested much though) | 08:50 | ||
masak | grondilu++ # nice! | 08:51 | |
grondilu considers adding it to perl6-examples/parsers/ | 08:52 | ||
masak | grondilu: had I written a grammar of that size, I would have done it with tests. | ||
grondilu | I had hard time figuring out I should put ?? after <disambiguation> and not just ? | 08:53 | |
otherwise it just failed silently :/ | 08:54 | ||
masak | yes -- this is where tests help greatly. | 08:59 | |
I find the combination of grammars and tests to be quite helpful. | |||
grondilu | sure, but finding and writing examples for tests is a bit tiresome. | 09:00 | |
moritz | but you do that anyway | ||
otherwise you wouldn't know it works | 09:01 | ||
you just do it ad-hoc | |||
grondilu | I made one manual test with a single game and truncated it for debugging. I know it's silly to do that but I guess I'm not used to make tests properly yet. | 09:02 | |
09:02
troydm joined
09:04
potatogim is now known as PotatoGim,
pecastro joined
|
|||
masak | finding and writing examples for tests (a) focuses the implementation tremendously, and (b) provides excellent regression guards. | 09:04 | |
...in my experience. YMMV. | 09:05 | ||
moritz | grondilu: well, but you already work with some examples in your head when you write the rules | ||
09:06
xinming left
|
|||
grondilu | yeah but that's more typing if I do things properly. I will eventually though. | 09:06 | |
09:07
brrt joined,
jack_rabbit left
09:08
avar left,
avar joined,
jack_rabbit joined
|
|||
grondilu | do you think it's worth making a panda-compatible module? | 09:10 | |
FROGGS | the answer is always: yes | 09:11 | |
09:11
pdcawley_ joined
|
|||
grondilu | ok, I will | 09:11 | |
09:11
pdcawley left
09:13
xinming joined
|
|||
sergot | o/ | 09:17 | |
masak | \o | 09:18 | |
09:22
spider-mario joined
09:24
jsn_ left
|
|||
masak | jnthn: what about origin/qast_refactor ? | 09:31 | |
timotimo: what about origin/qast_lazy_annotation ? | |||
"what about" as in "are these branches active? should they be merged? have them been merged? should they be deleted?" | 09:32 | ||
jnthn | Both still contain desirable work. | 09:38 | |
yoleaux | 05:57Z <FROGGS_> jnthn: look at this weird patch, that helps a lot: gist.github.com/FROGGS/0c85c2e1363abb4a45c1 | ||
masak | oki | 09:40 | |
colomon_ | is it just me, or is everyone having terrible problems with (parrot?) rakudo at the moment? | 09:42 | |
09:43
denis_boyun joined
|
|||
teodozjan | colomon_ : yes | 09:45 | |
colomon: see github.com/coke/perl6-roast-data | 09:46 | ||
colomon_ | teodozjan++ | 09:47 | |
09:53
kaleem_ joined
|
|||
ChoHag | It liiiives! | 09:54 | |
09:56
igorsutton left
|
|||
teodozjan | ChoHag: what lives? | 09:57 | |
ChoHag | Some kind of weird job scheduler thing. | ||
teodozjan | :) | 09:58 | |
09:59
woosley left,
woosley joined
10:06
sqirrel left
10:12
dmol joined
|
|||
timotimo | i'm not actually sure what exactly the status of qast_lazy_annotation was when i left it | 10:21 | |
ren1us | m: sub a(@list is copy, $l = @list.elems) { say "Elems: " ~ @list.elems; say "l: $l"; }; a(<a b c d e f g>); a(<a b c>); | 10:37 | |
camelia | rakudo-moar cce7f9: OUTPUT«Elems: 7l: 7Elems: 3l: 7» | ||
ren1us | m: sub a(@list, $l = @list.elems) { say "Elems: " ~ @list.elems; say "l: $l"; }; a(<a b c d e f g>); a(<a b c>); | ||
camelia | rakudo-moar cce7f9: OUTPUT«Elems: 7l: 7Elems: 3l: 3» | ||
ren1us | rakudobug or learning opportunity? | 10:38 | |
colomon_ | sure looks like a rakudobug | 10:45 | |
ren1us submits | |||
i'm always hesitant about submitting something that seems buggy before making sure i'm not just being dumb :P | 10:46 | ||
jnthn | What the thunk... | 10:47 | |
colomon_ | ren1us: I've made enough boneheaded mistakes in my time to be very cautious. | ||
jnthn | I think the first one goes through the slow-path binder thanks to the "is copy" | 10:48 | |
ren1us | m: class A { method test(@list is copy, $l = @list.elems) { say "Elems: " ~ @list.elems; say "l: $l"; }; }; my $a = A.new; $a.test(<a b c d e f g>); | ||
camelia | rakudo-moar cce7f9: OUTPUT«Elems: 7l: 7» | ||
ren1us | woops | ||
m: class A { method test(@list is copy, $l = @list.elems) { say "Elems: " ~ @list.elems; say "l: $l"; }; }; my $a = A.new; $a.test(<a b c d e f g>); $a.test(<a b c>); | 10:49 | ||
camelia | rakudo-moar cce7f9: OUTPUT«Elems: 7l: 7Elems: 3l: 7» | ||
jnthn | So the bug is probably in there. | ||
10:50
kkielak left
10:53
sqirrel joined
10:56
zakharyas left,
virtualsue_ joined
10:57
zakharyas joined,
virtualsue left,
virtualsue_ is now known as virtualsue,
xragnar left,
ivanshmakov left,
segomos left,
Rounin left,
segomos joined
10:58
Rounin joined
10:59
Grimnir_ joined,
xragnar joined,
ivanshma` joined
11:00
smash joined,
sqirrel left,
chenryn left
11:03
kkielak joined
|
|||
PotatoGim | test: ff | 11:03 | |
11:07
SevenWolf left
11:09
kurahaupo joined
11:13
jack_rabbit left
11:28
mr-foobar left,
mr-foobar joined
|
|||
colomon_ | tadzik: ping? | 11:29 | |
tadzik | colomon_: pong | 11:30 | |
11:36
SamuraiJack_ left
|
|||
colomon_ | tadzik: I'm trying to sort out where the dependencies are resolved in panda | 11:37 | |
I'm hoping to block reinstalling File::Find, because that seems to kill panda dead on moar | 11:38 | ||
tadzik | colomon_: it's in panda-app I think | 11:40 | |
colomon_ | bin/panda, you mean? | 11:41 | |
or Panda::App | |||
? | |||
tadzik | no, Panda::App | ||
colomon_ | (looks at flie) I …. don't think so? | 11:43 | |
tadzik | hmmmm, let me check then | 11:44 | |
ohhh, it might be Panda.pm | 11:45 | ||
github.com/tadzik/panda/blob/maste...da.pm#L117 yes | |||
colomon_ | and it's actually used at 155? | 11:48 | |
hmmm | 11:49 | ||
tadzik | ayes | 11:52 | |
colomon_ | huh. | 11:54 | |
why does emmentaler installing File::Find to emmentaler/installlib break everything? | 11:55 | ||
tadzik | hm, good question | ||
is that installlib in perl6lib? | 11:56 | ||
colomon_ | don't think so. | ||
but maybe I'm wrong? | |||
tadzik | I don't know :) | 11:57 | |
but installing panda deps has always been a pain | |||
colomon_ | it's /home/smoker/emmentaler/installlib | ||
so no | |||
teodozjan | actually panda works on moar in my install | ||
11:57
anaeem1 left
|
|||
teodozjan | but it stalls infinitely on file-find.t | 11:58 | |
while run on parrot | |||
colomon_ | teodozjan: try saying -- panda install File::Find | ||
under moar | |||
I'm getting the parrot hang on file-find.t too, mind you | 11:59 | ||
nwc10 | does strace show that it's looping making system calls? | ||
or is it CPU bound within Perl 6 code? | |||
11:59
brrt left
|
|||
teodozjan | I need to compile moar ... it will take moment | 11:59 | |
is moar default backend on purpose if not specified --backends? | 12:01 | ||
jnthn | What other flags did you pass to Configure? | 12:04 | |
I'm pretty sure --gen-moar implies --backend=moar for example | |||
teodozjan | i mean if i do --gen-parrot --gen-moar moar will be defailt | 12:05 | |
jnthn | I suspect if you want to override that you can --backends=... | 12:06 | |
I suspect it's just the order it checks for the flags in Configure | |||
teodozjan | i know i can :D but I'm thinking about new users that are not sure what backends are and which to use | ||
jnthn | Well, Moar is the right backend for most new users. | 12:07 | |
Tends to be fastest for one, and if nothing else because it's what most Rakudo developers primarily develop against, so we spot breakage a bit faster. | 12:08 | ||
Though daily test runs mean nothing goes unnoticed too long. | |||
12:15
nhayashi left
12:17
smls joined
12:18
kkielak left
12:20
nhayashi joined
|
|||
teodozjan | jnthn: I would also use it if my project compiles on | 12:30 | |
jnthn | teodozjan: What keeps your project from compiling on it? | ||
teodozjan | when I import JSON::RPC::Client i get could not invoke null object | 12:31 | |
jnthn | ugh | ||
OK | |||
Is there an RT for it, or a golfed test case? | |||
teodozjan | panda install LacunaCookbuk will show you | 12:32 | |
jnthn | I can look at it during the weekend, or maybe tomorrow even... | ||
ok, thanks. | |||
teodozjan | I was thinking how to isloate that | ||
but I'm not sure whats wrong | |||
colomon_ | tadzik: AHA! | ||
tadzik: emmentaler is installing in the wrong place | 12:33 | ||
Copying blib/lib/File/Find.moarvm to /home/smoker/.rakudobrew/moar-HEAD/install/languages/perl6/site/lib/File/Find.moarvm | |||
tadzik | ah, there we go | 12:34 | |
so whose fault is that? | |||
panda, emmentaler? | |||
12:34
ivanshma` is now known as ivanshmakov
|
|||
colomon_ | tadzik: looking at the code now | 12:34 | |
panda's I reckon | |||
Panda::Installer has $.destdir | 12:35 | ||
but it also has method destdir | |||
12:35
jnap joined
|
|||
colomon_ | which doesn't even look at the value in $.destdir | 12:35 | |
tadzik | lol | ||
how could this happen | 12:36 | ||
12:36
ivanshmakov left,
ivanshmakov joined
|
|||
colomon_ | very carefully, I presume. ;) | 12:36 | |
tadzik | oh, method destdir is just for setting $!destdir | ||
but, yeah, $.destdir then calls that method again | |||
colomon_ | setting the default | ||
tadzik | it's a miracle this works | ||
colomon_ | right | ||
easy peasy fix, I think -- just rename the method to something else | 12:37 | ||
colomon_ would do it, except he's guessing tadzik is already doing so... | 12:38 | ||
colomon_ suspects this will improve emmentaler's performance, too | 12:39 | ||
tadzik | no, I'm not, go ahead :) | ||
tadzik at $work | |||
colomon_ | do I have a commitbit for panda? | ||
tadzik | I hope so | ||
if not, that'll be an easy fix too | |||
colomon_ | do not | ||
tadzik | fixed | 12:40 | |
colomon_ | :) | ||
tadzik++ | |||
12:40
brrt joined
|
|||
tadzik | colomon_++ | 12:40 | |
I just add commit bits :P | |||
FROGGS | colomon_: always keep in mind that panda should work with older rakudos... so do not follow deprecations immediately | 12:44 | |
colomon_ | FROGGS: noted | ||
FROGGS | (I don't wanna be a maintainer for P5's CPAN modules fwiw) | 12:45 | |
colomon_ | Hmmm… seem to have fixed that problem, but now I'm getting | ||
Can't serialize an object of type Version | |||
at the end of the emmentaler run | |||
FROGGS | (because that must feel like working with Linus Torvalds standing behind you) | 12:46 | |
colomon_: we had that already, you have to stringify the version first | |||
moritz | right, json doesn't like Version objects | ||
FROGGS | m: say to-json(v1.2.3) | 12:47 | |
camelia | rakudo-moar cce7f9: OUTPUT«"1.2.3"» | ||
colomon_ | FROGGS++ # \o/ | ||
FROGGS | m: say (v1.2.3).WHAT | ||
camelia | rakudo-moar cce7f9: OUTPUT«(Version)» | ||
FROGGS | umm | ||
why does that work here? | |||
I guess the rakudo internals json thingy knows how to do that | 12:48 | ||
internal* | |||
moritz | wwwwwat? | ||
FROGGS | *g* | 12:49 | |
moritz | multi to-json(Version:D $v, :$indent = 0, :$first = 0) { to-json(~$v, :$indent, :$first) } | ||
indeed | |||
FROGGS | that wasn't me | ||
(I think) | |||
jnthn | I thought the JSON thingy used to support compunitrepo stuff was hidden, not exposed? | ||
moritz | 90d26eae (Tobias Leich 2013-12-09 22:02:35 +0100 94) multi to-json(Version:D $v, :$indent = 0, :$first = 0) { to-json(~$v, :$indent, :$fir | ||
FROGGS | hmmm | 12:50 | |
dalek | nda: 246ad58 | (Solomon Foster)++ | lib/Panda/Installer.pm: Rename method destdir so it doesn't hide $.destdir. |
||
FROGGS | ahh, two days before delivering the blog post... clearly I was under pressure! | ||
jnthn: it is not hidden... and given the usefulness of JSON... I mean, we don't become a PHP, do we? ó.ò | 12:51 | ||
moritz | I'm of two minds about JSON in core. But the day we have an XML parser in core, I quit. | ||
FROGGS | hehe | 12:52 | |
moritz: I will never add it, that's for sure | |||
12:52
xenoterracide__ joined
|
|||
FROGGS | we just needed a way to slurp and spurt human readable datastructures.... and I went for JSON in contrast to INI or custom crap | 12:53 | |
teodozjan | we can always switch to .perl like format :) | ||
FROGGS | human readable<--- | ||
and editable | |||
moritz | .perl is perl readable :-) | ||
FROGGS | sort of | ||
tadzik | I read "edible" :O | ||
FROGGS | tadzik: what ever you want, we can implement it :P | ||
colomon_ is not sure he wants edible data structures | 12:54 | ||
jnthn | I'd prefer edible functions, 'cus you can curry those... | ||
moritz | sounds tasty | ||
tadzik | :D | 12:56 | |
colomon_ | I suppose you'd salt your edible hashes, too? | 12:57 | |
jnthn | .oO( I thought hashes was for smoking, not eating... ) |
13:01 | |
colomon_ | I dunno, I'm smoking modules right now. | ||
jnthn | .oO( What on earth was in that corn beef hash my mum used to cook?! O.O ) |
13:02 | |
13:02
xenoterracide__ left
|
|||
FROGGS | m: say (v1.2.3).perl | 13:02 | |
camelia | rakudo-moar cce7f9: OUTPUT«Version.new('1.2.3')» | ||
FROGGS | star-m: say 1 | 13:04 | |
camelia | star-m 2014.04: OUTPUT«1» | ||
13:05
jsn_ joined
|
|||
PotatoGim | test: ff | 13:06 | |
13:08
estrabd joined
|
|||
FROGGS | ok 1 - ff | 13:09 | |
perl6eval: help | |||
p6eval: help | |||
camelia | FROGGS: Usage: <(rakudo-jvm|nqp-jvm|star-j|rakudo-moar|pugs|star-p|std|niecza|p5-to-p6|nqp-parrot|b|rakudo-parrot|nqp-moarvm|star-m|sp|nPr|rPn|Prn|j|Pnr|nqp-mvm|nr|p6|star|p56|nqp|r-j|rakudo|r-jvm|nqp-p|r-m|r-p|rp|nom|r|rnP|nqp-m|nqp-j|n|rm|perl6|rj|rn|P|m|sm|p|nrP)(?^::\s) $perl6_program> | ||
FROGGS | PotatoGim: ^^ | ||
13:13
hoverboard joined
13:17
guru joined
|
|||
dalek | ast/S26-WHY: 970bedb | (Rob Hoelz)++ | S26-TODO: More things TODO for S26... |
13:17 | |
13:18
guru is now known as Guest32816,
Guest32816 is now known as ajr_
13:23
brrt left
13:24
sqirrel joined
13:28
hoverboard is now known as moistcherry
|
|||
dalek | osystem: 6441217 | grondilu++ | META.list: adding new module Chess-related stuff. PGN grammar |
13:30 | |
13:31
kaare_ left
13:33
orafu joined
13:35
Alina-malina left,
estrabd left
13:36
estrabd joined
13:37
Alina-malina joined
|
|||
timotimo | grondilu: your grammar confuses me. what is this? < + ++ # > or this? < ?? ? !? ?! ! !! > | 13:39 | |
jnthn | timotimo: A way of writing an alternation of literals | 13:40 | |
['+'|'++'|'#'] | |||
But readabler | |||
timotimo | oh | ||
right, it's a list-of-strings, didn't realize that works like that | 13:41 | ||
jnthn | Key is the space after the < :) | ||
timotimo | aye | ||
grondilu | notice that there is the same notation used for pieces, files and ranks | 13:43 | |
< K Q R B N > and so on | |||
timotimo | right | 13:44 | |
i ought to remember that | 13:45 | ||
13:47
jsn_ left
|
|||
smls | How do I make a grammer automatically die with helpful error message when it can't parse the inout string? | 13:50 | |
grondilu | probably with Grammar::Debugger | 13:51 | |
timotimo | that's an interesting thought; if it fails to match, mix in the debugger hooks and try matching again? | ||
grondilu | (though personally I've never managed to make it work) | ||
jnthn | smls: If you want a helpful error you actually need to produce it. | ||
Just like the Perl 6 grammar does. | |||
smls | y can't it produce it for me? :) | ||
jnthn | How the heck does it know how to? | 13:52 | |
smls | tell how far it managed to match tokens, what followed, and what it expoected to follow | ||
jnthn | The best you can do in a generic way is just say "something when wrong at this point" | ||
colomon_ | which is still quite useful... | ||
timotimo | it would be interesting if the highwater stuff could be autogenerated for user grammars | ||
jnthn | True. That's doable with a [ $ || { die "Failed to parse at " ~ $/.CURSOR.pos } ] or some variant. | 13:53 | |
That pattern works in general, though | |||
13:54
moistcherry is now known as hoverboard
|
|||
jnthn | token foo { thing(s) that we should always match one of || error handling } | 13:54 | |
13:55
chenryn joined
|
|||
timotimo | can we have something that generates an eject symbol stringie thingie? | 13:55 | |
jnthn | timotimo: We actually do track that stuff anyway... | ||
For all grammars. But it's not spec'd in any way. | |||
zengargoyle | my attempt at Text::Fortune works well enough and has enough tests to start trying to pretty it up for ecosystem maybe. | ||
smls | P5 Parse::RecDescent does it: metacpan.org/pod/Parse::RecDescent...r-handling | ||
jnthn | Hm, that looks like it is doing the same highexpect thing... | 13:56 | |
Well, I guess we can try to spec a way to expose that | 13:57 | ||
But still, notice that the || <error> went explicitly into the grammar. | |||
TimToady | the fuzzy bits are what you do after that to "recover" | ||
"find next semicolon and assume it's a new statement" | 13:58 | ||
jnthn | Well, that's the sorry/panic distinction in the Perl 6 grammar, I guess... | ||
13:58
teodozjan left
|
|||
TimToady | yes, we don't try to find the next statement when there's a parse error | 13:58 | |
jnthn | Aye. Probably sane. | ||
TimToady | that usually just produces cascading, confusing errors | ||
jnthn | MSVC is incredibly bad at knowing when to give up. | ||
TimToady | and if the parser is fast enough, you just fix the one and re-run | 13:59 | |
13:59
gfldex left
|
|||
TimToady | and if you find another such, assume there's a trend and fix all of 'em | 13:59 | |
trying to find more errors is a vestige of the days of punch cards and line printers | 14:00 | ||
of course, if we just have a semantic error, we just worry and keep going | 14:01 | ||
jnthn | Anyway, we could expose the highexpect, but half the time I find its suggestions to be better at bulking up the error report than helping me know what's wrong...normally it's the message and the position indicator that help most. | 14:03 | |
TimToady | well, worry or sorry | ||
well, I think people learn to ignore the bits of it that don't apply | 14:04 | ||
jnthn | But given it's tied into the LTMer, I kinda had to put that stuff in Cursor, and so we do actually track highwater and highexpect for everything we parse... | ||
...so if we can pick an API it's no problem to expose that. | |||
Apart from it commits us to continue collecting the info :) | |||
smls | or make it a flag: Gramma.parse($input, :show_errors) | 14:05 | |
14:05
user3 joined
|
|||
timotimo | hmmm | 14:05 | |
smls | or :fatal-errors | 14:06 | |
Also, what's the easiest way to get the line number at the cursor position? | 14:07 | ||
14:08
brrt joined,
user3 left
14:09
hoverboard is now known as jizzyceil
|
|||
timotimo | it's a hard problem | 14:11 | |
in nqp and rakudo we read the whole file in and note the positions of newlines in a list | |||
14:12
chenryn left
|
|||
moritz | $/.prematch.comb("\n").elems + 1 | 14:12 | |
14:12
erkan left
|
|||
timotimo | oh, that's not bad | 14:12 | |
moritz | it's not fast either :-) | ||
if you only need it for error messages, I guess that's fine | 14:13 | ||
timotimo | if you only do it once, it shouldn't be much slower than what we do | ||
moritz | in rakudo, we put line annotation in every statement or expression, which means we need that number *very* often, and caching it is crucial | ||
14:13
jizzyceil is now known as hoverboard
|
|||
timotimo | aye | 14:14 | |
FROGGS | m: use HLL::Compiler:from<NQP>; say HLL::Compiler.lineof("abc\ndef", 5); | ||
camelia | rakudo-moar cce7f9: OUTPUT«===SORRY!===While looking for 'HLL/Compiler.moarvm': no such file or directory» | ||
FROGGS | m: use NQPHLL:from<NQP>; say HLL::Compiler.lineof("abc\ndef", 5); | ||
camelia | rakudo-moar cce7f9: OUTPUT«2» | ||
FROGGS | \o/ | ||
timotimo | ooooh, :from<NQP> | ||
i forgot that already works | |||
FROGGS | smls: it is not really Perl 6, but it works on rakudo :o) | 14:15 | |
timotimo | seems like even though we said "multiple implementations yay" at one point, that's kinda not the way it is any more | 14:16 | |
FROGGS | timotimo: which is good I think | ||
smls | I think I'll go with moritz++ suggestion :) | ||
FROGGS | I mean, it is not like there is a race between several groups of like 30 devs each | 14:17 | |
moritz | FROGGS: when niecza came up, we were very happy about modules that didn't use rakudo-isms | 14:19 | |
I'd like to keep it that way, to not raise the burden for new implementations (or a niecza or pugs revival) even higher | |||
FROGGS | moritz: yes, there are several benefits of having more than one impl | ||
I just don't see it as a priority anymore | |||
smls | moritz: So what should become of modules like NativeCall which need NQP? | 14:20 | |
jnthn | I'd like to keep it that way for another reason: I don't want to get Rakudo to a point where I can't refactor nqp::foo or NQP related things without breaking userland code. | ||
FROGGS | smls: the other implementations should expose an NativeCall-like interface | ||
jnthn | smls: NativeCall arguably should be "in core"... | ||
smls | I guess | ||
zengargoyle | that was my beef with old Rosetta Code examples, comments along the lines of "this is for parrot/niecza" | 14:21 | |
14:21
SamuraiJack_ joined
|
|||
FROGGS | zengargoyle: but that is not because it uses compiler internal stuff, this is because the needed things are only implemented on a few compilers | 14:21 | |
that'S a difference | |||
smls: so scratch my proposal and do not use the nqp module :o) | 14:22 | ||
14:23
chenryn joined
|
|||
FROGGS | you might even have precomp problems when using it | 14:23 | |
14:24
sqirrel left
|
|||
FROGGS | even in Perl 5 there are ppl who prefer pure Perl 5 modules over XS-based, and they only have one compiler | 14:25 | |
so sticking to pure&proper Perl 6 is the way to keep things working | 14:26 | ||
smls | yeah +$/.prematch.comb(/$$/) works fine | 14:27 | |
zengargoyle | is using /$$/ a better idea in general than "\n"? | 14:28 | |
smls | it means the number will start from 1 not 0 :) | 14:29 | |
Is there still a shorthand for die'ing without a backtrace, like « die "Message\n" » in P5? | 14:30 | ||
Or is it « say "Message"; exit 1 » now? | |||
zengargoyle | i've been wondering how IO .get is handled, is everything massaged into "\n" on various platforms? | 14:32 | |
moritz | smls: there isn't a shortcut (yet) | ||
jnthn | Also, probably wants to be note "Message" to get it on stderr | 14:35 | |
smls | right | 14:36 | |
14:42
kaare_ joined
14:47
ggoebel111116 left,
zlad joined
14:53
ggoebel111116 joined
|
|||
ChoHag | Are there any modules with a half-decent or better set of tests I could plagiarise? | 14:53 | |
Now that I have something which works, I ought to try and keep it that way. | 14:54 | ||
moritz | lots of modules have tests :-) | ||
for example JSON::Tiny | |||
ChoHag | Ah but how many have tests which would serve well as an example? | ||
moritz | how many? no idea | 14:55 | |
look at github.com/moritz/json/tree/master/t though | |||
they aren't perfect, but they provide decent coverage | |||
14:56
ggoebel111116 left
14:57
sqirrel joined
|
|||
zengargoyle | Test could use some documentation love. | 14:58 | |
14:59
smls left
|
|||
moritz | zengargoyle: you mean the Test module? | 15:00 | |
perlcabal.org/syn/S24.html exists, but yes, could use some love | 15:01 | ||
contributions readily accepted. Hey, *your* chance to become co-author of a Perl 6 design document! | |||
zengargoyle | yes. sorta whole doc system... << perl6 --doc Test >> nor << p6doc Test >> get anything... :) | 15:02 | |
15:02
ggoebel111116 joined
|
|||
zengargoyle was truly just thinking about some POD for Test.pm (which the .pm also doesn't get installed, only the Test.mbc does, had to look in repository/lib/Test.pm) | 15:04 | ||
15:04
dayangkun left
|
|||
zengargoyle is working on [email@hidden.address] | 15:04 | ||
15:05
smls joined
15:08
vasdroid joined
|
|||
zengargoyle | i really miss the ease of << perldoc Foo >> << perldoc -f foo >> which was pretty much how i learned Perl5. | 15:08 | |
15:08
denis_boyun left
|
|||
ChoHag | Hah! [Rendering of] S26, Documentation, is "known to be incomplete". | 15:10 | |
15:10
ggoebel111116 left
|
|||
ChoHag | zengargoyle: It wouldn't have worked so well for perl 1. | 15:10 | |
15:11
vaskozl left
|
|||
zengargoyle | true, and i think part of the p6doc problem is that the p6 POD spec and tools was/are in sorta draft/NYI state. | 15:11 | |
and it's hard to write doc if the tools to use it aren't there yet. | 15:12 | ||
zengargoyle remembers seeing some rogue *<> tags floating about in the doc.perl6.org pages | 15:16 | ||
15:16
ajr_ left,
guru joined
15:17
guru is now known as Guest97565,
ggoebel111116 joined,
Guest97565 is now known as ajr_
|
|||
zengargoyle | and noticing the lack of an easy to find link to faq.perl6.org | 15:17 | |
zengargoyle promises to get better at actually generating pull requests :) | |||
ChoHag | It's right there, two lines above this one. | ||
smls | maybe that should be moved to doc.perl6.org/language/faq | 15:18 | |
since it answers mostly language questions | |||
(with "moved", I mean coverted to a p6doc POD) | 15:19 | ||
15:20
[Sno] left
15:23
vendethiel joined
15:31
zakharyas left,
brrt left
15:36
FROGGS[mobile] joined
15:39
pdcawley_ left
15:40
pdcawley joined
15:44
FROGGS left
15:45
vendethiel left
15:48
mr-fooba_ joined,
mr-foobar left
15:49
vendethiel joined
15:53
vendethiel left,
vendethiel joined
15:59
bluescreen10 joined
16:03
paraxor joined
|
|||
masak considers .classify to be way underused | 16:04 | ||
16:05
chenryn left
|
|||
timotimo | m: say "masak".comb.classify({ (^3).pick }) | 16:06 | |
camelia | rakudo-moar cce7f9: OUTPUT«("0" => ["a", "s", "k"], "1" => ["a"], "2" => ["m"]).hash» | ||
timotimo | askam? | ||
that's almost asakm, which would just be masak rotated once | |||
m: say "masak".comb.classify({ (^3).pick(2) }) | 16:07 | ||
camelia | rakudo-moar cce7f9: OUTPUT«("0" => {"1" => ["m", "k"]}, "1" => {"0" => ["a"], "2" => ["a"]}, "2" => {"0" => ["s"]}).hash» | ||
masak | m: say "masak".comb.rotate.join | ||
camelia | rakudo-moar cce7f9: OUTPUT«asakm» | ||
timotimo | m: say "masak".comb.categorize({ (^3).pick(2) }) | ||
camelia | rakudo-moar cce7f9: OUTPUT«("0" => ["m", "s", "a"], "1" => ["m", "a", "k"], "2" => ["a", "s", "a", "k"]).hash» | ||
timotimo | Ms. Amak Asak | ||
masak | categorizing on random stuff hadn't occurred to me. | ||
but categorizing and binding can be highly useful. | |||
m: my (@odd, @even) = (1..10).classify(* % 2); say @odd; say @even | 16:08 | ||
camelia | rakudo-moar cce7f9: OUTPUT«"1" => [1, 3, 5, 7, 9] "0" => [2, 4, 6, 8, 10]» | ||
timotimo | m: my (@odd, @even) = (1..10).classify(* %% 2); say @odd; say @even | ||
camelia | rakudo-moar cce7f9: OUTPUT«"False" => [1, 3, 5, 7, 9] "True" => [2, 4, 6, 8, 10]» | ||
timotimo | m: my \(@odd, @even) = (1..10).classify(* %% 2); say @odd; say @even | ||
camelia | rakudo-moar cce7f9: OUTPUT«===SORRY!=== Error while compiling /tmp/rzXqinR_xhMalformed myat /tmp/rzXqinR_xh:1------> my ⏏\(@odd, @even) = (1..10).classify(* %% 2 expecting any of: scoped declarator» | ||
timotimo | m: my \(@odd, @even) := (1..10).classify(* %% 2); say @odd; say @even | ||
camelia | rakudo-moar cce7f9: OUTPUT«===SORRY!=== Error while compiling /tmp/oKLlj1fjynMalformed myat /tmp/oKLlj1fjyn:1------> my ⏏\(@odd, @even) := (1..10).classify(* %%  expecting any of: scoped declarator» | ||
timotimo | i've done this once before | 16:09 | |
masak | m: my (:@False, :@True) := (1..10).classify(* %% 2); say @Flase; say @True | ||
camelia | rakudo-moar cce7f9: OUTPUT«===SORRY!=== Error while compiling /tmp/VZOyurrSdlVariable '@Flase' is not declared. Did you mean '@False'?at /tmp/VZOyurrSdl:1------> := (1..10).classify(* %% 2); say @Flase⏏; say @True expecting any …» | ||
masak | er. | ||
m: my (:@False, :@True) := (1..10).classify(* %% 2); say @False; say @True | |||
timotimo | misses a \, no? | ||
camelia | rakudo-moar cce7f9: OUTPUT«1 3 5 7 92 4 6 8 10» | ||
masak | \o/ | ||
timotimo | ah, it doesn't | ||
neato | |||
i think with a pair notation we can also get the names of the arrays to stay "odd" and "even" | |||
masak | m: enum Parity <even odd>; sub parity($n) { $n %% 2 ?? even !! odd }; my (:@even, :@odd) := (1..10).classify(&parity); say @even; say @odd | 16:11 | |
camelia | rakudo-moar cce7f9: OUTPUT«2 4 6 8 101 3 5 7 9» | ||
masak | \o/ | ||
timotimo | or that way | ||
masak | :) | ||
ok, leaving for curry and beer not. | |||
now* | |||
timotimo | m: enum Parity <enum odd>; say Parity(1); | ||
camelia | rakudo-moar cce7f9: OUTPUT«odd» | ||
timotimo | that is even easier | ||
masak | see you later, #perl6 | ||
timotimo | than ?? !! for that | ||
masak | m: enum Parity <even odd>; sub parity($n) { Parity($n % 2) }; my (:@even, :@odd) := (1..10).classify(&parity); say @even; say @odd | 16:12 | |
camelia | rakudo-moar cce7f9: OUTPUT«2 4 6 8 101 3 5 7 9» | ||
masak | yes, a bit shorter. | ||
smls added a parsing solution to rosettacode.org/wiki/Dinesman%27s_m...lem#Perl_6 | 16:13 | ||
comments/criticisms? | |||
Other than "EVAL is evil". I could probably have used closured+currying instead, but it would have made the code much messier (and probably slower) | 16:14 | ||
*closures | |||
16:15
virtualsue left
16:18
kaiserpathos joined
16:20
dwarring left
|
|||
ren1us | i suspect that i know the answer already, but am i responsible for garbage collection, or will rakudo handle that for me | 16:21 | |
moritz | rakudo handles GC for you. | 16:22 | |
rurban | the rakudo backends do | ||
ren1us | awesome, then i need to dig through my code to see why it's currently up to 4.2gb memory | ||
this'll be fun lol | 16:23 | ||
timotimo | oh yikes | 16:24 | |
smls | Does Perl 6 have built-in fork (on Unix)? | ||
Or will it have? | |||
timotimo | you can fork with nativecall, but forking with a complicated VM is sometimes a very bad idea | 16:25 | |
ren1us | just to make sure i'm not missing something, because i want to make sure i'm not thinking in terms of the wrong language | ||
if i construct some big network of objects, that are all visible through one object, and that object falls out of scope, all the rest are automatically deallocated too, right? | 16:26 | ||
(assuming no other references to them remain) | |||
timotimo | they should be, yes | ||
are you on moarvm? | |||
ren1us | yeah | 16:27 | |
timotimo | how long do those objects live? | ||
ren1us | assuming that the memory leak is where i think it is, they should exist only in one sub, so not very long | ||
i don't suppose there are any profilers out there for p6 lol | 16:28 | ||
oh wait i think i know what it is | 16:29 | ||
damnit this is the problem with recursion lol | |||
moritz | there's no TCO in rakudo, afaict | 16:31 | |
timotimo | right | 16:32 | |
i was about to suggest that all the objects may be promoted to the second generation, which doesn't shrink easily when objects die | |||
16:37
vasdroid left
16:39
kaleem_ left
|
|||
ren1us | you know what | 16:41 | |
i've been working on this for about 29 hours straight, i think it's time to sleep | |||
'night | 16:42 | ||
16:42
ren1us left
|
|||
timotimo | oh my | 16:42 | |
yes, that is a wise decision | |||
moritz | good night, and dream of recursive TCU | 16:43 | |
*TCO | |||
vendethiel | (what's non-recursive TCO ?) | 16:45 | |
moritz | vendethiel: TCO! | 16:46 | |
16:46
ribasushi left
|
|||
vendethiel | eh ? | 16:46 | |
16:47
pecastro left
16:49
dakkar left
16:50
psch joined
|
|||
psch | hi #perl6 | 16:51 | |
colomon_ | o/ | ||
psch | colomon_: \o | ||
leaving out the explicit return in the golfed URI test-failure makes it run just fine, as i just found out | 16:52 | ||
(i did find that out by looking at what is actually looked for with Ops.getlex, which was '&return') | 16:53 | ||
16:54
erkan joined
|
|||
psch | the question probably remains the same though: why do symbols disappear (or something like that) | 16:54 | |
16:54
Rotwang joined
|
|||
colomon_ is not quite awake enough to think about that, but psch++ | 16:55 | ||
16:57
ribasushi joined
17:03
smls_ joined
17:04
smls left
17:05
kaiserpathos left,
vendethiel left,
ribasushi left
17:06
vendethiel joined
17:07
ribasushi joined
|
|||
timotimo | oi krunen, i got an hdmi adapter thingie that can be flexed to make a 90 degree angle that got left behind after the RaNIW and we think it was yours, did i already tell you about that? | 17:07 | |
colomon_ | tadzik: X::AdHoc.new(payload => "Could not find LibraryMake in any of: /home/smoker/.rakudobrew/moar-HEAD/install/languages/perl6/lib, /home/smoker/.rakudobrew/moar-HEAD/install/languages/perl6/site/lib, /home/smoker/.rakudobrew/moar-HEAD/install/languages/perl6 /home/smoker/.rakudobrew/moar-HEAD/install/languages/perl6/site, .") returned from panda. but that should be a special panda error, right? | 17:08 | |
17:17
guru joined,
ajr_ left,
guru is now known as Guest21015,
Guest21015 is now known as ajr_
17:20
sqirrel left
17:30
sqirrel joined
17:32
Isp-sec joined
17:34
ajr_ left
17:40
FROGGS joined
|
|||
psch | hrm, jdb is definitely lacking | 17:43 | |
zengargoyle | hrm... is the S24-testing.pod the spec or is the rakudo/lib/Test.pm the actual spec? | 17:51 | |
17:51
pippo joined
|
|||
zengargoyle | i.e. things like <<plan *>> <<throws_ok()>> <<%*ENV<PERL6_TEST_TIMES>> etc. | 17:52 | |
17:54
SamuraiJack_ left
|
|||
tadzik | colomon_: usually, yeah | 17:54 | |
what's LibraryMake? | |||
timotimo | it's a neat tool/library that makes it easier to ship .c code with your perl6 modules | 17:55 | |
17:56
frettled left
|
|||
tadzik | nice | 17:58 | |
gtodd | what is the facility in perl6 that obviates or replaces a lot of XS called NativeSomething argh | 17:59 | |
geekosaur | zavolaj? | ||
and NativeCall | |||
gtodd | NativeCall jeez | ||
thanks | |||
the existence of zavolaj destroyed my recall :) | 18:00 | ||
18:01
guru joined,
guru is now known as Guest39701,
Guest39701 is now known as ajr_
|
|||
gtodd | I was watching the YAPC session on how easy it is to use FFI instead of XS how it might get even easier over time ... wanted to do a quick comparison | 18:02 | |
18:05
sqirrel left
|
|||
FROGGS | gtodd: let me know about absurdities you hit, I am working on NativeCall right now | 18:06 | |
gtodd | heh 1. it seems way too easy :) ... it must be a trick | 18:07 | |
FROGGS | :o) | ||
gtodd: easy things really are easy (and do work) | 18:08 | ||
I am failing though to return a list of structs right now for example | |||
18:09
[Sno] joined
|
|||
gtodd | I guess some C apps surround themselves with protection against this kind of this .... eg I won't bother trying to use perl6 to script chrome :) | 18:09 | |
18:10
denis_boyun joined
|
|||
gtodd | ahah! PerlGameDev/SDL6 | 18:14 | |
FROGGS | ewww, don't look at that code! | 18:15 | |
its ugly, we have now better ways to write it | |||
18:16
rurban1 joined
|
|||
gtodd | hehe still though | 18:18 | |
it looks like I do strings /usr/local/lib/libSDL2-2.0.so.0 | grep ^SDL_ > MySDL.pm6 .... then go back and fill in a few things ... waah?? | |||
"fill in a few things " :-) | |||
FROGGS | hehe | ||
lol | |||
*g* | 18:19 | ||
zengargoyle | does the general contributing workflow go like: fork github repo; create topic branch; hack...; rebase as needed; submit github pull-request | ||
FROGGS | I have to clean my SDL6 up when the nativecast lands... then it will actually work again | ||
zengargoyle: yes | |||
zengargoyle | thinking about stealing p5 Test::* docs into p6 rakudo/lib/Test.pm as appropriate. | 18:20 | |
gtodd | FROGGS I assume strings /usr/local/lib/libperl.so > p5.pm6 has been tried :) | 18:22 | |
FROGGS | you could call that blitzkost I think | 18:23 | |
gtodd | (strings /usr/local/lib/perl5/5.20/mach/CORE/libperl.so ) | ||
FROGGS of course some fruit always hangs lower than others | 18:24 | ||
colomon_ | complete smoke test on moar! \o/ | 18:25 | |
gtodd | ! | ||
FROGGS | \o/ | ||
retupmoca | colomon_++ | ||
18:28
zlad left
|
|||
gtodd | is that in a branch or ... | 18:28 | |
18:31
Celelibi left
18:32
mr-fooba_ is now known as mr-foobar
18:33
Celelibi joined
|
|||
colomon_ | results now visible at host07.perl6.com:8080/report # moritz++ | 18:36 | |
sergot | FROGGS++ | 18:38 | |
# for helping me with moar and nativecall stuff | |||
timotimo | sergot++ for handling a quite important GSoC project | 18:39 | |
moritz | colomon_++ | 18:40 | |
colomon_: how much of that is automated now? | |||
timotimo | host07.perl6.com:8080/report/ - could this be made a redirect instead of a 404? | 18:41 | |
gtodd | camelia: are you there? | ||
moritz | m: say 'yes' | ||
camelia | rakudo-moar cce7f9: OUTPUT«yes» | ||
psch | moritz++ # faster than me | ||
moritz | timotimo: github.com/colomon/SmokeResults has the code | 18:42 | |
timotimo: (and if you don't want to patch it, you could open an issue) | |||
psch | colomon_++ moritz++ # smoke results online | ||
moritz | it seems that the detail pages are all 500er | ||
colomon_ | moritz: we've also got an issue where cle… right | ||
moritz | like host07.perl6.com:8080/project/Inline | ||
colomon_ | I think that means it's not getting through to Dancer? | 18:43 | |
moritz | it gets to dancer | ||
timotimo | er | ||
it says "powered by dancer" | |||
so ... | |||
moritz | the error page even says "pow... "what timotimo said | ||
colomon_ | true | 18:44 | |
hmmm | |||
moritz | _censor given incorrect input: at /usr/local/share/perl/5.14.2/Dancer/Handler.pm line 107 | ||
Can't exec "panda": No such file or directory at (eval 83) line 109. | |||
colomon_ | moritz++ | ||
moritz | I think those two are unrelated | ||
colomon_ | can't exec panda is the problem | ||
moritz | colomon_: fwiw as user 'emmentaler', you can say 'tmux attach' to get the console with the errors | ||
colomon_ | it uses panda to get the information on the module | ||
moritz | colomon_: and ctrl+b d to get out of tmux again :-) | 18:45 | |
colomon_ | btw, I set up a public key there so I can log into emmentaler from the smoker account on my Linux box | ||
so for the time being we can just scp the results from running it there | |||
colomon_ is going to go ahead and try to build rakudo moar there now | 18:46 | ||
gtodd | does one need to use a Bag to simulate 5 rolls of 2 die(dice)? or is a list good enough ? | 18:52 | |
wait can I roll on two lists at once? | |||
hrrmm .... say roll 5, < 1 2 3 4 5 6> | |||
psch | m: (1..6 X 1..6).pick.say | 18:54 | |
camelia | rakudo-moar cce7f9: OUTPUT«1 1» | ||
moritz | m: say (1..6).roll(2) | ||
camelia | rakudo-moar cce7f9: OUTPUT«1 6» | ||
moritz | m: say (1..6).roll(5) | 18:55 | |
camelia | rakudo-moar cce7f9: OUTPUT«4 1 5 6 5» | ||
colomon_ | a list is fine | 18:56 | |
gtodd | ok when I play monopoly I get told to roll both die at once not one after the other ;-) | ||
psch | right, roll isn't pick | ||
18:57
dwarring joined
18:58
colomon_windows joined
|
|||
colomon_windows | have managed to make my MBP run very slow at the moment, switching over to windows box so I can contribute to the conversation. | 18:58 | |
roll is named roll precisely because it is like rolling dice | 18:59 | ||
timotimo | and pick is named pick precisely because it is like picking pickles out of a jar | ||
moritz | how pickturesque :-) | 19:00 | |
gtodd | :P | 19:03 | |
19:03
itz_ joined
|
|||
timotimo | puns that are easy to pick up; it's how we roll. | 19:04 | |
pick up on* | |||
19:06
darutoko left
|
|||
colomon_windows | moritz: okay, I've built panda and added rakudobrew to the path. | 19:06 | |
which works great for using panda from the command line | |||
but doesn't seem to be helping the SmokeResults | |||
gtodd | ok I think I cut and pasted and changed this (i.e. it's my fault) from the interweb long ago: perl6 -e 'for (1..10) { my $b = { 1 => 2, 2 => 2, 3 => 2, 4 => 2, 5 => 2, 6 => 2 }.BagHash; $b.roll(2).say}' | ||
but since it has no real mathematical or set theory or advanced perl6 IRC channel justification ... :) | 19:07 | ||
say (1..6).roll(2) it is | |||
moritz | colomon_windows: the plack server doesn't yet see the updated path | 19:08 | |
19:09
FROGGS[mobile] left
|
|||
colomon_windows | moritz: is there an easy way to update that? | 19:12 | |
moritz | colomon_windows: what should the new path look like | ||
gtodd | hmmm for (1..10) { say (1..6).roll(2) }# \o/ ..... for (1..10){ say (1..6).roll(2) } # :-( cack! lack of whitespace killed the perl | 19:13 | |
I must remember that :) | |||
colomon_windows | moritz: it needs to have /home/emmentaler/.rakudobrew/bin in it | ||
I've put that first (as tadzik++ instructs) but I don't know how important that is | 19:14 | ||
19:14
gfldex joined
19:16
Celelibi left
|
|||
moritz | server restarted, with different $PATH | 19:17 | |
cognominal | A segmentation fault with rakudo on MoarVM and some questions. gist.github.com/cognominal/f1cc48cab3ca8bed4257 | ||
colomon_windows | moritz: and now it works! moritz++ | 19:18 | |
cognominal | this is unfinished code, but it already exhibits interesting problems as it is. | 19:19 | |
19:19
rurban1 left,
Celelibi joined
|
|||
gtodd | wow it seemed like say (1..6).roll(2) didn't replace ... it took me 100 rolls to get a double ... in monopoly I roll doubles 3 in row all the time (you go to jail if you do that) | 19:21 | |
psch | cognominal: i think you need a default block in your CATCH | 19:22 | |
cognominal | ...on a macbook with OSX 10.9.3 if this matters | ||
moritz | m: my $d = 0; for ^1000 { my ($a, $b) = (1..6).roll: 2; ++$d if $a == $b }; say $d | 19:23 | |
camelia | rakudo-moar cce7f9: OUTPUT«161» | ||
moritz | m: say 1000 / 6; | ||
camelia | rakudo-moar cce7f9: OUTPUT«166.666667» | ||
moritz | gtodd: looks pretty much expected | ||
gtodd | yeah ... it's one of those human brain expectation things | ||
moritz: or the fact that I spend so much time in jail in monopoly | 19:24 | ||
cognominal | psch, good ... CATCH. I need a default { } to avoid the exception to be rethrown | 19:25 | |
19:30
brrt joined
|
|||
dwarring | lizmat++, but I've still got some hash confusion... | 19:33 | |
r: my $x = {a => 1, b => 2}; my %h = %$x; say @$x | |||
camelia | rakudo-jvm cce7f9: OUTPUT«"b" => 2 "a" => 1Saw 1 call to deprecated code during execution.================================================================================%h = { ... } called at: /tmp/tmpfile, line 1Please use %h = ... instead.----------------------…» | 19:34 | |
..rakudo-{parrot,moar} cce7f9: OUTPUT«"a" => 1 "b" => 2Saw 1 call to deprecated code during execution.================================================================================%h = { ... } called at: /tmp/tmpfile, line 1Please use %h = ... instead.------------…» | |||
dwarring | r: my $x = {a => 1, b => 2}; my %h = @$x; say @$x | ||
camelia | rakudo-jvm cce7f9: OUTPUT«"b" => 2 "a" => 1» | ||
..rakudo-{parrot,moar} cce7f9: OUTPUT«"a" => 1 "b" => 2» | |||
dwarring | I guess I expect %$x to flatten (which it isn't) | 19:35 | |
TimToady | looks like a bug to me | 19:36 | |
19:37
rurban1 joined
|
|||
colomon_windows | m: say ((1..6).roll(2) xx 100).grep(* == *) | 19:38 | |
camelia | rakudo-moar cce7f9: OUTPUT«Not enough positional parameters passed; got 1 but expected 2 in block at /tmp/efvMlGZ2aK:1» | ||
dwarring | ok I'll put in an RT and some tests | ||
TimToady | m: say ((1..6).roll(2) xx 100).lol.grep(* == *) | 19:39 | |
camelia | rakudo-moar cce7f9: OUTPUT«Not enough positional parameters passed; got 1 but expected 2 in block at /tmp/xqIoWg4JFP:1» | ||
TimToady | m: say ((1..6).roll(2) xx 100).tree.grep(* == *) | ||
camelia | rakudo-moar cce7f9: OUTPUT«Not enough positional parameters passed; got 1 but expected 2 in block at /tmp/netxWdU6Pm:1» | ||
TimToady | m: say ((1..6).roll(2) xx 100).list.grep(* == *) | ||
camelia | rakudo-moar cce7f9: OUTPUT«Not enough positional parameters passed; got 1 but expected 2 in block at /tmp/cNzXi8pKX8:1» | 19:40 | |
colomon_windows | TimToady: I'm thinking grep is hardwired to only pass one element at a time | ||
TimToady | hmm, likely | ||
colomon_windows | m: say ((1..6).roll(2) xx 100).grep(* == 3) | ||
camelia | rakudo-moar cce7f9: OUTPUT«3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3» | ||
colomon_windows | yeah | ||
TimToady | m: say ((1..6).roll(2) xx 100).map: { $^a == $^b ?? $a !! () } ) | 19:41 | |
camelia | rakudo-moar cce7f9: OUTPUT«===SORRY!=== Error while compiling /tmp/S8kOxOU396Unexpected closing bracketat /tmp/S8kOxOU396:1------> xx 100).map: { $^a == $^b ?? $a !! () } ⏏)» | ||
TimToady | m: say ((1..6).roll(2) xx 100).map: { $^a == $^b ?? $a !! () } | ||
camelia | rakudo-moar cce7f9: OUTPUT«1 5 5 4 1 5 5 1 6 2 3 2 1 3 4 5 1 2 1» | ||
colomon_windows | TimToady++ | 19:42 | |
m: say +((1..6).roll(2) xx 100).map: { $^a == $^b ?? $a !! () } | |||
camelia | rakudo-moar cce7f9: OUTPUT«100» | ||
colomon_windows | "\ | ||
:\ | |||
TimToady | m: say ((1..6).roll(2) xx 100).map: { $^a == $^b ?? $a !! () }.list.elems | ||
camelia | rakudo-moar cce7f9: OUTPUT«No such method 'count' for invocant of type 'Int' in method reify at src/gen/m-CORE.setting:7677 in method reify at src/gen/m-CORE.setting:7589 in method reify at src/gen/m-CORE.setting:7589 in method reify at src/gen/m-CORE.setting:7589…» | ||
TimToady | m: say ((1..6).roll(2) xx 100).map({ $^a == $^b ?? $a !! () }).list.elems | 19:43 | |
camelia | rakudo-moar cce7f9: OUTPUT«100» | ||
colomon_windows | not filtering out () ? | ||
TimToady | m: say ((1..6).roll(2) xx 100).map({ $^a == $^b ?? $a !! () }).perl | ||
camelia | rakudo-moar cce7f9: OUTPUT«((), 4, (), (), (), (), (), (), 1, (), (), (), 3, (), 4, (), (), (), (), (), (), (), (), (), (), (), (), 2, (), 4, (), (), 3, (), 1, (), (), (), (), (), 5, 1, (), (), (), (), 2, (), (), (), (), (), (), (), (), 4, 4, (), 5, 1, (), (), 4, (), (), (), (), (),…» | ||
TimToady | m: say ((1..6).roll(2) xx 100).map({ $^a == $^b ?? $a !! () }).list.perl | ||
camelia | rakudo-moar cce7f9: OUTPUT«((), (), (), (), (), (), (), 5, (), (), (), 5, (), (), (), 1, (), (), (), 1, (), (), (), (), (), 6, 5, (), (), (), (), (), (), (), 2, 2, 2, (), (), (), (), (), (), 1, (), (), (), 1, (), (), (), (), (), 4, (), 1, (), (), (), (), (), (), (), (), (), (), (), …» | ||
dwarring lizmat++ for uncovering %$x bug | 19:44 | ||
TimToady | m: say (list ((1..6).roll(2) xx 100).map({ $^a == $^b ?? $a !! () })).perl | 19:45 | |
camelia | rakudo-moar cce7f9: OUTPUT«((), (), 6, (), (), 3, (), (), (), 6, 2, (), (), 2, (), 5, (), 1, (), (), (), (), (), (), 4, (), (), (), (), (), (), 5, (), (), (), (), (), (), 5, (), (), (), (), (), (), (), 1, (), (), 1, 4, (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), …» | ||
TimToady | that's just wrong | ||
colomon_windows | m: say ((1..6).roll(2) xx 100).map({ $^a == $^b ?? $a !! () }).grep( *.defined ).perl | ||
camelia | rakudo-moar cce7f9: OUTPUT«(4, 4, 6, 6, 5, 1, 2, 3, 3, 6, 2, 4, 2, 1, 2, 5).list» | ||
timotimo | m: .say for ((1..6).roll(2) xx 100).map({ $^a == $^b ?? $a !! () }) | ||
colomon_windows | m: say ((1..6).roll(2) xx 100).map({ $^a == $^b ?? $a !! () }).grep( *.defined ).elems | ||
camelia | rakudo-moar cce7f9: OUTPUT«2421525141315352643» | ||
rakudo-moar cce7f9: OUTPUT«19» | |||
colomon_windows | 19 doubles out of 100 rolls is pretty normal | ||
should be ~16 ideally... | |||
m: say ((1..6).roll(2) xx 1000).map({ $^a == $^b ?? $a !! () }).grep( *.defined ).elems | 19:46 | ||
moritz | m: say (flat ((1..6).roll(2) xx 100).map({ $^a == $^b ?? $a !! () })).perl | ||
camelia | rakudo-moar cce7f9: OUTPUT«163» | ||
rakudo-moar cce7f9: OUTPUT«(3, 1, 6, 4, 5, 1, 4, 5, 3, 6, 6, 5, 4, 2, 3, 2, 6, 5, 2, 3).list» | |||
TimToady | m: my @a; @a.push: ((1..6).roll(2) xx 100).map({ $^a == $^b ?? $a !! () }); say @a.elems | ||
moritz | colomon_windows: I think TimToady++ meant list() not flattening out the () | ||
camelia | rakudo-moar cce7f9: OUTPUT«13» | ||
colomon_windows | moritz: right, I knew that, I was just finishing my original thought. | ||
moritz | but list() isn't flat() | ||
TimToady | well, maybe list doesn't commit between slurpy and lol | ||
19:47
carlin joined
|
|||
TimToady | okay | 19:47 | |
TimToady hopes to wake up from his nap soon | 19:48 | ||
say <a b c>.WHAT | 19:49 | ||
timotimo | damn, am i existing only in someone's dream *again*? | 19:50 | |
TimToady | m: say <a b c>.WHAT | ||
camelia | rakudo-moar cce7f9: OUTPUT«(Parcel)» | ||
19:50
molaf joined
|
|||
TimToady | m: say <a b c>.list.WHAT | 19:50 | |
camelia | rakudo-moar cce7f9: OUTPUT«(List)» | ||
TimToady | m: say <a b c>.flat.WHAT | ||
camelia | rakudo-moar cce7f9: OUTPUT«(List)» | ||
gtodd | TimToady: camelia is going to come alive and challenge us all to craps | 19:53 | |
and we are going to lose ... | |||
19:54
avar left
19:55
avar joined,
kaiserpathos joined
|
|||
colomon_ 's only useful craps-playing ability is to be able to (badly) sing the craps songs from Guys and Dolls and Porgy and Bess. | 19:58 | ||
20:01
raiph joined,
vendethiel left
|
|||
pippo | m: my $cmd = 'ls'; qx/$cmd/; | 20:08 | |
camelia | rakudo-moar cce7f9: OUTPUT«qx, qqx is disallowed in restricted setting in sub restricted at src/RESTRICTED.setting:1 in sub QX at src/RESTRICTED.setting:9 in block at /tmp/dANCryb6Hd:1» | ||
pippo | Hello perl6. How can I get a variable interpolated into qx/.../ ? | 20:09 | |
TimToady | use qqx instead | 20:10 | |
timotimo | aye, or use q:x:c and wrap the variable in { } | ||
pippo | TimToady: timotimo: thank you! | ||
20:15
SevenWolf joined
20:17
Rotwang left
20:19
lizmat joined,
water joined
20:20
denis_boyun left,
denis_boyun__ joined,
woolfy joined
20:21
eternaleye left,
Alina-malina left
20:22
Alina-malina joined
20:23
frickenate joined,
rurban1 left
20:24
hoverboard left,
rurban1 joined
20:25
frickenate left,
water is now known as hoverboard
20:26
eternaleye joined
20:28
kurahaupo left
20:29
kaare_ left
20:37
brrt left
20:47
dalek left
20:48
dalek joined,
ChanServ sets mode: +v dalek
|
|||
dalek | ast: fcf699a | (David Warring [email@hidden.address] | S02-types/flattening.t: test @ % flattening of arrayrefs and hashrefs |
20:53 | |
timotimo | what, arrayrefs? hashrefs? | ||
dwarring | yup!! | 20:58 | |
exposed by lizmat's fix | |||
was there before, but counteracted by the other bug | 20:59 | ||
timotimo | aren't we past that? | ||
21:00
denis_boyun__ left
|
|||
dwarring | is my terminology wrong? | 21:00 | |
timotimo | possibly; please explain to me what it means in this case? | ||
jnthn | We don't really have a concise alternative terminology | 21:01 | |
I could say "itemized hash" or "itemized array" perhaps | |||
dwarring | $x = [1,2,3]; # hashref | ||
jnthn | I hope you meant arrayref :P | ||
timotimo | what, there's no hash in there | ||
dwarring | ah yes | ||
jnthn | .oO( or itemized array :P ) |
||
I don't mind folks calling it arrayref/hashref, tbh. Mostly 'cus I don't have a better suggestion :) | 21:02 | ||
dwarring | $hashref = {a => b}; $arrayref = [1,2] | ||
timotimo | arrayref and hashref calls some really bad thoughts into my head :P | ||
geekosaur | sounds p5-y | 21:05 | |
FROGGS | it is | ||
dwarring | is it better to say 'itemized' array/hash? | ||
FROGGS | this would be more correct | ||
timotimo | i'd prefer that, but i've never p5'd | 21:06 | |
FROGGS | but ~ref isnt that bad | ||
timotimo | how is %hash = { a => "b" }; not also a hash ref? :P | ||
everything ref's in perl6 | |||
.o( refs? ) | |||
masak | 'night, #perl6 | 21:08 | |
21:08
molaf left
|
|||
FROGGS | nice, I can precompile Archive::Tar noe | 21:08 | |
now* | |||
jnthn | yays | 21:09 | |
timotimo | oh, that's good. but what changed? | ||
FROGGS | my code :P | ||
timotimo | ah, hehehe | ||
FROGGS | see github.com/FROGGS/p6-Archive-Tar/c...655e681524 | ||
timotimo | oh, that's an interesting pattern | 21:10 | |
FROGGS | fault5 here shows the use-use-require bug: github.com/FROGGS/frame_inc | ||
I hope I do not get slapped by TimToady for that 'BEGIN try require' :P | 21:11 | ||
21:13
hugme left
21:14
hugme joined,
ChanServ sets mode: +v hugme
21:17
jack_rabbit joined
|
|||
jnthn wishes "use-use-require" didn't immediately play in his head as an awful cover of "ice-ice-baby" | 21:17 | ||
FROGGS | *g* | ||
ahhh, tssss | |||
21:18
bluescreen100 joined
|
|||
timotimo | in my head, it doesn't sound similar enough | 21:18 | |
21:21
bluescreen10 left
|
|||
dalek | ast: f08c5ba | (David Warring [email@hidden.address] | S02-types/flattening.t: terminology arrayref => itemized array etc |
21:22 | |
timotimo | thank you :) | 21:23 | |
dwarring | np :) | ||
pippo | good night perl6! | 21:26 | |
21:26
pippo left
21:37
thou joined
|
|||
colomon_ | okay, for now module smoke tests run in rakudo-m on my linux box and the results are automatically uploaded to host07.perl6.com:8080/report | 21:44 | |
carlin | oh :( Crypt::Bcrypt is failing | 21:46 | |
hmm, failing prereqs but NativeCall and LibraryMake are passing... | 21:47 | ||
colomon_: what backend is used? | |||
colomon_ | carlin: moat | 21:48 | |
moar | |||
carlin | hmm, that should be working | ||
colomon_ | In this case I think failing prereqs may mean panda was fatalling confused | ||
carlin | ah | ||
21:49
smls_ left
|
|||
jnthn | X::IO::Dir.new(path => "/home/smoker/emmentaler/.panda-work/1404422275_363", os-error => "Failed to open dir: 2") | 21:49 | |
colomon_ | or rather, to be more precise, non-Panda error | ||
carlin | a case of pandamonium | ||
jnthn | yeah, that looks...curious... | ||
colomon_ | so the smoker doesn't know what stage it failed in. | ||
21:51
ccverg left
|
|||
colomon_ | hmm, it does build successfully for me with a different account on the same box | 21:53 | |
21:53
jack_rabbit left
|
|||
colomon_ luckily has gotten much better at running emmentaler on a small subset of the full list of projects | 21:53 | ||
21:53
jack_rabbit joined
|
|||
timotimo | these OS Errors could really get a little more specific as to what those numbers mean ... | 21:53 | |
21:53
denis_boyun_ joined
|
|||
timotimo | "perl6 is all about good error messages. except all errors that come from the OS. you need man pages from random syscalls for those. which syscall? i don't know, better check all of them to be sure!" | 21:53 | |
jnthn | timotimo: Yeah...should be a way to make it into a string. | 21:55 | |
21:57
rindolf left
21:59
Isp-sec left
22:02
orafu left,
orafu joined,
orafu left,
orafu joined
22:05
raiph left
|
|||
psch | gist.github.com/peschwa/e5aee72dcce9d4b60ec1 # some jdb-output, if anyone has an idea | 22:07 | |
afaiu, the outer chain seems to look ok | |||
is '&return' a sensible target for a static lookup? | |||
colomon_ | carlin: gist.github.com/colomon/3e1199d6086e981716c8 | 22:08 | |
jnthn | yes, it should find it in the setting | ||
which is an outer scope | 22:09 | ||
psch | i also noticed that the &return call in line 22 of the first file isn't the only thing that breaks, &die breaks in the same spot as well | ||
22:09
gfldex left
22:10
gfldex joined
|
|||
psch | jnthn: the setting is outer from GLOBALish? | 22:11 | |
i.e. i was wrong and the outer chain breaks (at least) one element before it should? | 22:12 | ||
22:14
itz_ left,
btyler joined
|
|||
psch | also, tc.curFrame.oLex has a null element where i think $*DISPATCHER should be, i don't know if that's significant | 22:15 | |
22:15
ajr_ left
|
|||
carlin | colomon_: it says it installed LibraryMake in /home/smoker/emmentaler/installlib/lib/ but in the error it doesn't seem to be looking for deps in that directory :s | 22:18 | |
colomon_ | yes | 22:19 | |
22:20
jack_rabbit left
|
|||
colomon_ | carlin: I wonder if the problem is in calling your Build.pm | 22:26 | |
Yeah, I'm betting that's it. | 22:32 | ||
22:33
rurban2 joined,
kaiserpathos left
|
|||
colomon_ | github.com/tadzik/panda/blob/maste...der.pm#L57 | 22:33 | |
carlin | Auth::Pam::Simple which uses LibraryMake seems to have the same problem | 22:34 | |
colomon_ | yes | ||
carlin | are installed deps not being made available during Build time | ||
colomon_ | I think they're not being made available during Build.pm time | ||
22:36
rurban1 left
|
|||
colomon_ | if you look at the code at that link above, it requires Build.pm right into the executing copy of Panda. But I think (though possibly I'm wrong) it doesn't do anything to make sure the current panda can see the emmentaler install directory | 22:37 | |
22:44
denis_boyun_ left
22:47
rurban2 left
|
|||
jnthn | psch: GLOBALish isn't a lexical scope | 22:49 | |
psch: Though UNIT is, and the UNIT scope contains GLOBALish. There should be one more scope beyond that. | |||
psch | jnthn: right, so i have confirmed your first hunch with some 6 hours of jdb debugging :) | 22:50 | |
let's see how long it takes me to find out what to do where to try and repair it! | 22:51 | ||
jnthn | Last time I saw an issue like this, it related to github.com/rakudo/rakudo/blob/nom/....nqp#L1686 | 22:54 | |
The comment there is actually oudated, though; the JVM is also using the same codepath as Moar there these days. | |||
22:55
jnap left
|
|||
jnthn | oh, and the other place was github.com/rakudo/rakudo/blob/nom/...r.nqp#L298 | 22:56 | |
psch | thanks, i'll look around from there tomorrow and see if i can do anything about this | 22:57 | |
for today it's good night o/ | |||
jnthn | OK; thanks for looking at it | 22:58 | |
'night | |||
22:58
psch left
23:02
HACKING-FACEBOOK joined,
HACKING-FACEBOOK left,
HACKING-FACEBOOK joined,
HACKING-FACEBOOK left
23:03
HACKING-FACEBOOK joined,
HACKING-FACEBOOK left
23:09
hoverboard left
|
|||
jnthn gets some rest also | 23:09 | ||
23:11
Timbus left
23:13
cotto left,
nickpatch left
23:14
cotto joined,
yeltzooo left,
atta left,
nickpatch joined
23:15
yeltzooo joined,
atta joined,
spider-mario left,
Timbus joined
23:18
dwarring left,
xragnar left
23:22
btyler left
23:23
xragnar joined
23:24
grondilu left
23:43
xragnar_ joined,
xragnar is now known as Guest60934,
Guest60934 left,
xragnar_ is now known as xragnar
|
|||
lizmat made it to London but spent too much time in pubs there to make any sense anymore right now | 23:54 |