www.parrotcode.org/ | Last release: 0.7.1 "Manu Aloha"
Set by moderator on 17 September 2008.
00:10 AndyA joined
dalek r31871 | Whiteknight++ | trunk: 00:22
: [PMC] fix shl_p_i on integers to return the correct results. The function was creating a new PMC dest for the result, which was not the same as SELF. In essence, the result of the shift was being discarded.
diff: www.parrotvm.org/svn/parrot/revision?rev=31871
00:32 Theory joined
bacek rakudo: my $a=5; my $b = \\$a; $b=42; say $b 00:43
polyglotbot OUTPUT[42␤] 00:44
bacek rakudo: my $a=5; my $b = \\$a; $b=42; say $a
polyglotbot OUTPUT[5␤]
bacek rakudo: my @a=(5); my $b = \\@a; $b[0]=42; say @a[0] 00:45
polyglotbot OUTPUT[42␤]
01:01 dmknopp joined 01:28 ab5tract joined 01:33 apeiron joined
Tene Where was that exception thing chromatic was reporting? I can't find the mail anymore. 01:33
Bah. 01:35
01:36 kid51 joined
Tene I remember talking aobut it! It's in the scrollback! 01:36
dalek r31872 | tene++ | hllmagic: 01:39
: Delete the hllmagic branch, as it has been merged into trunk.
diff: www.parrotvm.org/svn/parrot/revision?rev=31872
Tene If someone can find the mail I'm talking about, I'll look at it, but I'm apparently suffering from a bad case of stupid tonight.
dalek r31873 | jkeenan++ | trunk: 02:13
: File was failing c_parens coding standards test. Fixed in multiple locations.
diff: www.parrotvm.org/svn/parrot/revision?rev=31873
02:18 selenamarie joined
Coke reminds tene to make him remember the thing he forgot. 02:20
Tene Coke: I remembered, but I can't find the email I was responding to. 02:22
Chromatic had some recursive error handler problem...
dalek r31874 | tene++ | hllify:
: Create a new branch for moving languages into separate .HLLs
diff: www.parrotvm.org/svn/parrot/revision?rev=31874
Coke reminds tene to make him remember the thing he forgot. 02:27
Tene But I DID remember! 02:29
Anyone know if pmichaud is going to be online tonight? I have some PCT architecture issues to ask him about.
Coke was making a joke, you see, about a recursive error handler. Quiet droll. 02:30
"quite, even."
pmichaud was travelling, and didn't know when he'd be arriving at his destination.
Coke tries like hell to get another test running to completion for tcl.
Coke almost liked it better when he could fudge things. 02:31
Hinrik Coke: any relation to cokehabit? 02:36
Coke purl, cokehabit?
purl bugger all, i dunno, coke
Coke Hinrik: not that I'm aware. 02:37
Hinrik alright
Tene Coke: Oh, clever! 02:42
Coke: Specifically, I'm wondering about PCT exporting shit to the HLL that loads it. 02:43
Should I automatically do it in :load, or should each HLL explicitly import them, or should HLLs just go to the ['parrot';'PCT';'whatever'] namespace, etc. 02:44
I'm leaning toward automatic in :load, personally. 02:45
Infinoid Tene: you remembered to look at chromatic's recursive error handler, right? :) 02:47
Tene Infinoid: can you find the email he sent about it?
Which list was it on?
Infinoid apparently not p2 02:49
Tene Was I hallucinating that email 02:50
?
I *was* pretty sleepy at the time...
Infinoid nopaste.snit.ch/14264 was his stack trace from yesterday 02:51
Tene Yeah, that looks like what I saw. 02:52
Infinoid think he posted it via rakudobug
but I'm not on that list, and I don't know where the archives go. 02:53
Tene purl: parrot-internals?
purl no idea, tene
Infinoid purl, rakudobug?
purl well, rakudobug is mailto:rakudobug@perl.org 02:54
Infinoid ah, rt.perl.org/rt3/Ticket/Display.html?id=59778
Tene Infinoid++ 02:55
Infinoid I am amazed that I remembered.
Tene I'll work on it after I get lolcode working in its own HLL 02:56
Coke error:imcc:syntax error, unexpected '\\n', expecting '(' in file 'EVAL_16548' line 3 03:00
that's a lot of EVAL'd code. 03:01
Coke wonders if he can make parrot barf by invoking the PIR compiler recursivlely, but only in a clinical way. 03:02
03:05 cjfields joined
nopaste "cjfields" at 76.199.9.204 pasted "fix for hllmagic merge breaking Rakudo S05-transliteration/with_closure.t" (14 lines) at nopaste.snit.ch/14270 03:09
cjfields Don't know if anyone is around, but I saw that hll_magic merge broke Rakudo .trans 03:10
I nopasted a patch, but I can post a ticket to RT if needed (changing "foo = isa bar, 'PGE::Match'" to "foo = isa bar, 'PGE;Match'") 03:12
I wouldn't be surprised if the other issues popping up elsewhere are similar in nature, meaning s/::/;/ 03:13
03:13 selenamarie joined
cjfields Just a thought, but should that be "isa bar, ['PGE','Match']"? 03:16
(which doesn't work, btw) 03:17
Coke ['PGE';'Match'] ? 03:18
cjfields well, in thinking that the way namespaces in hllmagic changed 03:20
Coke ['PGE';'Match'] (note the semicolon)
cjfields ah, yes 03:21
(never drink and irc)
I'm thinking, for consistencies sake, it would make sense to have that. Or maybe I'm just thinking too hard about it... 03:23
Coke does parrot yet have a way to say "only use this much system memory adn no more" ? 03:24
cjfields not sure myself, but if there is a recursion limit maybe something is built in for that. 03:26
Tene Coke: ulimit?
purl ulimit is a shell built-in
cjfields yes, there is that too 03:27
Tene Yes, the ;
cjfields ;)
Tene If Coke doesn't commit that shortly, I will in a bit.
cjfields thanks
Coke have at it.
Tene You want to test against ['PGE';'Match'] 03:28
cjfields tried it already
Tene you said you tried with , 03:29
cjfields kicks self
yes, that works 03:30
nopaste "cjfields" at 76.199.9.204 pasted "new patch for hllmagic and .trans" (14 lines) at nopaste.snit.ch/14271 03:31
cjfields though it's a simple fix, really
thanks for pointing that out Tene, I would have left it 03:32
dalek r31875 | tene++ | trunk: 03:37
: [rakudo]: Fix Str.trans. cjfields++
diff: www.parrotvm.org/svn/parrot/revision?rev=31875
cjfields karma Tene 03:38
purl tene has karma of 284
Tene 2*2*71
purl 284
Tene Eh, s'okay
cjfields what's 285? 03:39
03:39 Andy joined
Tene 5*57 03:39
purl 285
cjfields tene++ 03:40
heh
Tene Oh, that's not prime!
3*5*19
purl 285
Tene That's better.
cjfields that's better than 284
Tene Quite.
03:45 cjfields joined 03:50 cjfields joined 04:46 Bzek joined
Tene lolcode: VISIBLE "OH HAI GUYZ" 04:50
polyglotbot OUTPUT[OH HAI GUYZ␤]
05:10 TiMBuS joined 05:17 Ademan joined 05:38 magnachef__ joined 06:35 TiMBuS joined 06:36 johbar joined
cotto anyone used ddd to poke parrot? 06:39
it doesn't seem to be as smart as gdb about using yet-unresolved function as breakpoints 06:44
this is fun 07:06
If I make ascii_compute_hash return early, the method clobbering bug goes away.
dalek r31876 | pmichaud++ | trunk: 07:15
: [rakudo] spectest-progress.csv update: 203 files, 4366 passing
diff: www.parrotvm.org/svn/parrot/revision?rev=31876
Tene pmichaud: ping 07:30
Or is that an automated commit? 07:31
07:49 masak joined 07:52 mberends joined 07:58 iblechbot joined 08:53 bacek joined
bacek evening, good evening 09:21
masak bacek: and good day.
purl every day above ground is a good day
bacek masak: 20:20 here ;) 09:22
masak heh. 11:22 here.
bacek you live in past! Future is already there!!! 09:23
masak so you easterners keep telling me. 09:24
one could argue, though, that those extra 9 hours make me better prepared for the future, once it comes :)
bacek indeed :) 09:25
cotto 02:24 here. so, any of you future guys want to give me a lottery number or something?
masak cotto: sorry, I don't toy with causality any more
it's fun, but the effects are too drastic 09:26
cotto causality is overrated 09:28
masak au contraire -- we don't appreciate it enough in our daily lives 09:29
bacek wow. rakudo pass spectest_regression again! 09:31
bacek@icering:~/src/parrot/languages/perl6$ ../../parrot perl6.pbc -e 'class A { method succ { say "OH HAI" } }; my $a = A.new; $a++;' 09:40
OH HAI
masak: this is what you want? ;)
masak aye :) 09:44
bacek holy... why find_method throws exception when method not found?
nopaste "bacek" at 122.110.123.82 pasted "succ/pred handling for masak" (52 lines) at nopaste.snit.ch/14272 09:48
masak \\o/
bacek don't forget to run spectest_regression before commit ;)
masak bacek++ :)
bacek: I will
bacek any other things that casual ex-developer can do in couple of hours? 09:51
(I can't fix lexpads and LTM ;)
and hash slices too... :(
masak aw... I was just about to mention #58392 :)
bacek: maybe #59484? I don't know how difficult it is... 09:53
bacek I'll take a look 09:54
masak it would allow November to avoid some package name repetition
bacek BTW, I've got much simpler bug for lexpads.
masak O RLY?
purl YA RLY
masak OIC. 09:55
bacek #58916
without recursion
masak ah. 09:57
:(
lexpads are hard! let's go shopping.
bacek: #59120 is probably not too hard, either 09:58
dito #59118
bacek masak: I think Tene and Pm works on packages/modules. 09:59
masak oki
#58922 :) that should be a fun one to fix
bacek masak: I never touched RakudoOO before... But I can do it now ;) 10:01
masak great!
I can watch, and learn.
bacek pugs: my @a = (1); @a[0] := @a; @a.perl 10:02
EWRONGCHANNEL
masak :) 10:03
bacek hmm... pugs produces very strange result... 10:04
masak aye 10:06
ok, this is my first commit, so...
what should I provide as my username/password?
I tried my bitcard correspondents, and they didn't work
moritz masak: in bitcard you have an option to generate a svn password 10:07
masak moritz: "My Sites"? 10:08
moritz masak: dunno
masak: oh wait, no... 10:09
masak waits
moritz svn.perl.org/accounts/
masak ah
moritz you need to get an account there, and log in via bitcard 10:10
bacek masak: class A { my $!b; method x { $!b = "b" } }; A.new.x
masak (Firefox 3)-- # scary "Secure Connection Failed" page
bacek this should fail
masak bacek: why?
bacek it's read-only AFAIU
moritz if so, how would you ever be able to set a private attribute 10:11
bacek my $!b is rw
my $.count; # generates a public read-only .count accessor
my %!cache is rw; # generates no public accessor
moritz bacek: "public accessors" are of method form 10:12
bacek so, I suppose, that 'my $!b' should be read-only private.
masak bacek: IIUC, $.a is readonly, but $!a is rw per default
I don't have an S12 reference offhand to back me up, so this is just from memory
moritz if $!b is in your scope, it's readonly. Maybe some accessors are read-only, but if you don't use those, you don't care about them
s/readonly/read-write/ 10:13
masak aye 10:14
dalek r31877 | masak++ | trunk:
: [rakudo] prefix/postfix ++ and -- now delegate to succ and pred, respectively
: patch courtesy of Vasily Chekalkin (bacek++)
: this patch fixes bug #59596
diff: www.parrotvm.org/svn/parrot/revision?rev=31877
moritz masak++ # welcome our new patch monkey overlord ;) 10:15
masak dz :) 10:16
bacek what the difference between has/my/our??? I don't understand this fu... 10:17
masak has: object attribute, my: class attribute
moritz bacek: my: lexical variable
has: object attribute
bacek In classes. 10:18
moritz our: lexical alias to package variable
bacek: if you have *one* variable in a class, it's a "class variable"
bacek our $.count; # generates a public read-only .count accessor
our %!cache is rw; # generates no public accessor
my $.count; # generates a public read-only .count accessor
my %!cache is rw; # generates no public accessor
purl i already had it that way, bacek.
moritz bacek: but it's only accessible in the lexical scope (my)
bacek I can't spot difference between my/our...
moritz masak: is there a test for #59596 somewhere? 10:19
masak not as far as I know.
moritz bacek: class Foo { my $x }; class Foo is also { # can't access $x here! }
bacek moritz: Ah! Ok.
moritz bacek: with "our", you can get access to $x outside the lexical scope
masak moritz: want me to write one?
moritz masak: yes, please 10:20
masak does so
hm, I could put it in t/spec/S03-operators/autoincrement.t, or make a new test file in t/spec/S12-methods/ ... 10:22
moritz yes ;)
masak leans toward the former
moritz pushes masak a bit so he falls onto the former
masak crashes into the former at high speed 10:23
ouch.
Hinrik is there an easy way to find a part of the Perl 6 spec that is missing tests? 10:26
masak Hinrik: very good question. I'd answer "by eye", i.e. by reading the specs at spec.pugscode.org 10:27
and being on the lookout for things that look untested 10:28
Hinrik are all the spec tests available shown in the relevant Synopsis document? 10:29
moritz look in t/TASKS in the parrot repo
masak Hinrik: those that have smartlinks are shown.
Hinrik I see 10:30
masak: is that because some tests shouldn't have smartlinks or just that they haven't been added yet? 10:31
moritz: I see no such file 10:32
masak Hinrik: just that they haven;t been added yet. 10:33
s/;/'/
Hinrik ok
dalek r31878 | allison++ | trunk: 10:39
: [pdd27mmd] Add initialization code to TODO test for subclassing C PMC types
: from PIR.
diff: www.parrotvm.org/svn/parrot/revision?rev=31878
10:43 bacek joined
moritz Hinrik: in the pugs repo 10:43
sorry, was a thinko from me :(
Hinrik ah 10:44
10:45 iblechbot joined
Hinrik is this the most up-to-date syntax file? svn.pugscode.org/pugs/util/perl6.vim 10:57
moritz yes :/
it's better than nothing, but it gets thoroughly confused with some kind of quotes 10:58
mostly in regexes
masak & lunch 11:01
dalek r31879 | allison++ | trunk: 11:03
: [cage] Change multi initialization strings to C strings, to eliminate
: 'non-constant initializer' errors in certain C compilers. Addresses RT #59658.
diff: www.parrotvm.org/svn/parrot/revision?rev=31879
11:32 omega joined 11:46 kj joined 12:21 masak joined 12:32 particle1 joined
dalek r31880 | allison++ | trunk: 12:46
: [pdd27mmd] Change scalar PMC's 'pow' to a MULTI, to fit expected dispatch
: pattern.
diff: www.parrotvm.org/svn/parrot/revision?rev=31880
12:58 magnachef joined 13:00 magnachef__ joined 13:06 kid51 joined 13:09 magnachef joined 13:32 magnachef__ joined 13:46 bacek joined
dalek r31881 | fperrad++ | trunk: 13:58
: [Lua]
: - fix Markdown test
diff: www.parrotvm.org/svn/parrot/revision?rev=31881
r31882 | fperrad++ | trunk: 13:59
: [install]
: - fix Markdown test
diff: www.parrotvm.org/svn/parrot/revision?rev=31882
r31883 | fperrad++ | trunk: 14:06
: [Lua] merge hllmagic
: - partial revert of r31862
: - now, lpeg & Lua bytecode translation work fine with luac.pl, they don't deal with PCT::HLLCompiler, so they don't need new convention when all is broken (pdd27mmd & hllmagic).
diff: www.parrotvm.org/svn/parrot/revision?rev=31883
masak what would it take to fix #57652, by the way?
ISTR that it hinges upon some new exception mechanism or sump'n 14:07
moritz time and skills ;)
masak dang.
:)
moritz probably an exception handler in the surrounding block 14:08
and when() throwing a control exception at block exit
thing is, the surrounding block could be *any* type of block, not just when { ... } 14:09
masak aye 14:11
would it need its own type of exception?
moritz wait a sec...
purl wait a sec... is purl one of those answer bots?
masak purl: nobody likes you. 14:12
purl masak: sorry...
masak purl: forget wait a sec
purl masak, I didn't have anything matching wait a sec
masak purl: forget wait a sec...
purl masak, I didn't have anything matching wait a sec
masak another question: what would it take to implement $filename ~~ :e ? 14:13
moritz for 1 { given 1 { say 1 }; say 2; } # would that execute the 'say 2'?
14:13 particle joined
moritz masak: sub ':e' { ... } probably 14:14
masak moritz: "The given block is just one way to set the current topic, but a switch statement can be any block that sets $_, including a for loop (assuming one of its loop variables is bound to $_) or the body of a method (if you have declared the invocant as $_)."
purl i already had it that way, masak.
masak purl: what?
purl masak: i haven't a clue
moritz masak: does that answer my question?
purl, forget the given block 14:15
purl moritz, I didn't have anything matching given block
masak moritz: I think so. any block which does something with $_
ah, here:
"If the smart match succeeds, when's associated block is executed, and the innermost surrounding block that has $_ as one of its formal parameters (either explicit or implicit) is automatically broken out of."
that's better
moritz ok, so it's basically a leave() to the outer block 14:16
masak aye 14:17
moritz so implement leave() first
masak :)
moritz and a when { ... } block would just call leave() on block exit
masak is there prior art on the sub ':e' thing? in November, we test for existence by trying to open the file
moritz: unless it had a continue at the end 14:18
moritz does a leave() trigger a continue block?
masak: I guess parrot has a 'stat' method/opcode/whatever 14:19
particle there's an OS pmc
moritz runtime/parrot/library/parrotlib.pir
133: stat $I0, name, 0
masak moritz: no, not a continue block, a continue statement 14:20
"You can explicitly leave a when block and go to the next statement following the when by using continue."
moritz ah
masak which, IIUC, is Perl 6 code representing negative PIR code 14:21
moritz is thoroughly unfamiliar with all that advanced control flow
masak moritz: time to take the step and start using Perl 6 :)
moritz "after the exams" # good excuse ;) 14:22
I don't even use redo() and continue blocks in Perl 5
(maybe I should?)
masak sort of stumbled over the continue block thing in Perl 5 today 14:23
they seem useful when you're incrementing something, and have a lot of next calls 14:24
makes the code cleaner
14:34 magnachef joined 14:37 magnachef__ joined 14:42 particle joined 14:43 tetragon joined 15:10 kid51 joined 15:32 iblechbot joined
pmichaud pong 15:38
Tene hi 15:39
Can you explain the "PCT exporting stuff to the calling namespace" issue?
Should the call explicitly ask for it? Should PCT do it automatically in a :load block? 15:40
pmichaud :load block -- probably not. The :load block doesn't really know where to export it to.
also, the module might have already been loaded once (and being (re)loaded by another module)
I'm planning to register a "Parrot" compiler that implements the 'load_module' method. 15:41
that method will then do the load_bytecode, and then search through the appropriate EXPORT::ALL subnamespace to export the symbols into the caller's namespace.
15:42 jhorwitz joined
Tene Hmm. Okay. 15:43
15:44 particle joined
dalek r31884 | fperrad++ | trunk: 15:46
: [Lua] pdd27mmd
: - add some VTABLE modifier
diff: www.parrotvm.org/svn/parrot/revision?rev=31884
pmichaud but yes, there are a few oddities that have to be handled there as yet
dalek r31885 | fperrad++ | trunk: 15:47
: [WMLScript] pdd27mmd
: - add some VTABLE modifier
diff: www.parrotvm.org/svn/parrot/revision?rev=31885
pmichaud at this point what I really want/need is for the PAST protoobjects to be bound into the PAST::EXPORT::ALL namespace. 15:48
Tene This is something I'd really like to work on this weekend. If you could commit a plan or list of some sort to the branch, that would be really great. 15:54
15:54 Theory joined
Tene Starting Monday I'm teaching a really exhausting class, so I want to get everything I can done before then. 15:57
pmichaud I'm still trying to see exactly how to get the PAST::* protoobjects into the hll namespace 16:03
the problem with :load and load_bytecode is that we can't really identify the caller from within a :load sub 16:04
Tene What if you just export the namespace?
pmichaud oh, that would probably work.
(thinking.)
Tene interp['namespace';1] will get the caller
pmichaud inside of a :load sub?
Tene but you're right about the "already loaded" issue
Yes.
pmichaud interesting.
Tene I tested.
Want me to post the tests?
pmichaud no, I believe you.
Tene And why are we exporting the namespaces instead of having the user do lookups in ['parrot';'PCT';...] ? 16:06
pmichaud how does one do that in NQP?
i.e., in actions.pm for the 'perl6' HLL I have to have PAST::Var refer to the 'parrot' one. 16:07
Tene Oh, right.
Clever.
Okay.
pmichaud Tene: I don't have a quick answer at the moment, sorry. 16:22
Tene s'okay
pmichaud lunch here -- back in about 30
Tene RPG here -- back in several hours 16:23
16:23 gmansi joined 16:28 mdiep_ joined 16:35 selenamarie joined 17:17 magnachef joined 17:19 magnachef__ joined 17:50 particle joined, Theory joined 17:53 jhorwitz joined 18:03 Zaba joined
dalek r31886 | pmichaud++ | trunk: 18:04
: [rakudo]: Some updates to progress-graph.pl.
diff: www.parrotvm.org/svn/parrot/revision?rev=31886
r31887 | pmichaud++ | trunk: 18:26
: [rakudo]: STD.pm alignment -- add <args>, split out <morename> in <name>
diff: www.parrotvm.org/svn/parrot/revision?rev=31887
r31888 | pmichaud++ | trunk: 18:51
: [rakudo]: STD.pm alignment -- convert <identifier> in term:name to <name>
diff: www.parrotvm.org/svn/parrot/revision?rev=31888
19:24 contingencyplan joined 19:34 jhorwitz_ joined
dalek r31889 | pmichaud++ | trunk: 19:44
: [rakudo]: Eliminate bogus duplicate <name> rule.
diff: www.parrotvm.org/svn/parrot/revision?rev=31889
20:08 johbar joined 20:20 cjfields joined 20:31 Whiteknight joined 20:41 selenamarie joined 20:42 Theory joined 20:49 Zaba joined 21:10 ab5tract joined
ab5tract [suggestion] new parrot mailing list info page and google group should get links @ www.parrot.org/dev 21:12
21:34 bacek joined
dalek r31890 | fperrad++ | trunk: 21:36
: [Lua] pdd27mmd
: - overload VTABLE 'cmp', because :
: $P0 = new 'LuaNil'
: $I1 = islt $P0, $P0 # throws an exception
diff: www.parrotvm.org/svn/parrot/revision?rev=31890
21:46 cjfields joined
dalek r31891 | cotto++ | trunk: 22:19
: [codingstd] trailing space fix
diff: www.parrotvm.org/svn/parrot/revision?rev=31891
r31892 | cotto++ | trunk: 22:22
: [vtable] add cmp_pmc VTABLE function
diff: www.parrotvm.org/svn/parrot/revision?rev=31892
22:52 gmansi joined 23:05 davidfetter joined 23:11 Theory joined 23:58 Khisanth joined