[comp.lang.c++] numerical C vs C++

sdw@hpsad.HP.COM (Steve Warwick) (02/07/91)

I just got done talking to a vendor of Digital Signal processors
who mentioned that their company is involved with a group trying
to define something called "numerical C" which defines a set of 
special types and operatiors which are supposedly tuned to 
typical DSP/Vector processing applications. 

 I was troubled by this in that it appears that language constructs
available in C++ provedes syntax which could cover these cases, such
as fractional integer arithmetic, and vectorized expressions.  In
addition, such modules could be supported on non-DSP platforms given a
suitable supprt library.

My question is: are there members of the C++ community aware of this
other standardization effort, and can point out how the two efforts 
are unable to be combined... is there some fundamental weakness in the 
ability of a C++ compiler to optimise for the DSP environment? 

steve@taumet.com (Stephen Clamage) (02/09/91)

sdw@hpsad.HP.COM (Steve Warwick) writes:

>I just got done talking to a vendor of Digital Signal processors
>who mentioned that their company is involved with a group trying
>to define something called "numerical C" ...

>Are there members of the C++ community aware of this
>other standardization effort, and can point out how the two efforts 
>are unable to be combined... is there some fundamental weakness in the 
>ability of a C++ compiler to optimise for the DSP environment? 

Members of the ANSI C committe and of the Numerical C Extensions Group
sit on the ANSI C++ committee.  So, yes, members of the C++ community
are aware of other standards efforts.  The C++ committee has no
desire to introduce gratuitous incompatibilities with C or with
numerical requirements.

On the other hand, it does not seem appropriate for the committee to tailor
language features to the peculiarities of any one machine architecture.
A feature which works nicely with machine ABC may not be implementable
on machine DEF, and may be the reverse of a desirable construct on 
machine GHI.  And how desireable will this feature appear, which all
language implementations must support, when machine ABC is no longer
manufactured?
-- 

Steve Clamage, TauMetric Corp, steve@taumet.com

jimad@microsoft.UUCP (Jim ADCOCK) (02/12/91)

In article <1920001@hpsad.HP.COM> sdw@hpsad.HP.COM (Steve Warwick) writes:
|I just got done talking to a vendor of Digital Signal processors
|who mentioned that their company is involved with a group trying
|to define something called "numerical C" which defines a set of 
|special types and operatiors which are supposedly tuned to 
|typical DSP/Vector processing applications. 
|
| I was troubled by this in that it appears that language constructs
|available in C++ provedes syntax which could cover these cases, such
|as fractional integer arithmetic, and vectorized expressions.  In
|addition, such modules could be supported on non-DSP platforms given a
|suitable supprt library.

I agree, I share this concern.

See, I believe, December "Journal C Language Translation" for a discussion
of "restricted" pointer types [better know as 'son of noalias']

A better solution, I believe, is for C++ to clean up references, and then to
define clearly what exactly is being aliased by various types of pointers and 
references.