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 |