»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
00:08
whiteknight joined
00:13
lambdabot2 left
00:15
orphu joined
00:16
lue left
00:18
takadonet1 left
00:19
takadonet1 joined
00:20
drbean joined
00:28
orphu left,
thou left
00:30
thowe joined
01:03
tokuhirom joined
01:23
rafl left
01:24
rafl joined
01:25
hillu left
01:26
hillu joined
01:32
whiteknight left
01:45
tokuhirom left
01:52
cogno_ joined
01:54
cogno left
02:04
beekor left
|
|||
[Coke] | parrot 3.7.0 out. | 02:26 | |
someone should bump the revs to get testing. | 02:27 | ||
02:31
woosley joined
|
|||
abercrombie | good news | 02:32 | |
[Coke] | hai? | 02:40 | |
takadonet1 | hey all | 02:46 | |
02:51
_jaldhar_ joined
|
|||
dalek | ast: f351e47 | Coke++ | S03-operators/overflow.t: nom fudge |
02:57 | |
[Coke] | there's another ~100 tests. thanks to whoever made that work | 02:58 | |
dalek | kudo/nom: 22d4296 | Coke++ | t/spectest.data: run this (fudged) spectest |
||
02:59
kid51 left
03:15
slavik2 joined
03:17
slavik left
03:19
cotto joined
|
|||
[Coke] wonders if you can perlbrew a perl with threads. | 03:21 | ||
03:23
Su-Shee_ joined
|
|||
sorear | heh. I wouldn't be suprised if you couldn't | 03:24 | |
03:27
Su-Shee left
03:33
nbrown left
03:35
nbrown joined
03:36
uniejo_in_riga joined
03:48
Eevee left
03:54
birdwindupbird joined
04:01
wheelnotkiss joined
04:04
wheelnotkiss left,
wheelnotkiss joined
04:06
daniel-s joined
04:09
odoacre joined,
wheelnotkiss left
04:13
satyavvd joined
04:23
thou joined
04:24
satyavvd left
|
|||
pmichaud | good morning, #perl6 | 04:27 | |
thowe | hi | ||
sorear | hi | 04:31 | |
moritz | good morning | 04:36 | |
thowe is building rakudo for the first time in about a year | 04:37 | ||
moritz | [Coke]: perlbrew install perl-5.14.0 -D usethreads § iirc | ||
thowe | hrm... "Parrot VM: PANIC: Out of mem!" ... guess I'm not. | 04:40 | |
sorear | is it legitimately out of mem or bugging? | 04:44 | |
sometimes it gets confused, tries to make a request for >1GB, and panics | |||
thowe | Failed allocation of 4096 bytes | ||
04:45
soh_cah_toa left
|
|||
thowe | closed some programs and trying again... | 04:46 | |
been on the same command a long time... | |||
bleh, died :( | 04:47 | ||
04:50
rdesfo left
|
|||
thowe | maybe I shouldn't be trying to compile latest git | 04:50 | |
was doing "How to get Rakudo nom" | 04:51 | ||
04:53
uniejo_in_riga left
|
|||
thowe | I'll try the 2011.07 | 04:54 | |
04:55
satyavvd joined
04:58
Sarten-X left
04:59
lue joined
05:02
abercrombie left
05:03
[Coke] left
05:05
Tene left,
Sarten-X joined
05:06
Tene joined,
Tene left,
Tene joined
05:08
_jaldhar_ left,
chadadavis joined
05:09
jaldhar joined
05:16
thowe left
|
|||
dalek | p: 6fe5a07 | moritz++ | tools/build/PARROT_REVISION: bump PARROT_REVISION to 3.7.0 |
05:17 | |
kudo/nom: c75ed52 | moritz++ | src/core/Str.pm: respect sign in "-:16<AB>".Numeric |
05:18 | ||
kudo/nom: f959eac | moritz++ | tools/build/NQP_REVISION: require an NQP that requires parrot 3.7 |
|||
05:21
wolfman2000 left
05:28
envi joined
05:35
uniejo_in_riga joined
05:36
masak joined
|
|||
masak | yay! the Little Animal Farm lightning talk has been accepted! \o/ | 05:37 | |
sorear | \o/ | ||
masak | delivery later today. | ||
sorear is never sure what to think when his fame stat incremements | |||
05:39
cotto left,
SHODAN joined
|
|||
masak | just to be clear, we're going to mention that there is a Niecza implementation of LAF, written by Stefan O'Rear. that's about it. | 05:41 | |
maybe I'll mention that it's slightly shorter than the Rakudo version. | 05:42 | ||
sorear | well sure, but even that is a bit more than I'm used to | 05:43 | |
masak | ;) | ||
05:45
wheelnotkiss joined
|
|||
masak | wheelnotkiss: hi! welcome! | 05:45 | |
sorear | hello wheelnotkiss! (Am I supposed to know you?) | 05:46 | |
moritz | \o | ||
wheelnotkiss | who moritz | ||
masak | moritz is a nice guy. | ||
moritz would like to hear a talk "Yieldings the Chain Saw: How To Solve Circularity Issues in Bootstrapping Compilers" or so | |||
... except when I'm not :-) | 05:47 | ||
masak | moritz: you'll just have to give one! ;) | ||
sorear | it helps a lot if you design your compiler to compile stuff in a different namespace than the compiler itself uses | 05:49 | |
on the other hand, it also hurts, as not having a common Mu type makes macros harder | |||
05:49
wheelnotkiss left
|
|||
masak | sorear: you could wrap the compiler-side types in facade user-side types when the user needs to handle them. | 06:00 | |
sorear | masak: yeah, that's what I'm planning to do | 06:02 | |
the main blocker is figuring out serialization stuff. my $x; BEGIN $x = 5; say $x might seriously violate POLS if I try to add BEGIN without serialization | |||
masak | why? | 06:07 | |
ah -- BEGIN *without* serialization. nvm. | |||
well, Perl 6basically forces the language implementor into a thinking where the line between compile-time and run-time isn't very clear at all. that's part of the language. | 06:08 | ||
but you know this already :) | |||
TimToady | always has it been thus :) | ||
masak: you have any bright ideas for an expeditious way to turn RC entries into tests? | 06:10 | ||
masak | TimToady: no, just toil :/ | 06:11 | |
I don't see it being a very automatable task. | |||
TimToady | if we automate it, it would need to be something the developer can do, but that the user doesn't have to | ||
I do have a snap of RC code entries from about a month ago | 06:12 | ||
masak | pmichaud said he wouldn't mind whole entries going in. that makes it easier. | ||
TimToady | I can probably get a fresher snap from the same source, though maybe not today | ||
masak | one month sounds fine. | ||
the age doesn't really matter for finding bugs. | |||
TimToady | the downside is that the entries have coded names | 06:13 | |
masak | as long as they're not bugs in the RC code :P | ||
TimToady | so you have to look at it and decide which entry it came from :/ | ||
so maybe we want something more closely tied to the actual RC task name | 06:14 | ||
the actual HTML is hard to scrape, alas | |||
esp if syntax hilit | |||
06:14
george_z0rwell left
|
|||
masak | oh, you just want to throw everything in there? | 06:14 | |
maybe one could scrape the source somehow? | |||
TimToady | well, <lang perl6> tags are probably easy to find | 06:15 | |
but a bunch of hilighting tags are inside with a little bit of code | |||
maybe they can be stripped | |||
masak | maybe. | ||
06:15
uniejo_in_riga left
|
|||
TimToady | (referring to the actual page, not the ones I have on disk) | 06:15 | |
anyway, I can show you them | 06:16 | ||
I guess we'll start wandering down to the venue now | |||
masak | o/ | 06:17 | |
06:17
Reaganomicon joined
|
|||
sorear | why scrape the HTML? wouldn't it be easier to scrape wiki markup? mikemol would, I am certain, be thrilled to provide #perl6 with database dumps | 06:18 | |
masak | right, that's what I meant above. | 06:19 | |
moritz | you can capture the output from rakudo/master for the RC entries, and write it to a file | 06:20 | |
06:20
Su-Shee_ is now known as Su-Shee
|
|||
moritz | and then write a short test harness that executes the stuff, and compares the output to the stored output | 06:20 | |
06:21
uniejo_in_riga joined
06:25
cotto joined,
mberends left
06:31
uniejo_in_riga left,
chadadavis left
06:33
Kivutarrr joined
06:35
cotto left
06:36
cottoo joined,
koban joined
06:41
uniejo_in_riga joined
|
|||
masak --> venue | 06:44 | ||
06:45
masak left
06:46
envi left,
fridim_ left
06:47
araujo left
06:48
saaki joined
06:53
thou left
06:56
chadadavis joined,
kolyuchiy joined
06:57
uniejo_in_riga left
07:09
clkao left
07:10
clkao joined
07:14
noganex_ is now known as noganex
07:15
masak joined,
chadadavis left,
chadadavis1 joined
07:20
chadadavis1 left
07:23
chadadavis joined
07:26
kolyuchiy left,
masak left
07:32
masak joined
|
|||
pmichaud | good morning, #perl6 | 07:36 | |
moritz | good am, pm | 07:37 | |
07:41
chadadavis left,
chadadavis1 joined
07:45
uniejo_in_riga joined
07:48
mj41 joined
|
|||
moritz | nom: sub f() { nqp::unbox_s('foo') }; say f | 07:52 | |
p6eval | nom: OUTPUT«Method 'gist' not found for invocant of class 'String' in sub say at src/gen/CORE.setting:4565 in mu <anon> at /tmp/9aU56lVZSf:1 in mu <anon> at /tmp/9aU56lVZSf:1» | ||
08:03
chadadavis1 left,
chadadavis joined
08:04
uniejo_in_riga left,
chadadavis left
|
|||
moritz | is there a good reason for having a p5chomp and p5chop, but not a p5substr, p5split etc.? | 08:07 | |
(if my intention is not clear, I'd like to get rid of the p5chom?p | |||
) | |||
08:09
masak left
08:11
Su-Shee left
08:13
cottoo left
|
|||
dalek | kudo/nom: 6cac7f1 | moritz++ | / (2 files): implement p5chomp, p5chop (scalar case only) |
08:13 | |
08:15
noganex left
08:16
noganex joined
08:20
uniejo_in_riga joined
08:21
agentzh joined
|
|||
sorear | +1 to killing p5chomp | 08:22 | |
08:24
noganex left
08:27
chadadavis joined
08:28
masak joined
08:34
M_o_C joined
08:38
wamba joined
08:40
araujo joined,
araujo left,
araujo joined,
fhelmberger left
08:41
fhelmberger joined
08:44
Trashlord left
08:48
cottoo joined
08:51
amkrankruleuen left,
Kivutarrr left
09:00
uniejo_in_riga left
09:05
masak left,
masak joined
09:06
uniejo_in_riga joined
09:11
woosley left
09:13
masak left
09:14
cottoo left
09:20
im2ee joined
09:22
im2ee left,
im2ee joined
09:25
uniejo_in_riga left
09:30
MayDaniel joined
09:31
kolyuchiy joined
09:35
M_o_C left,
M_o_C joined
09:36
Gothmog_ joined
09:39
kolyuchiy left,
im2ee left
|
|||
dalek | ast: a2f2b73 | moritz++ | S32-str/ (3 files): fudge split-simple.t and p5chom?p tests |
09:40 | |
09:43
masak joined
|
|||
dalek | kudo/nom: 43f9e11 | moritz++ | / (3 files): fix split, run split-simple.t |
09:43 | |
09:44
im2ee joined
|
|||
moritz | I'm now confident that nom's .split can do the same as rakudo/master's, modulo NYI regex features | 09:44 | |
09:47
chadadavis1 joined,
chadadavis left,
cottoo joined
|
|||
dalek | kudo/nom: 6246bdf | moritz++ | / (2 files): Cool.chr |
09:58 | |
09:58
[particle] left
|
|||
09:58
rafl left
09:59
[particle] joined
10:01
cottoo is now known as cotto
10:03
wamba left
|
|||
TimToady | the RC sphere program has been running for most of an hour, and is up to about 6GB | 10:04 | |
I suspect it's leaking somehow | 10:05 | ||
jnthn | Sounds like. | 10:06 | |
TimToady | (had to call MAIN by hand to get it to run) | 10:07 | |
moritz | well, a simple ./perl6 -e 'while 1 {}' leaks about 8MB per 3s | ||
jnthn | ? | ||
jnthn thought we'd fixed that one long back :/ | |||
tadzik | yay, a gc bug :) | ||
moritz | jnthn: in master, yes | ||
(before nom) | |||
tadzik | oh | ||
jnthn | Yeah but...no clue where nom would regress on that. | ||
tadzik | oh, that's fine | ||
can it be connected with the write beerier thing I stumbled upon? | 10:08 | ||
jnthn | tadzik: It's a leak. | 10:09 | |
:P | |||
Last time it was the lexpad memory leaking. Seems not that this time. | |||
Or at least, it's marked auto_attrs | |||
10:09
Trashlord joined
|
|||
moritz | tadzik: write barriers should only control when something is considered for GC, not if it is GCed at all | 10:10 | |
tadzik | okay | ||
jnthn | My guess is that it's not so much a lack of GC as it is a C-level leak | 10:11 | |
Finding where is kinda tricky though. | |||
valgrind is probably helpful. | |||
tadzik | yes | ||
moritz | it probably reports a leak in parrot_gc_alloc or so :/ | ||
jnthn | yes, but with a stack trace, I guess? | 10:12 | |
moritz | right, I just need to capture the stacktrace | ||
there are many of them | 10:13 | ||
10:13
Su-Shee joined,
chadadavis1 left
|
|||
jnthn | k | 10:15 | |
jnthn gets the leak too but doesn't see the obvious source of it | |||
TimToady | 6.7GB and only half done, 64minutes | ||
moritz | moritz.faui2k3.org/tmp/valgrind.log | ||
TimToady | lunch & | ||
moritz | I had to hit Ctrl+C to stop the process | 10:16 | |
so there was no final GC run or anything like that | 10:17 | ||
jnthn | in use at exit: 830,168 bytes in 342 blocks | ||
A lot of these leaks I'm seeing are startup allocations | 10:18 | ||
10:18
cotto left
|
|||
moritz | I'm working on a better example | 10:19 | |
jnthn | e.g. not while the loop is going | ||
10:19
c1sung left
|
|||
moritz | now looking at | 10:20 | |
my int $i = 0; $i = nqp::add_i($i, 1) while $i < 1_000; | |||
which also leaks | |||
jnthn | hm | 10:21 | |
10:22
masak left,
M_o_C left
|
|||
moritz | moritz.faui2k3.org/tmp/valgrind2.log | 10:23 | |
10:35
Mowah_ joined
|
|||
jnthn | As another data point, nqp doesn't seem to leak. | 10:36 | |
10:38
uniejo_in_riga joined
10:40
cotto joined
|
|||
cotto | jnthn, where are you at? | 10:40 | |
I've got a draft email to parrot-dev I'd like you to take a look at. | 10:41 | ||
10:41
chadadavis joined
10:48
masak joined
10:49
im2ee left
10:51
[Coke] joined
10:59
chadadavis left
11:06
odoacre left
11:09
chadadavis joined
11:12
mux joined
11:30
uniejo_in_riga left
|
|||
moritz | nom: say "foo" ~~ /<['"]>/ | 11:30 | |
p6eval | nom: OUTPUT«» | 11:31 | |
11:34
masak left
|
|||
moritz hopes that jnthn++ will upload his slides soon | 11:34 | ||
11:38
cotto left
11:40
cotto joined
11:43
Trashlord left
11:52
[Coke] left
11:53
im2ee joined
11:55
jferrero left
11:56
nwc10 joined
|
|||
nwc10 | For those in the room at YAPC::Europe | 11:56 | |
presumably Zefram's comment is valid in some cases - it would be a possible optimisation for a lazy map on a list to shortcut if it's sure that the block sa no side effects. | |||
(ie simple blocks) | |||
really simple blocks. | 11:57 | ||
not sure if it's worth it. | |||
11:59
[Coke] joined
12:04
Trashlord joined
12:06
jferrero joined
12:20
dual left
12:25
MayDaniel left
|
|||
dalek | ast: bdb8845 | moritz++ | / (3 files): fix two bogus tests, unfudge advent2009-day08.t for nom |
12:32 | |
ok: 45f9225 | (Maik Hentsche)++ | src/basics.pod: "variable results" table matches example now The table "Contents of Variables" contained line "Ana vs Dave | 3:0" while the example only had "Ana Dave | 3:0". The table now matches the example. |
12:42 | ||
moritz | aloha: karma moritz | 12:47 | |
aloha | moritz: moritz has karma of 1779. | ||
moritz | aloha: karma moritz_ | ||
aloha | moritz: moritz_ has karma of 230. | ||
12:48
Trashlord left
|
|||
[Coke] grumbles as all the perl.org addresses time out. | 12:48 | ||
moritz++ # building now. | 12:49 | ||
12:52
JimmyZ joined
12:57
bluescreen10 joined
13:01
Holy_Cow joined,
Sarten-X left
13:02
Holy_Cow left
13:04
satyavvd left
13:07
uniejo_in_riga joined
13:08
Sarten-X joined,
rdesfo joined
13:11
masak joined,
chadadavis left
13:20
orafu left,
orafu joined
|
|||
cognominal_ | is there a way to get the parsetree for a perl6 program without executing it? | 13:22 | |
moritz | cognominal_: viv in the perl6/std repo does that | 13:23 | |
cognominal_: but there's no specced way to do that from within a Perl 6 program | |||
cognominal_ | but rakudo does parse programs so there is a way. I am just not skilled enough to find it | 13:25 | |
moritz | a, from rakudo | ||
--target=parse | |||
13:26
uniejo_in_riga left
|
|||
moritz | ...except that that's broken in nom | 13:26 | |
13:26
uniejo_in_riga joined
13:28
chadadavis joined,
chadadavis left
|
|||
cognominal_ | I am using master | 13:29 | |
13:29
uniejo_in_riga left
|
|||
moritz | ok | 13:30 | |
cognominal_ | jnthn is your grammar debugger working in master? | ||
thx, moritz | |||
13:31
tokuhirom joined
13:32
masak left
13:41
jaldhar left
13:46
abercrombie joined,
envi joined
13:50
nwc10 left
13:59
cotto left
14:03
envi left
14:04
rdesfo left
14:05
envi joined
14:06
finanalyst_ joined,
masak joined
|
|||
dalek | kudo/nom: 63b54d1 | moritz++ | NOMMAP.markdown: add memory leak to NOMMAP punchlist |
14:07 | |
14:08
Kivutarrr joined
14:09
drbean left,
thowe joined
|
|||
thowe | scsys.co.uk:8002/133702 | 14:10 | |
Downloaded rakudo-star-2011.07.tar.gz, have run perl Configure.pl --gen-parrot a couple times but still getting this error. | 14:11 | ||
Have I done something else obviously wrong? | |||
14:12
SHODAN left
|
|||
thowe | parrot_config is in the parrot-3.6.0 dir under the dir I am in running that command. | 14:12 | |
14:13
masak left
|
|||
moritz | gmake: *** [compilers/opsc/gen/Ops/Compiler/Grammar.pir] Segmentation fault (core dumped) | 14:13 | |
that's the actual error, and all the result just results from that | |||
thowe | I thought maybe | ||
moritz | dunno what's wrong here, that's an error from installing parrot | ||
maybe the folks in #parrot know better | |||
(on irc.perl.org, that is) | |||
thowe | OK | 14:14 | |
14:14
koban left
|
|||
thowe | I'll hit them up once I'm at work... | 14:14 | |
bbiab.. | |||
14:14
thowe left
|
|||
dalek | kudo/nom: e0f9eee | Coke++ | t/spectest.data: track (non) failure mode. |
14:15 | |
14:20
uniejo_in_riga joined,
masak joined
14:24
frew_ joined
14:26
frew_ left
14:30
Lorn left
14:39
kaare_ joined
14:42
Trashlord joined
14:43
Lorn joined
14:46
alester left
14:47
uniejo_in_riga left
14:48
uniejo_in_riga joined
14:49
nordicdyno joined
14:54
thou joined
14:55
finanalyst_ left
14:58
uniejo_in_riga left,
uniejo_in_riga joined
14:59
uniejo_in_riga left
|
|||
[Coke] | moritz: I have a threaded perl. I can now run autounfudge. I haz a confused. got a sec? | 15:06 | |
moritz | [Coke]: yes | 15:07 | |
[Coke] | so, I run: | ||
perl tools/autounfudge.pl --specfile t/spectest.data --unskip | |||
this then complains: | |||
File 't/spec/S02-builtin_data_types/anon_block.t' doesn't even pass in its current state | 15:08 | ||
but it's fudged, and it does pass fudged. | |||
moritz | hm, it doesn't complain here | 15:09 | |
[Coke]: fwiw I usually just run it as /usr/bin/perl tools/autounfudge.pl -a -j 3 | |||
[Coke] | I'm at e0f9eee on nom, and bdb8845 on t/spec | ||
[Coke] tries that. | 15:10 | ||
moritz | the -a automatically picks up t/spectest.data | ||
and the -j 3 is just three jobs in parallel | |||
it does unskip by default too, iirc | |||
[Coke] | interesting that -j 3 seems to run 4 jobs. ;) | ||
yup, getting a ton of "doesn't even pass" errors. | 15:11 | ||
moritz | :-) | ||
[Coke] | :( | ||
moritz | that is..weird | ||
[Coke] | do I need to... install first or something? | 15:13 | |
moritz | no | ||
do you get that line for all test files? | |||
[Coke] | pretty much. | 15:14 | |
ah. is it checking the exit value? | |||
tools/perl6-limited.pl t/spec/S02-builtin_data_types/anon_block.rakudo | |||
runs, appears to DTRT, but echo $? shows 1 | 15:15 | ||
moritz | huh | ||
15:16
Trashlord left
|
|||
moritz | if you look at autounfudge.pl line 198, it does launch fudge with --keep-exit-code | 15:16 | |
[Coke] | So, at a wager, ths is related to the occasional swathes of "every passed your spectest, but we got lots of non-zero exit codes" issues. | ||
moritz | but then 'make spectest' should also report them, right? | 15:17 | |
[Coke] | and keep-exit-code means to NOT append an exit(1) at the end of everything fudge,d aye? | ||
15:18
nordicdyno left
|
|||
moritz | correct | 15:18 | |
[Coke] | so I bet if I run 'make spectest 'now, I'll get lots of not-really-failures. | ||
15:18
masak` joined
15:20
masak left
15:21
Trashlord joined
15:22
JimmyZ left
15:23
masak` left,
JimmyZ joined
15:31
tokuhirom left
15:35
j`ey joined
15:40
mj41 left
15:41
wolfman2000 joined
15:42
Kivutarrr left
15:44
Trashlord left
15:53
envi left
15:58
mberends joined
16:01
Trashlord joined,
birdwindupbird left
16:08
rdesfo joined
16:09
JimmyZ left
|
|||
mberends | nom: say now; | 16:15 | |
p6eval | nom: OUTPUT«Instant:1313597768.08085» | ||
[Coke] | moritz: aye. | 16:16 | |
(failures in spectest on exit code) | |||
diakopter | nom: say now.perl | 16:30 | |
p6eval | nom: OUTPUT«Instant.new(x => 533321050977/406)» | ||
16:30
jevin left
16:34
Vlavv joined,
jevin joined
16:36
j`ey left
16:42
Trashlord left
16:43
MayDaniel joined
16:47
Trashlord joined
16:56
fridim_ joined
16:57
dual joined
16:59
nordicdyno joined
|
|||
cognominal_ | is panda supposed to work on nom? | 17:04 | |
17:05
MayDaniel left
17:08
daniel-s left,
Moukeddar joined
17:17
nordicdy_ joined
17:20
nordicdyno left
17:21
janosik joined
17:39
benabik joined
17:40
Holy_Cow joined
|
|||
moritz | cognominal_: it does not, iirc | 17:41 | |
17:41
agentzh left
|
|||
cognominal_ | ok, thx | 17:42 | |
17:43
wolfman2000 left,
Holy_Cow left,
nordicdy_ left
|
|||
colomon | nom: say asin(0.785398163404734 + 2i) | 17:48 | |
p6eval | nom: OUTPUT«0.341338918259482 + 1.49709293866352i» | ||
moritz | rakudo: asin(0.785398163404734 + 2i) | 17:51 | |
p6eval | rakudo 922500: ( no output ) | ||
moritz | rakudo: say asin(0.785398163404734 + 2i) | ||
17:51
Vlavv left
|
|||
p6eval | rakudo 922500: OUTPUT«0.341338918259481 + 1.49709293866352i» | 17:51 | |
colomon | moritz: It's niecza I'm worried about. | ||
someone I managed to code asin in such a fashion that exactly three of the dozen-odd Complex tests fail | |||
[Coke] | all in one quarter? | 17:56 | |
colomon | [Coke]: good question | 17:57 | |
rakudo: say (-0.707106781186548+2i).asin | 18:01 | ||
p6eval | rakudo 922500: OUTPUT«-0.308970651577122 + 1.48723059138151i» | ||
colomon | rakudo: say (0.707106781186548+2i).asin | 18:02 | |
p6eval | rakudo 922500: OUTPUT«0.308970651577122 + 1.48723059138151i» | ||
colomon | [Coke]: good call | ||
[Coke] | \o/ | ||
I just saw "3 out of dozen" and guessed. ;) | 18:03 | ||
colomon | (-0.707106781186548+2i).asin works, but (0.707106781186548+2i).asin doesn't. Sign of the real part looks like it's the problem. | ||
[Coke]: that was a very approximate number, mind you. :) | 18:06 | ||
18:19
sftp left
18:20
sftp joined
18:27
birdwindupbird joined
18:28
djanatyn left,
Tene left,
Tene joined,
Tene left,
Tene joined,
mtk joined
18:29
djanatyn joined
|
|||
colomon | [Coke]: ooo, this officially just became an interesting problem. | 18:33 | |
rakudo: (2.83262200201267-1.48723059138151i).polar | 18:34 | ||
p6eval | rakudo 922500: ( no output ) | ||
colomon | rakudo: say (2.83262200201267-1.48723059138151i).polar | ||
p6eval | rakudo 922500: OUTPUT«3.19931277592974-0.483475794339868» | ||
18:34
Trashlord left
|
|||
colomon | rakudo: say ~(2.83262200201267-1.48723059138151i).polar | 18:34 | |
p6eval | rakudo 922500: OUTPUT«3.19931277592974 -0.483475794339868» | ||
colomon | rakudo: say ~(0.308970651577121+1.48723059138151i).polar | 18:35 | |
p6eval | rakudo 922500: OUTPUT«1.51898574564641 1.36596104018484» | ||
colomon | rakudo: (0.308970651577121+1.48723059138151i).sin | ||
p6eval | rakudo 922500: ( no output ) | ||
colomon | rakudo: say(0.308970651577121+1.48723059138151i).sin | 18:36 | |
p6eval | rakudo 922500: OUTPUT«0.308970651577121 + 1.48723059138151i» | ||
colomon | rakudo: say (0.308970651577121+1.48723059138151i).sin | ||
p6eval | rakudo 922500: OUTPUT«0.707106781186544 + 1.99999999999999i» | ||
colomon | rakudo: say (2.83262200201267-1.48723059138151i).sin | ||
p6eval | rakudo 922500: OUTPUT«0.707106781186549 + 1.99999999999999i» | ||
18:37
Trashlord joined,
itz joined
18:39
literal_ joined,
Trashlord left
18:40
Trashlord joined
18:45
cotto joined
18:46
mtk left
|
|||
colomon | rakudo: my $x = 0.707106781186548+2i; -1i * (($x)i + sqrt(1 - $x * $x)).log | 18:47 | |
p6eval | rakudo 922500: ( no output ) | ||
colomon | rakudo: my $x = 0.707106781186548+2i; say -1i * (($x)i + sqrt(1 - $x * $x)).log | ||
p6eval | rakudo 922500: OUTPUT«0.308970651577122 + 1.48723059138151i» | ||
18:47
mtk joined
|
|||
pmichaud | good evening, #perl6 | 18:47 | |
colomon | o | 18:48 | |
colomon appears to have lost an arm there | |||
18:48
[Coke] left
|
|||
colomon | \o | 18:48 | |
benabik | colomon: Doing so much coding, it just fell right off? | ||
colomon | benabik: more like, so tired I forgot to bring it with me | 18:49 | |
rakudo: my $x = 0.707106781186548+2i; say ($x)i + sqrt(1 - $x * $x) | |||
p6eval | rakudo 922500: OUTPUT«0.215296019312918 + 0.068720962747837i» | ||
colomon | niecza: my $x = 0.707106781186548+2i; say ($x)i + sqrt(1 - $x * $x) | ||
p6eval | niecza v8-52-g3afe236: OUTPUT«-4.21529601931292+1.34549259962526i» | ||
18:50
[Coke] joined
|
|||
colomon | so the problem is the branch being chosen for the complex square root | 18:50 | |
moritz | is that specced? | 18:52 | |
colomon | I don't think so | ||
sqrt: "Returns the principal square root of the parameter." | |||
hmm | 18:53 | ||
18:53
wolfman2000 joined
|
|||
colomon | mathworld.wolfram.com/PrincipalSquareRoot.html seems to suggest that doesn't help | 18:53 | |
18:54
domm left
18:55
domm joined
18:56
pernatiy joined,
Moukeddar left
|
|||
colomon | well shoot, now I don't know if I should try to fix the "problem" by defining which branch to take in the spec, or fix the problem by never directly testing the results of the inverse functions. :\ | 19:03 | |
moritz | you can use an any() test | 19:07 | |
colomon | moritz: I believe that will only work to test sqrt, not asin, because the latter has an infinite number of possible solutions. | 19:09 | |
moritz | oh. | ||
colomon | actually, I wonder if Util's recent research touched on these issues? | ||
19:09
masak joined
19:10
mikemol joined
|
|||
masak | good evening, #perl6. | 19:10 | |
19:10
Acor joined
|
|||
moritz | oh hai masak | 19:10 | |
colomon | o/ | ||
19:13
Acor left
|
|||
masak | this is embarrassing. I gave a talk about event sourcing on Monday. today after my lightning talk, pmichaud++ comes and tells me "your game AI player API. it should take not just the current state as a parameter, but also the history of events." I shoul've thought of that :) | 19:13 | |
by the way, the slides are here: masak.org/carl/yapc-eu-2011-little-...m/talk.pdf | |||
19:13
im2ee left
19:14
im2ee joined
|
|||
masak changes the API | 19:15 | ||
colomon is glad slide two clarified the Orwell issue. ;) | 19:18 | ||
masak | so now, instead, the game will be passing along *both* the current state *and* the sequence of events so far in the game, even though from an ES perspective the latter is redundant. | ||
the general opinion around the dinner table was that it's the kind thing to do. | |||
PerlJam | masak: A smart AI would have recorded them itself ;) | ||
masak | PerlJam: yeah, but the jumps may be too big to recreate the events from the states. | 19:19 | |
colomon | it's the functional thing to do, for sure. | ||
masak | PerlJam: the player only gets "control" once a round. or possibly more, if it's the target of tradings. | ||
but in the worst case, once. | 19:20 | ||
19:20
literal_ is now known as literal
|
|||
masak | no, in retrospect it's pretty obvious that the events should be passed along. | 19:20 | |
which brings me quite naturally to another issue. | 19:21 | ||
when an array attribute or a hash attribute is marked 'is rw', does that mean that outside parties can change its contents? | 19:22 | ||
perl6: class A { has @.x = 1, 2, 3 }; my $a = A.new; $a.x[1] = 42; say $a.x.perl | |||
p6eval | rakudo 922500: OUTPUT«[1, 42, 3]» | ||
..niecza v8-52-g3afe236: OUTPUT«[1, 42, 3].list» | |||
..pugs: OUTPUT«***  Unexpected "," expecting "_", fraction, exponent, term postfix, operator or "}" at /tmp/gXec3BbSKC line 1, column 22» | |||
masak | seems pretty clear they can. | ||
19:23
MayDaniel joined
|
|||
masak | that's fine; it just means that if you want *real* encapsulation with array/hash attributes, you can't use 'is rw' with the normal accessors. | 19:23 | |
19:23
mtk left,
jevin left,
mtk joined
|
|||
masak | oh, I mis-stated my question. | 19:23 | |
I meant readonly attributes. | 19:24 | ||
which is accidentally what I tried with p6eval, so the conclusion still holds :) | |||
colomon | ah, that question makes more sense. :) | ||
masak | ISTR sorear has mentioned this a couple of times. | ||
19:25
mtk left
|
|||
masak | saying that no-on has figgered out a sane way for arrays/hashes to lock their elements in this case. | 19:25 | |
colomon | I recall pmichaud talking about it as well, but it's been quite a while. | ||
masak | yeah. | ||
19:25
mtk joined
|
|||
masak | well, here's the thing. I definitely don't want this to happen to my master data structures in the game, because that would be tantamount to tampering with the game. | 19:26 | |
so I'll just have to deep-clone everything before I send it off. | |||
that's no problem; it's just that from an "OO safety" perspective it's kind of a crappy default. | |||
19:27
mtk0 joined
19:28
jevin joined,
mtk left,
mtk0 left,
mtk joined
19:31
molaf_ left
|
|||
PerlJam | masak: why a hash for players instead of an array? | 19:31 | |
It looks like you do a lot of number -> player_number transformations in the code | 19:33 | ||
19:33
Su-Shee_ joined
19:35
birdwindupbird left
|
|||
masak | PerlJam: yeah. could've been factored diff'rently. | 19:35 | |
numbers, with the stock being number 0, would've worked too. | 19:36 | ||
19:36
Su-Shee left
|
|||
PerlJam | so ... accident of creation? :) | 19:36 | |
masak | still mulling over it :) | ||
I kinda like the self-documenting parts of having 'stock' and 'player_3' as strings. | 19:37 | ||
I hadn't considered it a problem until now. | |||
19:37
im2ee left
19:38
im2ee joined
|
|||
moritz | could anybody please proof-read piratepad.net/COm4Gkcv0I for grammar, spelling and sense? | 19:39 | |
19:41
janosik left
|
|||
moritz | PerlJam++ | 19:41 | |
and two <unnamed>++ too :-) | |||
PerlJam | the colors are playing havoc with my eyes for some reason though | ||
moritz | sorry about that | 19:42 | |
oh, and if there's some interest, I'll surely find a way to sneak in a Perl 6 hackathon | |||
19:43
MayDaniel left
|
|||
colomon | seems like "Perl for beginners" doesn't need the three sub-points? maybe? that's pretty nit-picky | 19:44 | |
(I mean, my pointing it out is nit-picky) | |||
moritz | colomon: probably, yes | ||
colomon: I just took the German template and translated it straight into English, without much thinking :-) | 19:45 | ||
colomon | also, entire thing appears to be twice on the pastebin? | ||
PerlJam | what colomon just said | ||
masak | moritz: 'humor'. you using US spelling deliberately? | ||
nothing wrong with that, just asking. | 19:46 | ||
moritz | masak: no | ||
moritz deletes the second half | |||
PerlJam | so .... all talks will have 100-150 person capacity? | 19:47 | |
moritz | PerlJam: the room has a capacity of about 200 persons, but usually just 100 to 150 attend | 19:48 | |
(experience from previous GPWs) | |||
PerlJam | it seems weird to me that lightning talks, short talks and long talks will all be in same space. | ||
moritz | why? | 19:49 | |
we have a small and a big room | |||
PerlJam | I don't know :) | ||
moritz | so we chose the big room for everything except the tutorials | ||
PerlJam | How many talks and tutorials are you hoping to get? | ||
masak writes code that calls a method on self inside a sub inside a method | 19:50 | ||
PerlJam | (maybe put that in the CFP) | ||
moritz | PerlJam: I have no idea :-) | ||
PerlJam | Er .... what's the second date supposed to be? 2012-03-2012 can hardly be correct :) | 19:51 | |
moritz | 05 | ||
erm wait | |||
05 to 07 | |||
PerlJam | It's a one day event? | ||
oh. | |||
so, how many talks/tutorials can you fit in 2-3 days? | 19:52 | ||
That's a good upper bound on the number of each you can have. | |||
moritz | looking at the YAPC::EU schedule, maybe 8 to 11 a day | 19:55 | |
PerlJam | maybe it's just some latent marketingness in me that I'd want to advertise the number of potential slots and then use that in future announcements. | ||
"Get your tutorial in today! Only 3 slots left!" | |||
moritz | I kinda like the idea, just want to synchronize with the organizers first | ||
19:56
im2ee left
19:57
im2ee joined
|
|||
masak | so... who will be the first one to write a Little Animal Farm player class? | 19:59 | |
I could do it, but that'd be less fun than someone else doing it. | 20:00 | ||
20:00
mj41 joined
|
|||
masak | and then that person could help me put together the instructions for writing such a class :) | 20:00 | |
moritz | maybe tomorrow | 20:01 | |
trouble is, I've never played the game | |||
so it's hard for me write an AI | |||
masak | we need a naive AI first. | 20:03 | |
one that does the minimal amount of work to win. | |||
PerlJam | "to win"? Are you sure you really meant "naive AI"? :) | ||
20:03
Moukeddar joined
|
|||
masak | PerlJam: well, the assumption is that there's no competition at all out there yet :) | 20:04 | |
PerlJam: we essentially want to build something that can get beaten :) | |||
Gloria++ supplied the recipe for one: trade up to new animals when you can, and ignore buying dogs. | |||
PerlJam | So ... "minimal amount of work to play until the game ends" ? | ||
masak | right. thing is, if you do nothing during trades, which would be the simplest thing possible, you can never win. | 20:05 | |
so you need to do the simplest/laziest thing possible that makes it possible for you to win. | |||
PerlJam | The "do nothing" AI has got to be easy to write ;) | 20:06 | |
masak | anyone who's interested at giving it a shot: first, read the talk. masak.org/carl/yapc-eu-2011-little-...m/talk.pdf | 20:07 | |
then read the rules at github.com/masak/farm | |||
then read the nonexistent instructions for writing an AI player. | |||
then implement it. | 20:08 | ||
PerlJam | is it playable with nom? | 20:10 | |
s/playable/runnable/ | |||
masak | PerlJam: dunno. please find out ;) | 20:11 | |
any failures would be really interesting to know about. | |||
masak realizes that he's really a master kind of guy | 20:12 | ||
20:13
Mowah_ left
|
|||
PerlJam plays "Master of Puppets" in honor of masak | 20:13 | ||
20:15
im2ee left
|
|||
jasonmay wonders if he'll have to re-work his IoC module for nom, etc | 20:16 | ||
20:16
saaki left,
im2ee joined
|
|||
PerlJam | Method 'rxtype' not found for invocant of class 'PAST;Regex' | 20:16 | |
(running farm.pl on nom) | |||
masak | I recognize that error. | 20:17 | |
don't remember where, though. | |||
a search of the backlog might turn something up. | |||
(hint, hint) | |||
20:19
im2ee left,
acor joined,
im2ee joined
20:20
thou left
20:24
acor left,
Kivutarrr joined
20:25
nbrown left
20:29
molaf joined
|
|||
flussence | masak: I was complaining about the same error yesterday :) | 20:30 | |
masak | ah, there you go. | 20:31 | |
was that from running farm.pl as well? | |||
flussence | no, Text-Tabs-Wrap | ||
masak | ah. | 20:32 | |
I don't have any grammars in farm.pl. I may have a regex or two. | |||
20:33
kaare_ left
|
|||
PerlJam | it looks like niecza almost runs farm.pl It only reported problems with the BUILD submethod on line 12 | 20:33 | |
(of course it may have just given up at that point, but I'm ever hopeful :) | 20:34 | ||
masak | ok. | ||
20:38
im2ee left
20:39
im2ee joined
|
|||
sorear | good * #perl6 | 20:42 | |
masak | o/ | ||
PerlJam | sorear: Think you can make niecza grok Perl 6 better so that it can run github.com/masak/farm/blob/master/farm.pl ? :-) | 20:45 | |
20:45
LimitSupremum joined
|
|||
PerlJam | sorear: See gist.github.com/1152567 for what happened when I try | 20:45 | |
20:46
nbrown joined
|
|||
PerlJam | sorear: I guess it's because niecza doesn't yet quite grok $!vars (at least according to perl6.org/compilers/features.html) | 20:48 | |
sorear | that per se is fixable | ||
well, :$!vars | |||
PerlJam | aye. their relationship | ||
masak likes :$!vars | 20:49 | ||
I made sure we got that syntax. | |||
uh, wait, no. | |||
I'm thinking of the same syntax but on the caller side, as a named argument. | |||
tadzik | oh hello #perl6 | 20:51 | |
masak | tadzik! \o/ | ||
sorear | niecza also needs MAIN for masak's farm to work | ||
tadzik | masak: apparently, there are some people who want to rewrite LAF to java, or webservice, or Perl 5 to work on the AI | 20:53 | |
„or maybe even do it in Perl 6 actually” | |||
masak | tadzik: huh! | 20:54 | |
well, I guess we can't *stop* people from porting the thing. | |||
tadzik | true | ||
masak | and I wouldn't want to spend my time trying, anyway ;) | ||
tadzik | oh, and some people, before I mentioned the implementation, thought „oh, I could totally write an AI for that” | ||
so our ideas aren't unique ;) | 20:55 | ||
masak | nope :) | ||
tadzik | so where did you have dinner? | ||
masak | we were discussing the game and AIs over dinner tonight. | ||
at the awesome sekkrit Indian nommery. | |||
tadzik | I didn't get a message back from you so I just got to that main place | ||
oh | |||
masak | a message back from me? | 20:56 | |
tadzik | did you get mine? | ||
masak | I texted you, never got a response... | ||
tadzik | shit | ||
masak | :/ | ||
tadzik | I retexed you in like 2 minutes :/ | ||
masak | huh. | ||
masak checks again | |||
tadzik | Latvia<gsm>-- | ||
masak | nope, nothing. | 20:57 | |
tadzik | weird | ||
masak | yeah. ah, too bad. would've been nice to have you there. we had an empty eigth chair for you, in fact. | 20:58 | |
tadzik | oh, I saw people today laughing "look, I just got your text message from monday!" | ||
masak | eighth* | ||
tadzik | well, it happens | ||
21:01
im2ee left
|
|||
tadzik | shame though. I'm glad you had a good time :) | 21:03 | |
21:03
bluescreen10 left,
mj41 left
|
|||
masak | tadzik: ooc, where did you disappear to? the only way I could think of reaching you was via texting. | 21:03 | |
tadzik | masak: I was standing outside for like 10 minutes or so, then got with some folks to the usual place, where the first-day meeting was | 21:04 | |
or, the pre-conf meeting actually | 21:05 | ||
21:05
sftp left
|
|||
masak | ah, ok. | 21:05 | |
well, we were standing around just inside for about 10 minutes or so... | |||
tadzik | but I got your message like 5 minutes after we left. I sent you a msg that I'll go to my hotel for a sec and I'm ready to go | ||
21:06
sftp joined
|
|||
masak | oh, ok. | 21:06 | |
21:06
saaki joined
|
|||
masak | I'd tell you a Latvia<gsm> joke, but you might now get it... | 21:06 | |
not* | 21:07 | ||
tadzik | heh | ||
maybe they actually have a network called UDP | |||
masak | that would explain things. | 21:09 | |
I'll probably get the reply just after I fall asleep tonight. | |||
tadzik | yeah, probably | 21:10 | |
or really *too early* in the morning | |||
21:11
wamba joined,
wamba left
|
|||
masak | rakudo: my %foo = a => {}, b => {}; sub deepclone(%h) { return %h }; my %bar = deepclone(%foo); %bar<b><hi> = "hopp"; say %foo.perl | 21:14 | |
p6eval | rakudo 922500: OUTPUT«{"a" => {}, "b" => {"hi" => "hopp"}}» | ||
masak | rakudo: my %foo = a => {}, b => {}; sub deepclone(%h) { return hash map -> $k, $v {; $_ => ($v ~~ Hash ?? deepclone($v) !! $v ) }, %h.kv }; my %bar = deepclone(%foo); %bar<b><hi> = "hopp"; say %foo.perl | ||
p6eval | rakudo 922500: OUTPUT«{"a" => {}, "b" => {}}» | ||
masak | \o/ | ||
21:16
wamba joined,
jnthn left
|
|||
tadzik | what does BOF stand for? Not easily googlable | 21:16 | |
21:16
jnthn joined
|
|||
masak | tadzik: Benevolent Dictatory For [Life?] | 21:17 | |
Dictator* | |||
tadzik | no, B Oh F | ||
flussence | Bundle o'fish? | ||
tadzik | How do you rate the conference? | 21:18 | |
How would you rate your overall satisfaction of the following areas of the conference? | |||
masak | Bird Of Feather. | ||
tadzik | (BOFs) | ||
21:18
Kivutarrr left
|
|||
tadzik | I don't get it :) | 21:18 | |
masak | I didn't hear of any this time. | ||
oh, it's a concept. | |||
someone wants to start something cool. | |||
so they just draw together other interested people. | |||
21:18
bluescreen10 joined
|
|||
masak | and if it takes off, it's sort of... a bird from a single feather. | 21:18 | |
tadzik | mhm | ||
masak | that's all. | 21:19 | |
tadzik | I didn't see any of those really | ||
maybe the Acmeism fun with ingy++ today | |||
masak | that was a talk though, wasn't it? | ||
tadzik | well, I hacked a Vala backend with ingy today | 21:20 | |
it was almost like copypasting a Java backend | |||
still, fun | |||
masak | that seems to be an important part of acmeism. | 21:34 | |
21:42
Trashlord left
21:45
bluescreen10 left,
Psyche^ joined
|
|||
masak | 'night, #perl6 | 21:46 | |
21:46
masak left,
athomason joined
21:48
Patterner left,
Psyche^ is now known as Patterner
21:49
Trashlord joined
21:54
ggoebel left,
Moukeddar left
21:57
Mowah left
22:21
bbkr left
22:27
jevin left
22:28
jevin joined
22:53
LimitSupremum left
23:02
drbean joined
23:03
drbean left,
ponbiki left
23:08
wamba left
23:14
tokuhirom joined
23:21
whiteknight joined
23:24
ponbiki joined
23:34
[particle] left
23:35
[particle] joined
23:36
soh_cah_toa joined
23:39
sjn left
23:40
sjn joined
23:45
molaf left
23:57
molaf joined
|
|||
abercrombie | Is nom going to be the master branch tomorrow? | 23:59 |