pugscode.org | sial.org/pbot/perl6 | ?eval [~] <m oo se> | We do Haskell, too | > reverse (show (scanl (*) 1 [1..] !! 4))
Set by gaal on 21 March 2007.
00:05 nelhage joined
svnbot6 r15773 | nelhage++ | Typo fix loose -> lose. 00:05
00:07 buetow joined
obra woot. nelhage subverted 00:40
svnbot6 r15774 | nelhage++ | Adding myself to AUTHORS 00:44
00:48 geoffb joined
TimToady welcome! 00:53
01:11 H0LE joined 01:18 b00t joined, offby1 joined 01:30 Randal joined 01:35 alexe joined 01:40 rlb3 joined 01:41 abc joined, abc left 01:46 Schwern joined
clkao svn.pugscode.org no longer resolve? 02:14
lambdabot clkao: You have 1 new message. '/msg lambdabot @messages' to read it.
tene clkao: apparently not.
not for me, at least
02:15 polettix joined 02:25 esstone joined 02:41 mako132_ joined
meppl good night 03:11
03:15 mr_ank joined
audreyt pugscode.org, perlcabal.org, audreyt.org, audreyt.net etc are all down at the moment (awaiting transfer away from RegisterFly); please write to [email@hidden.address] for the time being. :-( 03:24
03:31 dolmans joined 03:37 amnesiac joined 03:52 mako132_ joined 04:41 Schwern joined 04:42 drbean joined
offby1 I bet there's a story in that transfer 05:00
tene offby1: the story is apparently "Registerfly is incompetent, evil and fradulent, or both, and IANA revoked their license or whatever to be a registrar." 05:02
offby1 wow, IANA did something right? 05:05
05:08 mugwump joined
tene At least I think it was them. It was some acronym with a lot of vowels that has authority to do stuff like that. 05:08
TimToady ICANN, it were.
slashdot.org/article.pl?sid=07/03/17/1235224
lambdabot Title: Slashdot | Registerfly's Accreditation Terminated by ICANN
tene Well, I was only off by two vowels... 05:09
That's not bad, right?
tene goes to bed.
offby1 tends to be off by less than two 05:12
tene *snrk*
05:13 penk joined 05:26 kei5tnk joined 05:27 dirving joined 05:41 luqui joined 06:09 elmex joined 06:14 BooK joined 06:20 rfordinal joined 06:22 peshalto joined 06:24 Maddingue joined 06:27 IllvilJa joined 07:20 cnhackTNT joined, amnesiac_ joined 07:27 jisom joined 07:29 amnesiac_ is now known as amnesiac 07:40 xinming joined 07:59 iblechbot joined 08:08 rgs is now known as args 08:09 miyagawa joined 08:35 integral joined 08:46 Yappo_ joined 08:56 the_dormant joined 09:06 devogon joined 09:10 devogon left 09:20 penk joined 09:31 rfordinal joined 09:41 fridim joined
the_dormant Hi, I keep getting this while running make: Could not find module `Data.FiniteMap', I'm on ghc 6.6 09:55
gaal where do you get it on? we don't use FiniteMap anywhere... 10:13
perlbot nopaste
perlbot Paste your code at sial.org/pbot/perl and #perl will be able to view it
lambdabot Title: sial.org Pastebot - pasteling
gaal uh, please append "6" to that url :)
Debolaz Hmm, the quality of Audrey's wikipedia entry got a good boost after it was nominated for deletion. 10:21
wolverian heh 10:24
avar that frequently happnens
gaal now we just need to nominate all the world for deletion
avar gaal++ 10:26
gaal proposes a new category for "self-referential wp articles" 10:27
lumi proposes a new category for "non-self-referential wp articles" 10:44
lambdabot lumi: You have 1 new message. '/msg lambdabot @messages' to read it.
lumi I guess it would prove that Wikipedia is either inconsistent or incomplete 10:45
10:48 lichtkind joined 10:56 ajs_home joined
ajs_home The ita1reports1 alert is a direct consequence of having backed out CR 108111 last week. I'm cleaning up some disk ad-hoc to deal with it now, but when we do this CR, the issue will be resolved. 10:59
The alert should clear in a few seconds. 11:00
I've deleted logs from last year's May and June
lichtkind audreyt: got mail? 11:15
11:25 chris2 joined 11:43 pnu joined 11:44 mako132_ joined 11:46 fglock joined 11:56 buetow joined 11:58 avar joined
svnbot6 r15775 | audreyt++ | * Remove third-party/fps/ as we now depend on GHC 6.6, and fps is core in GHC 6.6. 12:06
12:10 BooK joined 12:17 ruoso joined 12:18 dolmans joined 12:22 zev_ joined 12:23 ruz joined 12:32 devogon joined 12:49 rofl joined 12:50 rofl is now known as mathlord
ajs_home Pardon the random mistken comments 12:53
I thought I was typing in another channel :-/
12:55 lisppaste3 joined
moritz though shalt find foregiveness ;-) 13:01
13:01 yuteh joined 13:02 yuteh left 13:08 wilx joined 13:19 wilx joined 13:25 iblechbot joined 13:31 perlmonkey2 joined 13:32 fglock joined 13:44 Limbic_Region joined 13:45 eric__ joined 13:46 mtve joined, eric__ joined 13:47 eric__ joined 13:48 weinig|bbl is now known as weinig
perlmonkey2 Can someone elaborate on ticket #18? 13:58
14:03 dmq joined
Limbic_Region good localtime() dmq 14:04
gaal perlmonkey2: beef out dev.pugscode.org/wiki/Overview
lambdabot Title: Overview - Pugs - Trac
14:05 ofer1 joined
perlmonkey2 gaal: Cool, that is simple enough instructions :) 14:05
Limbic_Region @moosages
lambdabot You don't have any new messages.
Limbic_Region that's not true, I read in the log gaal left me a message 14:06
dmq hi LR 14:07
dont suppose anybody knows where i can find the Module::Build folks online?
Limbic_Region doesn't 14:08
14:29 rashakil joined, fglock joined, mr_ank joined
fglock dmq: ping 14:30
14:30 the_dormant joined 14:35 lanny joined
dmq yo 14:35
lanny Is there a way to reset my commit-access password for pugscode.org or do I need a new commitbit? I carelessly didn't put a yellow sticky of it on my monitor. 14:36
fglock dmq: is it possible to know where a named capture started/ended? (perl 5.10) 14:37
dmq named buffers are implemented as labels for the numbered buffers. 14:38
so yes.
although there isnt an interface to get the mapping back. youd need to do that in XS>
[particle] lanny, i'm checking 14:39
fglock I was afraid you'd say that :)
dmq or id need to add a utility function to re.pm
lanny Thank you, [particle].
fglock dmq: that would be nice!
dmq its fairly straight forward. the regexp engine stores a hash that contains a dualvar that holds an array of u32.
fglock I need to know from/to in order to package the result into a p6 match 14:40
14:40 vel joined
dmq you mean into the nested structure? 14:40
how are you planning to represent that?
[particle] lanny: resent invite, i *think*, but the interface is a bit unclear
lanny Well I appreciate the effort and I'm sure it will get worked out eventually. 14:41
dmq about the only way that occurs to me is to have an AV that holds a dualvar array of nested indexes.
btw, if you intend to hack the p5 engine, getting familair with packed dual var arrays is a good idea. 14:42
:-)
fglock: dont forget that in p5, a named buffer can be associated with >1 numeric buffer. 14:43
so the mapping may be 1:N
lanny [particle]: hmm. Got the invite but it seems to remember me so doesn't offer the page to set up my password.
fglock dmq: hmm - can you take a look at the PCR source code, it's easier to explain there
[particle] lanny: that's a shame :(
lanny I certainly agree. 14:44
dmq Where do i find it?
fglock svn.pugscode.org/pugs/perl5/Pugs-Co...exPerl5.pm
lambdabot tinyurl.com/2d3mqm
fglock this module calls a p5 regex and packs the result back into a Match
lanny Any idea who wrote commitbit? I'll drop them a request.
fglock each capture is itself a Match
lanny ah. Never mind. Mouth going off with questions before eyes do their work. 14:45
[particle] there you go :)
fglock dmq: there is a 'push @match, ...' for each capture, and then the main Match is created 14:46
named captures would collect into a hash, which would then be used by the main Match 14:47
dmq afair we dont have a buffer to name mapping except under re 'debug'.
so exactly what information do you want? 14:48
lanny Spoke too soon. Doesn't actually offer up anyone to ask. I'll log in later and catch AudreyT. Thanks for trying, [particle].
fglock dmq: a buffer-to-name mapping (array of names) would be good enough, I can build the Match from it 14:49
[particle] obra: ping 14:50
14:50 Southen_ joined
[particle] lanny: you can always ask the project manager for help, too (who happens to be the author of CommitBit): search.cpan.org/dist/CommitBit/ 14:51
lambdabot Title: Jesse Vincent / CommitBit - search.cpan.org
obra yes?
I'm on site with a client. what's up?
[particle] lanny's forgotten his pugs password
obra delete and readd him 14:52
[particle] i tried to reinvite him, but it doesn't seem to provide a way to reset password
obra it should send him a new password.
dmq ok, assuming that that is not going to be easy, would it be ok if i gave you back a copy of the internal hash that the regexp engine uses and you can decode it as necessary?
[particle] i didn't delete
dmq as i said we dont store this information currently.
obra we know we need "Resend"
(we've done most, but not all of the work to fix it.)
[particle] actually, i can't delete
obra most of that work was done in the past week
dmq or alternatively you could design PCR to use a custom variant of the regexp engine that DOES track this type of stuff internally. 14:53
[particle] i can only delete pending invites :(
obra [particle]: we need a site admin. aka audrey
dmq which would be /fairly/ straightforward to do.
[particle] obra: thanks!
dmq since the debug version already does what you want.
[particle] well, lanny, there you go. changes are coming, but not in time for you. so your plan of contacting audrey stands 14:54
dmq incidentally, if i figure out a decent way to represent perl6's numbering ill put native support into perl for it.
fglock dmq: looks like a good idea, and probably the start of a p6regex-in-XS... :)
dmq i just dont want to burden every regexp structure with data that will be used only by one module. 14:55
but if it meant providing perl6 buffer numbering semantics then id do it.
as i said, i was thinking of an array of packed array of u32's. 14:56
14:56 tavolinx joined
fglock got it - I'll take a look at 'debug' first 14:56
14:56 diotalevi joined
dmq not the nicest way to store it, but cest le vie. 14:56
14:56 tavolinx joined
dmq if anybody has come up with an elegant way to store the p6 buffer numbering they should let me know. 14:56
:-)
fglock ideally, p6regex would create a Match, just like re::engine currently does
tavolinx hola 14:57
spanis
dmq er....
fglock dmq: did you see re::engine::PCR?
dmq yes, ostesibly i paid to have it written
:-)
fglock ah, yes :) 14:58
tavolinx hi
fglock Pugs::Compiler::RegexPerl5 needs to do exactly the reverse of re::engine::PCR - it runs p5 regexes from under p6 14:59
dmq except i dont really remember what it does in this context.
fglock tavolinx: hola 15:00
dmq er, except that PCR and P5 regexes are syntax compatible.
tavolinx hola
dmq actually id guess that there are a lot more differences involved. 15:01
tavolinx quiero hacer un programa en perl con la base de datos berkey 15:02
15:02 amnesiac joined
dmq probably the best thing i can do is just make p5 support the p6 buffer numbering. 15:02
or would that not be correct?
fglock tavolinx: que tal el canal perl5
tavolinx ok
voy para alla
fglock tavolinx: #perl
tavolinx ok 15:03
perl5 no esta
mejor perl
fglock dmq: perl6 regexes return a Match tree, which is a bit hard to represent with low-level structures
dmq well it would be tied. 15:04
hrmm, maybe i see your point.
fglock re tieing - I guess PCR is slow enough as it is :)
dmq all regexp results variables are ties.
fglock ah 15:05
dmq can you imagine how much copying would have to happen otherwise?
i cant imagine p6 would do it any different actually, not if it wants to be fast.
fglock PCR currently only stores from/to, and a pointer to the original string 15:06
dmq i guess Larry must have worked this out already and has a way to support nested ties.
fglock each capture is a p5 object
dmq the problem with that approach is that it only pays off if the regex executor is interested in all the results. 15:07
and even then there is a problem as you dont want to have to create and rollback the results tree as you match for efficiency reasons.
fglock the object can be created lazily, which works more or less like ties; but create and rollback is currently a big problem 15:08
dmq so presumably internally it wont generate match structures, and either construct the full match object at the end, OR, implement match objects as what i would call a tie. Specifically lazy resolution of capture buffers.
fglock agreed - PCR started like that, but it was a premature optimization, and the code was pretty difficult to maintain :( 15:10
15:10 weinig is now known as weinig|away
fglock it would be nice to have that back 15:10
sorry, meeting & 15:11
dmq its a tough aspect of the p6 design. something that i personally consider an open issue until a clearly efficient implementation can be developed. 15:13
15:15 bonesss joined
PerlJam dmq: The beauty of being the language designer is that he doesn't have to concern himself too much with actual implementation issues ;-) 15:18
15:22 xinming joined 15:34 bonesss is now known as bones`comendo 15:36 devogon left
avar @tell audreyt avar here, I have some minor fixes for re::engine::PCRE, co-maint?:) 15:41
lambdabot Consider it noted.
15:41 lichtkind joined
dmq perljam: sure. 15:42
[particle] perljam: in perl 5, it's the implementors who didn't concern themselves much with the design issues ;-) 15:44
15:44 Southen joined
dmq heh 15:49
more like they didnt concern themselves with redesign when implementing new features.
PerlJam no, I think they concerned themselves with redesign, it's just that they were a tad myopic about it and constrained maintaining the beast as it has been. 15:59
[particle] docs and code mismatch? change the docs!
dmq well im very sure that in some cases they very much didnt concern themselves with redesign. 16:00
otherwise i wouldnt have to be doing the redesign myself now.
[particle] dmq: can i interest you in working on a trie pmc for parrot?
dmq sure/maybe
:-)
[particle] seems an excellent storage mechanism we should support natively 16:01
dmq as long as perl6 doesnt have perl5 broken ascii/utf8 behaviour then yes. otherwise no, as its depressing enough dealing with perl5 on that level.
oh you dont mean for the regex engine?
[particle] (phone) 16:02
PerlJam anything to make the working parts of parrot work faster gets a ++ in my book.
dmq perl6 could make its life so much easier if it mandates that \x{DF}=~/ss/i regardless of character set.
er, regardless if its latin_1 or unicode.
\x{DF} is proverbial spanner in the works on perl5. 16:03
damn germanic languages messing up the program (literally) 16:05
[particle] latin for everyone! 16:06
dmq its just that there arent any other characters in the 0..255 codepoint range that do multibyte case-folding.
just the pesky GERMAN-SHARP-ESS. 16:07
16:07 VanilleBert joined
dmq and dealing with GERMAN-SHARP-ESS properly in ascii (doesnt match 'ss') and in unicode (does match 'ss') using the same data structures is a barrier to efficiently implementing other things. 16:08
the easiest method to deal with it that ive come up with is to simply state that in ascii (latin_1 really) it DOES match 'ss' and then the barriers come down.
but i cant do that in perl5. hopefully perl6 doesnt make the same mistake. 16:09
PerlJam If Parrot doesn't make that mistake, then neither will PErl 6 16:10
dmq its a design issue, and a sort of open issue, since latin_1 to the best of my knowledge doesnt concern itself with defining case folding rules. 16:11
anyway, knowing Larry he probably headed this one off at the pass somewhere far outside of my P6 knowledge, and things will Just Work.
16:11 kanru joined
dmq But i bring it up because its annoying, and on the off chance that Larry hadnt thought about this particular annoyance. 16:12
16:20 fglock joined 16:21 koye joined 16:24 kattana_ joined 16:37 VanilleBert left
TimToady dmq: it really depends on how Unicode defines language-independent grapheme semantics. 16:38
from S02: In the abstract, Perl is written in Unicode, and has consistent Unicode
semantics regardless of the underlying text representations.
however, it should certainly work germanically if you change the level from language-independent to "use Char 'Deutsch'" or some such. 16:39
an interesting question is what happens if you request language dependent Chars for more than one language at the same time. 16:42
avar ?eval [~] <m oo se>
TimToady and how you resolve contradictions between different languages.
16:42 evalbot_r15771 is now known as evalbot_r15775
evalbot_r15775 "moose" 16:42
dmq well, unicode defines case folding rules for all characters, and apparently on a language basis for the character. 16:43
so it specifically mandates that \x{DF} match 'ss' case insensitively.
at least at the higher levels of compliance.
so if you have said "we follow unicode rules regardless of encoding" then you have basically done what i want. 16:44
except i only care about the 128..255 byte range.
TimToady only caring about 128..255 is not Unicode. :)
dmq i only care about that range because its the only part where there is a difference.
above 255 its pure unicode semantics since latin_1 doesnt go that high. 16:45
below 128 its pure unicode semantics because unicode is defined to be equivelent to ascii.
its only the 128 chars in the latin_1 range, and perls historical behaviour that cause a problem.
TimToady as far as I'm concerned, p6 doesn't know what latin-1 is except for an external encoding. 16:46
and possibly a user-invisible optimization for internal storage. 16:47
dmq theres lots of interesting questions with this subject actually. 16:48
16:48 Randal left
dmq looking at it from the POV of implementing a regex engine. 16:48
TimToady certainly, and I'm quite confident that p6's unicode levels don't map exactly to the thinking of the Unicode Consortium.
but basically 'use Codes' is stupid old-fashioned Unicode compliance 16:49
'use Graphs' is full language-independent compliance
dmq id say if you stick to unicode's case folding rules for character regardless as to underlying encoding then youd make things a lot easier.
TimToady and use CharFrench is whatever the French want whether the Unicode Consortium likes it or not. 16:50
dmq i dont really like that idea..
TimToady language dependent means language dependent
that's why we have a language indendent layer. 16:51
dmq well i think it would come at a huge price in performance.
TimToady *independent
"correct" usually trumps "performant"
dmq yeah, but correct is subjective.
or rather, you just said correct will be subjective. 16:52
TimToady certainly, and that's why CharFrench is the subjective layer.
dmq wheras if there is just one correct, then life is simpler.
TimToady that's the Graphs version of correct
dmq im not sure maybe we arent on about the same things here.
TimToady the Graphs version of correct will never be correct to all languages simultaneously.
dmq im just thinking of things like case folding rules.
unicode defines a farily sensible set of behaviour as far as i understand it. 16:53
TimToady languages are likely to contradict each other on case folding
dmq and if you want to overide the behaviour you can do explicit normalization.
16:53 TimToady joined
wolverian that was quick 16:53
TimToady consider 'use CharFrench' to be a request for implicit normalization.
dmq repeats incase timtoady didnt see: 16:54
[17:53] <dmq> and if you want to overide the behaviour you can do explicit normalization.
hmm.
TimToady Perl is not about forcing people into one way of thinking.
if they want to think French, we'll let 'em.
[particle] so, transcoding is not your problem?
TimToady if people want Graphs, they know where to find it. 16:55
dmq yes thats fine, and if you have an implementation guideline that makes it work out efficiently then all is good, im just relating some of my problems with the perl5 stuff.
[particle] whaddayaknow, that's what parrot's shooting for, too
dmq i guess im saying, if you just say "the end result should be like this" you might end up with an implementation that pushes the problem into the corner where it is least well (efficiently) handled. 16:56
lichtkind hello dmq good to see you, did you recognize that chromatic did eval juerds idea with the Apocrupys und synopse 16:57
s
dmq like if they create a string with a piece of text in one language and then pass it into a regex in a module with a different language, what is supposed to happen?
TimToady well, efficiency is all well and good, but when push comes to shove, the human is the master, and the computer is the slave.
offby1 no! 16:58
dmq whose case folding rules win?
offby1 really?
dmq well thats a philisophical debate i think. lets just stick to measurable stuff :-)
TimToady every language will have to have a story for what it does with other languages.
most will just choose language-independent grapheme rules for the backstop. 16:59
16:59 Jedai joined
dmq so for instance, lets say i want to do the trie patch i did for p5 for a p6 engine. How would id deal with case folding there in such a mismatched case? 16:59
lichtkind: no, i cant say that i did. 17:00
TimToady it would depend on what language you think it is, if any.
you have to normalize it some way or other in any case.
even if you're just working in the "Codes" language. 17:01
dmq i mean procedurally really. It shouldnt matter which is which. Pick some X and Y and then explain the process on a high level.
TimToady all p6 cmp, eqv, sort, etc operators are explained in terms of canonicalized forms, where that is negotiable. 17:02
dmq doesnt that mean that you need a single encoding that handles them all? aka unicode? 17:03
TimToady that is already a given
I don't know what you're arguing.
dmq im not arguing. 17:04
im trying to understand what you have planned.
I said "unicode defines a farily sensible set of behaviour as far as i understand it." and you said "languages are likely to contradict each other on case folding" which left me wondering how you planned things to work. 17:06
TimToady Lexical scopes can declare differing sets of defaults, but they all map to the underlying representation.
17:08 ozo_ joined
dmq ok, so it would be a matter of normalizing the strings outside of the regex engine and then using unicode semantics inside? 17:08
TimToady well, it's either that or defining enough API hooks that such normalization can be emulated on the fly. 17:09
dmq eek
much prefer the former 17:10
TimToady well, I don't doubt that, but suppose you have a string that contains multiple languages. 17:11
also, suppose you have a canonicalization framework that already can do things lazily based on demand. 17:12
17:12 justatheory joined
TimToady then you just pass that canonicalizer in as a parameter to the character comparator. 17:12
dmq its not a matter of just character comparator tho is it really? 17:13
TimToady depending on the the problem and the text, that may or may not be more efficient than doing all the work ahead of time.
dmq if you want dfa type semantics in matching, or to be able to do stuff like the trie optimisation.
TimToady sure, a given data structure may need to enforce some consistency if it wants to depend on a particular encoding. 17:14
(using the term encoding loosely for "predictable memory layout") 17:15
dmq hmm.
its not just that tho is it? its also a set of semantics for manipulating the data.
17:16 Leibsle joined
Leibsle hi 17:16
dmq like for instance \x{DF} matching 'ss'. Or 'A' matching 'a'.
17:16 fglock joined
TimToady those fall into the simple canonicalization part 17:17
not denying that there are other complications, though
especially if people start insisting on treating string positions as integers.
fglock dmq: is it ok if I use the re::Match namespace? 17:18
dmq nods
fglock: i dont see why not, although, i wonder why.
fglock I mean to create '$re::Match', which is an p6-OO view of the last p5 match 17:19
dmq theres evilness with that in perl5 right now.
fglock using a tied interface
hmm - how evil?
dmq the evilness comment was in relation to timtoadys comment on string positions 17:20
fglock heh
dmq fglock: i guess.
TimToady p5 really only got up to the Codes view of the world, not up to Graphs.
dmq but my thought was to use the same var as perl6.
avar fglock: How are you going to implement that? 17:21
dmq @/ wasnt it?
lambdabot Maybe you meant: . v
dmq er, $/ 17:23
fglock avar: the first prototype would just use a tie interface; it can be optimized later
dmq but i guess it would be doable with %/ and $;
$/{1,2,3} :-) 17:24
fglock dmq: I'm thinking of simply using '$re::Match', '@re::Match', '%re::Match', ...
v6.pm and pugs can do the translation
TimToady biab &
avar inhentely unthreadsafe?:)
binding it to the regex sounds better:) 17:25
my $re = qr/boobs/; if ("str" =~ $re) { $re->matchymoose->{ eek } }
dmq fglock: maybe Perl6::Match ?
fglock avar: that's a cool idea
avar fglock: it's implementable with an additional callback in the regex engine and some XS 17:26
well, that or my $re = bless qr/boobs/ => "Perl6::Match"; ...
blessed be the bewbs!
fglock dmq: we already have Pugs::Runtime::Match, but the idea is to have something more p5ish
avar: would you be interested in implementing it? 17:27
avar I'm interested in finishing my outstanding re::engine:: stuff too:)
fglock avar: it's immediately usable in PCR :) 17:28
avar but there's no reason for why a re::engine can't provide different matching semantics
like I do with the PCR wrapper, you could do the same thing only with the p5 engine
if ("str" =~ /(.(.))./) { say $1->[0] # t } 17:29
lots of potential hackery though:)
wolverian hm, Perl 6 Micropants. 17:30
lichtkind haha
fglock I'd actually prefer to go the other way, and use as little hackery as possible 17:31
in order to gt somethin stable soon
something
avar Yeah, I just don't know what you're trying to do yet:)
diotalevi Hey Avar, why are you using two different namespace roots? re:: and Regexp::?
avar I don't have anything in Regexp::
dmq actually, thats a good point for fglock. not avar. 17:32
diotalevi blessed( qr// )
fglock avar: I want to replace this code: svn.pugscode.org/pugs/perl5/Pugs-Co...exPerl5.pm
dmq avar, is doing engine work.
lambdabot tinyurl.com/2d3mqm
avar things that begin with lower case are pragmas, like re:: stuff is
17:32 penk joined
avar "Unable to determine IP address from host name for svn.pugscode.org" 17:33
eek
might be my stupid internets:)
diotalevi is suspicious of the reasons for two roots.
geoffb avar: Due to death of DNS registrar that many of Audrey's domains were registered under
moritz avar: host svn.pugscode.org
svn.pugscode.org is an alias for perlcabal.org.
perlcabal.org has address 194.145.200.126
avar Regexp::* isn't magical enough to warrant something that swaps out engines:)
geoffb I have not heard that it's resolved yet 17:34
moritz avar: but this into your /etc/hosts and you are done
17:34 ofer0 joined
avar I have a RegexPerl5.pm on my / anyway:) 17:34
diotalevi chokes.
Leibsle slaps lichtkind 17:37
17:39 diotalevi joined 17:42 dmpk2k joined
fglock both re::Match and Perl6::Match are too generic; I guess I'll just keep it in the PCR namespace 17:43
ajs_ Hey all, who maintains the various bots and such for #perl6 these days?
17:46 bernhard joined, bloonix joined
bloonix hello together 17:49
17:56 jcrigby joined, sili is now known as sili- 17:57 sili- is now known as sili 18:19 fglock joined 18:26 jisom joined, BooK joined 18:47 koye left 18:57 marmic joined 19:06 bonesss joined
lichtkind hello bloonix *g* 19:13
19:13 xerox joined 19:26 larsen_ joined
svnbot6 r15776 | audreyt++ | * Data.Yaml.Syck: Correctly handle self-recursive lookups, by way of the 19:32
r15776 | audreyt++ | scary mdo notation and unsafeInterleaveIO.
integral scary :-)
19:33 nwc10 joined
nwc10 audreyt: did Pugs come up with a crafty way of making pluggable regexps lexically scoped? 19:34
pasteling "evalbot_r15775" at 194.145.200.126 pasted "Pugs build failure" (406 lines, 23K) at sial.org/pbot/23691 19:40
jrockway ah, libsyck at it again 19:44
19:54 the_dormant joined
svnbot6 r15777 | audreyt++ | * Gain another ~10% on startup speed (Prelude+Test) by simply 19:59
r15777 | audreyt++ | changing all "atomically . newTVar" to "newTVarIO" when
r15777 | audreyt++ | atomicity is irrelevant.
20:00 Aankhen`` joined 20:03 Lorn joined 20:13 amnesiac joined 20:23 weinig|away is now known as weinig 20:28 prly joined 20:39 Schwern joined
perlmonkey2 Is anyone writing a book on Pugs? 20:49
stevan_ it would be outdated even faster than the other Perl 6/Parrot books 20:51
fglock yes - but that's an interesting idea 20:52
21:01 pmurias joined
pmurias hi 21:01
fglock hi 21:05
nelhage In t/var/constant.t, the ``my constant 21:11
In t/var/constant.t, the ``my constant'' test (paste.husk.org/7944), is the final ``wack == 23'' in fact correct behavior (I realize it's a TODO test. I can't find anything in docs/Perl6/Spec/ about my constant) 21:12
21:12 Psyche^ joined
fglock nelhage: it looks wrong to me 21:13
nelhage It certainly *feels* wrong to me, but I'm not up to speed on the specs yet. 21:14
21:14 the_dormant_ joined, fglock left
TimToady nelhage: yes, it should just be "constant"; constant is a declarator like my, not a type. 21:18
what you see there is a fossil of older pugs implementation. 21:19
21:24 ludan joined
ludan ola 21:25
21:25 Psyche^ is now known as Patterner 21:30 the_dormant_ joined 21:41 forsaken joined 21:44 reZo joined 21:46 the_dormant joined 21:49 mathlord joined 21:56 zekvent joined
ajs_ S12 says "my Dog $spot .= new(:tail<LONG> :legs<SHORT>);" 22:02
1: is that correct (no comma in arg list)?
2: Is that expected usage?
tene ?eval (:foo<f> :bar<b>) 22:03
22:03 evalbot_r15775 is now known as evalbot_r15777
evalbot_r15777 Error: ā¤Unexpected ":bar"ā¤expecting operator or ")" 22:03
tene ?eval (:foo<f>, :bar<b>)
evalbot_r15777 (("foo" => "f"), ("bar" => "b"))
ajs_ So, does that mean pugs or S12 is wrong? ;)
[particle] pugs is wrong there 22:04
ajs_ So, we would expect to see (when combining positional and named parameters): "foo(1, 2, 3, :a<4> :b<5> :c<6>)" ? 22:05
TimToady see S02:1950 22:06
where a term is expected, that is equivalent to the form with commas
so good form would probably use the commas anyway 22:07
the run-on form is mostly for adverbs applied to operators. 22:08
where a comma would change the meaning
ajs_ Ok, so S12 is correct, but not expected usage in this case. 22:09
TimToady yes
ajs_ Thanks 22:11
22:19 minder6146 joined, minder6146 left 22:49 __Ace__ joined 22:51 miyagawa joined
__Ace__ Im trying to embedd perl here in my C code and was wondering what is the best way to actually execute several perl code/scripts within this C code? 22:52
22:53 explorer joined 22:56 buetow joined
geoffb __Ace__: Perl5? 22:56
__Ace__ yea 22:57
geoffb perldoc perlembed 22:58
if you need it all to be in the same process
if you can have the perl be an external process, than just spawn it.
__Ace__ well 22:59
#define SAY_HELLO "-e", "print qq(Hi, I'm $^X $0\n); hello(); sub hello { print qq(Hello\n); }"
char *one_args[] = { "perl_code", SAY_HELLO };
and then:
perl_parse(my_perl, NULL, 3, one_args, (char **)NULL); and perl_run(my_perl); 23:00
but doing a char[] like that seems too much... ?
maybe I should go with reading a file..
geoffb Well, two things: 23:02
1. You should be asking on #perl, not #perl6.
2. It's been a decade since the last time I did Perl embedding ... I just remembered the manpage to look at. ;-) 23:03
Sorry. :-)
__Ace__ ok, np 23:04
lovely stuff though 23:05
quite easy to embeddd
TimToady can any lambdacamel tell me why Haskell's const has a second argument that is ignored? seems like it would foul up by currying a no-op arg when you didn't want it to...
allbery_b haskell's const = the K combinator 23:06
23:07 dduncan joined
dduncan fyi, after being without my own computer for 2 weeks, I have it back, and so I should soon be able to get back up to speed with whatever 23:08
Aankhen`` WB. =)
23:14 ProperNoun joined 23:18 mj41 joined 23:20 mr_ank joined 23:23 Limbic_Region joined 23:37 m0dY joined
Limbic_Region ?seen putter 23:40
lambdabot I saw putter leaving #perl6 8d 18h 5m 18s ago, and .
Limbic_Region hrm
Saturday will be here soon enough 23:41
stevan_ ping
?seen stevan_
lambdabot stevan_ is in #perl6. I last heard stevan_ speak 2h 49m 50s ago.
tene ?seen tene
lambdabot You are in #haskell and #perl6. I last heard you speak just now.
stevan_ Limbic_Region: pong 23:43
moritz wonders if lambdabot is a synesthete if he "hears" us "speak" ;-)
Limbic_Region stevan_ - thinking about using Moose - have a few questions 23:45
first question - can Moose handle parameter validation for custom methods (IOW - not constructor or accessor) 23:46
second question - how would I implement an abstract method
23:47 nwc10 left
stevan_ Limbic_Region: first_question: no, we do not handle non-Moose generated param validation 23:50
I have thought about it several times,.. but in the end I didn't want to enforce any one style 23:51
there is a side project in the works (by phaylon) which would provide an easier to use interface to the moose types in order to do things like param validation
and then there are the usual CPAN suspects 23:52
re: question 2 .. it all depends
you can use the normal perl 5 way:
sub foo;
or you can use roles,.. in which case you would make the method "required"
so that classes which do the role, must implement it 23:53
Limbic_Region oooh, the roles is the way I think I would want to go
stevan_ yeah,.. they are nice :)
Limbic_Region unfortunately, the parameter validation is a deal breaker
lets say that
I want my parameter passing and validation to be like perl 6 23:54
which CPAN module would you recommend that plays nice with Moose?
oh, and to specify the return type of the method too
stevan_ Limbic_Region: perl 5 really doesn't do that very well 23:55
cause you end up having to wrap the method and that can get really expensive
implementing strong typing at runtime is almost never a good thing :)
Limbic_Region *shrug* 23:56
my situation is a double edged sword
I am writing code at work (I'm not a developer) which is greatly appreciated since I can whip working code out faster than you can sneeze 23:57
23:57 offby1` joined
Limbic_Region the trouble is that I am not going to be maintaining it - Java developers are 23:57
so I am trying to placate them as much as possible
stevan_ ah
Limbic_Region so I have my class structure all worked out and everything is working 23:58
the trouble is that I have used p5 conventions to avoid all the issues typically associated with OO in p5
stevan_ hmm, well the whole dynamic typing/static typing paradigm switch might be an issue for Java guys 23:59
Limbic_Region I'm not so worried about that
I'm worried about them not bothering to learn how you avoid collisions with a blessed hash
stevan_ ah,.. Moose will take care of that for you