[ 
https://issues.apache.org/jira/browse/SYSTEMML-1357?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Matthias Boehm updated SYSTEMML-1357:
-------------------------------------
    Description: 
Right now our value type promotion semantics are inconsistent across matrices 
and scalars and across different types of binary scalar-scalar operations 
(relational, arithmetic, builtin). This task aims to fix this and establish the 
following value type promotion semantics:

* if any input type is string, both inputs are interpreted as strings
* else if any input type is double, both inputs are interpreted as doubles 
* else if any input type is long, both inputs are interpreted as long
* else if any input type is boolean, both inputs are interpreted as boolean

Furthermore, (1) boolean-strings casts are handled in a language-dpendent 
manner (for concatenation with +), and (2) boolean true/false is interpreted as 
1/0 double/long (consistent with matrix relational operations).


Beside consistent semantics, this change also allows us to cleanup all value 
functions, which unnecessarily implement, for example, combinations of 
double-long which internally apply these promotion rules.

  was:
Right now our value type promotion semantics are inconsistent across matrices 
and scalars and across different types of binary scalar-scalar operations 
(relational, arithmetic, builtin). This task aims to fix this and establish the 
following value type promotion semantics:

* if any input type is string, both inputs are interpreted as strings
* else if any input type is double, both inputs are interpreted as doubles 
* else if any input type is long, both inputs are interpreted as long
* else if any input type is boolean, both inputs are interpreted as boolean

Furthermore, (1) boolean-strings casts are handled in a language-dpendent 
manner, and (2) boolean true/false is interpreted as 1/0 double/long 
(consistent with matrix relational operations).


Beside consistent semantics, this change also allows us to cleanup all value 
functions, which unnecessarily implement, for example, combinations of 
double-long which internally apply these promotion rules.


> Fix value type promotion semantics of all scalar-scalar operations
> ------------------------------------------------------------------
>
>                 Key: SYSTEMML-1357
>                 URL: https://issues.apache.org/jira/browse/SYSTEMML-1357
>             Project: SystemML
>          Issue Type: Bug
>            Reporter: Matthias Boehm
>
> Right now our value type promotion semantics are inconsistent across matrices 
> and scalars and across different types of binary scalar-scalar operations 
> (relational, arithmetic, builtin). This task aims to fix this and establish 
> the following value type promotion semantics:
> * if any input type is string, both inputs are interpreted as strings
> * else if any input type is double, both inputs are interpreted as doubles 
> * else if any input type is long, both inputs are interpreted as long
> * else if any input type is boolean, both inputs are interpreted as boolean
> Furthermore, (1) boolean-strings casts are handled in a language-dpendent 
> manner (for concatenation with +), and (2) boolean true/false is interpreted 
> as 1/0 double/long (consistent with matrix relational operations).
> Beside consistent semantics, this change also allows us to cleanup all value 
> functions, which unnecessarily implement, for example, combinations of 
> double-long which internally apply these promotion rules.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to