[comp.compilers] MATRIX BASIC -- HOW BIG IS THE MARKET?

zhou@brazil.psych.purdue.edu (Albert Zhou) (01/05/91)

I am intending to expand the current matrix operation interface I've designed
into a full scale language on PC. Here is what I am considering:

    (1) I don't want it to become a special language like mathematica,
gauss, imsl and so on. Instead, I want it to be a clone of a popular
language on PC with full matrix operation capacity. Since it has to be
interpretive, the the ideal candidate would be BASIC. I would call it
MATRIX BASIC.

    (2) Besides matrix operations, it will contain also other frequently
used math functions like normal distribution.

    (3) Programs written in MATRIX will be made a stand-along .EXE files.
between interpretive BASIC and compiled BASIC. It is not a compiled
program; instead, it is a combination of the interpreter and the
preprocessed MATRIX BASIC code.

Any comments, suggestions or objections? I would especially want to know
how big the market for MATRIX BASIC will be. Also, if anyone would suggest
another language to clone, I am listening.
M
[I'd expect the market to be close to zero.  Matrix lovers have a wide variety
of inexpensive possibilities already ranging from MATLAB, both the old free
and newer cheap versions, low-priced versions of APL, and all sorts of C
and Fortran library packages. -John]
-- 
Send compilers articles to compilers@iecc.cambridge.ma.us or
{ima | spdcc | world}!iecc!compilers.  Meta-mail to compilers-request.

corbett@road.Eng.Sun.COM (Robert Corbett) (01/05/91)

In article <11651@j.cc.purdue.edu> zhou@brazil.psych.purdue.edu (Albert Zhou) writes:
>I am intending to expand the current matrix operation interface I've designed
>into a full scale language on PC. Here is what I am considering:

>    (1) I don't want it to become a special language like mathematica,
>gauss, imsl and so on. Instead, I want it to be a clone of a popular
>language on PC with full matrix operation capacity. Since it has to be
>interpretive, the the ideal candidate would be BASIC. I would call it
>MATRIX BASIC.


ANSI BASIC, X3.113-1987, provides matrix operations including addition,
subtraction, multiplication, inverse, determinant, and scalar product.  I
presume that BASIC implementations that claim conformance with the standard,
such as True BASIC, implement those features (they are not optional).

If your package only includes simple matrix operations, I doubt you will find
much of a market.  If your package includes support for complex matrices and
analytic functions over them (not at all easy to implement), your sales might
increase by dozens.

					Yours truly,
					Bob Corbett
-- 
Send compilers articles to compilers@iecc.cambridge.ma.us or
{ima | spdcc | world}!iecc!compilers.  Meta-mail to compilers-request.

zhou@gatech.edu (Albert Zhou) (01/06/91)

In article <5326@exodus.Eng.Sun.COM> corbett@road.Eng.Sun.COM (Robert Corbett) writes:
>ANSI BASIC, X3.113-1987, provides matrix operations including addition,
>subtraction, multiplication, inverse, determinant, and scalar product.  I
>presume that BASIC implementations that claim conformance with the standard,
>such as True BASIC, implement those features (they are not optional).
 
So how is this BASIC doing these days? Does it have a lot of market and is 
it sold separately by vendors?

>If your package only includes simple matrix operations, I doubt you will find
>much of a market.  If your package includes support for complex matrices and
>analytic functions over them (not at all easy to implement), your sales might
>increase by dozens.

MATRIX BASIC of course will be more powerful than that. It will introduce
a few new operators, such as ~ (horizontal concatenation), | (vertical
concatenation), ` (transpose), \ (elementwise division), # (elementwise
multiplication, ...

Also, the original package has been designed for statistic processing. So
MATRIX BASIC could have many built-in functions such as sum(x), ss(x) (sum of
square), mean(x), var(x) (variance), ...

Unfortunately we haven't implemented complex matrix since there hasn't been
such need.
[True Basic is a commercial package whose authors include the original authors
of Dartmouth Basic.  I don't know how it's doing, but observe that I don't
see anything about it in the trade press. -John]
-- 
Send compilers articles to compilers@iecc.cambridge.ma.us or
{ima | spdcc | world}!iecc!compilers.  Meta-mail to compilers-request.

khb@Eng.Sun.COM (Keith Bierman fpgroup) (01/08/91)

In article <11651@j.cc.purdue.edu> zhou@brazil.psych.purdue.edu (Albert Zhou) writes:

> I am intending to expand the current matrix operation interface I've
> designed into a full scale language on PC. Here is what I am considering:

such features were quite common on the mainframe BASICs of yesteryear
(e.g. an MBASIC on the JPL UNIVAC, back in '77). I don't recall these
dialects taking over the world; though my HP 71b does support matrix
operations.

As noted by Corbett, the current ANSI standard for BASIC includes such
features. 

--
Keith H. Bierman    kbierman@Eng.Sun.COM | khb@chiba.Eng.Sun.COM
SMI 2550 Garcia 12-33			 | (415 336 2648)   
    Mountain View, CA 94043
[So can you get any kind of Basic on a Sun? -John]
-- 
Send compilers articles to compilers@iecc.cambridge.ma.us or
{ima | spdcc | world}!iecc!compilers.  Meta-mail to compilers-request.

bliss@sp64.csrd.uiuc.edu (Brian Bliss) (01/10/91)

|> and all sorts of C and Fortran library packages. -John]

They're already there, and highly optimized, why not use them?  All you
need is an interpreter for a C or Fortran-like language that uses the same
calling convention as compiled C or Fortran, and use it to call the
packages.  Add type checking and automatically include the appropriate
array bounds to the packages to make things bulletproof.

bb
-- 
Send compilers articles to compilers@iecc.cambridge.ma.us or
{ima | spdcc | world}!iecc!compilers.  Meta-mail to compilers-request.