Pugs 6.2.8 released! | pugscode.org | pugs.kwiki.org | paste: sial.org/pbot/perl6 | www.geeksunite.net
Set by autrijus on 13 July 2005.
Excalibor okay, time for bed... good night! 00:04
Khisanth hmm .. only works with ascii strings and integers? 00:13
Darren_Duncan If anyone wants to see it, the second main draft of my Lightning Talk for OSCON 2005 is posted 00:14
darrenduncan.net/OSCON/OSCON2005Lig...ngTalk.txt
any feedback welcome
will find out Sunday whether the title/abstract has gotten it approved or not
rafl Are there recordings of the Apocalypse Now talk autrijus did at YAPC? 00:15
Darren_Duncan before anyone asks, the module in question has no tutorial yet
but I plan to make one in time for the talk
or at least a decent SYNOPSIS
the page hew.ca/cgi-bin/page.pl?Day=Day%202&...rson_name= should link to autrijus talk videos, but none are uploaded yet 00:18
Khisanth hrm .. in pugs doesn't behave the same as .. in p5 01:29
svnbot6 r5775, Stevan++ | org.perl6.metamodel = (Java version) 03:46
r5775, Stevan++ | * added Method class
r5775, Stevan++ | - added tests for method class
r5775, Stevan++ | * added Method support for MetaClass
r5775, Stevan++ | - added tests for this as well
r5776, Stevan++ | Perl6.MetaModel (JS version) 05:46
r5776, Stevan++ | * added Perl6.Instance class to represent instances in the model
r5776, Stevan++ | - added tests for these
r5776, Stevan++ | * added require() function to the MetaModel to help loading module
r5776, Stevan++ | - updated tests to use this
Aankhen`` Could someone add Makefile.old and config.yml to the svn:ignore for the root directory? I'd do it myself, but I am having some trouble... 07:03
I'm adding tmp-Prelude.pm to the list of clean files in Makefile.PL; hope it doesn't break anything. :-) 07:05
svnbot6 r5777, Aankhen++ | * Makefile.PL: added tmp-Prelude.pm to list of clean targets. 07:12
gaal morning. Aankhen``, still need the svn stuff? 07:17
Aankh|Clone Yep.
gaal BTW what do the `s in your name mean?
Aankh|Clone Morning to you too. :-)
They're just ornamental.
szabgab hi gaal 07:19
how are you today ?
gaal hey gabor, sup?
just woke up :)
szabgab I have see Dragonball GT.... 07:20
s/see/seen/
gaal what's that?
szabgab one of the favorite movies of my son.... 07:21
gaal is it any good? :) 07:22
szabgab are you alone ? how was yesterday
?
gaal yesterday was just me and shlomi. we had a yummy pizza but i have lots of mozarella left over :/ 07:23
szabgab what about nothingmuch, isn't he comming over ? 07:24
gaal no, he's kinda under the water 07:25
szabgab what do you think, what should I do to try to make embedded perl5 work on my computer ? Should I compile a separate p5 just and try to use that ? 07:26
gaal oh, not necessarily 07:27
but look carefully at the build messages: was there an error in the beginning?
when you 'perl Makefile.PL', it probes for the perl5 embedding option
svnbot6 r5778, gaal++ | add three files to svn:ignore list in root dir
szabgab I tried to build with p5 again and then run this ./pugs -e 'eval q(print 23), :lang<perl5>' but it still does not print anything 07:57
09:49 Maddingue__ is now known as Maddingue
szabgab gaal are you there / 10:06
^conner pugs -e 'say "foo";' 10:12
pugs: internal error: scavenge_one: strange object 68
hehe
svnbot6 r5779, iblech++ | * Usual svn properties, including svn:ignore for perl5/PIL2JS.
r5779, iblech++ | * unEVALed t/builtins/control_flow/die.t.
^conner someone give me a pugs example that works 10:13
iblech ^conner: That works here fine :) GHC seems to have a bug 10:15
Did you precompile Test.pm?
svnbot6 r5780, iblech++ | PIL2JS: PIL::Parser -- Speed up parsing by a factor of 30 (!!) and fixed 10:42
r5780, iblech++ | parsing of the doublequoted string "\\".
^conner iblech, I didn't 10:58
iblech ^conner: Hm... FYI, compiling and using Pugs with GHC 6.4 on x86 Gentoo Linux works fine 10:59
jdv79 iblech, that has nothing to do with runtime, right? 11:00
^conner iblech, I'm using GHC 6.4 as well... on amd64 thou
iblech jdv79: Well, apparently GHC produces b0rked code on ^conner's box, as "scavenge_one: strange object 68" is not an error message of Pugs 11:01
^conner: Ah! See "CAVEATS FOR x86_64 MACHINES" in INSTALL 11:02
^conner in the GHC docs?
iblech No, in the Pugs SVN repository 11:03
gaal szabgab: try adding the parrot executable in your PATH
if that helped, parrot isn't being embedded, but does work in standalone mode
^conner x86_64-unknown-linux
GHC currently works unregisterised. A registerised port is in progress.
gaal double-check that parrot *was* detected in your config 11:04
^conner $ pugs +RTS -A200M -RTS -e 'say "boo"' 11:07
boo
silly garbage collections union
i wonder if the GHC guys are appreciating all this attention ;) 11:08
szabgab p6 question: how do I read from STDIN ? 11:10
iblech szabgab: my $line = =$*IN 11:11
(= is the iteration operator, and $*IN (or $IN) is STDIN)
food &
szabgab thnx 11:12
gaal: when I run perl Makefile.PL; make I see both -DPUGS_HAVE_PARROT and -DPUGS_HAVE_PERL5 so at least the Makefile thinks everything is ok, but then I don't see any sign of actually embedding them 11:24
svnbot6 r5781, iblech++ | PIL2JS:
r5781, iblech++ | * [...] now really constructs a reference, making push @a, [1,2,3] work
r5781, iblech++ | correctly.
r5781, iblech++ | * Arrays stringify correctly now.
r5781, iblech++ | * New: References, with correct stringification.
r5781, iblech++ | * next(), last(), redo() outside a loop gives a visible error message now.
gaal gabor: and the path? 11:26
szabgab gaal: do you mean if it include parrot already ? then no 11:28
gaal add it now and try 11:29
you don't need to rebuild pugs.
szabgab I am in the middle of rebuilding it, so after that...
ok, actually it finished building 11:30
@%@#@%# and it was not needed 11:31
./pugs -e 'eval q(print $]), :lang<perl5>'
the above does not print anything BUT 11:32
./pugs -e 'eval q(print "$]\n"), :lang<perl5>'
prints
5.008005
gaal interesting, p5's stdout is not flushed when pugs exits
szabgab it seems all the time it was there just because of the lack of newline we did not see the output 11:33
gaal well, it's a good catch.
unfortunately i don't have a setup to try fixing this
szabgab 6 hours wasted or what ? :-(
but at least it works now :-)
gaal yup!
szabgab now back to the regular p6 coding, the first baby steps 11:34
I think I should also get my hand on the python2parrot compiler and show that on AP4 (if they let me show anything) 11:35
gaal nobody ever calls perl_free, but i'm not surethat's the cause of the problem. perl_destruct is called, after all. 11:39
gabor: what happens when you do this? ./pugs -e 'eval q(print $]), :lang<perl5>; say "now in p6"' 11:40
wanna try something out? 11:41
please vi src/Pugs/Embed/Perl5.hs
line 196
"perl_destruct my_perl"
please add after that
perl_free my_perl
same indentation 11:42
use 4 spaces, not a tab
then rebuild and try your original eval w/o the newline.
there is a chance that freeing the interpreter might trigger a fh flush.
hint: to speed up compilation, use 'make unoptimized' 11:43
(but this results in a slower pugs)
szabgab wai, i am writing this e-mail, trying to put together the list of BigP: so far I have this: Perl5, Perl6, Parrot, Python, Pugs, PHP, Ruby, Tcl 11:44
gaal take your time
i'll go eat something.
szabgab btvon 11:45
QtPlatypus (How come Ruby and Tcl are classed as "P", they start with with non P's) 11:47
szabgab hmm, now that you mention :-) 11:53
and I skipped Ponie...
gaal: the above one liner did not help (still cannot see the results of p5), I am compiling pugs now 11:58
gaal: I tried that change in src/Pugs/Embed/Perl5.hs but it did not help either 12:07
gaal i don't know if that's a bug in pugs or in perl5 :) 12:21
szabgab wow, Perl6 is great, it can even divide by 0 without a problem ! It gave me "Inf" in my pro 12:22
..gram
gaal ....which is a bug, of course.
should have ben NaN. 12:23
szabgab it does not do it always though
so what should I do with this now ?
btw in all the other cases I got some exception on 1/0 12:24
gaal whittle down to a test case, add to t/operators/arith.t .
actually 12:25
it shouldn't be NaN
it should be a catchable exception.
see the bottom three tests there
what was the expression you used 12:26
?
szabgab gaal: the BOF was accepted, the lighning talk not yet, but I think it is in friendly hands 12:28
I was writing a calculator: given $op { when "/" {say $a / $b}} 12:29
so now I need to write some text for the BOF and then find some people who are interested to spend their 4th of August showing Pugs to many potential hackers 12:30
you know I am just thinking aloud :-) 12:31
ok should 1/ "0" be really Inf ? 12:35
is there a document about HACKING ? (e.g. that explains how to run tests individually ?) 12:37
gaal sorry, i'm only here intermittently. 12:41
see pugs.kwiki.org
you can use prove to run one test 12:42
export HARNESS_PERL=./pugs
export PERL6LIB=blib6/lib
szabgab ./pugs -Iblib6/lib t/operators/arith.t worked as well
gaal and then prove -v t/someitnhg
yeah
Aankhen`` ?eval my @foo = <a b c d>; "@foo @foo[]"
evalbot6 '@foo a b c d'
gaal 1/0 should be an exception
that you can CATCH.
bbiab & 12:43
szabgab ok, but this 0 was a string "0" probably that's the case
Aankhen`` BBL
szabgab ? 1/ "0"
?eval 1 / "0"
evalbot6 Inf
szabgab ?eval 1 / ("0" + 0) 12:45
evalbot6 Inf
QtPlatypus ?eval 0/0 13:47
evalbot6 Error: Illegal division by zero
QtPlatypus ?eval -1/0 13:48
evalbot6 Error: Illegal division by zero
QtPlatypus ?eval 1/0
evalbot6 Error: Illegal division by zero
QtPlatypus ?eval 1/"0" 13:49
evalbot6 Inf
QtPlatypus ?eval "0"/"0" 13:50
evalbot6 NaN
Khisanth ?eval my @foo = 1..4; @foo.length 15:20
evalbot6 Error: No compatible subroutine found: "&length"
svnbot6 r5782, iblech++ | PIL2JS:
r5782, iblech++ | * Rewrote Hash code, hash references work now correctly (my $hash = {...}).
r5782, iblech++ | * my %hash1 = %hash2 now copies the elements, one can use my %hash1 := %hash2
r5782, iblech++ | if the elems should not be copied.
r5782, iblech++ | * It's now possible to call methods on native JS objects even if their
r5782, iblech++ | the nativenessness of the objects couldn't be detected at compile-time.
r5782, iblech++ | * $*ERR.say(...) works now, needed for Test.pm to print the summary at the
Khisanth ?eval my @foo = 1..4; @foo.elems
svnbot6 r5782, iblech++ | end of tests.
evalbot6 4
svnbot6 r5782, iblech++ | * END {...} blocks work now.
r5782, iblech++ | * &prefix:<\> (reference taking operator) works correctly now.
r5782, iblech++ | * Fixed &shift and &pop to work correctly with array references.
r5783, iblech++ | PIL2JS: PIL2JS.js -- Flattening of hashes works now (&prefix:<*>, e.g. foo(*%hash)). 15:32
15:42 Aankh|Clone is now known as Aankhen`` 15:55 osfa is now known as osfameron
svnbot6 r5784, iblech++ | PIL2JS: 16:04
r5784, iblech++ | * Added &exists and &delete (capable of working on arrays and hashes).
r5784, iblech++ | * Stringification of the result of calling &delete does not work yet -- I'll
r5784, iblech++ | track this bug down tomorrow.
iblech FYI, m19s28.vlinux.de/iblech/stuff/not_p...js-demo/t/ (updated) -- Our testsuite compiled to JS 16:08
Have to go now & 16:09
masak ?eval class Test { has @.b is rw } my $t = Test.new(:b(1,2,3)); shift $t.b 16:19
evalbot6 Error: Can't modify constant item: VUndef
masak this should work, shouldn't it?
Khisanth probably, I have been having some problems modifying array elements 16:20
masak Khisanth, do you know if there is a test committed on this? 16:56
yes; there appears to exist such a test, in t/pugsbugs/attribute_list.t 17:10
svnbot6 r5785, Stevan++ | Perl6.MetaModel - (JS version) 17:53
r5785, Stevan++ | * Perl6.Object created and tested
r5785, Stevan++ | - objects initialize properly with attributes
r5785, Stevan++ | - attribute accessors/mutators work correctly
r5785, Stevan++ | The basic metamodel is now working :)
r5785, Stevan++ | still TODO:
r5785, Stevan++ | - class attributes
r5785, Stevan++ | - Role support
r5785, Stevan++ | - next METHOD support
18:17 Aankh|Clone is now known as Aankhen``
Aankh|Clone G'night. 20:41