pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, smop: etc.) || We do Haskell, too | > reverse . show $ foldl1 (*) [1..4] | irclog: irc.pugscode.org/ Set by TimToady on 25 January 2008. |
|||
00:09
cmarcelo joined
00:20
donaldh left
00:21
donaldh joined
00:27
ruoso left
00:32
explorer left
00:43
stevan_ left,
stevan_ joined
00:49
cognominal__ joined,
cognominal_ left
00:50
tobeya left
00:59
elmex left
01:12
cognominal__ left
01:13
cognominal__ joined
01:25
Ched- left,
Ched- joined
02:10
nipotan is now known as nipotaway
02:19
jiing left
02:35
eternaleye joined
02:40
Eevee left
02:45
Eevee joined
03:05
rindolf joined
03:39
snooper joined
03:49
pbuetow_ left
04:09
cmarcelo left
04:47
justatheory left
05:23
alester joined,
bsb_ joined
05:24
alc joined
05:30
rindolf left
05:35
wknight8111 left
|
|||
pmichaud | perl: my @a = 1, 2, 3; say @a.WHAT; | 05:35 | |
perl6: my @a = 1, 2, 3; say @a.WHAT; | |||
exp_evalbot | kp6: OUTPUT[syntax error at position 9, line 1 column 9:my @a = 1, 2, 3; say @a.WHAT ^ HERE] | ||
..pugs: OUTPUT[Array] | |||
..rakudo: OUTPUT[Int] | |||
pmichaud | perl6: say (1,2,3).WHAT; | 05:36 | |
exp_evalbot | kp6: OUTPUT[Out of memory!Out of memory!] | ||
..pugs: OUTPUT[Array] | |||
..rakudo: OUTPUT[List] | |||
05:39
bsb left
05:40
mncharity left
05:42
zamolxes left
05:47
meppl joined
06:00
donaldh left,
donaldh joined
06:08
cognominal__ left
06:11
alester left
06:37
vixey joined
|
|||
vixey | In rakudo/perl6, who creates perl6str.c? | 06:48 | |
oops sorry, it says right here This file is generated automatically from './perl6str.pmc' | 06:49 | ||
07:31
pmurias joined
|
|||
pmurias | what's the right phrase for "the ways a implementation differs from the spec, adding some things in a different worse way" | 07:35 | |
vixey | distasteful deviations | ||
pmurias | ;) | 07:37 | |
moritz_ | good morning | 07:46 | |
07:47
IllvilJa joined
07:53
bsb_ left,
elmex joined
08:03
iblechbot joined
|
|||
vixey | I wonder why elf_f has got sub initialize_notes{my $self=CORE::shift;(do{$self->notes({}); | 08:17 | |
but elf_f0 has sub initialize_notes{my $self=CORE::shift;(do{($self->notes() = {}); | |||
moritz_ | vixey: maybe that's part of the move to a different accessor syntax | 08:19 | |
pmurias | vixey: it was changed | 08:24 | |
well, i changed it | |||
use elf_f_faster instead of elf_f | |||
vixey | so Can't modify non-lvalue subroutine call at ../elf_f0 line 2655. is supposed to happen? | ||
pmurias | elf_f is broken | 08:25 | |
08:26
donaldh left
|
|||
vixey | How will $self->notes() = {} be able to work in the future? | 08:26 | |
is this autobox? | |||
pmurias | it works in the elf_f_faster | 08:27 | |
using lvalue subroutines | |||
vixey | % ../elf_f_faster -x -o ../elf_f0 Elf.pm % ../elf_f0 -x -o ../elf_f1 Elf.pm work | 08:28 | |
but % ../elf_f1 -x -o ../elf_f2 Elf.pm still has Can't modify non-lvalue subroutine call | |||
pmurias | there are 2 elfs | ||
08:28
zamolxes joined
|
|||
pmurias | the old broken and moosish elf_f, and the slighly newer faster elf_f_faster | 08:29 | |
vixey | Oh, I see! | ||
cool Elf_Faster.pm actually bootstrapped | 08:31 | ||
08:32
[particle] left
08:45
laye joined
08:56
cognominal_ joined
09:06
masak joined
09:11
meppl left
09:23
jjore is now known as zz_jjore,
zz_jjore is now known as jjore
|
|||
Juerd | moritz_: Apache2 upgrade appears to help. I'm changing the auto kill to 12 hours instead of 3 | 09:27 | |
moritz_ | Juerd: it still leaks; I vote for 6 hours ;) | 09:28 | |
Juerd | It leaks less than 4 times what it did | ||
I'll do 6 hours now; can always increase it if the chart stays linear | 09:29 | ||
09:32
[particle] joined
|
|||
moritz_ | Juerd: I suppose you already tried to decrease the min and max spare server processes? | 09:33 | |
Juerd | No | 09:35 | |
vixey | I think I fixed for in elf | ||
t/kp6/45-for.t works now but didn't befor | |||
Juerd | I assume that a spare server does not leak. It might use memory, but a constant amount that can relatively safely be swapped away. | ||
moritz_ | vixey: commit it, ship it! | ||
Juerd | ship it? | 09:36 | |
:) | |||
In a shrinkwrapped box? | |||
vixey | hehe | ||
moritz_ | vixey: do you have a commit bit already? | ||
vixey | I did.. | 09:37 | |
09:37
wknight8111 joined
|
|||
moritz_ | uhm, commitbit is down :( | 09:38 | |
vixey | can't remember my password though | ||
moritz_ | vixey: I'll resend it as soon as somebody (/me glances over his shoulder in Juerd's direction) re-enables commitbit | 09:39 | |
vixey | ok ty :) | 09:40 | |
moritz_ | but first I have to get some food & | ||
pugs_svnbot | r20501 | fax++ | [elf] Small fix to EmitSimpleP5 to make kp6 for loop test work | 09:45 | |
vixey | svn remembers my pw in my other user somehow. | 09:46 | |
moritz_ | very good ;) | 09:50 | |
vixey++ | |||
vixey | ooh I got it back | ||
ty :) | |||
pmurias | vixey: did you ci the executable? | 09:56 | |
vixey | no :S | ||
It turns out I made the test work but this interferes with bootstrapping | |||
pmurias | revert ;) | 09:57 | |
09:57
lisppaste3 left
|
|||
moritz_ | obra: could you please try to fix commitbit? it's down, and I don't know what to do | 10:02 | |
pmurias | vixey: you may have uncovered a bug, as the you commit seems to be correct | 10:05 | |
i'm looking into it | 10:07 | ||
vixey | I am trying to figure it out too | ||
10:13
ruoso joined
|
|||
obra | moritz_: what's wrong? | 10:16 | |
moritz_ | obra: 503 service temp. unavailable | 10:17 | |
pmurias | vixey: for $array -> $var {} and for $array {}, have different ast | ||
obra | so. I've logged into feather exactly twice. what's the apache errro log say? | ||
vixey | how do you look at the AST ? | ||
It's the same as with kp6? | |||
pmurias | if you use the -v option it prints out the ast | ||
vixey | oh cool | ||
pmurias | the format it prints ast out in actually sucks | 10:18 | |
moritz_ | obra: I just saw in /etc/sudoers that your name was associated with commit bit, so I thought you knew :/ | ||
pmurias | as it prints attribiutes as positionals in the order they are specified in nodes_create.pl | ||
obra | moritz_: at one point, I helped audrey triage it | 10:19 | |
moritz_ | [Fri May 23 12:19:40 2008] [error] proxy: HTTP: disabled connection for (commitbit.pugscode.org) | 10:20 | |
obra | did feather's ssh key change? | ||
moritz_ | yes | ||
obra | new key starts 44:88? | 10:21 | |
moritz_ | how do I find out? ;-) | ||
1024 cf:8c:46:ff:41:f5:b5:e0:07:73:3d:6b:30:7c:2f:56 /etc/ssh/ssh_host_dsa_key.pub | 10:23 | ||
2048 44:88:fb:48:cb:79:72:da:67:bd:18:4f:84:d9:2a:cf /etc/ssh/ssh_host_rsa_key.pub | |||
obra | moritz_: poking | ||
10:25
wknight8111 left
|
|||
obra | moritz_: it looks like someone upgraded perl and didn't install jifty. any chance that'swhat happened? | 10:27 | |
moritz_ | obra: yes, possible | ||
obra: debian unstable had the ->5.10.0 transition the other day | |||
obra | oh jesus. | 10:28 | |
moritz_ | if that's the only problem I can probably fix it | ||
obra | feather just takes debian stable update? | ||
well, that's the first problem | |||
s/stable/unstable/ | |||
pmurias | vixey: want be to fix the bug, or are you doing it yourself | 10:29 | |
? | |||
vixey | I think I just fixed it | ||
obra | assuming that jifty is nstalled, as www-data, you need to | ||
cd /data/svn/commitbit | |||
./bin/jifty server 6666 & | |||
moritz_ | ok, I'll try that | 10:30 | |
vixey | pmurias: the test works again, if this bootstraps shall I commit | ||
? | |||
pmurias | ;) | ||
yes | |||
obra | moritz_: I have my password and a small timeslice, so may be able to help as you try to get it going | ||
pmurias | you may also try mncharity's misc/elfish/showcode | 10:31 | |
pugs_svnbot | r20502 | fax++ | [elf] bootstrapping again *phew* | 10:32 | |
vixey | hm :S | 10:33 | |
ruoso | obra, are the modules installed using cpan? or using dh-make-perl/cpanplus-dist-deb? | 10:34 | |
moritz_ | ruoso: I'm just now building them with dh-make-perl | ||
ruoso have the update pending because of the whole lot of modules that needs to be recompiled | 10:35 | ||
pmurias | vixey: what does the :S refer to? | ||
ruoso | ruoso@pitombeira:~$ ls -1 /home/ruoso/devel/perlmodules/*.deb | wc -l | ||
56 | |||
pmurias, usually :S is a smiley ;) ;) | 10:36 | ||
vixey | pmurias: it turns out that $n.block.WHAT eq 'SubDecl' doesn't get triggered | ||
moritz_ | moritz@trudi:~>ls install/lib*perl*.deb debian/lib*perl*.deb|wc -l | ||
86 | |||
ruoso: I won ;) | |||
ruoso | geez | ||
are you upgrading already? | |||
moritz_ | that was my local machine | 10:37 | |
I'm currently working on feather | |||
ruoso | that was my local too | ||
but this upgrade makes me regret not taking the time to package the modules properly and upload to debian... | 10:38 | ||
the transition would come for free | |||
moritz_ | aye | ||
pmurias | vixey: got to run for lunch& | 10:39 | |
vixey | (I got it bootstrapping and the test working now) | 10:40 | |
moritz_ | ruoso: are you a debian developer? | ||
pmurias | i guess that "if it bootstraps you can commit" is the guideline | 10:41 | |
ruoso | moritz_, yes... | ||
10:41
pmurias left
|
|||
ruoso | moritz_, one of the "debian perl group" founders.. ;) | 10:41 | |
moritz_ | ruoso: my dream would be a cpan mirror that automagically builds debian packages from all modules | 10:43 | |
ruoso | I was thinking... | 10:44 | |
and I think it should be possible to do a debian source repository directly from cpan | 10:45 | ||
and then use apt-build | |||
moritz_ | problem is that some modules have external dependencies that aren't declared anywhere | ||
ruoso | moritz_, that's the main reason why debian packages for perl modules are always human-reviewed | 10:46 | |
the other is proper copyright proof-reading | 10:49 | ||
pugs_svnbot | r20503 | fax++ | [elf] bootstrapping again and for working with SubDecls | ||
ruoso | moritz_, are you aware that you can work with packaging of perl modules for debian without being a debian developer? | 10:52 | |
moritz_ | ruoso: I am, but atm I lack tuits and (skill/practice) | ||
ruoso | moritz_, when you have any time... get to #debian-perl@oftc.. | 10:53 | |
people there are usually very helpful | |||
you can also register in alioth and ask for membership... | |||
memberships on the debian perl group usually follows the same policy as pugs commitbit | |||
moritz_ | ;) | 10:54 | |
11:03
icwiener joined
|
|||
vixey thinks that .. STD_red std.rb doesn't parse post if? | 11:06 | ||
11:09
laye left
|
|||
moritz_ | obra: I installed all dependencies (d'oh what a mess) and now I get | 11:10 | |
bind: Permission denied at /usr/share/perl5/HTTP/Server/Simple.pm line 697, <DATA> line 16. | |||
(after './bin/jifty server 6666') | |||
Juerd | obra: Yes, feather's ssh key changed. No, feather does not take from Debian Stable, but instead Unstable (sid). Stable is not up-to-date enough for feather's purpose. | ||
obra | oh. it may be --port 6666 | 11:26 | |
moritz_ | YaY, works! | 11:29 | |
commitbit is up again | |||
Juerd | obra++ | 11:32 | |
obra | moritz_++ # did all the work | 11:33 | |
Juerd | Oh, moritz | ||
Oh, moritz++ then | 11:34 | ||
(+ is too close to enter on dvorak) | |||
(Or maybe someone with inaccurate fingers just shouldn't type) | |||
obra | I just logged in and looked at where it was installed :) | ||
pugs_svnbot | r20504 | fax++ | [elf] for loop is now sane | 11:37 | |
vixey | what does .pm stand for? | 11:38 | |
Juerd | Perl Module | 11:39 | |
moritz_ | or "perl mongers group" (depending on context) | 11:40 | |
11:50
FurnaceBoy joined
11:51
pmurias joined
11:53
alc left
|
|||
pugs_svnbot | r20505 | pmurias++ | [elf] propagated working for's (vixey++) into the executable | 12:01 | |
12:03
pmurias left
|
|||
pugs_svnbot | r20506 | fax++ | [elf] added a bit to Match.pm making t/kp6/30-prelude-match.t pass | 12:04 | |
vixey | tests are supposed to print out like | 12:16 | |
1..4 | |||
ok 1 | |||
ok 2 | |||
if a test prints | 12:17 | ||
1..4 | |||
ok | |||
is that a bad test? | |||
(e.g. ../../../v6/v6-KindaPerl6/t/kp6/45-for.t) | |||
moritz_ | don't know, maybe it's described here? en.wikipedia.org/wiki/Test_Anything_Protocol | 12:18 | |
vixey | oh I didn't know it was an actual format, thanks | ||
moritz_ | TAP expects the ok or not ok to be followed by a test point number. If there is no number the harness must maintain its own counter until the script supplies test numbers again. So the following test output | ||
12:18
ispy_ joined
|
|||
moritz_ | 1..6 | 12:18 | |
not ok | |||
ok | |||
not ok | |||
ok | |||
has five tests. The sixth is missing. Test::Harness will generate | |||
FAILED tests 1, 3, 6 | 12:19 | ||
Failed 3/6 tests, 50.00% okay | |||
search.cpan.org/~petdance/TAP-1.00/TAP.pm | |||
lambdabot | Title: TAP - The Test Anything Protocal - search.cpan.org | ||
moritz_ | to summarize: it's ok, but it's not nice ;) | 12:20 | |
does run_tests use elf_f_faster by default? | 12:23 | ||
vixey | no I think it's got to be make run_tests_faster for elf_f_faster | ||
it'll use elf_f otherwise | 12:24 | ||
moritz_ | ./run-tests elf_f_faster | 12:25 | |
vixey | but I think that it's not checking the test results perfectly | ||
(when it doesn't have numbers after each ok) | |||
moritz_ | it uses its own parser? | 12:26 | |
vixey | yes | 12:33 | |
moritz_ | @karma vixey | 12:38 | |
lambdabot | vixey has a karma of 1 | ||
moritz_ | @karma fax | ||
lambdabot | fax has a karma of 26 | ||
pmichaud | pugs: say(1, 2, c=>3, 4); | 12:41 | |
exp_evalbot | OUTPUT[*** Named argument found where no matched parameter expected: ("c",Ann (Pos (MkPos "/tmp/DkyrPI9Zgf" 1 14 1 15)) (Val (VInt 3))) at /tmp/DkyrPI9Zgf line 1, column 1-19] | ||
pmichaud | pugs: say((1, 2, c=>3, 4)) | ||
exp_evalbot | OUTPUT[12c 34] | ||
moritz_ | pugs: say \(1, 2, c => 3, 4) | ||
exp_evalbot | OUTPUT[CaptSub {c_feeds = [:MkFeed {f_positionals = [:IFinite 1,IFinite 2,IFinite 4:], f_nameds = fromList [("c",[:IFinite 3:])]}:]}] | ||
pmichaud | pugs: say(list(1, 2, c=>3, 4)) | ||
exp_evalbot | OUTPUT[12c 34] | ||
12:42
wknight8111 joined
|
|||
pmichaud | okay.... why does list(1, 2, c=>3, 4) work? | 12:43 | |
but say(1, 2, c=>3, 4) doesnt? | |||
moritz_ | pmichaud: because c=>3 is a named argument | 12:44 | |
pmichaud: whereas list(...) is a single list | |||
pmichaud | yes, that's kinda my point. why isn't it a named argument to list? | ||
moritz_ | pmichaud: it is, but I guess that list() has a slurpy signature | ||
pmichaud | say has a slurpy signature. | ||
moritz_ | uhm | 12:45 | |
maybe list() is a "magic" operator? | |||
pmichaud | pugs: (1, 2, c=>3, 4).say | 12:46 | |
exp_evalbot | OUTPUT[12c 34] | ||
moritz_ | pugs: say (1, 2, c=>3, 4).WHAT | 12:47 | |
exp_evalbot | OUTPUT[Array] | ||
12:48
cmarcelo joined
|
|||
pmichaud | pugs: my &sub = &list; say &sub(1, 2, c=>3, 4).WHAT; | 12:52 | |
exp_evalbot | OUTPUT[*** Can't modify constant item: VStr "MkCode {isMulti = True, subName = \"&\", subType = SubPrim, subOuterPads = [], subInnerPad = MkPad (padToList []), subPackage = , subAssoc = AIrrelevantToParsing, subParams = [], subBindings = [], subSlurpLimit = [], subReturns = (mkType \"Any\"), | ||
..subLValue = False, subBody = Prim ([Pugs.AST.Internals... | |||
pmichaud | my &f = &list; say f(1, 2, c=>3, 4).WHAT; | ||
pugs: my &f = &list; say f(1, 2, c=>3, 4).WHAT; | |||
exp_evalbot | OUTPUT[*** Can't modify constant item: VStr "MkCode {isMulti = True, subName = \"&\", subType = SubPrim, subOuterPads = [], subInnerPad = MkPad (padToList []), subPackage = , subAssoc = AIrrelevantToParsing, subParams = [], subBindings = [], subSlurpLimit = [], subReturns = (mkType \"Any\"), | ||
..subLValue = False, subBody = Prim ([Pugs.AST.Internals... | |||
moritz_ | pugs: my &f := &list; say f(1, 2, c=>3, 4).WHAT; | 12:53 | |
exp_evalbot | OUTPUT[*** Named argument found where no matched parameter expected: ("c",Ann (Pos (MkPos "/tmp/dNAFlSgTTm" 1 32 1 33)) (Val (VInt 3))) at /tmp/dNAFlSgTTm line 1, column 21-42] | ||
pmichaud | looks like perhaps list is "special" | ||
moritz_ | so list *is* special in pugs | ||
pmichaud | (thanks for the := hint) | 12:54 | |
moritz_ | I never understood why you need it, though ;) | 12:55 | |
pmichaud | because in list(), the order of "named arguments" (pairs) and positionals is significant | 12:56 | |
but in other functions, it's not. | |||
foo(1, 2, c=>3, 4) is the same as foo(1, 2, 4, c=>3) | |||
but not for "list" | |||
moritz_ | aye | 12:57 | |
pmichaud | so I was wondering how that worked | ||
moritz_ | so do we need the ability to flatten a capture in order? | ||
or special case list() parsing? | 12:58 | ||
pmichaud | I don't know. Probably a question for TimToady and p6l. I'm hoping that "list" is special | ||
because if we need the ability to keep track of position of named arguments, then that's going to throw Parrot's named argument handling for a loop | |||
12:59
alester joined,
alester left
|
|||
moritz_ | and I could imagine it would complicate MMD even further | 13:00 | |
pmichaud | I'm not going there this morning until I've had a Dr. Pepper. :-) | 13:01 | |
moritz_ | going where? p6l? or MMD? | ||
pmichaud | MMD. | ||
13:09
vixey left
13:12
cmarcelo left
|
|||
pmichaud | pugs: say(1, (2, 3,), 4); | 13:24 | |
exp_evalbot | OUTPUT[1234] | ||
pmichaud | pugs: say(1, (c=>2), 3); | ||
exp_evalbot | OUTPUT[1c 23] | ||
pmichaud | pugs: my @a = (2, 3); say(1, @a, 4); | 13:25 | |
exp_evalbot | OUTPUT[1234] | ||
13:43
meppl joined
14:01
snooper is now known as pbuetow
14:03
rindolf joined
14:06
rdice joined
14:16
eternaleye left
14:18
FurnaceBoy left
14:19
alester joined
14:25
chris2 joined,
IllvilJa left
14:40
TJCRI joined
14:50
sscaffidi joined
15:07
TimToady left
15:15
jhorwitz joined
15:17
cjfields joined,
Ched- left
15:20
rindolf left
15:21
Ched- joined
15:27
justatheory joined
15:36
ispy_ left
15:42
[particle1 joined
15:43
cjfields_ joined
15:44
[particle] left,
[particle1 is now known as [particle]
15:45
kaether joined
|
|||
Auzon | Hi all. Does anyone have Elf running on Debian stable? It's complaining about a strscan library somehow, but strscan's web page says it should be built in all modern Rubys. | 15:48 | |
moritz_ | Auzon: debian stable doesn't have suficciently new ruby | 15:49 | |
Auzon: but try install libstrscan-ruby nonetheless | 15:50 | ||
Auzon | The Ruby I'm using is compiled from source | ||
moritz_ | Auzon: would you care to join #parrot on irc.perl.org? | ||
Auzon | Sure | ||
moritz_ | Auzon: we're currently discussing your weekly reports ;) | ||
pmichaud | I propose we move the discussion here. :-) | ||
we might need to wait for particle -- he may be comcast lagged again :-) | 15:51 | ||
moritz_ | I don't insist on regular interactive meetings | ||
[particle] | Auzon: it's probably a good idea for you to keep #parrot open always | 15:52 | |
Auzon | ok, [particle] | ||
moritz_ | as long as we have sufficient conversation here, which has so far always been the case | ||
Auzon | Hm. Was I in there before? | ||
moritz_ | Auzon: do you have a soc channel/tag/whatever that can tracked via rss? | ||
Auzon: then it could be aggregated on planet{perl6,parrot} | 15:53 | ||
Auzon | I have a blogger account, which I'm currently planning on using it. | ||
pmichaud | probably not planetparrot. | ||
[particle] | Auzon: i'm not sure. but there is cross-talk about rakudo and testing in #parrot and #perl6, so it might help if you are available in both channels | ||
Auzon | It's auzon.blogspot.com -- let me find the tag | ||
lambdabot | Title: Auzon's Blog | ||
[particle] | Auzon: we've been talking about weekly interactive meetings for your project. would you benefit from that, or do you think informal #perl6 communication + email + blog is enough? | 15:54 | |
Auzon | auzon.blogspot.com/search/label/gsoc2008 <--- Strictly related to SoC | ||
lambdabot | Title: Auzon's Blog: gsoc2008 | ||
Auzon | [particle]: What do you mean by weekly interactive meetings? | 15:55 | |
moritz_ | either phone or IRC conference | ||
with fixed times | |||
like #parrotsketch and "design minutes" | |||
[particle] | every tuesday, there's a parrot status meeting in #parrotsketch on irc.perl.org | ||
Auzon | I think that the informal stuff works better, even though I can easily be available at fixed times. | 15:56 | |
[particle] | in previous years, parrot gsoc-ers attended | ||
they would report their status, and be able to ask questions of the core committers | |||
i plan on continuing that this year for the parrot projects | |||
pmichaud | from my experience as a mentor (both gsoc and other academic projects), it's much easier if there's a regular set time for meeting. | ||
s/easier/better/ | |||
[particle] | but your project is a bit different, since it's not directly parrot-related | 15:57 | |
yes, i prefer a regularly-scheduled meeting | |||
15:57
eternaleye joined
|
|||
pmichaud | even if the meeting consists of nothing more than "well, I was busy this week so didn't get much done", it's worth having the meeting. | 15:57 | |
Auzon | Alright. We can do that then. | ||
pmichaud | in one of my gsoc projects we didn't have weekly meetings, and as a result we didn't get a good feel for the progress (or slowness of it) | 15:58 | |
moritz_ | ok. When? | ||
pmichaud | you all can set the time that's convenient for you. My schedule is fairly open. | ||
moritz_ | tuesday to thursdeay would be fine by me | 15:59 | |
pmichaud | (I'd like to attend, but obviously that's not a requirement.) | ||
moritz_ | ideally GMT+2 waking times ;) | ||
Auzon | Well, I think we have some timezones to coordinate :) | ||
moritz_: What's $localtime in ~2 hours? | |||
[particle] | how about wednesday, plan on 30m meetings | ||
pmichaud | I'm GMT-5, but my schedule is flexible enough that it doesn't really matter. | ||
[particle] | just before the perl 6 design concall | 16:00 | |
moritz_ | Auzon: it's 8pm localtime in 2 hours, which is fine by me | ||
16:00
cjfields left
|
|||
[particle] | pmichaud: does that work for you? | 16:00 | |
pmichaud | perl6 design concal is UTC 20h00, fwiw | ||
so this would put test meetings at UTC 19h30 ? | |||
[particle] | so, wednesday 1930UTC | ||
yep | |||
moritz_ | where? | ||
pmichaud | I may have to miss next week's meeting due to picking up kids, but other than that it's okay. | ||
(after that is no school so won't matter.) | 16:01 | ||
[particle] | heh, cool. | ||
Auzon | That works for me. | ||
16:01
cjfields_ is now known as cjfields
|
|||
[particle] | #perl6-soc on freenode | 16:01 | |
pmichaud | that also works out well because if there are any significant Perl 6 design issues then we can carry those over to the design meeting. | ||
moritz_ | [particle]: ok | ||
pmichaud | works for me. | ||
[particle] | pmichaud: precisely my thoughts | ||
pmichaud | will #perl6-soc be logged? | 16:02 | |
(if not, can it be?) | |||
[particle] | if anybody has tuits, it'd be nice to have it logged | ||
moritz_ | yes | ||
I have the logger up anyway | |||
[particle] | moritz_++ | ||
pmichaud | sounds like a plan. | ||
moritz++ particle++ Auzon++ | |||
moritz_ | and pmichaud++ | ||
[particle] | thanks all! | ||
feel free to join #perl6-soc now, everyone reporting, and wishing just to watch | 16:03 | ||
16:04
pbuetow left,
pbuetow joined,
ilbot2 left
16:05
ilbot2 joined
|
|||
Auzon | I have a mild dislike for DST after trying to calculate those times. It works better than I thought though. | 16:05 | |
moritz_ | Auzon: same here ;) | 16:08 | |
Auzon: btw did you see eric's call for a first report? | |||
Auzon | Yes. | ||
moritz_ | good. | ||
Auzon | I decided against typing something up at 1am localtime. | 16:09 | |
moritz_ | hehe | ||
pugs_svnbot | r20507 | moritz++ | [irclog] | 16:12 | |
r20507 | moritz++ | * allow '-' in channel names | |||
r20507 | moritz++ | * few more abbreviations | |||
r20508 | moritz++ | [irclog] allow '-' in channel names in .htaccess | |||
Juerd | I'm impressed with how fast you people discussed the weekly meetings and reached concensus and already took action by setting up a logged channel. | ||
pmichaud | you missed some of the pre-discussion on #parrot, maybe? | ||
Juerd | I did | ||
moritz_ | yeah, but that was only about 5 additional minutes | ||
if at all | |||
Juerd | Should I be less impressed? :) | ||
pmichaud | particle started discussion at 15:39, we had conclusion and logging bot at 16:04 | 16:13 | |
so, 25m :-) | |||
Juerd | Still nice. | ||
pmichaud | yes, I agree. | ||
16:13
armagad joined
|
|||
pmichaud | you'd be more impressed if you saw the parrot discussion, though, because we disposed of some options and possibilities fairly quickly :-) | 16:14 | |
Juerd | Sometimes it takes me a few hours to reach a similar decision, in business context. | ||
And I really hate that waste of time, but it's often necessary. | |||
pmichaud: Hehe. | |||
[particle] | (waste of time)-- | 16:20 | |
16:25
pbuetow left,
wknight8111 left
16:26
wknight8111_ joined
16:28
wknight8111_ left
16:29
wknight8111 joined
16:30
Psyche^ joined,
Patterner left,
Psyche^ is now known as Patterner
16:37
FurnaceBoy joined
16:40
smtms left
16:42
smtms joined
16:51
FurnaceBoy left
16:56
masak left
|
|||
pugs_svnbot | r20509 | Auzon++ | Adding elf support to exp_evalbot | 17:00 | |
Auzon | moritz_: I just need to put Ruby in $PATH, and I think we're ready to go | ||
and I forgot to prefix that commit message with []. :-/ | 17:01 | ||
moritz_ | Auzon: ok, tell me where ruby lives ;) | ||
17:01
eternaleye_ joined
|
|||
Auzon | /home/evalenv/ruby/ is the prefix, so /home/evalenv/ruby/bin. I don't know if Ruby is relocatable | 17:02 | |
moritz_ | Auzon: or should we just update the chroot to testing and run it with that? | ||
Auzon | Elf runs, given that addition to PATH. I don't see a reason to upgrade the whole chroot yet | ||
moritz_ | ok | 17:03 | |
Auzon | Compiling Ruby was easy enough. Just ./configure; make; make install | ||
The problems I had was because I compiled it outside of the chroot, then moved it inside | |||
moritz_ | ok, what should I add to path? | ||
Auzon | /home/evalenv/ruby/bin | ||
17:04
exp_evalbot left
|
|||
Auzon | (or I can have ruby install in /usr/local/bin) | 17:04 | |
moritz_ | no, that's fine | ||
17:04
exp_evalbot joined
|
|||
moritz_ | elf: say "hi" | 17:04 | |
exp_evalbot | OUTPUT[/usr/bin/env: perl: No such file or directory] | ||
moritz_ | pugs: say "hi" | 17:05 | |
exp_evalbot | OUTPUT[hi] | ||
moritz_ | /usr/bin/env perl -wle 'print "foo"' | 17:06 | |
foo | |||
Auzon | env can't find perl? That's bizarre. | ||
moritz_ | works in evalbot environment | ||
indeed | |||
Auzon | elf: say "hi" | 17:07 | |
exp_evalbot | OUTPUT[/usr/bin/env: perl: No such file or directory] | ||
17:07
kanru joined
|
|||
Auzon | elf: say "hi" | 17:08 | |
exp_evalbot | OUTPUT[Can't exec "cat": No such file or directory at ./elf_f line 217.Permission denied at ./elf_f line 219.] | ||
17:08
armagad left
|
|||
Auzon | We should also switch to elf_f_faster so we get sub-5s runtimes | 17:09 | |
Seems like evalbot's environment is wrong | 17:10 | ||
moritz_ | yes | ||
17:10
exp_evalbot left,
exp_evalbot joined
|
|||
moritz_ | rakudo: say "hi" | 17:11 | |
exp_evalbot | OUTPUT[hi] | ||
moritz_ | elf: say "hi" | ||
[particle] | can you include nqp in exp_evalbot, but not have it respond to perl6: ? | ||
exp_evalbot | OUTPUT[Permission denied at ./elf_f line 219.] | ||
moritz_ | nqp: say("hi") | ||
exp_evalbot | OUTPUT[hi] | ||
[particle] | perl6: say "hi" | ||
exp_evalbot | kp6: OUTPUT[hi] | ||
..pugs: OUTPUT[hi] | |||
..rakudo: OUTPUT[hi] | |||
..elf: OUTPUT[Permission denied at ./elf_f line 219.] | |||
moritz_ | Auzon: where does elf keep its temporary files? | ||
[particle] | ah, perfect :) | ||
Tene | perl6: say "particle++" | ||
Auzon | pugs/misc/elf has a bunch of deleteme files. | ||
exp_evalbot | kp6: OUTPUT[particle++] | 17:12 | |
..pugs: OUTPUT[particle++] | |||
..rakudo: OUTPUT[particle++] | |||
..elf: OUTPUT[Permission denied at ./elf_f line 219.] | |||
moritz_ | Auzon: evalbot (the user) doesn't have write permissions anywhere in evalenv's home | ||
Auzon | Let me look at evalbot.pl again then | ||
moritz_ | Auzon: so either change the permissions to be somewhat more permissive (preferred) or generate temp files in /tmp/ | ||
Auzon | oh ok | 17:13 | |
elf: say "hi" | |||
exp_evalbot | OUTPUT[hi] | ||
[particle] | pugs: my @a = 1,2,3; say @a.perl | ||
exp_evalbot | OUTPUT[[1, 2, 3]] | ||
Auzon | elf: say "hi" | 17:14 | |
exp_evalbot | OUTPUT[hi] | ||
moritz_ | Auzon++ | 17:15 | |
pugs_svnbot | r20510 | Auzon++ | [evalbot] use elf_f_faster instead of elf_f for speed reasons. | ||
Auzon | elf: say "hi" | ||
exp_evalbot | OUTPUT[hi] | ||
Auzon | Try restarting it. It should finish in ~1s now | ||
moritz_ restarts evalbot to make the changes effective | |||
17:15
exp_evalbot left
17:16
exp_evalbot joined
|
|||
Auzon | elf: say "hi" | 17:16 | |
exp_evalbot | OUTPUT[hi] | ||
moritz_ | w00t | ||
[particle] wants an evalbot on parrot that works for all pct-based hlls | |||
moritz_++ Auzon++ | 17:17 | ||
Tene | Can we do sockets on parrot yet? | ||
moritz_ | [particle]: feel free to shamelessly plagiarize evalbot (although it's a quick'n'dirty hackery) | ||
Tene | Get me sockets on parrot and I'll do it this weekend. | ||
moritz_ | Tene: you don't need sockets for that ;) | 17:18 | |
Tene | Wait, did you want an evalbot that *runs* on parrot, or just an evalbot that runs parrot *languages*? | ||
[particle] | runs parrot languages | ||
17:18
eternaleye left
|
|||
moritz_ | Tene: nqp, rakudo, kp6 and elf don't support sockets ;) | 17:18 | |
[particle] | don't care how it's implemented, as long as it's stable | ||
Tene | moritz_: it was the "on parrot" that got me. | 17:19 | |
moritz_ | Tene: ah, ok ;) | ||
[particle] | oops, i meant on #parrot | ||
Tene | Sure, I'll look at that this weekend. Where's exp_evalbot? | ||
[particle] | pugs repo | 17:20 | |
Tene | and is exp_evalbot stable? | ||
Auzon | Tene: pugs/misc/evalbot | ||
[particle] | seems to be stable enough for me | ||
Tene | I see several reconnects in the scrollback... | ||
Auzon | That was to make changes happen. | ||
[particle] | right. | 17:21 | |
Tene | Oh, okay. | ||
Alright, then. Sure. | |||
[particle] | does it reconnect when one of the languages is rebuilt? | ||
Auzon | It doesn't need to. It only needs to reconnect when its source changed. | ||
moritz_ | it launches HLLs through external processes | ||
[particle] | ah, ok | ||
is there a way to tell what revisions of the hlls are built for evalbot? | 17:22 | ||
moritz_ | no, you'd have to provide that by external means | ||
[particle] | ok | ||
Auzon | sn updates are provided by a cronjob. | 17:23 | |
*svn | |||
moritz_ | for example make the build script store the revision in some file | ||
Auzon | lunch & | ||
Thanks for your help moritz_ :) | 17:24 | ||
moritz_ | Auzon: np | ||
moritz_ can either host parrots evalbot on the same server as Perl 6's evalbot runs now | 17:25 | ||
or Juerd offered root access to a dedicated evalbot-VM on feather (feather2) | |||
17:29
nipotaway is now known as nipotan
17:49
TJCRI left
|
|||
[particle] | pugs: say (1,2).perl | 17:55 | |
exp_evalbot | OUTPUT[(1, 2)] | ||
17:57
rindolf joined
|
|||
moritz_ | @karma particle | 17:58 | |
lambdabot | particle has a karma of 11 | ||
moritz_ | @karma [particle] | ||
lambdabot | [particle] has a karma of 5 | ||
moritz_ | (dual nicks)-- ;) | ||
[particle] blames nickserv | 17:59 | ||
18:05
TJCRI joined
18:06
vixey joined
18:13
pmurias joined
|
|||
[particle] | pugs: say (1).perl | 18:17 | |
exp_evalbot | OUTPUT[1] | ||
pmurias | moritz_: re sockets you can have sockets in elf if you use eval_perl5('use IO::Socket') | ||
vixey | elf: say "foo'.WHAT | 18:19 | |
exp_evalbot | OUTPUT[Parse error in: /tmp/wUnLokqqi4panic at line 1 column 5 (pos 5): Error in quotesnabberWHERE: say "foo'.WHATWHERE: /\<-- HERE STD_red/prelude.rb:98:in `panic' STD_red/std.rb:1281:in `quotesnabber' (eval):1:in `__quote_1581796' STD_red/prelude.rb:404:in `block in | 18:20 | |
..longest_token_match' STD_red/prelude.rb:400:in `each' STD_r... | |||
vixey | elf: say "foo".WHAT | ||
exp_evalbot | OUTPUT[Str] | ||
vixey | why is WHAT all caps? | ||
elf: my $foo = "foo"; say $foo.WHAT | |||
exp_evalbot | OUTPUT[Str] | ||
Tene | perl6: my $foo "foo"; say $foo.WHAT | 18:22 | |
exp_evalbot | kp6: OUTPUT[Undef] | ||
..pugs: OUTPUT[***  Unexpected "\"" expecting "?", "!", trait, "=", infix assignment or operator at /tmp/V7FCbODK55 line 1, column 10] | |||
..rakudo: OUTPUT[Statement not terminated properly at line 1, near "\"foo\"; say"current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)called from Sub 'parrot;Perl6::Grammar;statementlist' pc 18329 (src/gen_grammar.pir:2735)called from Sub | |||
..'parrot;Perl6::Grammar;statement_block' pc 15175 (src/gen_grammar.pir:1613)called... | |||
..elf: OUTPUT[Parse error in: /tmp/q0mDk8jJhHpanic at line 1 column 0 (pos 0): Can't understand next input--giving upWHERE: my $foo "foo"; say $foo.WHATWHERE:/\<-- HERE STD_red/prelude.rb:98:in `panic' STD_red/std.rb:76:in `scan_unitstopper' STD_red/std.rb:224:in `comp_unit' | |||
..STD_red/std.rb:210:in `_UNIT' ./../STD_red/STD_red_run:108:in `m... | |||
Tene | perl6: my $foo = "foo"; say $foo.WHAT.WHAT | ||
exp_evalbot | kp6: OUTPUT[Str] | ||
..pugs: OUTPUT[Str] | |||
..rakudo: OUTPUT[Str] | |||
..elf: OUTPUT[Str] | |||
[particle] | rakudo: say (1,2).perl | 18:23 | |
exp_evalbot | OUTPUT[Method 'perl' not found for invocant of class 'List'current instr.: '_block11' pc 49 (EVAL_11:20) | ||
[particle] | rebuild rakudo you silly bot :P | ||
moritz_ acts as silly bot and rebuilds rakudo | 18:25 | ||
rakudo: say (1,2).perl | |||
Auzon | Dang, beat me to it ;) | ||
exp_evalbot | OUTPUT[(1, 2)] | ||
moritz_ | ;) | ||
[particle] | \o/ | ||
Auzon | [particle]: Parrot and friends are updated on the hour. Anything living in Pugs is updated every few minutes. | 18:26 | |
moritz_ | Auzon: if you feel like it you could make another cron job that rebuilds rakudo every 5 minutes or so | ||
Auzon: rakudo compiles fairly fast compared to parrot | |||
[particle] | hourly! how am i supposed to show off if i have to wait that long :) | ||
moritz_ | the fast pugs updates are an artifact from the times of fast kp6 development | 18:27 | |
Auzon | We probably could reduce it to 10 minutes without issue. | ||
Better yet, we could have the svnbot(s) use the same repo. | |||
moritz_ | but svnbot should poll far more often than the languages should rebuild | 18:28 | |
[particle] | svnbot on parrot is every 6m iirc | 18:29 | |
Auzon | We could have it trigger rebuilds when new updates are found. | ||
moritz_ | Auzon: but only if you can find a scheme that interups already running updates | ||
Auzon: I don't want to stack builds on the CPU | |||
[particle] | where's the svnbot here? | 18:30 | |
moritz_ | good question | ||
Auzon | We have pugs_svnbot and speckbot | ||
[particle] | ah, there's pugs_svnbot... wasn't there one for rakudo? | ||
moritz_ | [particle]: yes, i'll restart it in a bit... | ||
[particle] | kk | ||
Tene | Looke like I can build rakudo in 17s | 18:31 | |
18:31
rakudo_svn joined
|
|||
rakudo_svn | r27769 | particle++ | [rakudo] classes must respect their own apis. converted all C<elements self> to C<self.'elements'()> in List | 18:31 | |
Auzon | What do you say, moritz_? Build rakudo and svn up pugs every 5 minutes? | ||
moritz_ | Auzon: sounds good | ||
pmurias | vixey: re WHAT to reasons, not to conflict with the .what method, secondly all the introspection/metaprogramming methods are all caps to stand out as they are unusual | 18:34 | |
Auzon | moritz_: Are any of the helper scripts in a repository? | 18:35 | |
pmurias | Tene: 17s, that's fast | 18:36 | |
rakudo_svn | r27770 | particle++ | [rakudo] List.perl should use square brackets. pmichaud++ | ||
Tene | real 0m16.704s | ||
user 0m21.158s | |||
sys 0m0.593s | |||
moritz_ | user > real? how can that happen? | 18:37 | |
multi core? | |||
Tene | yeah | ||
[particle] | multicore++ | ||
Auzon | New cronjobs should be running. | ||
moritz_ | funny, I have a dual core myself and never noticed it | ||
Tene | moritz_: make -j | ||
well, -j 3 | 18:38 | ||
moritz_ | Tene: I used 'make -j $num' quite often, but I seldom time it (or I don't look at the output close enough to notice) | ||
[particle] | that's because it's too fast to care about | 18:39 | |
Auzon | multicore++ indeed. I use TAP::Harness for parallelized testing in Perl 5. | ||
[particle] | perl 5's make -j test rocks | ||
moritz_ | aye | ||
pmurias | vixey: if you have any elf questions/requests, feel free to ask | ||
Tene | Looks like I can also build parrot in 17s | ||
moritz_ | and parrots works also | ||
[particle] | tene: ccache? | 18:40 | |
Tene | no | ||
moritz_ | Tene: how many cores? ;-) | ||
Tene | 8 | ||
Auzon | :O | ||
[particle] | oh. | ||
moritz_ | Tene: or is 'make' an alias to 'sleep 17'? ;-) | ||
Tene | Heh. | ||
no, it takes 1m16s user | |||
vixey | pmurias: well I'm curious about where it's going next | ||
Auzon | vixey: As I understand it, elf's featureset is growing on a request and "what gets us more progress?" basis | 18:41 | |
I believe "more progress" is currently tests. | 18:42 | ||
moritz_ would wish passing t/01-sanity/* | |||
vixey | ok cool | ||
oh | |||
pmurias | hard question, mncharity will propably pursue the test suit, i'm more interested in removing hacks and getting the sm0p grammar to work | ||
vixey | How would := be implemented ? | ||
moritz_ | vixey: typically assignment to containers | ||
perl 5's 'make -j 4' finished for me | 18:43 | ||
real 1m37.455s | |||
user 2m47.604s | |||
multicore++ indeed ;) | |||
18:43
tobeya joined
|
|||
moritz_ | vixey: are you familiar with containers/values? | 18:44 | |
vixey | moritz_: I haven't seen it done in p5 | ||
moritz_ | vixey: well, perl 5 doesn't natively support binding | 18:45 | |
(though Data::Alias and Data::Bind seem to be pretty good) | |||
but you can achieve things with glob hackery | |||
pmurias | globs work on globals only | 18:46 | |
moritz_ | yes, that's the drawback | 18:48 | |
pmurias | Data::Alias sounds clever/fast | 18:50 | |
s/sounds/looks | |||
18:51
meppl left
|
|||
pmurias | moritz_: why is passing sanity tests important to you? | 18:52 | |
vixey | hehe | ||
moritz_ | pmurias: the features used there are also used all over the test suite | 18:53 | |
pmurias: at least mot of them | |||
pmurias: and I think it would help get elf wildly accepted as a "serious" implementation | |||
Auzon | Would it be bad for me to start writing/committing test cases for gsoc2008 now? | 18:54 | |
moritz_ | Auzon: why should it? because the program starts on monday officially? | ||
Auzon | Yep. That's the only thing I can think of. | 18:55 | |
moritz_ | Auzon: go right ahead with writing/commiting ;) | ||
Auzon: above all perl 6 development should be fun, and we don't care very much for formalism (except where we want ;) | 18:56 | ||
Auzon | Sounds good. | 18:57 | |
rakudo_svn | r27772 | jkeenan++ | Set SVN properties; tag. Add copyright statement. | 18:59 | |
moritz_ | Tene: re 8 cores, I've seen a presentation on how fast one can rebuild the entire debian distribution if one has unlimited number of machines... turns out to be less than three hours ;) | ||
18:59
ruoso left
|
|||
moritz_ | turns out it blocks on the huge openoffice.org packages that can't be easily build across multiple machines | 19:00 | |
Auzon | perl6: use strict; | 19:01 | |
exp_evalbot | kp6: RESULT[DISPATCH: calling on invalid object:$VAR1 = 'perl'; at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 128 main::DISPATCH('perl') called at - line 11] | ||
..pugs: OUTPUT[pugs: *** Unsafe function 'use' called under safe mode at /tmp/E8YdZmozVJ line 1, column 1] | |||
..rakudo: OUTPUT[Error: file cannot be read: strict.pmcurrent instr.: 'parrot;PCT::HLLCompiler;panic' pc 156 (src/PCT/HLLCompiler.pir:103)called from Sub 'require' pc 7614 (src/gen_builtins.pir:5348)called from Sub 'use' pc 7580 (src/gen_builtins.pir:5329)called from Sub '_block11' pc 28 | |||
..(EVAL_9:15)called from Sub 'parrot;PCT::HLLCompiler;eval' pc 78... | |||
..elf: OUTPUT[Cant locate strict in ( . ).] | |||
Auzon | Are there any sort of strictures implemented so far? | 19:02 | |
[particle] | auzon: there's no strict in perl 6 | ||
they're on by default | |||
moritz_ | unless on the -e command line | 19:03 | |
Auzon | OK. So... | ||
perl6: $test = 5; say $test; | |||
exp_evalbot | kp6: OUTPUT[5] | ||
..pugs: OUTPUT[***  Unexpected " =" expecting "::" Variable "$test" requires predeclaration or explicit package name at /tmp/5Pm3VOXURb line 1, column 6] | |||
..rakudo: OUTPUT[Scope not found for PAST::Var '$test'current instr.: 'parrot;PCT::HLLCompiler;panic' pc 156 (src/PCT/HLLCompiler.pir:103)called from Sub 'parrot;PAST::Compiler;post_children' pc 1671 (src/PAST/Compiler.pir:362)called from Sub 'parrot;PAST::Compiler;inline' pc 5069 | |||
..(src/PAST/Compiler.pir:1437)called from Sub 'parrot;PAST::Compiler;pos... | |||
..elf: OUTPUT[Global symbol "$test" requires explicit package name at (eval 10) line 3.Global symbol "$test" requires explicit package name at (eval 10) line 4. at ./elf_f_faster line 4353] | |||
[particle] | and context sensitive. Perl 5 code is not strict by default, while | ||
Perl 6 code is. But it should be easy to relax with C<-e> or | |||
a bare version number: | |||
--S01 | |||
Auzon | Right. I'm looking for a way to write a test for that. | 19:04 | |
moritz_ | I'd except a "no strict;" to still work | ||
Auzon: take a look at ext/Test/lib/Test.pm | |||
Auzon: you'll probably want eval_dies_ok | 19:05 | ||
[particle] | auzon; it's a little difficult to write tests for failures now, as we don't have standard error messages | ||
moritz_: is eval_dies_ok fudge-approved? | |||
moritz_ | [particle]: for now it's enough to test for failur | ||
[particle]: dunno | |||
[particle] | ah, apparently it is | ||
we'll need to implement that in rakudo's Test.pm | 19:06 | ||
rakudo_svn | r27773 | jkeenan++ | Change filename to conform to 'no multiple-dot filenames' coding standard. | ||
moritz_ | [particle]: jonathan++ thought about implementing $/, $! and the like | ||
[particle]: once you've got $! working that shouldn't be hard | |||
[particle] | moritz_: yes, indeed | 19:07 | |
moritz_ | rakudo: eval 'say "foo";'; | ||
exp_evalbot | OUTPUT[foo] | ||
[particle] | i'd look at it this weekend, but i'll be on an island with bikes, a kayak, a tent, and a mini cooper :) | ||
rakudo_svn | r27774 | jkeenan++ | Fix POD formatting error: '=over' without corresponding '=back'. | ||
moritz_ envies [particle] a great deal | |||
but we'll visit Norway this summer/autumn ;) | 19:08 | ||
[particle] | ooooooh | ||
moritz_ | my girlfriend is half-Norwegian ;) | ||
19:08
cjfields left
|
|||
Tene | I'll be in a cabin in the mountains of Idaho this weekend. | 19:11 | |
[particle] | tene: in the panhandle? | 19:12 | |
Tene | somewhere outside of twin falls somewhere. | 19:22 | |
I don't know yet. | |||
pugs_svnbot | r20511 | moritz++ | [t] t/oo/from_moose: remove some tests that don't correspond to Perl 6 | 19:28 | |
Auzon | moritz_: All tests should be migrating from t/ to t/spec/, correct? | 19:31 | |
[particle] | yes | ||
moritz_ | right | 19:32 | |
Auzon | Should all of t/01-sanity be moved to t/spec/01-overview, or should t/spec/01-overview only contain new tests that are specific to S01? Currently there is some overlap. | 19:34 | |
moritz_ | Auzon: I'm not really convinced of what to do with 01-sanity and 02-test-pm | 19:35 | |
Auzon: I'd suggest to leave them for now | |||
[particle] | i think they should stay | 19:36 | |
moritz_ | and 01-sanity isn't necessarily connected with S01 | ||
pmurias | neither is 02-test-pm | ||
moritz_ | sadly 02-test-pm isn't enough for running Test.pm | 19:37 | |
which could be considered a defect of Test.pm | |||
pmurias | ? | 19:38 | |
[particle] | well, i think it's enough to run *a* Test.pm, but not the one that's there currently | ||
pmurias | 02-test-pm tests if Test.pm runs correctly | ||
Auzon | I'm inclined to move t/01-sanity/01-tap.t to t/spec/S01-overview/ and also create other relevant tests there in t/spec/S01-overview | ||
[particle] | pmurias: it doesn't have complete coverage | ||
auzon: leave 01-sanity alone, it's for baby baby implementations | 19:39 | ||
Auzon | Alright. | ||
[particle] | 01-tap is intended to make sure we can print valid TAP | ||
not related to the perl 6 spec | |||
pmurias | [particle]: that's a different matter | ||
moritz_: you meant 01-sanity? | 19:40 | ||
moritz_ | actually it tests say, string literals and line comments | ||
pmurias: probably, yes | |||
moritz_ is a bit confused | |||
pmurias | use the source ;) | ||
[particle] | Auzon: i see now there's a smartlink in 01-tap to S01, that looks unrelated and should probably be removed | 19:41 | |
Auzon | Yes, sorry, the smartlink is why I thought about moving it | ||
[particle] | i don't think we need 'use v6;' in that test, either | 19:42 | |
moritz_ | I think we do | ||
pmurias | 01-sanity is a bit arbitrary | ||
moritz_ | [particle]: otherwise it's not valid perl6 subset | ||
[particle] | you don't need to be able to parse 'use' on day 1 of your implementation, do you? | 19:43 | |
you're saying 'yes' | |||
moritz_ | yes | ||
[particle] | k. | 19:44 | |
pmurias | moritz_: p6 dosn't have to have a 'use v6' | ||
moritz_ | pmurias: every source file is considered to be perl 5 unless it has a 'use v6', a 'class' or a 'module' keyword | ||
pmurias | unless it's run by the perl6 executable | 19:45 | |
#!/usr/bin/perl6 is enough | 19:46 | ||
moritz_ | pmurias: the #!-Line is a good point | ||
pmurias: the executable name isn't, though. The correctness of the test suite shouldn't depend on that | 19:47 | ||
pmurias | as it's the perl6 test suit we can assume there is no perl5 lurking there | 19:48 | |
19:49
rindolf left
|
|||
pmurias | sleep& | 19:57 | |
19:57
pmurias left,
chris2 left
|
|||
Auzon | pugs: module Foo; say $?PACKAGE; | 19:59 | |
exp_evalbot | OUTPUT[Foo] | ||
Auzon | pugs: module Foo; say $?MODULE; | ||
exp_evalbot | OUTPUT[Main] | ||
Auzon | pugs: module Foo {say $?MODULE}; | ||
exp_evalbot | OUTPUT[Main] | ||
Auzon | rakudo: module Foo {say $?MODULE}; | 20:00 | |
exp_evalbot | OUTPUT[Scope not found for PAST::Var '$MODULE'current instr.: 'parrot;PCT::HLLCompiler;panic' pc 156 (src/PCT/HLLCompiler.pir:103) | ||
Auzon | kp6: module Foo {say $?MODULE}; | ||
exp_evalbot | r20511: OUTPUT[error in Block at compiled/perl5-kp6-mp6/lib/KindaPerl6/Grammar/Sub.pm line 753, <> line 1.*** Syntax Error in Block: missing closing curly bracket ] | ||
Auzon | elf: module Foo {say $?MODULE}; | ||
exp_evalbot | OUTPUT[Global symbol "$MODULE" requires explicit package name at (eval 10) line 6. at ./elf_f_faster line 4353] | ||
Auzon | pugs: module Foo {say $?PACKAGE}; | ||
exp_evalbot | OUTPUT[Foo] | ||
moritz_ | I think that pugs is wrong there (but it's a long time since I read the right synopsis) | ||
Auzon | Looks like everyone is wrong :) | 20:01 | |
moritz_ | pugs is the only one that implements $?MODULE at all | 20:02 | |
it's specced in S01:1942 | |||
Auzon | $?MODULE should be set to the block's module. I suspect $?PACKAGE should be set to $?MODULE as well, since "they're still just packages with extra behaviors." | ||
S02, rather. | 20:03 | ||
moritz_ | a package is just class|module | ||
pugs: class Foo { say $?PACKAGE } | |||
exp_evalbot | OUTPUT[Foo] | ||
moritz_ | that's right | ||
pugs: module Foo { say $?PACKAGE } | |||
exp_evalbot | OUTPUT[Foo] | ||
moritz_ | that's also right | 20:04 | |
pugs: module Foo { say $?MODULE } | |||
exp_evalbot | OUTPUT[Main] | ||
moritz_ | that's wrong | ||
Auzon | pugs: class Foo {say $?CLASS; say $?MODULE; say $?PACKAGE} | 20:05 | |
exp_evalbot | OUTPUT[FooMainFoo] | ||
Auzon | Is that correct? | ||
Seems like $?MODULE just never gets set. | |||
moritz_ | I don't know about $?MODULE in a class, but I think it's fine | ||
20:06
mncharity joined
|
|||
moritz_ | module {} should set $?MODULE and $?PACKAGE, and class {} should set $?CLASS and $?PACKAGE | 20:06 | |
20:08
ruoso joined
20:13
sri_work joined
20:14
lisppaste3 joined
|
|||
Auzon | What's the difference between package, class, and module? Classes are for objects, but the other two don't seem different. Do they have other differences? | 20:18 | |
moritz_ | modules are just there for packaging non-object stuff into a namespace | 20:21 | |
and a package is the old, perl 5 style notion of a namespace that can either be introduced with a class or a module | |||
see S11 for details | |||
mncharity | Wowww... what a backlog. what a day. ++everyone. | 20:29 | |
Auzon | Hi mncharity. | ||
20:32
Psyche^ joined
|
|||
mncharity | hi Auzon | 20:32 | |
20:34
sri_work left
|
|||
Auzon | Did you see elf in evalbot? | 20:35 | |
moritz_ | elf: say "hi mncharity" | ||
exp_evalbot | OUTPUT[hi mncharity] | ||
mncharity | re 'what to test before committing', elf itself intentionally uses only a small portion of currently supported p6, so it's worth running test_faster (or test_faster2, if you haven't copied your candidate build to elf_faster yet), and eyeball the diff's to see if anything obviously regressed. | 20:37 | |
re evalbot, ! :) | |||
elf: "Hello, world! Now N days until Christmas" | |||
exp_evalbot | RESULT[syntax error at (eval 11) line 3, near "GLOBAL::statement_prefix:" at ./elf_f_faster line 4353] | ||
mncharity | :/ | 20:38 | |
moritz_ | mncharity: you should produce output in your statement, otherwise it's being wrapped in ((...).eval).say or something along these lines | ||
s/eval/perl/ | |||
Auzon | It's updated every 5 minutes, and uses elf_f_faster since elf_f takes ~5s for a say "hi" | 20:40 | |
mncharity | moritz_: ah, ok. todo list: determine the evalbot wrapper phrase and make it work in elf. | 20:41 | |
Auzon | mncharity: evalbot's code is in pugs/misc/evalbot. elf_f_faster is run as-is. | 20:42 | |
mncharity | re ~5s, which perl version? 5.10 is half the Mooseish startup time of 5.8. | ||
moritz_ | $program = '( ( do { ' . $program . "\n} ).perl ).print"; | ||
Auzon | 5.8.8, I think. Debian stable | ||
moritz_ | misc/evalbot/lib/EvalbotExecuter line 81 | 20:43 | |
mncharity: you're welcome to find a robuster wrapper ;) | |||
20:43
Patterner left,
Psyche^ is now known as Patterner
|
|||
mncharity | moritz_: :) elf should be able to adapt. | 20:44 | |
re 5.8.8, ah, ok. | |||
moritz_: thanks for the line. :) | 20:45 | ||
20:53
sscaffidi left
20:57
donaldh joined
20:59
pmurias joined
|
|||
pmurias | mncharity: re intentionally using a small portion of p6, is there anything which would help that we don't use intentionaly | 21:01 | |
mncharity | yay, no test_faster regressions vs run-tests.result_faster's t/ -r20475. updating run-tests.result_faster with current t/ ... | 21:02 | |
21:04
peepsalot joined
|
|||
pmurias | mncharity: is x01.pl still of any use? | 21:04 | |
mncharity | re intentionally, it's been more "use the same constructs for new stuff that we used previously, so our exposure to 'the last change broke stuff" breaking the bootstrap doesn't increase". and "yay, new feature or removed hack! wait a day or two before editing the elf sources, just to make it more stable". | ||
or some such | |||
x01.pl should be svn rm x01.pl. | 21:05 | ||
re help, good question, not sure... | |||
multimethods at some point. but that probably means grabing a copy of Class::Multimethods and forking it. | 21:06 | ||
pugs_svnbot | r20512 | pmurias++ | [elf] removed an old file | 21:10 | |
pmurias | mncharity: with regards to Call being a hack it has *both* and $.invocant and $.capture | 21:15 | |
s/and/an/ | |||
mncharity | re Call, hmm, perhaps FromAST should combine them... | 21:16 | |
re $n.foo = 3, why the switch to lvalue subs? | 21:18 | ||
err, in elf_f_faster | |||
pmurias | it's more proper | 21:19 | |
and the switch in the emitter happend by accident | |||
mncharity | hmm. I have lvalue subs on my "flakey p5 things that don't really work and are going to bite you later" list. :) | 21:20 | |
Auzon | pugs: say $?PACKAGE; eval('package Test; say $?PACKAGE;'); say $?PACKAGE; | ||
exp_evalbot | OUTPUT[***  Unexpected "\65279" expecting ";", identifier, Doc block, block declaration, declaration, construct or expression at /tmp/zdBJPxpxgv line 1, column 55] | ||
Auzon | rakudo: say $?PACKAGE; eval('package Test; say $?PACKAGE;'); say $?PACKAGE; | ||
exp_evalbot | OUTPUT[Syntax error at line 1, near "\x{ef}\x{bb}\x{bf}say $?P"current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82) | ||
moritz_ | Auzon: you've got a byte order makr in your code | ||
Auzon | boo | ||
moritz_ | that's the \65279 pugs is complaining about | 21:21 | |
mncharity | re emitter, yeah, it looks like isa(Var) should be isa(IRx1::Var)... I need to fix it for elf_f, but that will revert elf_f_faster to the old convention. | ||
moritz_ | just before the second 'say' | ||
Auzon | pugs: say $?PACKAGE; eval('package Test; say $?PACKAGE;'); say $?PACKAGE; | ||
exp_evalbot | OUTPUT[MainTestMain] | ||
Auzon | perl6: say $?PACKAGE; eval('package Test; say $?PACKAGE;'); say $?PACKAGE; | ||
exp_evalbot | kp6: OUTPUT[syntax error at position 4, line 1 column 4:say $?PACKAGE; eval('package Test; say $?PACKAGE;'); say $?PACKAGE ^ HERE] | ||
..pugs: OUTPUT[MainTestMain] | |||
..rakudo: OUTPUT[Scope not found for PAST::Var '$PACKAGE'current instr.: 'parrot;PCT::HLLCompiler;panic' pc 156 (src/PCT/HLLCompiler.pir:103)called from Sub 'parrot;PAST::Compiler;post_children' pc 1671 (src/PAST/Compiler.pir:362)called from Sub 'parrot;PAST::Compiler;call' pc 2766 | |||
..(src/PAST/Compiler.pir:780)called from Sub 'parrot;PAST::Compiler;pos... | |||
..elf: OUTPUT[Global symbol "$PACKAGE" requires explicit package name at (eval 11) line 3.Global symbol "$PACKAGE" requires explicit package name at (eval 11) line 5. at ./elf_f_faster line 4353] | |||
pmurias | mncharity: would the bug ealier when vixey made a similiar one | ||
s/found/ | 21:22 | ||
was just going to fix it | |||
Auzon | pugs: say $?MODULE; eval('package Test; say $?MODULE;'); say $?MODULE; | 21:23 | |
exp_evalbot | OUTPUT[MainMainMain] | ||
Auzon | pugs: say $?MODULE; eval('module Test; say $?MODULE;'); say $?MODULE; | ||
exp_evalbot | OUTPUT[MainMainMain] | ||
21:26
sscaffidi joined
|
|||
pugs_svnbot | r20513 | putter++ | [elf] Update run-tests.result_faster to r20512. | 21:26 | |
mncharity | re fix it, err, how... it will break the lvalue api in EmitFasterP5... | 21:27 | |
s/it will/working, it will/ | |||
pmurias | it's just used in too places | 21:28 | |
s/too/2 | |||
21:28
IllvilJa joined
|
|||
mncharity | oh, another thing on the list of things to check: bootstrap, regressions, and if it seems likely to have performance impacts, a quick check of how large the hit is. | 21:28 | |
pmurias | mncharity: removing the offending bit seems like a fix | 21:29 | |
you would have to add an additional hack to handle the '$obj.foo = ...' case | 21:30 | ||
21:30
TJCRI left
|
|||
pmurias | performance impact checking would be cool | 21:31 | |
mncharity | re hack, have one ready to go. hit the "but it would break the lvalue api". stuck... | ||
how about I commit, regressing lvalues, and you can reintroduce them? | 21:32 | ||
pmurias | hm | 21:33 | |
mncharity | hmm, maybe we need a Compiler variable to distinguish faster from non, rather than using inheritance... | ||
pmurias | we can use an .is_faster() | 21:34 | |
or .use_heretical_accessors | |||
Auzon | pugs: eval({say "hi"}) | 21:35 | |
exp_evalbot | RESULT["SubBlock(<anon>)"] | ||
Auzon | pugs: eval {say "hi"} | ||
exp_evalbot | RESULT["SubBlock(<anon>)"] | ||
moritz_ | pugs: try { say "hi" } | ||
exp_evalbot | OUTPUT[hi] | ||
Auzon | pugs: try {module Test; say $?MODULE;} | 21:36 | |
exp_evalbot | OUTPUT[Main] | ||
moritz_ | perl 5's "eval BLOCK" is now "try BLOCK" | ||
Auzon | pugs: try {module Test; say $?PACKAGE;} | ||
exp_evalbot | OUTPUT[Test] | ||
Auzon | Thanks moritz_ :) | ||
moritz_ | yw :) | 21:37 | |
Auzon | rakudo: try {module Test; say $?PACKAGE;} | 21:38 | |
exp_evalbot | OUTPUT[Scope not found for PAST::Var '$PACKAGE'current instr.: 'parrot;PCT::HLLCompiler;panic' pc 156 (src/PCT/HLLCompiler.pir:103) | ||
Auzon | rakudo: try {module Test; say $?MODULE;} | 21:39 | |
exp_evalbot | OUTPUT[Scope not found for PAST::Var '$MODULE'current instr.: 'parrot;PCT::HLLCompiler;panic' pc 156 (src/PCT/HLLCompiler.pir:103) | ||
pmurias | mncharity: are there any things we actually need moose for? | ||
s/moose/Moose/ | |||
stevan_ | you really do hate Moose dont you :P | ||
pmurias | stevan_: i rather like it | 21:40 | |
stevan_ | I am just kidding | ||
Auzon | Does the "#?implementation ..." syntax in the test have a way to specify more than one implementation? Or should I just use :todo? | 21:41 | |
21:42
rdice left
|
|||
pmurias | stevan_: are there many people who hate Moose? | 21:42 | |
mncharity | sigh. have to go. my todo list is () get elf_f working again, () commit hash and array literals patch. should have a block of time over the weekend. | ||
re | |||
stevan_ | pmurias: I dont know, if they do they dont talk to me about it | 21:43 | |
Auzon | See you, mncharity. | 21:44 | |
mncharity | good night all & great work. hi stevan_ - we should do lunch sometime your up in boston. | ||
pmurias | mncharity: good night | ||
stevan_ | mncharity: I will be in beantown on 6/3 actually | ||
21:44
mncharity left
|
|||
moritz_ | Auzon: take a look at fudge's doc (or implementation), I don't know it | 21:44 | |
Auzon: atm you should mainly fudge for rakudo, for pugs only parse failures | |||
21:46
ludan joined
|
|||
Auzon | So it's ok to make failing tests for Pugs and the others? | 21:46 | |
moritz_ | you | 21:47 | |
erm | |||
yes | |||
;) | |||
I expect 80% or more of your tests to fail on existing implementations, actually | |||
Auzon | Should I prefer :todo<...> to failing tests? | 21:48 | |
assuming no parsefail or similar. | |||
moritz_ | if an implementation has parse errors for one syntax, but passes most other tests in that file, fudge the parse errors | ||
if the majority of tests fail, it's not worth the trouble | |||
Auzon: no, :todo<> is not cross-implementation | |||
Auzon | Alright. | 21:49 | |
I think I have an idea of the general testing rules now :) | |||
moritz_ | ok | 21:50 | |
use Common::Sense; | |||
Auzon | :) | ||
moritz_ | ask @mentors, @larray; | ||
Juerd | L-array? :) | 21:53 | |
moritz_ | ;) | ||
Juerd | And I think it'd have to be Sense::Common | ||
moritz_ | c'mon Juerd, don't spoil all of my bad jokes ;) | 21:54 | |
Juerd | .oO( and what was that about *@foo for flattening? ) |
||
22:15
iblechbot left
22:17
donaldh left
|
|||
pmurias | gn/exit | 22:22 | |
22:22
pmurias left
|
|||
Auzon | pugs: package Foo {say $?PACKAGE} | 22:24 | |
exp_evalbot | OUTPUT[Foo] | ||
Auzon | Should that be Main::Foo, per S11? | 22:25 | |
hm... but then module Foo {module Bar{}} would be Main::Foo::Bar. | 22:31 | ||
moritz_ | Auzon: in S11: module Foo; # rest of scope is in module Foo | 22:32 | |
rakudo_svn | r27775 | infinoid++ | [rakudo] Fix compilation (RT #54734), moritz++. | ||
moritz_ | it doesn't say "rest of scope is in module Main::Foo" | ||
Auzon: I guess the same holds for packages as well | 22:33 | ||
Auzon | ah, ok. | 22:34 | |
moritz_ | Auzon: btw try to "commit early, commit often" - then it's easier for us to catch stupid mistakes before you do them multiple times ;) | 22:35 | |
Auzon | Alright. | ||
moritz_ | and you will make stupid mistakes, everybody does ;) | ||
Auzon | Yep. My local commit logs can attest to that. :) | 22:36 | |
moritz_ | ;) | 22:37 | |
22:37
sscaffidi left,
meppl joined
|
|||
Eevee | if your commit messages degenerate into profanity, you may be committing a little too early | 22:44 | |
22:44
FurnaceBoy joined
|
|||
Auzon | I've never had that happen. Is there a story behind that? ;) | 22:44 | |
Eevee | well, I've done it more than once :P | 22:45 | |
"fixed X" "actually fixed X" "unbroke my fix for X" "fucking dammit" | |||
moritz_ | "fixed previous commit" "really fixed it" ... | ||
Eevee | with the diffs getting smaller each time | 22:46 | |
Auzon | "oops, previous commit broke $x" | ||
Eevee | after three or four useless and/or trunk-breaking commits I don't think it's necessary to explain what I'm doing any more | ||
Auzon | My personal project has a test suite for the core of it, so I can be reasonably confident on it. | 22:47 | |
Eevee | pah, I don't need a test suite! this commit is perfect | 22:49 | |
okay, THIS commit is perfect | |||
there cannot possibly be anything left wrong with this commit | |||
moritz_ | after all it's trivial, isn't it? ;) | ||
Eevee | forgetting a semicolon is trivial too :( | ||
22:51
tobeya left
|
|||
moritz_ | good night everybody, happy hacking ;) | 22:58 | |
Eevee | night | ||
Auzon | good night... | ||
Auzon is about ready to commit | 22:59 | ||
and my first gsoc_code is in :) | 23:01 | ||
pugs_svnbot | r20514 | Auzon++ | [gsoc_spectest] basic S11 tests. (first commit in gsoc_spectest) | ||
Eevee | Auzon++ | ||
Auzon | I'll have to make sure the smartlinks work, and they're failing everywhere I think. | 23:02 | |
supper & | |||
23:07
peepsalot left
|
|||
Tene | I always do local commits with git, so I can go back and make nice working patch series. | 23:14 | |
commit --amend and rebase -i are awesome | 23:15 | ||
Eevee | I don't know git well enough so I get to use svn, which is the source control equivalent of a plastic squeaky hammer | 23:16 | |
Auzon | I use svk locally. On this Perl6 stuff, I haven't decided if I should use it instead of svn, because I don't really know svk all that well. | 23:20 | |
Eevee | svk is mostly the same, with somewhat less ghastly branch merging | 23:21 | |
meppl | good night | ||
Auzon | good night, meppl. | 23:22 | |
Eevee: I always seem to develop in trunk, so it's not a big deal ;) | |||
Eevee | branching is for losers who don't write perfect code! | 23:23 | |
meppl | ;) | ||
23:23
meppl left
|
|||
Juerd | Eevee: That's how I feel about testing! :) | 23:27 | |
Eevee | hear hear | ||
rakudo seems to more or less work, we should just release it now | |||
Auzon | :( What about Perl's legendary testing history? | 23:28 | |
supper for real & | |||
Juerd | Auzon: Obviously required because they don't write perfect code. | 23:37 | |
spinclad | elf: "hi world!".perl.say;}; say 'oops'; do { "back again" | 23:44 | |
exp_evalbot | OUTPUT[Parse error in: /tmp/S8345pTJ4Ipanic at line 1 column 21 (pos 21): Can't understand next input--giving upWHERE: "hi world!".perl.say;}; say 'oops'; do { "back agaiWHERE: /\<-- HERE STD_red/prelude.rb:98:in `panic' STD_red/std.rb:76:in `scan_unitstopper' | ||
..STD_red/std.rb:224:in `comp_unit' STD_red/std.rb:210:in... | |||
spinclad | pugs: "hi world!".perl.say;}; say 'oops'; do { "back again" | ||
exp_evalbot | OUTPUT[***  Unexpected ";" expecting ";", identifier, Doc block, block declaration, declaration, construct or expression at /tmp/ZpuW3SEIgS line 1, column 23] | ||
spinclad | (seeing if i could do some code injection...) | 23:45 | |
23:51
iMaTh joined,
iMaTh left
|
|||
spinclad | re to distinguish _faster from non, i take it Emit*P5 is too late to notice the lval-accessor idiom? | 23:57 |