perl6-internals
[Top] [All Lists]

[perl #58410] [TODO] Deprecate n_* variants of the math opcodes

To: bugs-bitbucket@netlabs.develooper.com
Subject: [perl #58410] [TODO] Deprecate n_* variants of the math opcodes
From: Allison Randal (via RT) <parrotbug-followup@parrotcode.org>
Date: Thu, 28 Aug 2008 00:03:51 -0700
Delivered-to: mailing list perl6-all@perl.org
Delivered-to: perl6-all-poster@perl.org
Delivered-to: mailing list perl6-internals@perl.org
Delivered-to: moderator for perl6-internals@perl.org
Delivered-to: perl6-internals@perl.org
In-reply-to: <48B64DB6.8050200@perl.org>
List-help: <mailto:perl6-all-help@perl.org>
List-id: <perl6-all.perl.org>
List-id: <perl6-internals.perl.org>
List-post: <mailto:perl6-all@perl.org>
List-subscribe: <mailto:perl6-all-subscribe@perl.org>
List-unsubscribe: <mailto:perl6-all-unsubscribe@perl.org>
Mail-followup-to: perl6-internals@perl.org
Mailing-list: contact perl6-all-help@perl.org; run by ezmlm
Managed-by: RT 3.6.HEAD (http://www.bestpractical.com/rt/)
References: <RT-Ticket-58410@perl.org> <48B64DB6.8050200@perl.org>
Reply-to: perl6-internals@perl.org
Resent-date: Thu, 28 Aug 2008 00:03:53 -0700
Resent-from: rt-allison=perl.org@netlabs.develooper.com
Resent-message-id: <200808280703.m7S73rwv013728@x17.develooper.com>
Resent-to: perl6-internals@perl.org
Rt-originator: allison@perl.org
Rt-ticket: perl #58410
# New Ticket Created by  Allison Randal 
# Please include the string:  [perl #58410]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=58410 >


Briefly discussed on the phone with Patrick, Jerry, and chromatic: The 
versions of the math opcodes that modify an existing destination PMC 
instead of creating a new destination PMC are not useful to HLLs, 
because they make assumptions about assignment semantics that don't hold 
true for all (or possibly even any) HLLs. Code generated from PCT takes 
the result of the math op as a temporary result value, and then performs 
a separate assignment operation to the HLL result variable, following 
the HLLs semantics for assignment.

The plan is to make the regular variants (like 'add') create a new 
destination PMC, and then deprecate the old n_* variants (like 'n_add').

Allison


<Prev in Thread] Current Thread [Next in Thread>