[ 
https://issues.apache.org/jira/browse/SYSTEMML-1419?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15930748#comment-15930748
 ] 

Deron Eriksson commented on SYSTEMML-1419:
------------------------------------------

Example from GLM.dml:
{code}
    if (ncol_y == 1 & dist_type == 1 & link_type == 1)
    { # POWER DISTRIBUTION
        is_supported = 1;
        if (var_power == 0 & link_power == -1.0) {print("Gaussian.inverse");    
  } else {
        if (var_power == 0 & link_power ==    0) {print("Gaussian.log");        
  } else {
        if (var_power == 0 & link_power ==  0.5) {print("Gaussian.sqrt");       
  } else {
        if (var_power == 0 & link_power ==  1.0) {print("Gaussian.id");         
  } else {
        if (var_power == 0                     ) 
{print("Gaussian.power_nonlog"); } else {
        if (var_power == 1.0 & link_power == -1.0) {print("Poisson.inverse");   
    } else {
        if (var_power == 1.0 & link_power ==    0) {print("Poisson.log");       
    } else {
        if (var_power == 1.0 & link_power ==  0.5) {print("Poisson.sqrt");      
    } else {
        if (var_power == 1.0 & link_power ==  1.0) {print("Poisson.id");        
    } else {
        if (var_power == 1.0                     ) 
{print("Poisson.power_nonlog");  } else {
        if (var_power == 2.0 & link_power == -1.0) {print("Gamma.inverse");     
    } else {
        if (var_power == 2.0 & link_power ==    0) {print("Gamma.log");         
    } else {
        if (var_power == 2.0 & link_power ==  0.5) {print("Gamma.sqrt");        
    } else {
        if (var_power == 2.0 & link_power ==  1.0) {print("Gamma.id");          
    } else {
        if (var_power == 2.0                     ) 
{print("Gamma.power_nonlog");    } else {
        if (var_power == 3.0 & link_power == -2.0) 
{print("InvGaussian.1/mu^2");    } else {
        if (var_power == 3.0 & link_power == -1.0) 
{print("InvGaussian.inverse");   } else {
        if (var_power == 3.0 & link_power ==    0) {print("InvGaussian.log");   
    } else {
        if (var_power == 3.0 & link_power ==  0.5) {print("InvGaussian.sqrt");  
    } else {
        if (var_power == 3.0 & link_power ==  1.0) {print("InvGaussian.id");    
    } else {
        if (var_power == 3.0                     ) 
{print("InvGaussian.power_nonlog");}else{
        if (                   link_power ==    0) {print("PowerDist.log");     
    } else {
                                                    
print("PowerDist.power_nonlog");
    }   }}}}} }}}}} }}}}} }}}}} }}
{code}


> Cleanup nested if-elses in main algorithms
> ------------------------------------------
>
>                 Key: SYSTEMML-1419
>                 URL: https://issues.apache.org/jira/browse/SYSTEMML-1419
>             Project: SystemML
>          Issue Type: Improvement
>          Components: Algorithms
>            Reporter: Deron Eriksson
>            Priority: Minor
>
> Some of the main algorithms (such as GLM-predict.dml) contain nested 
> if-elses. Since DML now features "if () { } else if () { } ... else { }", the 
> nested if-elses can be cleaned up to use "else if".



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

Reply via email to