Re: Perl5 - Perl 6 Translations Design Document
Sage La Torra writes: interpolative context ment the perl 5 side, where the double quotes should cause interpolation. Yes, but not for entire hashes; the percent character isn't special in Perl 5 double-quoted strings, as Aaron said: On 6/6/06, Aaron Crane [EMAIL PROTECTED] wrote: Sage La Torra writes: http://infohost.nmt.edu/~slatorra/conversionstageone.txt You say this: -Hash in interprative context: %hash - %hash{} (also @{[...]} - {...}) Hashes don't interpolate in Perl 5, so that's not an issue And Sage, please (in general) don't top-post on this mailing list; it makes it much harder for people who wish to follow up on what was said earlier in the thread to provide context for exactly what they're commenting on. Smylers
Re: Perl5 - Perl 6 Translations Design Document
Just an update: I've started coding (in haskell, to be used with Pugs). I've got file input, I've got a data structure for the AST, now I just have to make them play nicely together. I'll start implementing translations soon, so any other corrections would be appreciated. Thanks to everyone who's already given me corrections, sorry for the mistakes I made (no more top posting for me). Sage
Re: Perl5 - Perl 6 Translations Design Document
Sage La Torra writes: http://infohost.nmt.edu/~slatorra/conversionstageone.txt You say this: -Hash in interprative context: %hash - %hash{} (also @{[...]} - {...}) Hashes don't interpolate in Perl 5, so that's not an issue (unless I'm misunderstanding what you meant). But using {...} instead of @{[...]} is definitely a good thing. -- Aaron Crane
Re: Perl5 - Perl 6 Translations Design Document
interpolative context ment the perl 5 side, where the double quotes should cause interpolation. Maybe not the best phrase to identify it, now that you mention it. Sage On 6/6/06, Aaron Crane [EMAIL PROTECTED] wrote: Sage La Torra writes: http://infohost.nmt.edu/~slatorra/conversionstageone.txt You say this: -Hash in interprative context: %hash - %hash{} (also @{[...]} - {...}) Hashes don't interpolate in Perl 5, so that's not an issue (unless I'm misunderstanding what you meant). But using {...} instead of @{[...]} is definitely a good thing. -- Aaron Crane
Perl5 - Perl 6 Translations Design Document
Hello all, I'm the student picking up on the translation work lwall started. Since the perl 5 parser is more or less complete, I've headed straight to the translation work. I'm going to be taking on the translations a few at a time, starting with the easiest translations and moving to the more complex. I've got a design document detailing the first few translations I'll be handling, and I'd greatly appreciate feedback and advice. Larry already took a good crack at it, catching a few things I had stupidly thought were simpler then they are, and now it's ready for general review. The current version can be found at http://infohost.nmt.edu/~slatorra/conversionstageone.txt Any advice/comments/criticism on the document and even ideas on implementation would be greatly appreciated. Sage
Re: Perl5 - Perl 6 Translations Design Document
Sage La Torra schreef: http://infohost.nmt.edu/~slatorra/conversionstageone.txt Any advice/comments/criticism on the document and even ideas on implementation would be greatly appreciated. I think that split('\s+') - split(/\s+/) should be split('\s+') - .split(/\s+/) -- Groet, Ruud
Re: Perl5 - Perl 6 Translations Design Document
Sage La Torra [EMAIL PROTECTED] wrote: I've got a design document detailing the first few translations I'll be handling, and I'd greatly appreciate feedback and advice. I may be off base here, or in the alternate pointing out a corner case that's of little significance, but: -Compound statements: if($foo eq a or $foo eq b or $foo eq c) {...} - if $foo eq a|b|c {...} Is there an issue if $foo is tied here, in that (unless the a or b condition match) $foo will be evaluated three times; for testing against a junction is it feasible that the compiler can say aha, I'll only evaluate $foo once and test it three times? Reading $foo may have some real world visible effects and the semantics would change. The P6 spec may nail this down, but I haven't time to go look (and I'll surely not have time before I forgot this thought completely...) That's all I can pick out from the quick glance I have time for. Have fun! :-) Jonathan
Re: Perl5 - Perl 6 Translations Design Document
On Tue, Jun 06, 2006 at 02:06:05AM +0100, Jonathan Worthington wrote: : Sage La Torra [EMAIL PROTECTED] wrote: : I've got a design document detailing the first few translations I'll be : handling, and I'd greatly appreciate feedback and advice. : : I may be off base here, or in the alternate pointing out a corner case : that's of little significance, but: : : -Compound statements: if($foo eq a or $foo eq b or $foo eq c) {...} : - if $foo eq a|b|c {...} : : Is there an issue if $foo is tied here, in that (unless the a or b : condition match) $foo will be evaluated three times; for testing against a : junction is it feasible that the compiler can say aha, I'll only evaluate : $foo once and test it three times? Reading $foo may have some real world : visible effects and the semantics would change. The P6 spec may nail this : down, but I haven't time to go look (and I'll surely not have time before I : forgot this thought completely...) Yes, but I think the translator can assume that most scalar variables aren't tied, especially if there isn't a tie anywhere else in the file. Could have a user option to pessimize that, and it should probably be logged as one of the places the translator guessed. But unlimited tying is one of the problems with Perl 5 that Perl 6 is trying to control, so it's sort of natural that the translator would run into this here and there. Another minor difference is that or guarantees an ordered short-circuit while | may short-circuit in any order the compiler pleases. Again, unlikely to be a problem for the variable in the absence of ties, but if some of the value calculations that can blow up are guarded by or conditions, then you've got a problem. We'll definitely need to provide some knobs for the user to turn to control how much refactoring is attempted. Larry
Re: Perl5 - Perl 6 Translations Design Document
Sage La Torra wrote: Hello all, I'm the student picking up on the translation work lwall started. Since the perl 5 parser is more or less complete, I've headed straight to the translation work. I'm going to be taking on the translations a few at a time, starting with the easiest translations and moving to the more complex. I've got a design document detailing the first few translations I'll be handling, and I'd greatly appreciate feedback and advice. Larry already took a good crack at it, catching a few things I had stupidly thought were simpler then they are, and now it's ready for general review. The current version can be found at http://infohost.nmt.edu/~slatorra/conversionstageone.txt Any advice/comments/criticism on the document and even ideas on implementation would be greatly appreciated. Looks like a reasonable starting point. I assume that the AST will include comment nodes etc? Sam.