octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: undefined compound chaining behavior


From: Hossein Sajjadi
Subject: Re: undefined compound chaining behavior
Date: Fri, 13 Jun 2014 15:39:02 +0330

>
> You could try grep, and since you are saying the behaviour occurs, I
> think it's up to you to show where.
>
>>  From behavior of octave we can conclude about structure behind the +=
>> operator.
>> It is actually the same operator as c++ or is a function  such as :
>
>
> Demonstratably not true, e.g.
>
> a = [ 1, 2, 3]
>
> a += 1;
>
> is clearly different from the C++ operator which does not operate on
> matrices.
>
>> If we assume that the += operator is the so mentioned function, again
>> undefined behavior takes place.
>>
>> ====
>> -Hossein
>>
>
> It is this assumption which is wrong.
>
> Richard
>
> --
> The University of Edinburgh is a charitable body, registered in
> Scotland, with registration number SC005336.
>
>


I brought many things from argument,reasoning,c++ source code, bison
grammar file and so .
I is better to make a fair judgment.I think one should heard me, heard me.
Octave is built with the aid of the Bison parser utility.
>From Bison example we became familiar with the mechanism of the parser
and saw that the operators in both languages are the same.
In the case of functions this is an example from mfcalc:

the grammar
FNCT '(' exp ')'   { $$ = (*($1->value.fnctptr))($3);

is translated to c source:
{ (*(double*)(&yyval)) =
(*((*(symrec**)(&yyvsp[-3]))->value.fnctptr))((*(double*)(&yyvsp[-1])));
}

so , You can generalize this to other conditions such as if parameter
of the function be an array, or multi parameter function



reply via email to

[Prev in Thread] Current Thread [Next in Thread]