pugscode.org/ | nopaste: sial.org/pbot/perl6 | ?eval [~] <m oo se> | We do Haskell, too | > reverse . show $ foldl1 (*) [1..4] | irclog: irc.pugscode.org/
Set by diakopter on 11 July 2007.
pugs_svn r19201 | fglock++ | [kp6-nqp] t/kp6/01-tap.t passes without warnings 00:01
pugs_svn r19202 | avar++ | The Getopt::Long version < 2.37 hack didn't work, it ran perl as perl -I script/kp6 00:52
Auzon I just have the kp6 directory checked out, and I get this message: 02:53
../../t/01-sanity/01-tap.t: does not exist at run_tests.pl line 301, <DATA> line 7.
(It should only be one "../"
ah... I think I figured it out 02:55
hm, no go, even with all of Pugs checked out... :-/ 03:02
aha 03:10
Just my stupidity :P
pugs_svn r19203 | pmichaud++ | Token <number> works much better if we try to parse 07:41
r19203 | pmichaud++ | <dec_number> (with a required decimal point) before
r19203 | pmichaud++ | <integer>.
moritz_ @tell fglock so what's the state of your parrot considerations? first step: nqp emitter? 10:22
lambdabot Consider it noted.
pugs_svn r19204 | moritz++ | [kp6-nqp] emit "module $name { ... }" in CompUnit 10:32
r19204 | moritz++ | (as opposed to "module $name; ...")
pugs_svn r19205 | ferreira++ | r191@dracma: perl | 2007-12-13 09:37:40 -0200 11:38
r19205 | ferreira++ | this test only failed because plan was wrong
pugs_svn r19206 | ferreira++ | r197@dracma: perl | 2007-12-13 10:13:54 -0200 12:14
r19206 | ferreira++ | another plan fixed
moritz_ ferreira++ # tending the test suite 12:18
ferreira moritz_: the links to test sources in perlcabal.org/smoke.html are broken for a long time? 12:21
lambdabot Title: TAP Matrix - Wed Dec 12 22:15:18 2007 GMT
pugs_svn r19207 | andara++ | [Pugs] 12:28
r19207 | andara++ | a patch for compiling pugs with ghc-6.8 with some notes.
r19207 | andara++ | tested only on Linux/x86 and OS X 10.4/PPC
moritz_ ferreira: sadly, yes
andara: does it still work with 6.7.1?
ah, it's a diff
moritz_ should look before asking stupid questions ;)
andara moritz_: yes, it's a diff. I'll apply it to the tree when we have 6.8 on feather 12:29
ferreira moritz_: do you know where are the script sources that produce that?
moritz_ ferreira: wait a sec... 12:31
util/testgraph.pl perhaps?
ferreira looks like it. Thanks. 12:32
pugs_svn r19208 | ferreira++ | r200@dracma: perl | 2007-12-13 12:47:24 -0200 14:47
r19208 | ferreira++ | minor fixes and get rid of "@b || ()" which coerces to scalar
pugs_svn r19209 | fglock++ | [kp6] added misc/nqp/test1.nqp - we need this in order to access the Parrot MetaClass 15:02
fglock moritz_: re state: nqp doesn't seem to map to low level kp6 15:03
lambdabot fglock: You have 1 new message. '/msg lambdabot @messages' to read it.
fglock [particle]: ping 15:09
@tell agentzh there is a v6.pm cpan-testers report with "t/01-sanity/02-counter...............greediness control not implemented: [ '\»' | . ]" - is this PCR related? 15:17
lambdabot Consider it noted.
pmurias fglock: does PAST corespond to low-level kp6? 15:20
[particle] fglock: i'm on the phone, i'll let you know when i'm off 15:21
fglock [particle]: ok 15:27
fglock pmurias: I haven't looked at PAST in detail 15:28
ispy_ fglock: Are you the author of kp6? 15:40
pmurias ispy_: he is
ispy_ Then he's just the man I need to speak with :) 15:41
[particle] fglock: i'm back
pmurias ispy_: want to contribiute? 15:45
ispy_ pmurias: Yes, moritz_ mentioned you guys could use a hand.
pmurias: I've been given commit access and was looking to get involved some place I could be used. 15:46
kp6 seems interesting :)
pmurias looked at TODO? 15:47
ispy_ Have no idea where to start helping out, I was looking for some direction...
Point me in the right direction and I can fly on my own so to speak.
pmurias ispy_: i think fglock should do the pointing he has more project vision then me 15:48
ispy_ pmurias: No problem, how many are involved with this project?
[particle] ispy_: how'd you like to work on the nqp emitter for kp6? 15:49
we're trying to get kp6 to run on parrot
ispy_ [particle]: what needs to be done?
[particle] first, you'll need kp6 and a working parrot
pmurias ../../parrot ../../compilers/tge/tgc.pir --output=POST/Grammar_gen.pir POST/Grammar.tg
Tried to get null global 15:50
current instr.: 'parrot;TGE;__onload' pc 0 (TGE.pir:85)
[particle] then, you'll modify kp6's nqp emitter so the nqp code it generates compiles under parrot
pmurias: try cd compliers/tge && make clean all
[particle] (i think there's a makefile problem) 15:51
pmurias [particle]: work 15:52
s
[particle] yay
ispy_ haha...
I'll spend the day getting familiar with kp6 in general so I can get an overall idea of the work flow...
[particle] ispy_: i have a little script called v6/v6-KindaPerl6/nqp.cmd, if you can parse windows cmd language, it should get you started 15:53
@echo off
set PARROT=c:\usr\local\parrot\trunk\parrot
set NQP=c:\usr\local\parrot\trunk\compilers\nqp\nqp.pbc
perl script\kp6 -Cnqp %* | %PARROT% %NQP% --
lambdabot echo; msg:IrcMessage {msgServer = "freenode", msgLBName = "lambdabot", msgPrefix = "[particle]!n=particle@c-24-19-3-148.hsd1.wa.comcast.net", msgCommand = "PRIVMSG", msgParams = ["#perl6",":@echo
off"]} rest:"off"
[particle] kicks lambdabot
ispy_ [particle]: I'll check it out.l
[particle] then i run something like: 'nqp t\kp6\01-tap.t 15:54
fglock (back)
[particle] ispy_: also, svn log Visitor/Emit/Nqp.pm should be instructive 15:55
[particle] er, src/KindaPerl/... 15:56
fglock [particle]: I'm trying to get the Class and MetaClass objects
[particle] .WHAT? :) 15:57
fglock .HOW
[particle] should work with HEAD
fglock would you take a look at misc/nqp/test1.nqp 15:58
[particle] okie 16:00
[particle] oh! ha. pm got .HOW working in perl6 last night, not nqp 16:01
lemme see what it would take to get that into nqp 16:04
fglock isn't HOW native to Parrot? 16:06
[particle] it's not a parrot op 16:08
it exists in the mop
get_class opcode
Limbic_Region salutations all 16:10
pmurias salutes 16:11
fglock [particle]: does nqp have variable assignment? 16:17
[particle] no assignment, only binding 16:18
fglock so I need to create a Container class, like in kp6-perl5 16:19
or does it have Scalar.STORE ?
fglock $x := Scalar.new(); $x.STORE( 1 ); 16:19
can I do this?
[particle] hey pm 16:20
pmichaud as the old american indians were reported to say, "HOW."
moritz_ ;)
fglock pmichaud: hi!
pmichaud nqp doesn't support .HOW at the moment -- it treats it as a method call on an object 16:21
so, if the object knows how to .HOW, then .HOW works :-)
[particle] i couldn't figure out how to create a builtin method like .HOW 16:22
pmichaud well, because it should belong to the destination object
fglock there is a trick we use in MiniPerl6,
[particle] 1.HOW should work
fglock you can define a subroutine that returns the MetaClass object
pmichaud and besides, NQP tries to avoid builtin functions as much as possible -- the point is to not have a runtime
pmichaud or, at least, to not have a runtime beyond what Parrot already provides 16:23
[particle] right, i was wondering how to do HOW without a runtime
fglock so you can add methods to it
pmichaud in Parrot it's a bit tricky to add methods to the built-in types
[particle] is it? you should be able to do it through the PMCProxy 16:24
pmichaud "add_method" on a PMCProxy class doesnt work.
fglock pmichaud: do you think it makes sense to write the object system over nqp, and ignore the Parrot OO?
pmichaud (I know, I tried it)
fglock (that's what kp6-perl5 does)
pmichaud fglock: writing the object system over nqp might work, although nqp was never designed for that 16:25
fglock it's slow :(
pmichaud oh the other hand, I did manage to implement .HOW in perl6 last night :-)
moritz_ fglock: I think there's no real point in doing that, because parrots object model has all we need
fglock: it's just not all accessible from within nqp
fglock pmichaud: how did you do it?
[particle] sure, but perl6 has a big runtime
.HOW? how! :) 16:26
pmichaud fglock: with lots of smoke and mirrors, unfortunately. :-)
fglock does it make sense to write a new Perl 6 PMCs?
pmichaud but before going too far in that... particle pasted the code
16:18 <particle> my $v := 1; 16:27
16:18 <particle> my $int := $v.HOW();
16:18 <particle> say('# Int = ', $int);
and I'm not sure why one would be printing the metaclass object
fglock pmichaud: that's just to be sure it works correctly,
i need it to add new classes/methods 16:28
pmurias fglock: is it possible to call a method which name is contained in $name in kp6?
moritz_ kp6: sub foo { say "foo" }; my $b = "foo"; $b.() 16:29
fglock pmurias: I think you need to add the method to a class
exp_evalbot r19209: OUTPUT[no method 'APPLY' in Class 'Str'␤ at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 345␤ KindaPerl6::Runtime::Perl5::MOP::__ANON__('HASH(0x8e73f30)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 169␤
..main::DISPATCH('HASH(0x8e73f30)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Kinda...
fglock ah
pmichaud if it were me, I'd write up a quick .pir file for kp6 that adds the .HOW methods into the Parrot builtins
pmurias fglock: i want to write a nqp compatible .perl in kp6
pmichaud that seems a lot easier than writing up a bunch of new PMCs. And that's effectively what I'm doing in perl6 16:30
For example, in 16:18 <particle> my $v := 1;
oops
wrong past
16:18 <particle> my $int := $v.HOW();
[particle] pmichaud: an .include file? that seems easy enough
pmichaud 16:18 <particle> say('# Int = ', $int);
paste
svn.perl.org/parrot/trunk/languages...Object.pir
that's the code that is implementing WHAT, HOW, isa, etc for Perl 6's basic types. It's also handling things like the fact that Parrot's 'String' should be a Perl 6 'Str'
fglock pmurias: .perl should be supported by Parrot
[particle] how does .perl work? 16:31
can you evalbot a sample?
moritz_ pugs: say <foo bar>.perl 16:32
exp_evalbot OUTPUT[("foo", "bar")␤]
[particle] so, it desugars?
moritz_ .perl is Perl6's builtin Data::Dumper
pmichaud .perl is intended to generated code that when evaled would recreate the structure
[particle] gotcha
moritz_ it can sugar and desugar as it likes ;)
pmichaud in S02, starting with "To get a Perlish representation of any object, ... " 16:33
pugs_svn r19210 | pmurias++ | [kp6] unfinished proof of concept PAST wrapper
pmurias fglock: you can look at the commit to see what i'm aiming fo
r
fglock i'm still balancing our options, 16:37
what if kp6 compiled directly to pir
moritz_ what's the advantage of pir compared to PAST?
fglock we have PAST, PIR, and nqp; I assume it doesn't make sense to compile to perl6
moritz_ agreed 16:38
fglock moritz_: pir gives more access to low level workings
moritz_ fglock: ok, good point 16:39
[particle] fglock: you can use pir inline in nqp
pmichaud also in PAST, for that matter :-)
[particle] PIR <noop>;
true
pmichaud PIR q<noop>;
(don't forget the 'q')
[particle] sorry, sticky q key
pmichaud hands particle a pry bar 16:40
[particle] also 'PIR <<END_OF_PIR;'
pmichaud PIR q:to:'END';
[particle] except, that's spelled....
yep
pmichaud I still owe rdice an article about inline pir in nqp -- maybe I should write that up this morning 16:41
fglock pir inline in nqp looks nice 16:42
but i'd need more details on nqp internals
pmichaud the article would explain it
but essentially to grab a lexical, one does q< $P0 = find_lex '$foo' >; 16:43
to rebind a lexical: q< store_lex '$foo', $P0 >
fglock I could implement assignment using this
pmichaud there's not a way in NQP's inline pir to create lexicals -- at least not one that works reliably. 16:45
but one can always do:
my $foo;
PIR q< store_lex '$foo', whatever >; 16:46
[particle] .lex '$foo' won't work?
fglock in short, use nqp for closures and variable allocation, and use PIR for OO
pmurias fglock: or we could use PAST for closures and variable allocation, and PIR for OO 16:47
pmichaud depends on what you mean by "PIR for OO" 16:48
NQP does OO just fine
it's just Parrot OO
in fact, now that I think about it.
fglock how is Parrot OO different from Perl 6 OO ? 16:49
pmichaud (writing code)
nopaste?
[particle] pastebot?
pmichaud is there a nopaste bot on the chan?
pmurias yes
[particle] @paste?
lambdabot Haskell pastebin: hpaste.org/new
Khisanth perlbot: paste 16:50
perlbot Paste your code to sial.org/pbot/perl erxz.com/pb or p3m.org/pfn/perl and #Perl will be able to view it.
lambdabot Title: sial.org Pastebot - pasteling
pmichaud hpaste.org/4433 16:51
Khisanth perlbot needs context aware factoids :)
pmichaud (Parrot OO versus Perl 6 OO) Parrot's OO is more class-based, Perl 6 tends to do things with prototypes 16:52
also, there's not a top-level base class that subsumes all of the different types of PMCs that could appear
fglock you mean, we could create a kp6 object hierarchy, which inherits from Parrot basic classes 16:53
pmichaud that's what perl6 is doing, yes.
[particle] yes 16:53
create an oo runtime lib
fglock ok 16:53
pmichaud but "hierarchy" is a bit difficult, because there's not a superclass that links, say, 'Integer' and 'String'
[particle] it'll be faster than the one sitting on perl5, we promise 16:54
fglock I think can we build "Scalar" that way
pmichaud the other thing to keep in mind is that "object" in Parrot speak has two meanings -- it can either be a PMC type or it can be something implemented using the Object PMC type
fglock or, is $x already a Scalar? 16:55
pmichaud in nqp, $x is a symbol entry 16:56
i.e., it's something in a (lexical) symbol table somewhere
by definition, that entry refers to a PMC of some type. We don't have Scalar PMCs yet -- just the value types.
fglock so this part needs some emulation
pmichaud (and I'm not quite sure how one can implement Scalar with what Parrot has at the moment.) 16:57
fglock kp6 does some tricks with the dispatcher, we could port that to kp6-perrot
parrot
pmichaud what sorts of tricks?
fglock Containers have a separate MetaModel 16:58
that you can access by building a proxy with VAR($x)
pmichaud right, Parrot doesn't have that yet
fglock otherwise, you are always accessing the contents
kp6 compiles $x=2 to: VAR($x).STORE(2) 16:59
pmurias and $x.foo to $x.foo
fglock yes 17:00
pmichaud what about binding?
$x := $y
fglock VAR($x).BIND( VAR($y) )
hmm, no 17:01
pmichaud so, after that $x contains a reference to the $y Scalar?
fglock VAR($x).BIND($y)
VAR($y) is called inside .BIND
pmurias fglock: it's emitted perl5 $x = $y
fglock no, both contain pointers to a second place
pmurias: I've changed that, it had problems 17:02
pmurias sorry i'm wrong
pmichaud and so VAR($x).STORE(2) causes a 2 to be stored into the place pointed at by $x ?
fglock they have a "shared cell"
yes, 2 is stored in an "attribute" in $x 17:03
kind of
pmichaud and that attribute would be shared with $y if they were bound?
fglock yes
pmichaud what about arrays?
fglock they are more like a list of Scalar 17:04
it behaves the same, regarding VAR(...)
pmichaud yes, that's where Parrot starts to break down -- Parrot's arrays are list of values
fglock and @a[1][2][3] returns a Scalar-proxy that will do all the autovivifications if necessary 17:05
that is, if the cell is .BIND or .STOREd
pmichaud anyway, it starts to get real icky in parrot if every value in an aggregate requires two PMCs (plus the PMC for the aggregate itself) 17:06
we might end up having to do that, but so far I've been avoiding it 17:07
fglock the "cell" could be a C data structure, it doesn't need to be an object 17:08
maybe it already exists anyway 17:09
pmichaud to be visible at the parrot bytecode level, it would need to be a PMC
fglock it's just a pointer
pmichaud but it's a pointer that can be referenced
that's essentially what Scalar-proxy is doing 17:10
it's creating a reference to a cell in an aggregate
fglock no, it doesn't do that, 17:11
the cell in the aggregate doesn't exist yet
pmichaud maybe not physically, but it virtually exists :-)
fglock it gets vivified on demand
right
pmichaud I can reference items that don't exist yet. That's effectively what '$x' means when it hasn't been instantiated yet :-) 17:12
in fact, if one treats the symbol table as a Hash, then all Scalars are actually like "Scalar-proxy"
fglock exactly 17:13
pmichaud well, we may end up implementing a Scalar PMC class that acts like scalar-proxy
as you already know, the tricky part is knowing when we're working with the value and when we're working with the container 17:14
fglock the VAR() function fixes that
pmichaud is it a function or a macro? 17:15
I mean, it's not a function in the same sense that foo(2) is a function
it sounds more like a context
fglock it's implementation dependent; it's a function in kp6-perl5 17:16
it wraps the Scalar, swapping the dispatchers 17:17
a context would work too 17:18
fglock so I probably need a few C pmcs for kp6 17:21
pmichaud anyway, I have to afk for a bit 17:22
fglock ok, I'll get some coffee :)
fglock__ this is an interesting problem, Parrot wants to give me a full set of tools, but I'm looking for a different set 17:35
I need to learn more about Parrot 17:36
ispy_ fglock__: different computer? 17:36
fglock__ ispy_: lousy internet router
ispy_ fglock__: I just sent a message to your other handle... I'll post here. 17:37
So really fast a quick background on me. I've been developing software as a hobby for 4 years, 6 months professionally. I'm for the most part a Perl5 developer that also dabbles in python, tcl and javascript. I have NO experience with low level languages or for that matter any complete understanding of pointers so any low-level work you need help with is best left for those who grasp those concepts. As far as Perl5/6 related assistance, I can confidently
(12:32:47 PM) ispy_: Just wanted you to know what I'm able to bring to the table
pmichaud fglock__: this is partially why perl6 on Parrot has taken a while. :-)
fglock__ ispy_: one sec 17:38
pmichaud it's also worth remembering that Parrot is targeting much more than just Perl 6
avar ispy_: "I can condifently" is where you got cut off 17:39
fglock__ ispy_: you can probably learn all you need by following pointers that people will give you here and there 17:40
ispy_: you don't need to grasp all at once
fglock__ pmichaud: re taken a while, kp6 really needs just a few low level structures, 17:42
maybe it's worth implementing them in C?
pmichaud could be
depends on what they are
moritz_ that's what ruoso is doing 17:42
pugs_svn r19211 | pmurias++ | [kp6] added .DISPATCH to Object which serves as $foo.$meth
r19211 | pmurias++ | used in PAST.pm
moritz_ is $foo.$meth allowed at all? 17:43
syntactically, I mean
pmichaud yes
moritz_ isn't that $meth: $foo; ?
pmichaud from S02: $foo $bar: # ILLEGAL -- use $bar.$foo for indirection 17:45
ruoso moritz_, yap6 is almost ready to be a kp6 backend
moritz_ pmichaud: thanks
ruoso at this moment, the APPLY codes can already be implemented 17:46
for the native types
and the last native types can be implemented also
ispy_ moritz_: Does he have plans to expand the tutorial? 17:47
pugs_svn r19212 | ferreira++ | r202@dracma: perl | 2007-12-13 15:46:46 -0200
r19212 | ferreira++ | fixed smarlink errors in t/ pointed by "util/smartlinks.pl --check"
ruoso fglock and I were having a conversation about it at lunch today
moritz_ ispy_: I think he's got no time
ruoso we're in a point that we can plan a statically typed perl subset that would be used to write the MOP
ispy_ moritz_: should that be continued by someone else? It has potential to be an excellent resource. 17:48
moritz_ ispy_: but I'm sure you can become a coauthor
ruoso and this language would be compiled by kp6 targetting yap6 runtime
moritz_ (I'm one)
ispy_ moritz_: hmm... I'll ask him next time he's on.
pmurias ispy_: what tutorial? 17:49
ispy_ pmurias: diveintoperl6
pmurias: I would like to write an entry on complex data structures
fglock__ otoh, Parrot likely provides great process management tools (gc, stm, light threads), which is nice 17:50
ruoso yep...
moritz_ @seen thoughtpolice
lambdabot I saw thoughtpolice leaving #perl6, #haskell and #xmonad 11h 4m 26s ago, and .
ruoso yap6 doesn't means to compete with parrot in any way 17:50
moritz_ ispy_: just @tell him in a message that you'd like to publish one 17:51
ispy_: lambdabot will deliver it for your
ruoso yap6 have a stupid refcount gc, uses libc memory management, and relies on pthread.
nothing really portable and powerfull
but small and simple
ispy_ moritz_: thanks dude... I'll do that now. 17:52
fglock__ ruoso: how about converting the yap6 things to Parrot pmcs
ruoso I wasn't able to get the PMC out of the parrot strucutre 17:53
it was depending on a much more complex runtime from every side I looked
ispy_ @tell thoughtpolice Hey, I've recently began contributing to Perl6 development. And learned you were the author of the very site I learned to program in Perl6 from. moritz_ and I were talking and he mentioned you might give me co-author access so I might expand the tutorial. I would really like to write a few data structure examples among a few other things. I really see a lot of additional potential for this blog and would very much like to be apart of t 17:54
lambdabot Consider it noted.
fglock__ i'm thinking of translating Runtime/Perl5/* to Runtime/PMC/* 17:55
then we have a "Perl 6 VM"
ruoso when I tried it, I was only able to do it using PIR...
fglock__ I mean, in C 17:56
ruoso that's what I tried to say by not being able to simplify things 18:00
I wasn't able to get "a small part" of Parrot
I considered that before starting yap6 18:01
but maybe I just missed the point...
fglock__ is it already possible to write pmcs in perl5? 18:10
rethorical question, sorry 18:14
pmurias swimming& 18:15
fglock__ a possible plan would be to write the kp6 object system in C+PIR, and then emit nqp+PIR 18:17
fglock__ this would possibly result in less performance than the pure PIR version, because PIR is using a simplified model 18:24
moritz_ is there a good reason not to use plain, pure PIR? 18:26
fglock__ moritz_: the semantic level of PIR is that of Perl 5, 18:27
it should result in the same level of performance 18:28
same thing for PAST
the main reason for changing the development backend is performance 18:29
unfortunately, performance comes with a huge cost 18:30
so we need to balance that
and do a reality check for premature optimization, for instance
moritz_ fglock__: but with PIR we can use parrot's object system 18:31
fglock__: which means that the emitted code will be much more concise
fglock__ we can't, really
moritz_ why?
fglock__ it doesn't currently implement the same object semantics that kp6 does
moritz_ in which way? 18:32
fglock__ the MetaModel works slightly different, Containers work slightly different
the small differences add up 18:33
moritz_ hm, sad
fglock__ of course, we can discuss that on #parrot and fix that
moritz_ well, I don't know enough about PIR and about kp6 to comment on it 18:34
fglock__ otoh, Parrot is designed for flexibility, and it can support other models 18:35
fglock__ the good thing is that Parrot seems to have very few PMC bugs, 18:52
which might mean that PMCs aren't that difficult to write
araujo hi 19:03
araujo has glanced over this parrot discussion
moritz_ hi araujo
araujo fglock__, does kp6 use parrot?
hello moritz_
moritz_ araujo: not in its default backend
araujo how that perl6 hacking goes?
fglock__ araujo: kp6 is meant to use Parrot, as soon as possible 19:07
moritz_ even before bootstrap?
fglock__ kp6 currently uses a "VM" written in Perl 5 19:08
araujo fglock__, i see
fglock__ moritz_: kp6 is nearly bootstrapped
i'm not sure it makes sense to fix the remaining bugs
moritz_ fglock__: what do you mean by "nearly bootstrapped"? does it pass some of the regular kp6 tests? 19:09
fglock__ yes, it passes some of them 19:10
but it's very slow
ispy_ hey guys, how do I pipe file handles like in p5?
:)
moritz_ ispy_: pipe file handles? can you give a short p5 example? 19:11
ispy_ open my $cmd, "command |";
fglock__ moritz_: the bugs are perl5-vm bugs, not really kp6 bugs 19:11
moritz_ fglock__: ok
ispy_: not sure.... perhaps it's in S16 19:12
in case of doubt it's the same as in p5, which would translate to my $cmd = open "command |";
ispy_ moritz_: I tried that, assuming the same as you, it failed in pugs... possibly I'm in error though. I'll give it a deeper look. 19:13
moritz_ ispy_: it could very well just not implemented yet
ispy_ moritz_: man, that totally ruins my plan to prototype this network routing program in p6 :( 19:15
moritz_: that's how it goes :)
moritz_ ispy_: I know it's sad, but all p6 implementations are plain weak on I/O
ispy_ moritz_: I can understand why that stuff has taken a potential back-burner, unfortunetly for me the only work I have to do is IO related right now, that's cool... p5 will just have to do it as gracefully as it always has. 19:16
fglock__ hmm - v6.pm should handle that 19:17
[particle] look through the pugs test suite for io tests, and see if they pass 19:19
fglock__ [particle]: are there Parrot vs. Perl 5 benchmarks? 19:23
I wonder if kp6-in-PIR will be fast enough 19:24
ispy_ [particle]: thank you, I'll look into that.
fglock__ compared to kp6 with C-PMCs
[particle] fglock: like alioth? 19:31
fglock__ hmm - looking 19:32
fglock__ shootout.alioth.debian.org/sandbox/...ang=parrot 19:35
it's about the same in average
pmurias fglock__: it's a pity -d:DProf dosn't work on kp6 19:48
pmurias fglock__: what are the remaining bugs? only wrong parsing of my $var comes to my mind 19:51
[particle] ispy_: ping 21:56
ispy_ [particle]: yes?
[particle] ispy_: i'll join up on hiveminder 21:57
i'm 'particle'
ispy_ [particle]: gotcha... excellent, as a member or organizer?
[particle] org
ispy_ excellent. I'll add you now. Thanks.
[particle]: I guess I need an email addie for invitations. 21:58
[particle] [email@hidden.address]
ispy_ [particle]: just msg it to me if you like.
ok
all set. 21:59
alright, I'll be on in a few hours... getting off work.
Later everyone, thanks again for the involvement particle.
[particle] i'm in. 22:00
~~
Eja www.publicpet.gr/ejavaqel/vote Unbelievable? 23:41