pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, elf: etc.) (or perl6: for all) | irclog: irc.pugscode.org/
Set by Tene on 29 July 2008.
TimToady anyhoo, I'm on ubuntu, so shouldn't be that different... 00:01
mst well, it fails on ubuntu for me as well
hrm
TimToady: what YAML::XS version do you have?
cos I'm seeing value quoting differences as well 00:02
in fact, I'm seeing all sorts of slightly odd differences
but let's try getting me the same YAML::XS version first
TimToady 0.27 00:03
use YAML::XS; 00:04
print $YAML::XS::VERSION, "\n";
mst I have 0.29
I'll downgrade
TimToady maybe I should upgrade and break mine :) 00:05
mst eh, not unless I confirm this is the problem 00:07
also, it's less important that mine works than that yours does :)
mst bugger 00:07
no
TimToady I should upgrade anyway, if that's what is out these days 00:09
mst well downgrading didn't fix 00:10
so it's probably safe
TimToady ah, reproduced it here!!!
mst ooh? how?
TimToady maybe try touch STD.pm with 0.27
so it rebuilds?
mst I rm'ed it and re-ran make 00:11
TimToady did it rerun gimme5?
mst does touch and 'make check' again just to be sure
I rm'ed pm5 as well
so I'm fairly sure it did
anyway, touch done, make check running again
TimToady anyway, all I did was install 0.29 and it failed
mst crap
I'm an idiot
I'd cleared perl5lib but not PERL_MM_OPT 00:12
mst redoes the downgrade
oh, wonderful, 0.27 doesn't link here
TimToady what's more, it fails with exactly your preferred error message :) 00:13
mst laughs
not quite the adjective I'd've used for that errr :)
TimToady summon ingy
mst tries to summon yuval, since he released 0.29 00:14
mst wonders why 0.27 brfs
ah, needed a make clean
TimToady: confirm 0.27 works here. 00:15
TimToady trying YAML::Syck
mst YAML.pm failed to load the doc at all, I'm afraid 00:16
TimToady seems to compile with YAML::Syck, anyway; now to see how much slower it is... 00:19
answer, no slower! 00:20
TimToady let's see how fast it does the whole testt thing now...maybe I'll just switch to Syck for now 00:23
mst sighs 00:32
TimToady: would you mind horribly if I un-hardcoded the perl location in this stuff?
/usr/bin/env perl would be a lot more portable than /usr/local/bin/perl
TimToady that won't work for people who have 5.8 earlier in their path 00:34
but maybe we can persuade them to change their path 00:35
mst no. but it also doesn't work for anybody whose 5.10 isn't in /usr/local/bin :)
TimToady it would be friendlier to people who can't make a symlink in /usr/local/bin, I suppose...
mst I could; I just massively don't want to 00:36
since I add /usr/local/bin to my path for other reasons
but still want the system 5.8
I'm just difficult, of course
TimToady none of the rest of us are ever difficult :)
mst wonders how hard it would be to emulate state and say on 5.8
TimToady say is a convenience, but I rely on state rather heavily in spots 00:37
mst right, but isn't "my $x if 0;" equivalent?
Limbic_Region and { my $foo = 42; sub some_sub { } } is not equivalent 00:38
nothingmuch YAML::XS 0.29 uses newSV(0) iunstead of PL_sv_undef when loading a yaml null
Limbic_Region mst - that doesn't work in recursive subs either does it?
TimToady hi nothingmuch
mst err
how does state() differ?
nothingmuch when a null is a hash value and PL_sv_undef is used then that causes errors on ref taking or autovivification
that's all i know
mst nothingmuch: how would that cause utf8 fail though? 00:39
nothingmuch i didn't change anything but that, so not really qualified to help
mst ah 00:39
nothingmuch is it 100% a 0.28 > 0.29 change?
TimToady and we're using XS to write it out, so it should be able to read using XS
nothingmuch some handling of whether or not numbers are formatted as numbers or strings was added, too
forgot about that bit
mst yes, I saw some quoting differences
but that was miniscule 00:40
TimToady it oughta round trip itself, you'd think...
Limbic_Region mst - hang on, I am still trying to find the link I was thinking of
mst nothingmuch: there's no 0.28
avar /w/ 2
nothingmuch UNICODE INGY 00:41
gimme a while and I will biset against the repo if you have a failing test
if you want to give it a shot: svn.kwiki.org/ingy/YAML-LibYAML/
lambdabot Title: Revision 3090: /YAML-LibYAML
nothingmuch my intertubes are very flakey atm though, and I'm trying to finish something else first, so no promises 00:42
tomorrow i will be back in .il so things should sanify for a while
mst nothingmuch: agaton.scsys.co.uk/~matthewt/fucked.up
nothingmuch: that's the first doc that fails
TimToady we can limp along on 0.27 or Syck for the moment
nothingmuch fails to load?
mst right 00:43
nothingmuch ok, i will try to track it down
mst I -think- it's a loading problem since what 0.29 generates, 0.27 -can- load
Limbic_Region mst - see use.perl.org/comments.pl?sid=39437&cid=62464 # does that work if you substitue my $foo if 0; in place of state? 00:44
lambdabot Title: Who has the best state implementation? 00:45
Limbic_Region oh wait, that's not the link I was looking for either
grrr - I guess I can't find it
trying to eat my supper ATM
TimToady ah, it's the ¢ character there in that test case; I wondered why I couldn't find a « :) 00:46
mst Limbic_Region: err 00:47
TimToady nothingmuch: thanks
mst Limbic_Region: is there perl5 code for that?
nothingmuch 169 packets transmitted, 36 packets received, +1 duplicates, 78% packet loss 00:48
*sigh*
Limbic_Region mst - yes, let me look
mst - actually the p5 version is in the same link - nicholas put it further down 00:49
or not 00:50
grrr
use.perl.org/~nicholas/journal/36270 00:51
lambdabot Title: Journal of nicholas (3034)
Limbic_Region root of the thread
Limbic_Region gives up trying to eat, chat, and look for links at the same time 00:52
Limbic_Region AFK & 00:52
mst hmm 00:53
mst hmm 01:02
does state initialise on first execution or at compile time?
TimToady first execution 01:06
mst hm 01:07
that's slightly harder to macroise then
my $bar if 0; BEGIN { $bar = "Pie"; }
works for compile time init, of course
TimToady what's more, if the closure gets cloned, it gets initialized again 01:08
mst define cloned :) 01:08
Limbic_Region that's the thing I was talking about
but couldn't find a link for
btw - is state/say the only 5.10 features
mst I already asked and he said yes
Limbic_Region or is there also given/when and // and named captures
ruoso really thinks we could just force people to use 5.10
TimToady I don't know for sure
mst ruoso: you are doing, currently
TimToady oh, yeah, I use // all over the place 01:09
mst heh
right
TimToady that's the biggie, not state
mst fucknuts
I haven't figured out how to add operators to 5.8 yet
Limbic_Region mst - what, afraid of a little source filter?
TimToady all my caching depends on //=
mst Limbic_Region: I Do Not Use Source Filters
Limbic_Region goes back to the peanut gallery
mst well, I do, but mine are written in C and don't change the text 01:10
Limbic_Region that was intended as a joke
mst it was funny the first few hundred times I heard it
no, wait, no it wasn't
:P
ruoso TimToady, anyway... I know I'm really boring... but... please consider clarifying the eagerness/lazyness issue in (@a,@b)... 01:12
TimToady been thinking about it all day
ruoso I'm kinda approaching map again (now in mildew), and it would be nice to do it right at first ;) 01:14
mst TimToady: hmm. is that in the mangling code or the emitted code?
TimToady mostly in Cursor.pmc
and in the emitted code 01:15
ruoso has ClassHOW.can as the next milestone....
mst hrmf 01:16
TimToady: I really really want emitted code to work on 5.8
wonder how easily I can maintain a branch for that
TimToady it's possible all my uses of it would work with ||=
mst well, I'm running 'make testt' atm to verify my build 01:17
TimToady but I'd rather not dilute the semantics that way
mst sure
but I figure if I change it locally, and testt still passes as much as it did before
then -I'm- probably ok with it
TimToady just ran testt with YAML::Syck and it ran just as fast, so I'll probably check that in
also figured out I could chop about .2 sec from each compile if I remove yaml from the STD.pmc file entirely somehow 01:18
TimToady since it's only used when regenerating the lexers, not when they are already there 01:18
TimToady but attaching them to the lexical scope anonyously is difficult with inlining them 01:19
mst er. expand that sentence? 01:21
pmichaud b u t a t t a c h i n g t h e m t o t h e .... 01:22
:-P
TimToady all of the current instances of yaml attach to a variable called $retree, but it's the lexical location of that var that identifies the yaml in question
if I moved the yaml out to a file I'd have to name lexical locations somehow
or just generate a list of filenames as we go... 01:23
it saves about .1 second not to call YAML::Syck::Load, but still use here docs
right now it's calling Load even if the lexers are built, which is useless 01:24
so .1 seconds * 774 tests would still save roughly 80 seconds on testt
80 sec out of 44 minutes 01:25
YMMV
not gonna be completely happy till I get it down to about 4 minutes :) 01:26
but that won't happen as long as I'm emulating a regex engine in perl 5 01:27
pugs_svn r23044 | ruoso++ | [mildew] a new failing test for "my sub foo($bar) {...}" 01:28
ruoso sleep & 01:30
mst TimToady: yeah, my strategy is going to be to interleave results into a .pmc and try and minimise how often I need to run the grammar output
then again, I won't have nearly so big a grammar as you do to begin with 01:31
wayland76 ruoso: Now that we're discussing iterators again, I pulled out the iterator code I was working on 01:49
Limbic_Region 's ears perk up
iterators are something I know a fair amount about
wayland76 My idea was to have a Tree::Axis iterator that could implement one of a variety of tree iteration types
depending on the four parameters passed in 01:50
Limbic_Region: Am I right in presuming that you saw the interators discussion above?
Limbic_Region that would be a bad assumption
wayland76 (I've just noticed ruoso sleep&)
Limbic_Region but I can scroll back
wayland76 Ok
Finishing around 18:40 yesterday 01:51
Limbic_Region my scroll back only goes to when I joined the channel about 2 hrs ago
wayland76 irclog.perlgeek.de/perl6/2008-11-18
lambdabot Title: IRC log for #perl6, 2008-11-18
Limbic_Region wayland76 - www.perl.com/pub/a/2005/06/16/iterators.html # article I wrote on iterators for perl.com - if I can be of any help, let me know 01:52
lambdabot Title: perl.com: Understanding and Using Iterators
Limbic_Region I don't contribute in very many ways these days
wayland76 I won't claim to know much about iterators, but I tried to make a tree iterator :)
Limbic_Region so if there is something I can do - I would be happy to pitch in
wayland76 But it needs operator overloading and macros, so it doesn't work yet :)
Limbic_Region operator overloading isn't too much of a problem but macros? 01:53
this is in SMOP perl 6?
wayland76 Well, for an eval
I've only tried running it on Rakudo
But I agree with ruoso that we need to work out what Iterators are doing :) 01:54
Limbic_Region ok, well my perl 6 is quite rusty - I stopped playing along at home about the time audreyt had to take a sabbatical and pugs went stagnant
wayland76 My plan is to have an interface sort of class, and then it gets a different backend to do the actual iterating work depending on its creation parameters (sort of like the DBI/DBD split)
ruoso's notes at www.perlfoundation.org/perl6/index....p_operator are the closest thing we've got to an Iterator specification 01:55
lambdabot Title: SMOP map operator / Perl 6 01:56
wayland76 ...and no-one seems quite sure how they're going to be done, including TimToady, if I interpreted things correctly :)
wayland76 So I guess it needs people who have their head around iterators to try to figure out what the best ideas are :) 01:59
wayland76 Limbic_Region: Your Perl6 may well still be better than mine. I haven't written any code yet that worked when complete (ie. I kept building until I ran into a feature that Rakudo didn't have, or a bug in parrot) 02:05
Limbic_Region heh
well, my kid's bedtime so...
Limbic_Region AFK &
wayland76 :) 02:11
I'm finding the link to the original, on-list discussion quite enlightening too :) 02:12
wayland76 pmichaud++ (updated ROADMAP!) 02:19
@tell pmichaud the ROADMAP still says "Updated: 2008-08-16" :) 02:21
lambdabot Consider it noted.
wayland76 Limbic_Region: Also, good to have you back :) 02:30
As far as I can see, S02 claims (IIUC; U = Understand) that there are three groups of contexts, void, item(scalar) and list, and then goes on to discuss some of the specific item contexts 02:47
I would've expected some discussion of other contexts in there too, specifically slice context
...and maybe hash context 02:48
wayland76 Are list, slice, and hash all specific versions of the general list context? 02:48
TimToady more or less 02:50
as are eager and hyper
wayland76 Ok 02:51
TimToady but the last two function more like real contexts
things producing values don't generally care whether they are in slice/list/hash context
they just spit out captures that flattened or not later 02:52
wayland76 Ok
TimToady whereas with eager and hyper it actually affects the semantics of the generation
TimToady when you say %( 'a', 'b', :c ) it's really just a list context to the args, and % does all the hashification 02:53
wayland76 :) 02:54
TimToady or %foo = 'a', 'b', :c
wayland76 Is there an equivalent of wantarray() that tells a function something about its context? 02:55
TimToady there's a want() function, and its use is discouraged
wayland76 Ok :)
TimToady for instance, @foo = 'a', 'b', :c; %foo = @foo; has the same effect, but the context is Array rather than Hash 02:56
so want() can't see through indirection, nor can it see through to a lazy binding
maybe if we were a language that guarantees type inferencing, but we're not 02:57
wayland76 :)
TimToady we're much more interested in guaranteeing clean late-as-possible dispatch semantics 02:58
TimToady which means you might not even know the candidate list of bindings till dispatch time 02:59
mst that's half the fun though
wayland76 I can see how that could be useful :)
TimToady and any one of those bindings might supply the eventual context
mst does returning a list to a scalar call do the ref-ification?
wayland76 (Btw, are the Synopses in the Pugs SVN?) 03:00
TimToady when you write foo(@bar) you can't know whether @bar will be in list or item context, at least not without a proto declaration of foo
mst: yes, a list in item context just []-ifies itself 03:01
if you want the last element, you have to use .[*-1]
mst ponders a p5 pragma that does that
combine that and Perl6::Contexts and you could get rid of most of the wantarray-related hate 03:02
TimToady if you're gonna hack on p5, I'd rather you add lazy lists :)
mst EXPAND 03:03
TimToady emulating lazy lists in p5 is slow, and STD has to work hard to avoid doing so
lazy lists (especially gather/take) are particularly useful for implementing backtracking
mst do you actually mean a -list- or an array? 03:04
TimToady list
even when the list is on the stack!
mst see, writing a pair implementation first makes my life harder
wayland76 (Btw, found the SVN of the Synopses, don't worry :) )
mst oh. you mean being able to do "my @foo = bar()" and have @foo be lazily populated?
TimToady I'm not suggesting you actually tackle lazy lists; you'd have to be mad, or intent on going so... 03:05
mst sure, but answer the question anyway? :)
TimToady it'll be hard enough in an implementation that is designed with them in mind in the first place
maybe not under assignment, since we're thinking even p6 list assignment is eager 03:06
but to be able to return foo(),bar(),baz() and not call more functions than you need to 03:07
mst oh. well, I'm intending to add the ability to return tied/Variable::Magic'ed arrays from subroutines, anyway
it's not that hard, you just have to look at the return op and have a quick wander around the call site
TimToady and to be able to pass lazy lists through map and such
mst yeah, those are interesting as well 03:08
fixing map doesn't look that painful
I guess split() already has the relevant magic for the foo(),bar(),baz() case
so it'd just be a question of stealing it
TimToady if you implement in terms of tie, it will almost certainly be to slow for my purposes...
*too
mst tie is a good start though to get the call site stuff sorted 03:09
TimToady and solving it in general really requires continuations
efficient continuations
mst anyway, if any of this stuff works or your purposes I'll be very happy
but I don't actually -care-, as such
I'm mostly interested in returning lazy arrays for DBIx::Class' nefarious purposes 03:10
the return foo(),bar(),baz() case is cute though
TimToady basically, I need .*?foo to not generate all possible .* matches before it starts matching foo 03:11
mst ahh
TimToady and a lazy list of potential .* matches is a good way to do that 03:12
and eager list is not :(
mst but as soon as you're invoking a sub call per array fethc, it isn't anymore
TimToady not a sub, a continuation :)
probably just another iteration of a loop somewhere
mst sure 03:13
you don't actually need a full continuation either, since it's single-reinvoke
so a coroutine would probably do
I've seen it done for DBIC resultset iterators that way
TimToady but the take of a gather/take can be down in any nested dynamic scope, so simple co-routine is not good enough
we divorce our co-routines from sub boundaries... 03:14
mst Coro doesn't.
so I don't see why it wouldn't be viable
TimToady well, it's not such big issue these days, since we avoid lazymaps most of the time now 03:15
mst (and as for being mad, I believe the last thing you said to me in person was "rather you than me" :)
oh, usre 03:16
I'm now quite fascinated by the idea of a coro-based gather combined with uvar magic though
that could be rather cute
gah. disadvantages of talking to a language designer: they give you ideas.
TimToady terrible, ain't it?
just think what happens when I start talking to me own self... 03:17
recursive uglieness ensues
*ugliness even 03:18
mst eh. tish and tyops hapne
TimToady though I kinda like uglie as a word
mst actually, my problem atm is to write up all the ideas other people want me to give them 03:19
which is annoying, because I'd much rather be hacking
mst shrugs
TimToady gee, I'm never in that situation... 03:21
mst there was a reason why I mentioned it, and it wasn't that I was expecting your sympathy ;) 03:25
dukeleto TimToady: I am interested in making complex matrices core datatypes in perl6 and parrot, what are your thoughts about this? 03:29
TimToady dukeleto: my thoughts on this are expressed in S09 03:30
but the short answer is, yes 03:31
mst anyway, I'm running away before I get any more ideas 03:34
I'll be back next time I manage to break everything
TimToady: cheers for the bisect assistance
TimToady waves belately... 03:35
TimToady dukeleto: we could certainly use a lot more tests in t/spec/S09* for such things; that might be a good place to start 03:38
dukeleto TimToady: thanks, that is the direction that I needed 03:39
TimToady and if you wanted to take the PDLish ball and run with it, no one will feel like their turf is being trampled
do you have a pugs commit bit yet?
dukeleto i have recently been hacking on Math::GSL
TimToady: yes, you gave me one at the Portland Parrot Hackathon 03:40
TimToady k, can't keep track of these things...
dukeleto i was there sitting next to Eric Wilhelm
yep, thanks for asking
I will peek at those tests
TimToady there really aren't any good multidimension tests yet, and almost nothing on complexes
dukeleto but I wanted to say that perhaps GSL's matrices are faster for the 80% case of plain "2-dimenstional" matrices 03:41
TimToady mostly S09 will be the resource
I'm not familiar with GSL
wayland76 GNU Scientific Library 03:41
TimToady ah
wayland76 (just Googled it :) 03:42
dukeleto it is pure C
with a reasonable amount of tests
TimToady well, it'll be interesting to see how it maps to S09 notions
dukeleto Math::GSL uses SWIG to generate bindings to most of the extensive GSL library
TimToady feel free to give feedback on S09 too where it makes your life difficult
dukeleto TimToady: ok, that sounds like a plan 03:43
TimToady with parrot it'd be more like NCI calls, but I haven't played with it
dukeleto i ran some stats and found out that roughly 1000 lines of SWIG generates 280,000 lines of XS .
so it is very efficient in that perspective 03:44
yes, I have read the parrot NCI rfc, but it still seems vague
TimToady I'm sure you'll stress their design as well :)
dukeleto or perhaps I haven't read it recently
I have been fiddling with FFI in the Factor programming language and it is surprising really simple, even simpler than SWIG. I had a GSL binding to Factor in about 1 hours work with some others help. It took years for Math::GSL to actually come together 03:46
pasteling "wayland76" at 118.208.203.186 pasted "Suggested patch to S02" (13 lines, 388B) at sial.org/pbot/33265 03:47
dukeleto there is currently no direct maintainer of the SWIG Perl documentation or implementation, so it doesn't get much love
TimToady If we do this right, we could rewrite GSL in Perl 6. :) 03:47
and throw away the C code
dukeleto i am very excited about NCI in Perl6
TimToady I'm more excited about making Perl 6 powerful enough to not need NCI except for things that really need foreign interfaces 03:48
dukeleto but rewriting some parts of GSL in perl6 would be interesting
quite a large undertaking to do all of GSL (there are almost 50 subsystems), but a small dedicated team could do it 03:51
TimToady anyway, we're hoping to make Perl 6 a respectable language to do scientific computing in, over the long haul
dukeleto TimToady: that is my primary interest, but in the short term :)
TimToady which reminds me, some of the sequences in S09 that are 1..*:by(2) should be replaced with 1,3,5...* 03:52
dukeleto TimToady: ok, I will look out for those
wayland76 ...although I'm reminded of that XKCD cartoon where the gods say "well, ostensibly we created the universe in LISP, but really we hacked most of it together in Perl" :)
TimToady not that the other doesn't still work, but it's ugly
well, it the other xkcd where he says if he had to do it over he'd end with a right paren, I'd like to point out that it's just as easy to end a Perl program with a right paren as a Lisp program... 03:53
wayland76 (s/it/in/, I presume) 03:54
TimToady hai, sou desu.
dukeleto TimToady: especially if you use a __DATA__ block
wayland76 (my point in the first one being that respectable or not, Perl gets used :) )
TimToady pictures the universe with a DATA block... 03:55
dukeleto hah
wayland76 Hey, that actually explains the whole universe :)
Because until you have the data block, you don't know what the program is doing :)
TimToady @universe.pick(1)
lambdabot Unknown command, try @list
dukeleto that explains where the big bang kept the little bit of entropy that it needed to start off!
wayland76 (maybe the __DATA__ block is the Bible :) ) 03:56
dukeleto or maybe it just shelled out to csh.....
wayland76 That explains a lot too -- I just realised that the big bang comes after the big hash 03:57
...and just before the big bin, and the big bash :)
TimToady well, I happen to think that God is creating the universe sideways like novelist, so what happened at #! is only part of the story...
wayland76 :) 03:58
TimToady well, bein's it's 20:00 here I should probably decommute and see if my family is still alive... 03:59
wayland76 Don't novelists sometimes have their characters take on a life of their own?
dukeleto TimToady: thanks for the help
TimToady you're welcome, and good luck!
dukeleto much abliged 04:00
TimToady Homeward Bound & 04:01
wayland76 PARROT PARTY TIME ! :) Parrot 0.8.1 released 04:09
literal <TimToady> which reminds me, some of the sequences in S09 that are 1..*:by(2) should be replaced with 1,3,5...* 04:14
how does that work?
does Perl notice the n=n+x pattern? if so, can it notice others? 04:15
azawawi good morning 04:39
lambdabot azawawi: You have 1 new message. '/msg lambdabot @messages' to read it.
azawawi @messages
lambdabot moritz_ said 20h 48m 54s ago: in principle there's no problem with it, you should just make it clear that it's generated code, and where it comes from. And if there's no license statement in STD.pm,
ask TimToady what's the license
azawawi @tell TimToady what's the license on STD.pm and its generated perl5 code? 05:10
lambdabot Consider it noted.
azawawi evalbot control version 06:31
p6eval This is evalbot revision 23014
azawawi evalbot control restart
azawawi evalbot control version 06:31
p6eval This is evalbot revision 23044
azawawi highlight: my $foo; 06:32
p6eval Please use /msg p6eval my $foo;
azawawi @tell moritz_ who's the owner of p6eval (evalbot@timtowtdi.org)? when i try 'highlight:' i get a broken STD_syntax_highlight... maybe needs a crob re-'make clean all'? 06:38
lambdabot Consider it noted.
azawawi @tell TimToady can i safely ignore tokens like routine_declarator__S_114method when comparing trees to identify token change? (e.g. in STD.pm, 'unless' and 'if' have two different trees for the first char and the rest. 06:50
lambdabot Consider it noted. 06:51
moritz_ TimToady: re path to perl in gimme5, would '#!/usr/bin/env perl5.10.0' a good compromise? 08:50
lambdabot moritz_: You have 2 new messages. '/msg lambdabot @messages' to read them.
azawawi ping 10:43
moritz_ pong
I've svn up'ped evalbot, and deleted the lex/ cache
azawawi highlight: my $foo; 10:44
p6eval Please use /msg p6eval my $foo;
azawawi evalbot control version
p6eval This is evalbot revision 23044
azawawi moritz_: strange same problem 10:45
pasteling "azawawi" at 212.38.152.236 pasted "p6eval error" (2 lines, 348B) at sial.org/pbot/33267
moritz_ azawawi: which lex/ dir does the highlighter user? 10:47
azawawi moritz_: i dont know where it lives 10:48
moritz_ azawawi: you shouldn't set up evalbot backends blindly.
azawawi moritz_: i didnt setup any evalbot
moritz_ azawawi: no, but you added the highlight backend, right? 10:49
that's what I meant
azawawi moritz_: oh ok
moritz_: i used the same code as std
../../src/perl6
moritz_: worked on feather1 when i tested it 10:50
moritz_ std: say 'test'
p6eval std 23044: OUTPUT[00:05 86m␤]
moritz_ azawawi: on evalbot's server the bot runs under a user that has no write permissions anywhere by default 10:51
azawawi moritz_: hmmm
moritz_: so basically with the current evabot configuration 'highlight:' wont work? 10:56
moritz_ azawawi: it won't work unless somebody[tm] takes care of it
azawawi moritz_: why does std work while STD_syntax_highlight doesnt? 10:57
moritz_ because somedoby took care, probably
azawawi moritz_: they are in the same dir
moritz_ (and std: doesn't work reliably as well)
azawawi oh well at least i tried it ;-) 10:59
moritz_ aye
I'd like to fix that whole stuff, but my diploma thesis takes up too much time :(
azawawi no problem ;-) 11:00
things im going to work on: regexp highlighting
azawawi highlighting of $+, $? and @+ 11:01
azawawi and fix the remaining highlighting bugs... 11:01
what's ur thesis btw? 11:02
azawawi lunch + cinema.. later & 11:05
wayland76 @tell azawawi For clues about moritz_'s thesis, see moritz.faui2k3.org/en/uni (but I don't know what his thesis is either :) ) 11:51
lambdabot Consider it noted.
moritz_ wayland76: that's a bit out of date 12:07
I'm planning to update it, though
rakudo_svn r32873 | pmichaud++ | [rakudo]: Update objectref semantics for non-Rakudo objects. 14:10
rakudo_svn r32875 | pmichaud++ | [rakudo]: spectest-progress.csv update: 220 files, 4578 passing, 41 failing 14:30
r32875 | pmichaud++ | Failure summary:
r32875 | pmichaud++ | S03-operators/increment.rakudo aborted 41 test(s)
masak what has happened since this table was made? www.ozonehouse.com/mark/blog/code/P...Table.html 14:57
lambdabot Title: Mark Lentczner's Journal
masak I recognize most things, except for the 'magical whitespace modifier' underscore at the top right. 14:58
PerlJam !!! and ??? aren't there
??:: is now ??!!
<> for iteration is wrong 15:00
heredocs have changed
masak it's a ceautiful table, so it'd be nice if it were up-to-date.
s/cea/bea/ 15:01
maybe I should email him and ask?
PerlJam do it. 15:11
masak does it 15:15
masak what should the behaviour of sign($x) be when $x is complex? 15:28
rakudo: say sign($_) for 42, -42, 0+42i 15:29
p6eval rakudo 32877: OUTPUT[1␤-1␤1␤]
masak somehow, that last one doesn't feel right to me.
I vote for either an error or $x/abs($x) 15:30
PerlJam why would it be an error? 15:31
masak because 'sign' could be argued to only be applicable to real numbers.
i.e. positive numbers, negative numbers, and zero.
PerlJam but what is it specced to do? :-)
masak ah. 15:32
it's supposed to return the 'sign' of a number.
i.e. +1, -1 or 0 for the above three groups.
in that way, it's a bit like <=>, except it always compares to 0
PerlJam oh, it's wrong anyway I think. 15:33
rakudo: say sign(-5+3i);
p6eval rakudo 32877: OUTPUT[1␤]
PerlJam that can't be right. 15:33
masak it always returns 1 on complex numbers.
masak reports a bug
PerlJam maybe for complex numbers, sign() should return a complex result? sign(2+2i) -> 1+1i, sign(-2+2i) -> -1+1i, sign(2-2i) -> 1-1i, sign(-2-2i) -> -1-1i 15:59
masak PerlJam: that was what I meant by $x/abs($x) above 16:00
PerlJam oh
well, I vote for that one then :)
masak note that it's not exactly the same as what you just proposed :)
I proposed to always return something at a distance 1 from 0 (except sign(0) itself, which is 0) 16:01
PerlJam Hmm. that get's us things like sign(-3+4i) -> -0.6+0.8i 16:04
masak exactly. 16:05
PerlJam What advantages are there to being on an imaginary circle? 16:06
masak if we should at all allow sign() on complex values, that is the only reasonable option, as I see it.
ZuLuuuuuu is there a sign concept for complex numbers in mathematics? a complex number's magnitude is either 0 or its magnitude is greater than 0 16:17
masak ZuLuuuuuu: that could be said for real numbers as well. 16:18
I don't think there's a sign concept for complex numbers in mathematics.
ZuLuuuuuu but there is not a "negative complex number"
there is negative real number
ZuLuuuuuu sign of a complex number looks a little weird 16:19
masak ZuLuuuuuu: aye. 16:20
masak and I can't really see the use for it, unless your goal is broken code. 16:21
ruoso Hello!
masak ruoso: saluton! 16:22
ruoso mildew: class Foo {} 16:33
p6eval mildew: RESULT[(null pattern for prefix_circumfix_meta_operator:*) at ../../src/perl6/Cursor.pm line 451.␤unimplemented: at mildew line 23␤ Mildew::XXX() called at mildew line 252␤ VAST::circumfix::emit_m0ld('VAST::circumfix=HASH(0xac62150)') called at mildew line 98␤ 16:34
..VAST::noun::emit_m0ld('VA...
ruoso mildew: class Foo { method bar { } } 16:34
p6eval mildew: OUTPUT[m0ld: undeclared register: $void␤]
ruoso mildew: class Foo { method bar { } }; 1;
p6eval mildew: OUTPUT[Could not find variable ClassHOW in the lexical scope.␤]
ruoso cool... it's working...
masak why didn't the first one work? 16:35
ruoso good question... 16:36
mildew: class Foo { }; 1;
p6eval mildew: OUTPUT[Could not find variable ClassHOW in the lexical scope.␤]
ruoso interesting... it is parsing {} as different from { }
mildew: class Foo { }; 1;
mildew: class Foo {}; 1;
p6eval mildew: OUTPUT[Could not find variable ClassHOW in the lexical scope.␤] 16:37
masak sounds less than reassuring...
pmurias ruoso: hi
lambdabot pmurias: You have 2 new messages. '/msg lambdabot @messages' to read them.
ruoso hi pmurias
well... that wasn't the problem then
gah... running svn update on a long-outdated repo is incredibly slow and memory hungry 16:38
pmurias ruoso: what's the next thing we should be doing? 16:41
ruoso pmurias, I added a new test for lexical sub 16:42
I'm working towards ClassHOW.can
after that we have 'for'
but I'd like to have some clarifications from TimToady before we start that
pmurias any ideas what cause the memory leak? 16:43
ruoso I'm not sure...
ruoso I think it's related to the DESTROYALL code in the lowlevel 16:47
pmurias maybe
ruoso mildew: knowhow ClassHOW { method add_method { $OUT.print("Hey, you're trying to add a method...") } }; class Foo { method bar { } }; 1; 16:49
p6eval mildew: OUTPUT[Hey, you're trying to add a method...]
ruoso :P
mildew: knowhow ClassHOW { method add_method { $OUT.print("Hey, you're trying to add a method...") }; method dispath { $OUT.print("And now you want to call it...."); }; class Foo { method bar { } }; Foo.bar; 16:50
pmurias got to go back to my network less room :( &
p6eval mildew: OUTPUT[############# PARSE FAILED #############␤Unable to parse knowhow definition␤Unable to parse block; couldn't find final '}' at /tmp/PwfbQzgafR line 1:␤------> ; class Foo { method bar { } }; Foo.bar;␤ expecting whitespace␤]
ruoso mildew: knowhow ClassHOW { method add_method { $OUT.print("Hey, you're trying to add a method...") }; method dispath { $OUT.print("And now you want to call it...."); } }; class Foo { method bar { } }; Foo.bar; 16:50
p6eval mildew: OUTPUT[Could not find method dispatch.␤Hey, you're trying to add a method...]
ruoso mildew: knowhow ClassHOW { method add_method { $OUT.print("Hey, you're trying to add a method...") }; method dispatch { $OUT.print("And now you want to call it...."); } }; class Foo { method bar { } }; Foo.bar; 16:51
p6eval mildew: OUTPUT[Hey, you're trying to add a method...And now you want to call it....]
ruoso :P
ingy TimToady: you summoned? 18:32
TimToady yuval answered :) 18:41
lambdabot TimToady: You have 2 new messages. '/msg lambdabot @messages' to read them.
TimToady though I don't think the bug is fixed yet... 18:42
anyway, somewhere in the backlog is a small test case for a utf8 problem
rakudo_svn r32901 | pmichaud++ | [rakudo]: Update test_summary.pl to summarize each synopsis section. 19:40
r32901 | pmichaud++ | * Also grab plan count from test output if it's available.
pugs_svn r23045 | moritz++ | [t/spec] added file lexicals-and-attributes.t with tests for RT #58818 22:34
rakudo_svn r32905 | moritz++ | [rakudo] add test file for RT #58818 to spectest.data 22:41
pugs_svn r23046 | masak++ | [Spec/Functions.pod] fixed minor typos, added missing arguments to .fmt 22:42