On Fri, 9 Nov 2012, Allin Cottrell wrote:

> On Fri, 9 Nov 2012, Sven Schreiber wrote:
>
>> Am 09.11.2012 18:17, schrieb Allin Cottrell:
>>> On Fri, 9 Nov 2012, Sven Schreiber wrote:
>>>>
>>>> I'm not saying I need it, but it isn't obvious to me why it is less
>>>> useful in principle than for example 'isstring()'. Instead it seems to
>>>> be a natural complement to the other 'is...()' functions, doesn't it?
>>>
>>> Maybe I was too glib. But actually, it seems to me that all we
>>> really need is isnull() --
>>
>> [followed by more detail]
>>
>> Hm, not sure, but what about the case of analyzing the components of
>> bundles in a script? Maybe the bundle itself is a function argument, and
>> then the function needs to check the sanity of the structure of the
>> bundle that was passed in?
>
> Point taken. I need to think about that. If it's valid I guess
> we should add ismatrix and isbundle? Or, perhaps better, roll
> these distinct functions into something we might call typeof?
>
> if typeof(whatever) != "scalar"
>   ...
> endif

I like this. Moreover: sometimes we run into trouble because automatic 
re-casting of a scalar as a 1x1 matrix doesn't work. For example:

<hansl>
scalar c = 5
matrix x = invpd(c)
</hansl>

now works, but it wouldn't not so long ago (invpd would complain its 
argument should have been a matrix). Of course the above not working was a 
bug, and was killed as such, but sometimes it's nice to have a workaround 
while the bug is still there.

The only think I'd change from Allin's proposal is to introduce an 
integer-based coding system, such as 1=scalar, 2=series etc and have 
typeof() return a scalar. For performance reasons, the less we use 
strings, the better.


--------------------------------------------------
  Riccardo (Jack) Lucchetti
  Dipartimento di Economia

  Università Politecnica delle Marche
  (formerly known as Università di Ancona)

  r.lucchetti(a)univpm.it
  http://www2.econ.univpm.it/servizi/hpp/lucchetti
--------------------------------------------------

Reply via email to