pugs.blogs.com | pugscode.org | pugs.kwiki.org | paste: sial.org/pbot/perl6 | <stevan> Moose... it's the new Camel ":P | .pmc == PPI source filters!
Set by Alias_ on 16 March 2006.
00:13 jsiracusa joined 00:23 hikozaemon joined 00:29 rdice joined
buu QtPlatypus: You probably wanted perl6, not perl5 00:36
?eval bool::true | bool::false
evalbot_10383 Error: No such sub: "&bool::true"
QtPlatypus ?eval bool::True | bool::False 00:37
evalbot_10383 Error: No such sub: "&bool::True"
QtPlatypus ?eval Bool::True
evalbot_10383 Bool::True
QtPlatypus ?eval Bool::True |Bool::False
evalbot_10383 Bool::False
QtPlatypus ?eval Bool::True | Bool::False
evalbot_10383 Bool::False
QtPlatypus Curiouser and Curiouser 00:38
?eval any(Bool::True,Bool::False)
evalbot_10383 Bool::False
QtPlatypus ?eval (Bool::True|Bool::False) 00:39
evalbot_10383 Bool::False
buu ?eval 1 == 1|0 00:42
evalbot_10383 Bool::False
buu Eh? 00:43
?eval 1 == (1|0)
evalbot_10383 Bool::False
buu ?eval 1 == (1&0)
evalbot_10383 Bool::False
buu ?eval 1 == any(1,0)
evalbot_10383 Bool::False
buu ?eval 1 == any(1|0)
evalbot_10383 Bool::False
buu Well I'm confused.
QtPlatypus Looks like junctions have been switched off/broken? 00:45
00:52 avar joined
QtPlatypus ?eval 1 ~~ (1|0) 00:52
evalbot_10383 Bool::False
PerlJam ?eval 1 == any(0,1) 00:53
evalbot_10383 Bool::False
PerlJam ?eval 1 == any(1)
evalbot_10383 Bool::True
PerlJam at least that works :)
?eval 1|0|3 00:54
evalbot_10383 0
PerlJam ?eval 1|2|3
evalbot_10383 1
PerlJam looks like junctions evaluate to the smallest member
00:54 avar joined
QtPlatypus PerlJam: Seems like ther are collapsing prematurely. 00:56
?eval [|] (2,3,6,7,0,4) 00:57
evalbot_10383 Error: Cannot reduce() using a unary or nullary function.
PerlJam that's a bug 00:58
QtPlatypus Both look like bugs.
PerlJam yep 01:00
QtPlatypus I mean binary operator that returns the least of its sides is sort of nice, but no where near as powerfull as junctive operators. 01:03
01:05 mako132_ joined 01:06 jserv-- joined
QtPlatypus What I wanted to do was to test out, $a = (Bool::True|Bool::False); $a == $a; $a||!$a; $a && !$a 01:07
01:17 oylenshpeegul joined 01:22 oylenshpeegul left 01:25 sri_ joined 01:38 FB|afk is now known as FurnaceBoy 02:15 SamB joined 02:24 coumbes joined 02:32 dvorak joined 02:43 sri_ joined 03:03 SubStack joined 03:05 weinig is now known as weinig|sleep 03:12 sri_ joined 03:37 arcady joined 04:24 kanru joined 05:15 bjoern_ joined 05:45 SubStack joined 06:25 SubStack joined 06:30 justatheory joined 06:46 iblechbot joined 06:48 marmic joined 06:50 SM_ax joined
svnbot6 r10397 | scw++ | Pugs::Compiler::Rule ratchet 07:13
r10397 | scw++ | * character classes
r10397 | scw++ | * quantified subrule generates array
r10397 | scw++ | * fix <ws>
r10398 | scw++ | fix last commit: compile_p6grammar.pl doesn't work with ratchet yet 07:16
07:17 Aankhen`` joined 07:31 bjoern_h joined 07:36 elmex joined 07:37 macroron joined 07:43 macroron joined 07:49 drbean_ joined 08:32 lisppaste3 joined 08:33 Ymmv joined 08:49 buubot joined
svnbot6 r10399 | spinclad++ | - JudyHS: still stubbed out, but at least compiles now. 08:59
08:59 dok left 09:03 Southen joined 09:26 buubot joined 09:51 bjoern_h is now known as bjoern_ 09:53 drrho joined 09:56 kanru joined 10:22 Aankhen`` joined 10:31 elmex joined
miyagawa ping audreyt 10:41
10:42 ludan joined
ludan hi 10:42
10:48 Jakab922 joined 10:58 neoesque joined 11:43 mako132_ joined 12:00 jsiracusa joined 12:04 neoesque joined 12:05 avar joined 12:08 sahadev joined
GeJ is audrey stuck in $job? 12:13
svnbot6 r10400 | scw++ | Pugs::Compiler::Rule ratchet 12:15
r10400 | scw++ | * <subrule> generates correct match object
r10400 | scw++ | * match with :p flag set "from" correctly
r10400 | scw++ | * compile_p6grammar.pl now parse with ratchet, extremely fast
12:19 elmex joined 12:20 Limbic_Region joined 12:30 iblechbot joined 12:31 weinig|sleep is now known as weinig 12:45 lichtkind joined
lichtkind i heard that signitures will be renamed? 13:17
13:31 elmex joined 13:37 bjoern_ joined 13:39 hexmode joined
svnbot6 r10401 | fglock++ | PCR - implemented :sigspace - in :ratchet mode only 13:43
13:47 mj41_ joined 13:48 froh-doh joined 13:54 fglock joined 14:02 iblechbot_ joined 14:12 stevan_ joined 14:20 hexmode` joined
PerlJam lichtkind: renamed to what? 14:21
lichtkind in this point rumors were unclear :) but it were usually well informed circles :) 14:22
14:23 vytautas joined
lichtkind i just ask because im currently on chapter 6: subroutines so i would like to know 14:23
14:37 ruz joined 14:40 hexmode joined 14:53 elmex joined
lichtkind PerlJam so it wasnt renamed? 15:19
PerlJam Oh, I don't know. I haven't heard anything.
Although I don't see why signatures need a new name. Captures might but only in certain contexts, but because that name works in most contexts, it's probably going to stay. 15:21
15:25 hexmode joined 15:28 vel joined 15:40 Nouk joined 15:48 Limbic_Region joined, justatheory joined
PerlJam use.perl.org/~luqui/journal/ 15:49
Limbic_Region is saddened to read that luqui is leaving the p6 design team
PerlJam yep
I'd noticed his absence but thought it was all about school. 15:50
Limbic_Region me too
15:50 aufrank joined
Limbic_Region followed his other blog luqui.org anticipating news and was shocked 15:50
it sounds like it amounted to creative differences 15:51
15:51 geoffb joined
PerlJam I guess. 15:51
My reading makes it come down to "it stopped being fun for me"
Limbic_Region right, but the reason I read into it being no longer fun was creative differences 15:53
PerlJam sure.
szbalint www.vulnscan.org/UnrealIRCd/unreal3...annelmodes
erm
wrong window
15:57 rgs joined 15:59 weinig is now known as weinig|away 16:00 Ymmv joined 16:03 jserv-- joined 16:08 Nouk joined, bjoern_ joined 16:10 Nouk left
clkao scw++ 16:27
svnbot6 r10402 | clkao++ | Clean the generated MiniPerl.pm on make clean. 16:29
16:40 elmex joined 16:48 fglock joined 16:50 elmex joined 16:51 weinig|away is now known as weinig
lichtkind thanks PerlJam capures refer to block right? 16:58
PerlJam captures are what "matches" a signature. They replace references and can be used in all sorts of places in perl6 (the name comes from one particular use: captured items in regexes) 17:02
aufrank audreyt calls Captures the "dual" of signatures 17:05
Signatures, that is
scw: ping?
PerlJam Captures are a multi-view of a set of values. What view you get depends on the context in which you use them. 17:06
aufrank well said 17:07
17:09 m_ joined 17:23 elmex joined 17:35 ruoso joined
lichtkind PerlJam yes well said but im still new to this all so i have to read more s 17:39
17:42 mago joined
chip seen audreyt 17:42
obra chip: she's very nose-down at work this week. 17:43
Big deadline
chip darn
anybody here know the Parrot targeting of Pugs very well?
or somewhat well? well enough to look for something?
aufrank chip: you might as well just ask 17:45
PerlJam "parrot targeting of pugs"? That sounds backwards :)
chip locks and loads his parrot
aufrank maybe she'll backlog later :)
chip Is Pugs using the "die" opcode? It's on the chopping block 17:46
obra I presume there's some other way to get the same functionality? Pugs will adapt. It always does ;)
aufrank chip: I thought you guys only added opcodes ;) 17:47
*rimshot*
chip aufrank: I'm not your father's Oldsmobile. or something.
obra chip: you're not anybody's oldsmobile.
They don't make em no more.
PerlJam chip: not definitive but the only instances of "die" I see in my pugs tree are perl-dies 17:48
chip last I looked there's no Chip assembly line.
aufrank chip: I think the bigger question is whether PGE is using it right now-- is pmichaud in on the un-die-ing?
chip PerlJam: kthnx
aufrank: he ok'd it in #parrot 17:49
aufrank word
pmichaud in general pge should be able to adapt to whatever changes parrot throws at it, at least for a while :-)
aufrank hi pmichaud
pmichaud for now, PGE isn't using die. :-)
hi, aufrank!
aufrank pmichaud: I've been meaning to ask for a while: what do I do once I've written a .pg file? 17:52
pmichaud compile it through pgc
aufrank How do I load it and then use its rules in matches?
pmichaud I need to write up a good example, beyond what is currently being done in the languages/ subtree 17:53
17:53 DaGo joined
aufrank I'll help if you like 17:54
pmichaud pgc converts the .pg files into PIR, which can then be loaded or included in a larger program
calling a rule is just like calling a parrot sub at that point
aufrank I see
pmichaud (since rules are subs)
I'll see if I can put together a short example 17:55
aufrank that'd be great! 17:56
PerlJam pmichaud: and article for perl.com would be great too :-) 18:00
(even if the syntax isn't final) 18:01
pmichaud syntax is fairly final, since it's essentially p6 regex syntax :-)
18:15 weinig_ joined
ruoso !seen fglock 18:16
aufrank seen flglock?
seen fglock 18:17
ruoso . o O ( Is the bot around? )
aufrank can never remember the syntax we use around here
18:20 larsen_ joined
svnbot6 r10403 | fglock++ | PCR - added new classes: Pugs::Compiler::Regex, Pugs::Compiler::Token; 18:29
r10403 | fglock++ | - Pugs::Compiler::Rule defaults to :ratchet,:sigspace
r10403 | fglock++ | - updated all tests
18:29 fglock joined
fglock aufrank: pong 18:30
aufrank fglock: I was trying to help ruoso find you
ruoso fglock, hi
aufrank but, hi!
ruoso fglock, mago was looking for you
aufrank wow, this is getting complicated 18:31
ruoso heh
fglock, btw... I was thinking in implement a latex parser with PCR
fglock, do you think it applies?
fglock ruoso: I don't know latex, but it's probably ok 18:32
PCR is much faster now - you can use token/rule, which default to inlined code
ruoso nice... 18:33
aufrank fglock: very cool 18:34
I need to read through scw's miniperl and see how he's using it
fglock it might be broken after the latest PCR commit - the default switches changed 18:35
aufrank: see Pugs-Compiler-Rule/t/*
aufrank will od
do
ruoso fglock, is the cpan version near to up-to-date? 18:36
fglock ruoso: it's from 3 days ago
it doesn't have :sigspace, but :ratchet is ok
ruoso fglock, I think it's up-to-date enough to me :) 18:38
aufrank fglock: you're waiting to hear about an SoC project, aren't you?
fglock aufrank: yes 18:39
aufrank good luck :)
obra fglock: which was yours?
fglock ruoso: the version in CPAN implements 'Regex', but calls it 'Rule'
ruoso ok 18:40
fglock obra: implementation of p6 base objects in p5, to be used by p6->p5
aufrank: thanks 18:41
obra Cool.
When do they tell you?
fglock today :)
18:42 bpederse joined
aufrank I was hoping for much earlier today ;) 18:42
szbalint Today is relative. It is tomorrow for me :)
aufrank well then they should have told us by now!
szbalint I think their plan is to publish at 5 PDT 18:43
aufrank: did you apply aswell? 18:45
fglock ruoso: a discussion on the Latex grammar: www.codecomments.com/archive285-200...58360.html
aufrank szbalint: yes. IDE support library for parsing perl6 18:49
18:49 Ymmv joined
aufrank and what was your proposal, szbalint? 18:49
ruoso fglock, interesting discussion... but, indeed, I'm planning a parser for specific usage, not a general latex parser... 18:50
unkown commands will just stay as they are... 18:51
s/unkown/unknow/
aufrank fine, szbalint, don't answer :P 18:53
szbalint aufrank: wait a sec 18:54
www.nntp.perl.org/group/perl.dbdi.dev/50 18:55
Basically redesigning dbi internals in Perl 6.
aufrank very cool. I look forward to seeing what you produce :) 18:56
18:57 bjoern_ is now known as clue
szbalint Likewise. :) 18:58
svnbot6 r10404 | fglock++ | PCR - updated docs
18:59 clue is now known as bsh 19:01 FurnaceBoy joined 19:04 weinig_ is now known as weinig 19:07 ludanolo joined
svnbot6 r10405 | fglock++ | PCR - updated benchmark.pl to use Rule/Token/Regex 19:07
19:07 ludanolo is now known as ludan
spinclad TimToady, if you're about: S02 seems to say "\x41,42,43" should be "ABC", like "\x[41,42,43]" (but is perhaps unclear); i would expect commas to work only inside brackets (for least chance of collision with surroundings), so: "A,42,43" . 19:12
could you say which is your intent?
19:18 amv_ is now known as amv
TimToady spinclad: I would expect comma to work only in brackets as well. 19:34
spinclad "Multiple characters may be put into any of these by separating the numbers with comma: C<"\x[41,42,43]">." (more) 19:39
"any of these" confused me -- it's not clear it means the bracketed form only. 19:40
(but i seem to be the only one confused by this so far.) 19:42
Limbic_Region better to keep quiet and be perceived a fool^H^H^H^H^H^Hconfused then to open one's mouth and remove all doubt 19:43
spinclad no worries. i'd rather be transparently confused if it saves one other 19:45
19:49 sri__ joined
TimToady Okay, fixed. 19:55
particle_ spinclad++ timtoady++
19:55 penk joined
Limbic_Region seconded (spinclad++ TimToady++) that is 19:55
spinclad $Larry++ 20:01
particle_ i'm implementing some builtins for perl6, and have a question about the prototype sigs 20:03
eg. "proto abs($?) { ... }"
i expect this means the param is optional
and if not passed, abs() operates on the current topic. 20:04
is this correct?
svnbot6 r10408 | fglock++ | t/syntax/hexadecimal.t - added a test for "\x[41,42,43]" - spinclad++ 20:07
r10409 | fglock++ | t/syntax/hexadecimal.t - added a test for "\x41,42,43" eq 'A,42,43'
20:10 coumbes joined, avarab joined 20:11 fglock left 20:23 bjoern_ joined
pmichaud TimToady: in S02, is it still the case that only square brackets can be used in the \x[...], \d[...], etc. forms? 20:24
particle_ closes his eyes and hopes timtoady says, "yes." 20:25
spinclad having just read it, i can say 'yes' 20:26
particle_ although, i guess it's not that hard to implement (), {}, <>
S02 definitely says it now, as of today.
pmichaud pge implements all of [], (), {}, <> based on something TimToady had conjectured earlier when \x was being discussed
i.e., I'm wondering if it should be limited to square brackets only in regexes as well 20:27
particle_ yep, that's why i said it wouldn't be too hard to implement those :)
i really like your code for parsing those bracket types
pmichaud thanks :-). Developed it when writing PGE::Text::bracketed :-) 20:29
spinclad it's been \x[] square-brackets-only since november, at least 20:31
pmichaud yes, that's when it was discussed. I'm checking the p6l posts now
20:32 larsen joined
spinclad (svn blame)++ 20:32
obra 20:36
wolverian really? 20:37
obra Really 20:39
wolverian fascinating. tell us more!
szbalint :)) 20:40
particle_ ++
ruoso . o O ( people in this channel need some beer :) ) 20:41
Bleadof ;)
20:46 fglock joined
chip has had enough beer, but isn't in this channel, so never mind 20:53
20:58 bpederse_ joined 21:04 avarab is now known as avar 21:10 fglock left 21:15 rdice joined
leo chip: any thoughts WRT the .Integer / .BigInt method dispatch problem? 21:19
chip hm? not sure what you mean 21:21
leo cl = subclass 'MyInt', 'Integer' ... / .namespace ['MyInt'] / .sub some_meth ... 21:22
the meth is lost as soon as Integer upgrades to BigInt
chip why? 21:23
leo I've posted the example and it's also in PMC.pod on feather
chip I mean, deriving from a morphing class is likely to stay weird, if not broken, but I odn't know why that would happen
sample code doesn't answer 'why' 21:24
not that I've seen the code 21:25
leo why is: because methods are attached to the MyInt namespace which isa 'Integer' and not a 'BigInt' 21:26
chip still no 'why' there.
oh, wait, you don't mean "upgrade" when you say "upgrade"
the object is not morphing, you're describing the creation of a new object 21:27
well, that's user error. If any of MyInt's methods (including inherited methods) return an object of type other than MyInt, tha'ts not Parrot's fault
leo that would mean that a user has to overload all possible methods to be on the safe side, it seems 21:29
21:29 Ymmv joined
chip well, yeah. at which point derivation becomes somewhat pointless. but this is nothing we can help. the only amelioration possible is to narrow the vtable interface ot make it easier to override, but that makes other efficiencies impossible. 21:31
leo to me it looks like: if we provide an Integer type that also supports bigint, it should be transparent to the user 21:32
chip besides, how is Parrot supposed to know what the result of MyInt++ is "supposed" to be? You tell it "act like an Integer", it does
I don't think "transparent" is a transparent enough term for you to use in this context
leo it acts like an integer -all ok- but if user does 'print the_int' and __get_string' is overloaded, it doesn't dispatch anymore properly 21:33
because MyInt !isa BigInt in MRO 21:34
chip well, here's the problem.
leo MRo has still 'Integer'
chip "MRo"?
leo MRO - method resolution order, i.e. class + (parents)
chip so far you're not at all making sense to me. 21:35
first you're saing (in other contexts) that $P0++ may mean that $P0 is no longer the same object it used to be.
essentially, $P0++ may mean $P999 = new .SomeOtherClass; $P999 = $P0; $P999++; $P0 = $P999 # where SomeOtherClass is BigInt in this example 21:36
in that case, MyInteger is no longer part of the picture in any way whatsoever.
so MRO is a red herring
leo no, $P0 has a .Integer attribute, which turns itself into a BigInt
chip "turns itself"?
morphing?
leo the object is the same 21:37
chip Integer morphs?
leo the attribute is morhping, yes
pmichaud afaic, perl's Int objects have to support bigin semantics
sorry, bigint
leo pmichaud: yep
pmichaud if parrot's .Integer does that, great, if not, then we build our own Int class
chip oh for crying out in the beer
leo pmichaud: that's not the problem - its how to implement it correctly 21:38
chip Leo, deriving from a morphing object either needs to work, or needs to be forbidden so that the 'newclass' opcode simply fails
leo all PMCs are morphing you know ;-)
pmichaud leo: why is "implement it correctly" a problem?
chip the latter has implications that I will not discuss yet.
leo: now you're not being helpful at all.
please stop going for the clever line and try to be helpful. 21:39
some PMCs morph, many don't.
leo $P0 = new .Integer ; $P0 = 5.3 # now a Float / $P0 = 'foo' # now a String
chip it is possible for Parrot to forbid a morph attempt unless a PMC has advertised an "I morph" flag.
fine.
21:39 bjoern_h joined
pmichaud perl 6 is not expecting to use the morphing semantics described here 21:39
leo sure, it impelemts assign or not 21:40
implements even
pmichaud: I know
PMCs were designed at times hwen p5 was modern ;)
chip leo: irc isn't working for us on this topic.
leo chip: let's just take plain scalars into account for now - these all are morhing now 21:41
chip leo, you haven't got the knack of figuring out the nature of how people think differently from you based on what they say that is "wrong" from your POV 21:42
email is better as a result
it forces you to explain more.
leo or personal meeting? 21:43
chip in-person has the non-verbal cues advantage
leo like throwing hammers ;) 21:50
chip well, and drawing diagrams & the timing of saying things while drawing "this line conncts X and Y", etc.
leo if I find some time, I'll try to summarize some more PMC layout thoughts into docs/2.0 (if that's the place to use) 21:52
szbalint personal meetings have the advantage of being able to observe serious cigarette rolling skills. :) 21:56
chip no, docs/2.0 is not the place for that 21:58
I don't want design ideas yet
All I want is an understanding of why, in what manner, for what reason, what is the mechanism of, there is a failure of finding MyInt::method when Integer morphs.
You simply can't treat a patient until you understand his illness. 21:59
22:16 fglock joined 22:20 larsen joined 22:40 fglock left 22:41 bpederse joined 23:01 nothingmuch joined 23:04 Khisanth joined 23:12 SubStack joined 23:38 jsiracusa joined 23:41 Quell joined 23:56 Daveman joined