svn switch --relocate svn.openfoundry.org/pugs svn.pugscode.org/pugs/ | run.pugscode.org | spec.pugscode.org | paste: sial.org/pbot/perl6 | pugs.blogs.com Set by avar on 16 November 2006. |
|||
putter | lambdabot: ?tell audreyt How hard would it be to write an oo ast spec? gaal mentioned there were some parts he was unclear on. With a spec, we could start writing p6 code for it, and emitters, perhaps exercised by a PIL1->oo-ast converter. | 00:05 | |
lambdabot | Consider it noted. | ||
putter | luqui: what kind of data structure bugs? can it be characterized at all? | 00:07 | |
TimToady | my impressions is that the transation to Capture/Signature objects is perhaps not complete. | ||
I could be wrong though. | |||
*transition | |||
and Match objects are a form of Capture | 00:08 | ||
putter | ah | ||
TimToady | there may also be a dependency through binding semantics back as far as MMD design | 00:09 | |
but that would mostly relate to Signatures, I think. | |||
wouldn't relate to Match objects till you start trying to use them to dispatch via MMD | 00:10 | ||
but I'm sure luqui has seen much more of the innards than I have. | |||
I'm mostly just guessing | |||
putter | one thing I wonder whether I haven't thought clearly about in the past is the distinction between implementing things in p6 "for pugs", versus on p6 "on pugs". The latter potentially being much easier, because one isn't so tightly coupled to the vagaries of pugs. | 00:14 | |
s/versus on/versus in/ | 00:15 | ||
"on pugs" is like "on mp6", but with pugs rather than mp6. if pugs match objects are odd, or you can't hook into pugs's regexp handling, well, that's not the objective. there just has to be some usable subdialect of pugs which is firm enough to build on. | 00:17 | ||
luqui | putter, one of the bugs popped up in examples/nfa2dfa.pl | ||
putter | looking... | ||
luqui | there's a comment in the first function describing the wierdness | ||
(and I looked at Set.pm--there's no bug there) | 00:18 | ||
the following pattern comes up a lot: | 00:20 | ||
return ..some..expression.. # not work | |||
my $x = ..some..expression.. | |||
return $x # work | |||
putter | "it's not true that 2 == 2 anymore"?!? yipes | ||
luqui | i.e. if I get a 2 out of the set, then it's not equal to 2 from somewhere else | 00:21 | |
putter | right | ||
:/ | |||
luqui | when I write my next perl 6 program I will covert the bugs into tests | 00:22 | |
*converrt | |||
*convert :-) | |||
putter | t/xx-uncategorized is the current version of t/pugsbugs? | ||
luqui guesses so | 00:23 | ||
putter was just about to ask whether tests had been created... :) | |||
luqui | my new type inference algorithm will be a good test | 00:24 | |
it is data structure intensive | |||
(of course) | |||
putter | ") | ||
since everyone has p5 regex implementations (albeit often non-reentrant and can't embed code), i was musing about having a general bootstrap path of basic-p5 -> wrap in continuation passing style subs to get reentrant, embedded code, and <rule>s -> build p6 syntax regex on that | 00:27 | ||
luqui | are you talking about the Perl6::Rules path? | 00:29 | |
or not/ | |||
? | |||
no, I don't think you are. | |||
putter | js, ruby, python, etc, p5. p6/pugs. | 00:30 | |
luqui | so I don't know what you're talking about then :-) | ||
putter | looking at P6R... | ||
luqui | converts p6 rule syntax into p5 rules with embedded code | ||
failed because embedded code is buggy in p5 | |||
putter | "buggy"? or merely non-reentrant? | 00:31 | |
but, no (re "P6R path?"). p6r, because it wanted to be "in p5" rather than "on p5", had to get down and dirty with the details of the existing re, match, etc. | 00:32 | ||
I'm thinking more like a generalization of... | |||
00:33
rashakil joined
|
|||
putter | misc/pX/Common/Regexp-Parser-ReentrantEngine | 00:34 | |
the underlying p5 engine is not used for embedded code or repetition. so its not entirely clear its worth keeping around. but it saves worrying about unicode and similar headaches. | 00:39 | ||
s/not entirely clear/entirely clear/ # <- avoid unicode headaches | 00:40 | ||
putter tries to remember if pcre is reentrant (it has callbacks) | 00:43 | ||
00:44
justatheory joined
00:52
rashakil_ joined
00:54
rashakil__ joined
01:03
CardinalNumber joined
01:07
lyokato joined
|
|||
svnbot6 | r15131 | lwall++ | Made map return a multislice. | 01:27 | |
01:27
rashakil_ joined
|
|||
TimToady | well, only spec'ed it, actually... | 01:27 | |
02:14
bonesss joined
02:38
bones joined
|
|||
bsb | Is the Huffman coding of the new |, || and &, && backwards? | 02:40 | |
and does it matter? | |||
02:44
dmq joined
|
|||
TimToady | maybe, and probably not. :) | 02:47 | |
I don't see any way to buck the C short-circuit metaphor for || and && | |||
bsb | thought that might be the raisin | 02:48 | |
TimToady | and if we reversed them there we'd have to reverse junctionals and short circuits too | ||
and in a sense the || and && are "fancier" | |||
more dangerous maybe | |||
| and & are, in theory, simpler concepts, and symmetrical | 02:49 | ||
and the hope is that people won't notice the change most of the time, and just use | and & anyway. | |||
decommuting & | 02:51 | ||
02:59
Aankh|Clone joined
03:08
CardinalNumber is now known as ProperNoun
03:10
weinig is now known as weinig|zZz
03:13
justatheory joined
03:18
nperez joined
03:31
nipra joined
03:38
mako132 joined
03:54
reZo joined,
Aankh|Clone is now known as Aankhen``
|
|||
svnbot6 | r15132 | putter++ | Moved misc/pX/Common/Regexp-Parser-ConvertToSix to perl5/Regexp-Parser-ConvertToSix. My impression is it is working and stable. | 04:04 | |
04:14
leed joined
04:31
justatheory joined
04:33
Debolaz2 joined
04:35
justatheory joined
05:24
nipra joined
05:28
kanru joined
06:14
BooK joined
06:37
fandang0 joined
06:38
spo0nman joined
07:10
nipra joined
07:18
marmic joined
07:42
CardinalNumber joined
07:46
iblechbot joined
08:04
devogon joined
08:33
elmex joined
08:46
luqui joined
08:49
dfaure joined
08:50
drrho joined
09:03
nipra joined
09:04
TimToady joined
09:07
szymzet joined
|
|||
szymzet | Hi, where can I find any information about perl6 (parrot) development, because I'd like to help somehow. | 09:12 | |
fandang0 | szymzet: www.perl.org/perl6 | 09:13 | |
lambdabot | Title: Perl 6 - perl6 | ||
szymzet | Well I can't find any concrete information | 09:16 | |
fandang0 | i belive communication is done through diff. mailing lists, you can find list of those under dev.perl.org/perl6/lists/ | 09:19 | |
lambdabot | Title: Mailing Lists - perl6 | ||
09:30
andara joined
09:39
ruoso joined
|
|||
fandang0 | hm.. download link on www.parrotcode.org/ pointing to search.cpan.org/~particle/parrot-0.4.8/ is broken | 09:51 | |
lambdabot | Title: Parrot Virtual Machine - parrotcode | ||
fandang0 | url parrot | ||
download Parrot | |||
broquaint | search.cpan.org/~particle/parrot-0.4.8b/ | 09:54 | |
lambdabot | Title: particle / parrot-0.4.8b - search.cpan.org | ||
fandang0 | is there any consolidated downloadable document for perl6 language changes. | 09:57 | |
? | |||
broquaint | The Synopses are updated regularly: dev.perl.org/perl6/doc/synopsis.html | 09:59 | |
lambdabot | Title: Synopses - perl6 | ||
10:20
fglock joined
|
|||
fglock | putter: we seem to be at complementary timezones | 10:24 | |
lambdabot | fglock: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
fglock | putter: tomorrow is my last day online | 10:26 | |
10:45
VanilleBert joined
10:51
penk joined
10:56
penk joined
|
|||
svnbot6 | r15133 | fglock++ | kp6 - answer a FAQ | 11:03 | |
11:13
penk joined
11:19
b00t joined
|
|||
fandang0 | while trying to run parrot,getting the following error: error while loading shared libraries: libparrot.so.0.4.8: | 11:20 | |
parrot has been installed in /home/user directory | |||
broquaint | Try the #parrot channel on irc.perl.org, fandang0. | 11:21 | |
fandang0 | ok, thanx | 11:22 | |
11:29
dduncan left
11:30
penk joined
11:33
spo0nman joined
11:40
Ziggy6 joined
12:03
TimToady joined
12:04
penk left
|
|||
VanilleBert | to write a test i use ok(CONDITION, TEXT) , right? just asking cause its my first test i write | 12:18 | |
broquaint | Yeah, that should do. | 12:19 | |
theorbtwo | VanilleBert: You can, but it's generally better to write is(COMPUTATION, EXPECTED, TEXT) -- you get nicer-looking errors. | 12:20 | |
VanilleBert | ?eval is.signature | 12:24 | |
12:24
evalbot_r15122 is now known as evalbot_r15133
|
|||
evalbot_r15133 | Error: No compatible subroutine found: "&is" | 12:24 | |
VanilleBert | ?eval &is.signature | ||
evalbot_r15133 | CCall "perl" CaptMeth {c_invocant = VPure (SigSubSingle {s_requiredPositionalCount = 0, s_requiredNames = fromList [], s_positionalList = [], s_namedSet = fromList [], s_slurpyScalarList = [], s_slurpyArray = Nothing, s_slurpyHash = Nothing, s_slurpyCode = Nothing, s_slurpyCapture = Nothing}), c_feeds = [MkFeed {f_positionals = [], f_nameds = fromList []}]} | ||
theorbtwo | VanilleBert: IIRC, you have to use Test first, or somesuch. | 12:25 | |
VanilleBert | k | 12:26 | |
12:31
lambdabot joined,
bones joined
|
|||
svnbot6 | r15134 | fglock++ | kp6 - rollback unfinished changes to kp6-perl5.pl, so that it's usable again | 12:33 | |
r15134 | fglock++ | - add kp6-perl5.pl usage to FAQ | |||
12:35
bones is now known as bonesss
|
|||
nothingmuch | audreyt: i can't delete the RT spam in Perl6-Pugs -- does RT respect comaint? | 12:37 | |
oh wait, now I can | |||
very odd | |||
12:44
VanilleBert left,
hexmode joined
|
|||
svnbot6 | r15135 | fglock++ | kp6 - added 'See Also' to FAQ - www.cis.uab.edu/gray/Pubs/sac-2005-carl.pdf | 12:58 | |
r15135 | fglock++ | - Compares the visitor pattern used by kp6 with other approaches | |||
13:15
Limbic_Region joined
13:32
ezraburgh joined
13:36
gnuvince joined
|
|||
avar | ?eval 1 | 13:36 | |
13:36
evalbot_r15133 is now known as evalbot_r15135
|
|||
evalbot_r15135 | 1 | 13:36 | |
13:42
andara joined
13:47
weinig|zZz is now known as weinig|bbl
|
|||
Limbic_Region | ?eval atan(1, 1) * 4 | 13:48 | |
evalbot_r15135 | 3.141592653589793 | ||
Limbic_Region | curios - what happened to the infinite precision? | ||
masak | Limbic_Region: it probably doesn't concern floats, only integers | 13:49 | |
?eval my $recursive = '$recursive.eval()'; $recursive.eval() | 13:50 | ||
Limbic_Region | *shrug* I can't speel either | ||
evalbot_r15135 | (no output) | ||
masak | evalbot_r15135: that's probably wise of you | ||
13:53
xinming joined
|
|||
smash_ good afternoon | 14:07 | ||
14:20
cdfh_ joined
14:21
iblechbot joined
14:26
vel joined
14:40
fglock joined
14:44
Psyche^ joined
14:49
chris2 joined
|
|||
svnbot6 | r15136 | fglock++ | kp6 - FAQ - What is the plan for kp6? | 14:58 | |
15:01
Psyche^ is now known as Patterner,
avar joined
15:02
buetow joined
15:19
bonesss joined
15:22
ofer1 joined
15:24
pbuetow joined
|
|||
svnbot6 | r15137 | fglock++ | kp6 - FAQ on backends | 15:50 | |
15:58
VanilleBert joined
16:14
weinig|bbl is now known as weinig
|
|||
fglock | I sent a "Bootstrapping Perl 6" talk to fisl.softwarelivre.org/8.0/www/ | 16:28 | |
lambdabot | Title: 8th International Free Software Forum | 12, 13 e 14 de Abril de 2007 | ||
16:33
mako132 joined
16:34
nipra joined
|
|||
svnbot6 | r15138 | fglock++ | kp6 FAQ - added Overview | 16:47 | |
16:53
vel joined
|
|||
kolibrie | fglock: I thought you were at the beach (but I'm glad you're documenting!) | 17:03 | |
Ziggy6 | fglock: i was thinking about writing a new parser for mp6 | ||
but i want it to have better performance. do you think a table based non-recursive top-down parser would work? | 17:06 | ||
something like lambda.uta.edu/cse5317/notes/node15.html | 17:08 | ||
lambdabot | Title: 3.2.2 Predictive Parsing Using Tables | ||
fglock | Ziggy6: I think it can easily be optimized at the emitter side, by making $/ special | 17:14 | |
Ziggy6: looking at the link... | 17:15 | ||
Ziggy6: but the place to concentrate new work is in kp6, 6-on-6, and backends | |||
and libs | 17:16 | ||
and tests, and docs | |||
Ziggy6 | yes, but i can't wait 2 minutes to regenerate lib5 | 17:17 | |
i like my compilers fast :P | |||
fglock | hmm - Should p6 regexes eliminate left-recursion automatically? | ||
Ziggy6: no problem then - just do it :) | |||
Ziggy6 | how does kp6 handle left-recursion? | 17:19 | |
fglock | Ziggy6: re parser: in the case you want to change the algorithm, you can write a new emitter for the regex compiler | ||
Ziggy6: it doesn't do it automatically | |||
Ziggy6: re beach: I'll stay until tomorrow | 17:20 | ||
kolibrie | fglock: that was a very short month :) | 17:21 | |
fglock | kolibrie: yes - I had to move vacations in order to make a presentation on $job - I'll come back after carnival | 17:22 | |
17:24
BooK joined
|
|||
[particle] | fglock: will kp6 have assignment? | 17:25 | |
or references? | |||
Ziggy6 | faq says it will hava assignment | 17:26 | |
17:26
falesca joined
|
|||
fglock | [particle]: yes | 17:26 | |
[particle] | Ziggy6: thx, hadn't gotten that far yet :) | ||
fglock | Ziggy6: if you want to make experiences, feel free to add v6-MiniPerl6-Ziggy/ | ||
17:28
nipra joined
|
|||
Ziggy6 | fglock: that's what i was thinking too :) | 17:29 | |
fglock | misc/pX/ is another possible place for experiments | 17:31 | |
Ziggy6 | fglock: i will probably commit the whole thing when it's good enough to replace v6-MiniPerl6 or nothing at all | 17:34 | |
17:39
miyagawa joined
17:46
VanilleBert left
17:50
__Ace__ joined
17:52
andara left
17:54
justatheory joined
17:58
_bernhard joined
18:16
xinming joined
18:34
ekelund joined
|
|||
TimToady | I'm wondering if what we're calling a multislice is really a CoC, Capture of Capture. | 18:36 | |
maybe it's just a List of Capture | 18:39 | ||
if each iteration of map() returns a capture, then you just stuff that into the multislice as the next slice without any extra processing. | 18:40 | ||
the actual flattening or not happens at bind time. | 18:41 | ||
(trying to convince myself that changing the autoflattening of map to multislice generation is not a big efficiency hit.) | |||
I think we've now unified map and for such that for can simply be desugered to the equivalent map | 18:43 | ||
I'm tired of hearing people whine about use of map in void context... | 18:47 | ||
it's like there's this logic diagram that people insist on turning from inclusive or to exclusive. | 18:54 | ||
just because the compiler might whine about "useless use of pure code in void context" | |||
fglock | is there any implication on 'for' being expected to not parallelize, while map can run in any order? | 18:55 | |
[particle] | i thought that whining largely went away in 5.6 | ||
TimToady | they think they ought to be able to whine about "useful use of code in void context" | ||
[particle] | when the performance bug was resolved | ||
TimToady | fglock: map and for make no promises about parallelizability | 18:56 | |
[particle] | i'd rather they promise not to be parallelizable | 18:57 | |
leave that to hypers | |||
can you hyperize map? | |||
TimToady | maybe with a hypermap variant if needed | 18:58 | |
.>>.map: {...} | |||
[particle] | unless there's already a construct that does that | ||
TimToady | see above | ||
course, that recurses | 18:59 | ||
[particle] | is recursion default behavior of hyper? | ||
TimToady | yes | ||
so we do seem to be missing something | 19:00 | ||
since the answer we gave yesterday to "how do I do it flat?" was to use map... | |||
fglock | >>:: - ratchet hyper | ||
[particle] | can you break down .>>.map for me? it looks like the arrows are the wrong way | 19:02 | |
TimToady | .any.map almost does it | ||
.map is a postfix | |||
@foo>>++ | |||
lambdabot | Unknown command, try @list | ||
[particle] | is .<<.map ... any different? | 19:03 | |
TimToady | currently not allowed; we only have reversible <<>> on infix hypers | ||
to indicate which side to amplify | |||
[particle] | i see -<< (1,2,3) in S03 | 19:04 | |
TimToady | ?eval -<< (1,2,3) | ||
19:04
evalbot_r15135 is now known as evalbot_r15138
|
|||
evalbot_r15138 | (-1, -2, -3) | 19:04 | |
TimToady | ?eval -<< (1,(2,4),3) | 19:05 | |
evalbot_r15138 | (-1, -2, -4, -3) | ||
TimToady | ?eval -<< (1,[2,4],3) | ||
evalbot_r15138 | (-1, (-2, -4), -3) | ||
[particle] | ok, i see the part i need now: When using a unary operator, you always aim the blunt end at the single operand, because no dwimmery ever happens ... Note that method calls are really postfix operators, not infix, so you shouldn't put a ōæ½xAB after the dot. | 19:07 | |
__Ace__ | oh, TimToady did you get my email? | 19:08 | |
TimToady | yes, was thinking about it and forgot to reply... | ||
__Ace__ | quite busy man eh? | 19:09 | |
TimToady | happens to me frequently | ||
__Ace__ | bet it does | ||
alot of spam and idiots aswell.. | |||
SamB | well I don't imagine he spends much time thinking about the spam | ||
__Ace__ | hehe | ||
TimToady | don't even think about it long enough to delete it | 19:10 | |
just let it flow past | |||
SamB | TimToady: that *is* a problem | ||
TimToady | eventually I get a bigger disk drive | ||
SamB | well, how do you read your inbox if every other thing in it is spam? | ||
__Ace__ | you save the spam? | ||
TimToady | the spam I see is a small subset of the spam I am sent. | ||
SamB | point | ||
TimToady | every other thing would be neat | ||
more like 1 message in 100 isn't spam, and that's post spamassassin | 19:11 | ||
__Ace__ | you gonna respond now then or? :) | ||
awwaiid | and 1gig storage is less than a cheap soda | ||
think of that next time you count your change for a coke | |||
TimToady | I've been trying not to travel much lately, after wearing myself out last year. | 19:12 | |
__Ace__ | ah | ||
what price on some talk about Perl6 then? | 19:13 | ||
TimToady | I don't do prices. | 19:14 | |
__Ace__ | heh | ||
TimToady | who was it said a good functional programmer knows the value of everything but the price of nothing? | 19:15 | |
__Ace__ | that was me | 19:16 | |
;) | |||
SamB | __Ace__: *really*? | ||
__Ace__ | nah | ||
19:16
mdiep joined
|
|||
__Ace__ | hard to put prices on knowledge eh? | 19:18 | |
$1 per line of code | 19:19 | ||
SamB | it is a pun | ||
19:44
hexmode` joined
|
|||
beppu | TimToady, re: spam -- look into greylisting if you haven't already. I've found it to be a great anti-spam technique. | 19:47 | |
20:02
BooK joined
20:07
elmex_ joined,
weinig is now known as weinig|food
20:14
bonesss joined
20:22
jrigby joined
20:24
szabgab joined
|
|||
szabgab | ?eval split "(", "ab(cd" | 20:25 | |
evalbot_r15138 | ("ab", "cd") | ||
szabgab | when split gets a "string" as the separator, does it now use it as a plain string (as above) or should it still use it as regex as in P5? | 20:27 | |
I could not find this in the synopsis | |||
TimToady | see doc for split in pugs/docs/Perl6/Spec/Functions.pod | 20:34 | |
(answer: a plain string is never interpreted as a regex) | |||
20:36
SamB joined
|
|||
TimToady | now I wonder if split and comb should also be returning multislices. | 20:37 | |
"Do you want smooth or chunky?" | 20:38 | ||
20:38
ekelund_ joined
|
|||
[particle] | mmm chunky. | 20:38 | |
20:41
nipra joined
|
|||
szabgab | heh ? what smooth and chunky? | 20:42 | |
20:43
ProperNoun joined
|
|||
szabgab | and thanks for the link to the perldoc, I thought I should only look at the synopsis | 20:43 | |
and if I was doing that I could have found the link to this pod file ... | 20:44 | ||
20:46
larsen_ joined
|
|||
TimToady | szabgab: er, sorry, an oblique reference to styles of peanut butter in the U.S. | 20:54 | |
20:57
polettix joined
|
|||
TimToady | @tell dduncan by the way, "butter" does originally come from Indo-European for "cow" (see "bous" in Greek for instance) so the butter-like consistency metaphor is derived from that | 20:58 | |
lambdabot | Consider it noted. | ||
20:58
Odin-LAP joined
21:19
ekelund_ is now known as ekelund
21:26
Ziggy6 left
21:28
weinig|food is now known as weinig
21:29
Ziggy6 joined
21:46
TimToady joined
|
|||
TimToady | join cbstream | 21:47 | |
21:49
larsen__ joined
21:56
larsen___ joined
22:16
cdfh joined
22:29
dduncan joined
22:32
Aankhen`` joined
23:01
polettix joined
23:12
SamB is now known as Java,
Java is now known as SamB
23:13
Psyche^ joined
23:27
Psyche^ is now known as Patterner
23:37
ludan joined
|
|||
ludan | ola | 23:38 | |
23:39
luqui joined
23:46
awwaiid joined
|