You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@systemml.apache.org by "Deron Eriksson (JIRA)" <ji...@apache.org> on 2017/03/17 21:19:41 UTC
[jira] [Commented] (SYSTEMML-1419) Cleanup nested if-elses in main
algorithms
[ 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)