In that case, really, how hard would it be to have 3..1/2..4 come out as
the sequence [3,7/2,4]?
The parser should produce ((matseq) 3 ((matseq) 1/2 4)) which should first
be simplified to something like
((matseq) 3 1/2 4)
which should then be evaluated as makelist(3+ 1/2*i,i,0, (4-3)+1).
in general, makelist(a+increment*index,index,0, (high-low)+1) or
something like that.
makelist however craps out when the list cannot really be expanded
explicitly,
so maybe we need an implicit makelist (noun, delayed evaluation ,
whatever)/
> -----Original Message-----
> From: Barton Willis [mailto:willisb at unk.edu]
> Sent: Friday, June 20, 2008 9:14 AM
> To: fateman at EECS.Berkeley.EDU
> Cc: 'Robert Dodier'; 'Maxima List'
> Subject: Re: [Maxima] a .. b
>
> -----maxima-bounces at math.utexas.edu wrote: -----
>
>
> >I think that consistency with Macsyma means consistency with
> a design that
> >has perhaps has had more professional thought than we may be
> willing to
> >commit to at the moment. It is not just a matter of portability of
> >programs.
>
> There is more---dot-dot was introduced to Macsyma for matlab
> support. So compatibility with Macsyma also means compatibility with
> the matlab language(s).
>
> Now I see that Macsyma allows a user-supplied step (as suggested by
> Raymond). but I think doing this would require a change to the parser
> (or make dot-dot a prefix operator---making dot-dot no faster to type
> than makelist).
>
> Barton
>
>