http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagDataDependentOperators.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagDataDependentOperators.java
 
b/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagDataDependentOperators.java
index f8d0a1b..67978cb 100644
--- 
a/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagDataDependentOperators.java
+++ 
b/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagDataDependentOperators.java
@@ -76,12 +76,12 @@ public class RewriteSplitDagDataDependentOperators extends 
StatementBlockRewrite
        {
                //DAG splits not required for forced single node
                if( DMLScript.rtplatform == RUNTIME_PLATFORM.SINGLE_NODE )
-                       return new ArrayList<StatementBlock>(Arrays.asList(sb));
+                       return new ArrayList<>(Arrays.asList(sb));
                
-               ArrayList<StatementBlock> ret = new ArrayList<StatementBlock>();
+               ArrayList<StatementBlock> ret = new ArrayList<>();
        
                //collect all unknown csv reads hops
-               ArrayList<Hop> cand = new ArrayList<Hop>();
+               ArrayList<Hop> cand = new ArrayList<>();
                collectDataDependentOperators( sb.get_hops(), cand );
                Hop.resetVisitStatus(sb.get_hops());
                
@@ -89,7 +89,7 @@ public class RewriteSplitDagDataDependentOperators extends 
StatementBlockRewrite
                if( !cand.isEmpty() )
                {
                        //collect child operators of candidates (to prevent 
rewrite anomalies)
-                       HashSet<Hop> candChilds = new HashSet<Hop>();
+                       HashSet<Hop> candChilds = new HashSet<>();
                        collectCandidateChildOperators( cand, candChilds );
                        
                        try
@@ -103,7 +103,7 @@ public class RewriteSplitDagDataDependentOperators extends 
StatementBlockRewrite
                                
                                //move data-dependent ops incl transient writes 
to new statement block
                                //(and replace original persistent read with 
transient read)
-                               ArrayList<Hop> sb1hops = new ArrayList<Hop>();  
                
+                               ArrayList<Hop> sb1hops = new ArrayList<>();
                                for( Hop c : cand )
                                {
                                        //if there are already transient writes 
use them and don't introduce artificial variables; 
@@ -128,12 +128,12 @@ public class RewriteSplitDagDataDependentOperators 
extends StatementBlockRewrite
                                                
                                                //create new transient read
                                                DataOp tread = new 
DataOp(varname, c.getDataType(), c.getValueType(),
-                                           DataOpTypes.TRANSIENTREAD, null, 
rlen, clen, nnz, update, brlen, bclen);
+                                                       
DataOpTypes.TRANSIENTREAD, null, rlen, clen, nnz, update, brlen, bclen);
                                                tread.setVisited();
                                                
HopRewriteUtils.copyLineNumbers(c, tread);
                                                
                                                //replace data-dependent 
operator with transient read
-                                               ArrayList<Hop> parents = new 
ArrayList<Hop>(c.getParent());
+                                               ArrayList<Hop> parents = new 
ArrayList<>(c.getParent());
                                                for( int i=0; i<parents.size(); 
i++ ) {
                                                        //prevent concurrent 
modification by index access
                                                        Hop parent = 
parents.get(i);
@@ -154,12 +154,12 @@ public class RewriteSplitDagDataDependentOperators 
extends StatementBlockRewrite
                                                
                                                //create new transient read
                                                DataOp tread = new 
DataOp(varname, c.getDataType(), c.getValueType(),
-                                           DataOpTypes.TRANSIENTREAD, null, 
rlen, clen, nnz, update, brlen, bclen);
+                                                       
DataOpTypes.TRANSIENTREAD, null, rlen, clen, nnz, update, brlen, bclen);
                                                tread.setVisited();
                                                
HopRewriteUtils.copyLineNumbers(c, tread);
                                                
                                                //replace data-dependent 
operator with transient read
-                                               ArrayList<Hop> parents = new 
ArrayList<Hop>(c.getParent());                                             
+                                               ArrayList<Hop> parents = new 
ArrayList<>(c.getParent());
                                                for( int i=0; i<parents.size(); 
i++ ) {
                                                        //prevent concurrent 
modification by index access
                                                        Hop parent = 
parents.get(i);
@@ -337,13 +337,13 @@ public class RewriteSplitDagDataDependentOperators 
extends StatementBlockRewrite
        private void handleReplicatedOperators( ArrayList<Hop> rootsSB1, 
ArrayList<Hop> rootsSB2, VariableSet sb1out, VariableSet sb2in )
        {
                //step 1: create probe set SB1
-               HashSet<Hop> probeSet = new HashSet<Hop>();
+               HashSet<Hop> probeSet = new HashSet<>();
                Hop.resetVisitStatus(rootsSB1);
                for( Hop h : rootsSB1 )
                        rAddHopsToProbeSet( h, probeSet );
                
                //step 2: probe SB2 operators top-down (collect cut candidates)
-               HashSet<Pair<Hop,Hop>> candSet = new HashSet<Pair<Hop,Hop>>();
+               HashSet<Pair<Hop,Hop>> candSet = new HashSet<>();
                Hop.resetVisitStatus(rootsSB2);
                for( Hop h : rootsSB2 )
                        rProbeAndAddHopsToCandidateSet(h, probeSet, candSet);
@@ -424,7 +424,7 @@ public class RewriteSplitDagDataDependentOperators extends 
StatementBlockRewrite
                                        rProbeAndAddHopsToCandidateSet(c, 
probeSet, candSet);
                                else
                                {
-                                       candSet.add(new Pair<Hop,Hop>(hop,c)); 
+                                       candSet.add(new Pair<>(hop,c)); 
                                }
                        }
                

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagUnknownCSVRead.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagUnknownCSVRead.java
 
b/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagUnknownCSVRead.java
index ef8d9dc..e9a6407 100644
--- 
a/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagUnknownCSVRead.java
+++ 
b/src/main/java/org/apache/sysml/hops/rewrite/RewriteSplitDagUnknownCSVRead.java
@@ -53,10 +53,10 @@ public class RewriteSplitDagUnknownCSVRead extends 
StatementBlockRewriteRule
                if( DMLScript.rtplatform == RUNTIME_PLATFORM.SINGLE_NODE )
                        return Arrays.asList(sb);
                
-               ArrayList<StatementBlock> ret = new ArrayList<StatementBlock>();
+               ArrayList<StatementBlock> ret = new ArrayList<>();
                
                //collect all unknown csv reads hops
-               ArrayList<Hop> cand = new ArrayList<Hop>();
+               ArrayList<Hop> cand = new ArrayList<>();
                collectCSVReadHopsUnknownSize( sb.get_hops(), cand );
                
                //split hop dag on demand
@@ -73,7 +73,7 @@ public class RewriteSplitDagUnknownCSVRead extends 
StatementBlockRewriteRule
                                
                                //move csv reads incl reblock to new statement 
block
                                //(and replace original persistent read with 
transient read)
-                               ArrayList<Hop> sb1hops = new ArrayList<Hop>();  
                
+                               ArrayList<Hop> sb1hops = new ArrayList<>();
                                for( Hop reblock : cand )
                                {
                                        long rlen = reblock.getDim1();
@@ -92,11 +92,11 @@ public class RewriteSplitDagUnknownCSVRead extends 
StatementBlockRewriteRule
                                        
                                        //create new transient read
                                        DataOp tread = new 
DataOp(reblock.getName(), reblock.getDataType(), reblock.getValueType(),
-                                   DataOpTypes.TRANSIENTREAD, null, rlen, 
clen, nnz, update, brlen, bclen);
+                                               DataOpTypes.TRANSIENTREAD, 
null, rlen, clen, nnz, update, brlen, bclen);
                                        
HopRewriteUtils.copyLineNumbers(reblock, tread);
                                        
                                        //replace reblock with transient read
-                                       ArrayList<Hop> parents = new 
ArrayList<Hop>(reblock.getParent());
+                                       ArrayList<Hop> parents = new 
ArrayList<>(reblock.getParent());
                                        for( int i=0; i<parents.size(); i++ ) {
                                                Hop parent = parents.get(i);
                                                
HopRewriteUtils.replaceChildReference(parent, reblock, tread);

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/Binary.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/Binary.java 
b/src/main/java/org/apache/sysml/lops/Binary.java
index d42cb3b..711fd9c 100644
--- a/src/main/java/org/apache/sysml/lops/Binary.java
+++ b/src/main/java/org/apache/sysml/lops/Binary.java
@@ -32,13 +32,12 @@ import org.apache.sysml.parser.Expression.*;
 
 public class Binary extends Lop 
 {
-       
        public enum OperationTypes {
                ADD, SUBTRACT, MULTIPLY, DIVIDE, MINUS1_MULTIPLY, MODULUS, 
INTDIV, MATMULT, 
                LESS_THAN, LESS_THAN_OR_EQUALS, GREATER_THAN, 
GREATER_THAN_OR_EQUALS, EQUALS, NOT_EQUALS,
                AND, OR, 
                MAX, MIN, POW, SOLVE, NOTSUPPORTED
-       };      
+       }
 
        private OperationTypes operation;
        private int numThreads = -1;

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/CombineBinary.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/CombineBinary.java 
b/src/main/java/org/apache/sysml/lops/CombineBinary.java
index f3c757e..8a13710 100644
--- a/src/main/java/org/apache/sysml/lops/CombineBinary.java
+++ b/src/main/java/org/apache/sysml/lops/CombineBinary.java
@@ -36,7 +36,7 @@ public class CombineBinary extends Lop
 {
 
        
-       public enum OperationTypes {PreSort, PreCentralMoment, 
PreCovUnweighted, PreGroupedAggUnweighted}; // 
(PreCovWeighted,PreGroupedAggWeighted) will be CombineTertiary    
+       public enum OperationTypes {PreSort, PreCentralMoment, 
PreCovUnweighted, PreGroupedAggUnweighted}
        OperationTypes operation;
 
        /**
@@ -109,7 +109,7 @@ public class CombineBinary extends Lop
        public static CombineBinary constructCombineLop(OperationTypes op, Lop 
input1, 
                        Lop input2, DataType dt, ValueType vt) {
                
-               HashSet<Lop> set1 = new HashSet<Lop>();
+               HashSet<Lop> set1 = new HashSet<>();
                set1.addAll(input1.getOutputs());
                
                // find intersection of input1.getOutputs() and 
input2.getOutputs();

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/CombineTernary.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/CombineTernary.java 
b/src/main/java/org/apache/sysml/lops/CombineTernary.java
index 9200f5c..d49e099 100644
--- a/src/main/java/org/apache/sysml/lops/CombineTernary.java
+++ b/src/main/java/org/apache/sysml/lops/CombineTernary.java
@@ -37,7 +37,7 @@ public class CombineTernary extends Lop
        
        public enum OperationTypes {
                PreCovWeighted
-       };
+       }
 
        OperationTypes operation;
 
@@ -97,7 +97,7 @@ public class CombineTernary extends Lop
 
        public static CombineTernary constructCombineLop( OperationTypes op, 
Lop input1, Lop input2, Lop input3, DataType dt, ValueType vt) {
 
-               HashSet<Lop> set1 = new HashSet<Lop>();
+               HashSet<Lop> set1 = new HashSet<>();
                set1.addAll(input1.getOutputs());
 
                // find intersection of input1.getOutputs() and 
input2.getOutputs()

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/CombineUnary.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/CombineUnary.java 
b/src/main/java/org/apache/sysml/lops/CombineUnary.java
index 4882e3c..a3e92e7 100644
--- a/src/main/java/org/apache/sysml/lops/CombineUnary.java
+++ b/src/main/java/org/apache/sysml/lops/CombineUnary.java
@@ -80,7 +80,7 @@ public class CombineUnary extends Lop
        public static CombineUnary constructCombineLop(Lop input1, 
                        DataType dt, ValueType vt) {
                
-               HashSet<Lop> set1 = new HashSet<Lop>();
+               HashSet<Lop> set1 = new HashSet<>();
                set1.addAll(input1.getOutputs());
                        
                for (Lop lop  : set1) {

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/ConvolutionTransform.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/ConvolutionTransform.java 
b/src/main/java/org/apache/sysml/lops/ConvolutionTransform.java
index 121112b..947b019 100644
--- a/src/main/java/org/apache/sysml/lops/ConvolutionTransform.java
+++ b/src/main/java/org/apache/sysml/lops/ConvolutionTransform.java
@@ -33,7 +33,7 @@ public class ConvolutionTransform extends Lop
                MAX_POOLING, MAX_POOLING_BACKWARD, RELU_MAX_POOLING, 
RELU_BACKWARD, RELU_MAX_POOLING_BACKWARD,
                DIRECT_CONV2D, DIRECT_CONV2D_BACKWARD_FILTER, 
DIRECT_CONV2D_BACKWARD_DATA,
                BIAS_ADD, DIRECT_CONV2D_BIAS_ADD, BIAS_MULTIPLY
-       };
+       }
        
        private OperationTypes operation = null;
        private int numThreads = -1;

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/Data.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/Data.java 
b/src/main/java/org/apache/sysml/lops/Data.java
index 3d5db8a..56601be 100644
--- a/src/main/java/org/apache/sysml/lops/Data.java
+++ b/src/main/java/org/apache/sysml/lops/Data.java
@@ -40,7 +40,7 @@ import org.apache.sysml.parser.Expression.ValueType;
 public class Data extends Lop  
 {
        
-       public enum OperationTypes {READ,WRITE};
+       public enum OperationTypes {READ,WRITE}
        
        FileFormatTypes formatType = FileFormatTypes.BINARY;
        OperationTypes operation;

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/FunctionCallCP.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/FunctionCallCP.java 
b/src/main/java/org/apache/sysml/lops/FunctionCallCP.java
index 0fb997a..3490b8d 100644
--- a/src/main/java/org/apache/sysml/lops/FunctionCallCP.java
+++ b/src/main/java/org/apache/sysml/lops/FunctionCallCP.java
@@ -44,7 +44,7 @@ public class FunctionCallCP extends Lop
        {
                this(inputs, fnamespace, fname, outputs, et);
                if(outputHops != null) {
-                       _outputLops = new ArrayList<Lop>();
+                       _outputLops = new ArrayList<>();
                        for(Hop h : outputHops)
                                _outputLops.add( h.constructLops() );
                }

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/Group.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/Group.java 
b/src/main/java/org/apache/sysml/lops/Group.java
index 7fe238b..1bedd7e 100644
--- a/src/main/java/org/apache/sysml/lops/Group.java
+++ b/src/main/java/org/apache/sysml/lops/Group.java
@@ -30,7 +30,7 @@ import org.apache.sysml.parser.Expression.*;
 
 public class Group extends Lop  
 {
-       public enum OperationTypes {Sort};
+       public enum OperationTypes {Sort}
        
        OperationTypes operation;
        

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/Lop.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/Lop.java 
b/src/main/java/org/apache/sysml/lops/Lop.java
index 238e329..48554d9 100644
--- a/src/main/java/org/apache/sysml/lops/Lop.java
+++ b/src/main/java/org/apache/sysml/lops/Lop.java
@@ -61,14 +61,14 @@ public abstract class Lop
                SpoofFused,                                         //CP/SP 
generated fused operator
                /** CP operation on a variable number of operands */
                MULTIPLE_CP
-       };
+       }
 
        /**
         * Lop types
         */
        public enum SimpleInstType {
                Scalar
-       };
+       }
 
        public enum VisitStatus {
                DONE, NOTVISITED
@@ -138,8 +138,8 @@ public abstract class Lop
                type = t;
                _dataType = dt; // data type of the output produced from this 
LOP
                _valueType = vt; // value type of the output produced from this 
LOP
-               inputs = new ArrayList<Lop>();
-               outputs = new ArrayList<Lop>();
+               inputs = new ArrayList<>();
+               outputs = new ArrayList<>();
                outParams = new OutputParameters();
                lps = new LopProperties();
        }

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/LopProperties.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/LopProperties.java 
b/src/main/java/org/apache/sysml/lops/LopProperties.java
index 5720487..24b43dc 100644
--- a/src/main/java/org/apache/sysml/lops/LopProperties.java
+++ b/src/main/java/org/apache/sysml/lops/LopProperties.java
@@ -39,8 +39,8 @@ public class LopProperties
         * </ul>
         *
         */
-       public enum ExecType { CP, CP_FILE, MR, SPARK, GPU, INVALID };
-       public enum ExecLocation {INVALID, RecordReader, Map, MapOrReduce, 
MapAndReduce, Reduce, Data, ControlProgram };
+       public enum ExecType { CP, CP_FILE, MR, SPARK, GPU, INVALID }
+       public enum ExecLocation {INVALID, RecordReader, Map, MapOrReduce, 
MapAndReduce, Reduce, Data, ControlProgram }
 
        // static variable to assign an unique ID to every lop that is created
        private static IDSequence UniqueLopID = null;

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/MultipleCP.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/MultipleCP.java 
b/src/main/java/org/apache/sysml/lops/MultipleCP.java
index 4e2b5a8..2560861 100644
--- a/src/main/java/org/apache/sysml/lops/MultipleCP.java
+++ b/src/main/java/org/apache/sysml/lops/MultipleCP.java
@@ -33,7 +33,7 @@ public class MultipleCP extends Lop {
 
        public enum OperationType {
                PRINTF
-       };
+       }
 
        OperationType operationType;
 

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/OutputParameters.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/OutputParameters.java 
b/src/main/java/org/apache/sysml/lops/OutputParameters.java
index 86866c1..bdabdad 100644
--- a/src/main/java/org/apache/sysml/lops/OutputParameters.java
+++ b/src/main/java/org/apache/sysml/lops/OutputParameters.java
@@ -29,10 +29,9 @@ import 
org.apache.sysml.runtime.controlprogram.caching.MatrixObject.UpdateType;
 
 public class OutputParameters 
 {
-       
        public enum Format {
                TEXT, BINARY, MM, CSV
-       };
+       }
 
        private boolean _blocked = true;
        private long _num_rows = -1;

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/ParameterizedBuiltin.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/ParameterizedBuiltin.java 
b/src/main/java/org/apache/sysml/lops/ParameterizedBuiltin.java
index 81b8f1f..6df8308 100644
--- a/src/main/java/org/apache/sysml/lops/ParameterizedBuiltin.java
+++ b/src/main/java/org/apache/sysml/lops/ParameterizedBuiltin.java
@@ -40,7 +40,7 @@ public class ParameterizedBuiltin extends Lop
                CDF, INVCDF, RMEMPTY, REPLACE, REXPAND,
                TRANSFORMAPPLY, TRANSFORMDECODE, TRANSFORMCOLMAP, TRANSFORMMETA,
                TOSTRING
-       };
+       }
        
        private OperationTypes _operation;
        private HashMap<String, Lop> _inputParams;

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/PartialAggregate.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/PartialAggregate.java 
b/src/main/java/org/apache/sysml/lops/PartialAggregate.java
index cf7826e..0517ca5 100644
--- a/src/main/java/org/apache/sysml/lops/PartialAggregate.java
+++ b/src/main/java/org/apache/sysml/lops/PartialAggregate.java
@@ -40,7 +40,7 @@ public class PartialAggregate extends Lop
                RowCol, 
                Row, 
                Col
-       };
+       }
 
        public enum CorrectionLocationType { 
                NONE, 

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/PickByCount.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/PickByCount.java 
b/src/main/java/org/apache/sysml/lops/PickByCount.java
index 9ad45b9..513724b 100644
--- a/src/main/java/org/apache/sysml/lops/PickByCount.java
+++ b/src/main/java/org/apache/sysml/lops/PickByCount.java
@@ -36,7 +36,7 @@ public class PickByCount extends Lop
                RANGEPICK, 
                IQM, 
                MEDIAN
-       };      
+       }
        
        private OperationTypes operation;
        private boolean inMemoryInput = false;

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/SortKeys.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/SortKeys.java 
b/src/main/java/org/apache/sysml/lops/SortKeys.java
index 6344eda..b29d7b8 100644
--- a/src/main/java/org/apache/sysml/lops/SortKeys.java
+++ b/src/main/java/org/apache/sysml/lops/SortKeys.java
@@ -36,7 +36,7 @@ public class SortKeys extends Lop
                WithWeights, 
                WithoutWeights,
                Indexes,
-       };
+       }
        
        private OperationTypes operation;
        private boolean descending = false;
@@ -160,7 +160,7 @@ public class SortKeys extends Lop
        public static SortKeys constructSortByValueLop(Lop input1, Lop input2, 
OperationTypes op, 
                        DataType dt, ValueType vt, ExecType et) {
                
-               HashSet<Lop> set1 = new HashSet<Lop>();
+               HashSet<Lop> set1 = new HashSet<>();
                set1.addAll(input1.getOutputs());
                // find intersection of input1.getOutputs() and 
input2.getOutputs();
                set1.retainAll(input2.getOutputs());

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/Ternary.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/Ternary.java 
b/src/main/java/org/apache/sysml/lops/Ternary.java
index eee9574..ba3f884 100644
--- a/src/main/java/org/apache/sysml/lops/Ternary.java
+++ b/src/main/java/org/apache/sysml/lops/Ternary.java
@@ -34,7 +34,6 @@ import org.apache.sysml.parser.Expression.*;
 
 public class Ternary extends Lop 
 {
-       
        private boolean _ignoreZeros = false;
        
        public enum OperationTypes { 
@@ -43,7 +42,8 @@ public class Ternary extends Lop
                CTABLE_TRANSFORM_HISTOGRAM, 
                CTABLE_TRANSFORM_WEIGHTED_HISTOGRAM, 
                CTABLE_EXPAND_SCALAR_WEIGHT, 
-               INVALID };      
+               INVALID 
+       }
        
        OperationTypes operation;
        

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/Transform.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/Transform.java 
b/src/main/java/org/apache/sysml/lops/Transform.java
index d677f6b..919d16c 100644
--- a/src/main/java/org/apache/sysml/lops/Transform.java
+++ b/src/main/java/org/apache/sysml/lops/Transform.java
@@ -38,7 +38,7 @@ public class Transform extends Lop
                Reshape,
                Sort,
                Rev
-       };
+       }
        
        private OperationTypes operation = null;
        private boolean _bSortIndInMem = false;

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/Unary.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/Unary.java 
b/src/main/java/org/apache/sysml/lops/Unary.java
index 36f186a..d82819c 100644
--- a/src/main/java/org/apache/sysml/lops/Unary.java
+++ b/src/main/java/org/apache/sysml/lops/Unary.java
@@ -45,7 +45,7 @@ public class Unary extends Lop
                SPROP, SIGMOID, SELP, SUBTRACT_NZ, LOG_NZ,
                CAST_AS_MATRIX, CAST_AS_FRAME,
                NOTSUPPORTED
-       };
+       }
 
        private OperationTypes operation;
        private Lop valInput;

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/UnaryCP.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/UnaryCP.java 
b/src/main/java/org/apache/sysml/lops/UnaryCP.java
index c83baf4..1ccafe7 100644
--- a/src/main/java/org/apache/sysml/lops/UnaryCP.java
+++ b/src/main/java/org/apache/sysml/lops/UnaryCP.java
@@ -37,7 +37,7 @@ public class UnaryCP extends Lop
                NOT, ABS, SIN, COS, TAN, ASIN, ACOS, ATAN, SQRT, LOG, EXP, 
SINH, COSH, TANH,
                CAST_AS_SCALAR, CAST_AS_MATRIX, CAST_AS_FRAME, CAST_AS_DOUBLE, 
CAST_AS_INT, CAST_AS_BOOLEAN, 
                PRINT, NROW, NCOL, LENGTH, ROUND, STOP, CEIL, FLOOR, CUMSUM
-       };
+       }
        
        public static final String CAST_AS_SCALAR_OPCODE = "castdts";
        public static final String CAST_AS_MATRIX_OPCODE = "castdtm";

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/lops/compile/Dag.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/lops/compile/Dag.java 
b/src/main/java/org/apache/sysml/lops/compile/Dag.java
index 8673fc9..c09d1c9 100644
--- a/src/main/java/org/apache/sysml/lops/compile/Dag.java
+++ b/src/main/java/org/apache/sysml/lops/compile/Dag.java
@@ -138,9 +138,9 @@ public class Dag<N extends Lop>
                        fileName = null;
                        varName = null;
                        outInfo = null;
-                       preInstructions = new ArrayList<Instruction>(); 
-                       postInstructions = new ArrayList<Instruction>(); 
-                       lastInstructions = new ArrayList<Instruction>();
+                       preInstructions = new ArrayList<>(); 
+                       postInstructions = new ArrayList<>(); 
+                       lastInstructions = new ArrayList<>();
                }
                
                public String getFileName() {
@@ -184,8 +184,8 @@ public class Dag<N extends Lop>
        public Dag() 
        {
                //allocate internal data structures
-               nodes = new ArrayList<Lop>();
-               IDMap = new HashMap<Long, Integer>();
+               nodes = new ArrayList<>();
+               IDMap = new HashMap<>();
 
                // get number of reducers from dml config
                total_reducers = ConfigurationManager.getNumReducers();
@@ -254,7 +254,7 @@ public class Dag<N extends Lop>
                }
                
                // hold all nodes in a vector (needed for ordering)
-               ArrayList<Lop> node_v = new ArrayList<Lop>();
+               ArrayList<Lop> node_v = new ArrayList<>();
                node_v.addAll(nodes);
                
                /*
@@ -286,12 +286,12 @@ public class Dag<N extends Lop>
                        LOG.trace("In delete updated variables");
 
                // CANDIDATE list of variables which could have been updated in 
this statement block 
-               HashMap<String, Lop> labelNodeMapping = new HashMap<String, 
Lop>();
+               HashMap<String, Lop> labelNodeMapping = new HashMap<>();
                
                // ACTUAL list of variables whose value is updated, AND the old 
value of the variable 
                // is no longer accessible/used.
-               HashSet<String> updatedLabels = new HashSet<String>();
-               HashMap<String, Lop> updatedLabelsLineNum =  new 
HashMap<String, Lop>();
+               HashSet<String> updatedLabels = new HashSet<>();
+               HashMap<String, Lop> updatedLabelsLineNum =  new HashMap<>();
                
                // first capture all transient read variables
                for ( Lop node : nodeV ) {
@@ -377,7 +377,7 @@ public class Dag<N extends Lop>
        }
 
        private static ArrayList<ArrayList<Lop>> createNodeVectors(int size) {
-               ArrayList<ArrayList<Lop>> arr = new ArrayList<ArrayList<Lop>>();
+               ArrayList<ArrayList<Lop>> arr = new ArrayList<>();
 
                // for each job type, we need to create a vector.
                // additionally, create another vector for execNodes
@@ -552,7 +552,7 @@ public class Dag<N extends Lop>
                 * If the input of a MMCJ/MMRJ job (must have executed in a 
Mapper) is used
                 * by multiple lops then we should mark it as not-finished.
                 */
-               ArrayList<Lop> nodesWithUnfinishedOutputs = new 
ArrayList<Lop>();
+               ArrayList<Lop> nodesWithUnfinishedOutputs = new ArrayList<>();
                int[] jobIndices = {JobType.MMCJ.getId()};
                Lop.Type[] lopTypes = { Lop.Type.MMCJ};
                
@@ -786,21 +786,21 @@ public class Dag<N extends Lop>
                        LOG.trace("Grouping DAG ============");
 
                // nodes to be executed in current iteration
-               ArrayList<Lop> execNodes = new ArrayList<Lop>();
+               ArrayList<Lop> execNodes = new ArrayList<>();
                // nodes that have already been processed
-               ArrayList<Lop> finishedNodes = new ArrayList<Lop>();
+               ArrayList<Lop> finishedNodes = new ArrayList<>();
                // nodes that are queued for the following iteration
-               ArrayList<Lop> queuedNodes = new ArrayList<Lop>();
+               ArrayList<Lop> queuedNodes = new ArrayList<>();
 
                ArrayList<ArrayList<Lop>> jobNodes = 
createNodeVectors(JobType.getNumJobTypes());
                
                // list of instructions
-               ArrayList<Instruction> inst = new ArrayList<Instruction>();
+               ArrayList<Instruction> inst = new ArrayList<>();
 
                //ArrayList<Instruction> preWriteDeleteInst = new 
ArrayList<Instruction>();
-               ArrayList<Instruction> writeInst = new ArrayList<Instruction>();
-               ArrayList<Instruction> deleteInst = new 
ArrayList<Instruction>();
-               ArrayList<Instruction> endOfBlockInst = new 
ArrayList<Instruction>();
+               ArrayList<Instruction> writeInst = new ArrayList<>();
+               ArrayList<Instruction> deleteInst = new ArrayList<>();
+               ArrayList<Instruction> endOfBlockInst = new ArrayList<>();
 
                // remove files for transient reads that are updated.
                deleteUpdatedTransientReadVariables(sb, node_v, writeInst);
@@ -1305,11 +1305,11 @@ public class Dag<N extends Lop>
                        ArrayList<Instruction> inst, ArrayList<Instruction> 
writeInst, ArrayList<Instruction> deleteInst) throws LopsException, 
DMLRuntimeException {
 
                // nodes to be deleted from execnodes
-               ArrayList<Lop> markedNodes = new ArrayList<Lop>();
+               ArrayList<Lop> markedNodes = new ArrayList<>();
 
                // variable names to be deleted
-               ArrayList<String> var_deletions = new ArrayList<String>();
-               HashMap<String, Lop> var_deletionsLineNum =  new 
HashMap<String, Lop>();
+               ArrayList<String> var_deletions = new ArrayList<>();
+               HashMap<String, Lop> var_deletionsLineNum =  new HashMap<>();
                
                boolean doRmVar = false;
 
@@ -1640,7 +1640,7 @@ public class Dag<N extends Lop>
                // Evaluate each lop in <code>execNodes</code> for removal.
                // Add lops to be removed to <code>markedNodes</code>.
                
-               ArrayList<Lop> markedNodes = new ArrayList<Lop>();
+               ArrayList<Lop> markedNodes = new ArrayList<>();
                for (Lop tmpNode : execNodes ) {
 
                        if (LOG.isTraceEnabled()) {
@@ -2015,7 +2015,7 @@ public class Dag<N extends Lop>
        private ArrayList<ArrayList<Lop>> 
splitGMRNodesByRecordReader(ArrayList<Lop> gmrnodes) 
        {
                // obtain the list of record reader nodes
-               ArrayList<Lop> rrnodes = new ArrayList<Lop>();
+               ArrayList<Lop> rrnodes = new ArrayList<>();
                for (Lop gmrnode : gmrnodes ) {
                        if (gmrnode.getExecLocation() == 
ExecLocation.RecordReader)
                                rrnodes.add(gmrnode);
@@ -2080,7 +2080,7 @@ public class Dag<N extends Lop>
        {
                printJobNodes(jobNodes);
                
-               ArrayList<Instruction> rmvarinst = new ArrayList<Instruction>();
+               ArrayList<Instruction> rmvarinst = new ArrayList<>();
                for (JobType jt : JobType.values()) { 
                        
                        // do nothing, if jt = INVALID or ANY
@@ -2108,7 +2108,7 @@ public class Dag<N extends Lop>
                                        // We should split the nodes so that a 
separate job is produced for each shuffle instruction.
                                        Lop.Type splittingLopType = 
jt.getShuffleLopType();
                                        
-                                       ArrayList<Lop> nodesForASingleJob = new 
ArrayList<Lop>();
+                                       ArrayList<Lop> nodesForASingleJob = new 
ArrayList<>();
                                        for (int i = 0; i < 
jobNodes.get(index).size(); i++) {
                                                if 
(jobNodes.get(index).get(i).getType() == splittingLopType) {
                                                        
nodesForASingleJob.clear();
@@ -2669,36 +2669,36 @@ public class Dag<N extends Lop>
                        ArrayList<Instruction> inst, ArrayList<Instruction> 
writeinst, ArrayList<Instruction> deleteinst, ArrayList<Instruction> rmvarinst, 
                        JobType jt) throws LopsException, DMLRuntimeException
        {
-               ArrayList<Byte> resultIndices = new ArrayList<Byte>();
-               ArrayList<String> inputs = new ArrayList<String>();
-               ArrayList<String> outputs = new ArrayList<String>();
-               ArrayList<InputInfo> inputInfos = new ArrayList<InputInfo>();
-               ArrayList<OutputInfo> outputInfos = new ArrayList<OutputInfo>();
-               ArrayList<Long> numRows = new ArrayList<Long>();
-               ArrayList<Long> numCols = new ArrayList<Long>();
-               ArrayList<Long> numRowsPerBlock = new ArrayList<Long>();
-               ArrayList<Long> numColsPerBlock = new ArrayList<Long>();
-               ArrayList<String> mapperInstructions = new ArrayList<String>();
-               ArrayList<String> randInstructions = new ArrayList<String>();
-               ArrayList<String> recordReaderInstructions = new 
ArrayList<String>();
+               ArrayList<Byte> resultIndices = new ArrayList<>();
+               ArrayList<String> inputs = new ArrayList<>();
+               ArrayList<String> outputs = new ArrayList<>();
+               ArrayList<InputInfo> inputInfos = new ArrayList<>();
+               ArrayList<OutputInfo> outputInfos = new ArrayList<>();
+               ArrayList<Long> numRows = new ArrayList<>();
+               ArrayList<Long> numCols = new ArrayList<>();
+               ArrayList<Long> numRowsPerBlock = new ArrayList<>();
+               ArrayList<Long> numColsPerBlock = new ArrayList<>();
+               ArrayList<String> mapperInstructions = new ArrayList<>();
+               ArrayList<String> randInstructions = new ArrayList<>();
+               ArrayList<String> recordReaderInstructions = new ArrayList<>();
                int numReducers = 0;
                int replication = 1;
-               ArrayList<String> inputLabels = new ArrayList<String>();
-               ArrayList<String> outputLabels = new ArrayList<String>();
-               ArrayList<Instruction> renameInstructions = new 
ArrayList<Instruction>();
-               ArrayList<Instruction> variableInstructions = new 
ArrayList<Instruction>();
-               ArrayList<Instruction> postInstructions = new 
ArrayList<Instruction>();
+               ArrayList<String> inputLabels = new ArrayList<>();
+               ArrayList<String> outputLabels = new ArrayList<>();
+               ArrayList<Instruction> renameInstructions = new ArrayList<>();
+               ArrayList<Instruction> variableInstructions = new ArrayList<>();
+               ArrayList<Instruction> postInstructions = new ArrayList<>();
                ArrayList<Integer> MRJobLineNumbers = null;
                if(DMLScript.ENABLE_DEBUG_MODE) {
-                       MRJobLineNumbers = new ArrayList<Integer>();
+                       MRJobLineNumbers = new ArrayList<>();
                }
                
-               ArrayList<Lop> inputLops = new ArrayList<Lop>();
+               ArrayList<Lop> inputLops = new ArrayList<>();
                
                boolean cellModeOverride = false;
                
                /* Find the nodes that produce an output */
-               ArrayList<Lop> rootNodes = new ArrayList<Lop>();
+               ArrayList<Lop> rootNodes = new ArrayList<>();
                getOutputNodes(execNodes, rootNodes, jt);
                if( LOG.isTraceEnabled() )
                        LOG.trace("# of root nodes = " + rootNodes.size());
@@ -2706,7 +2706,7 @@ public class Dag<N extends Lop>
                
                /* Remove transient writes that are simple copy of transient 
reads */
                if (jt == JobType.GMR || jt == JobType.GMRCELL) {
-                       ArrayList<Lop> markedNodes = new ArrayList<Lop>();
+                       ArrayList<Lop> markedNodes = new ArrayList<>();
                        // only keep data nodes that are results of some 
computation.
                        for ( Lop rnode : rootNodes ) {
                                if (rnode.getExecLocation() == ExecLocation.Data
@@ -2731,7 +2731,7 @@ public class Dag<N extends Lop>
                }
                
                // structure that maps node to their indices that will be used 
in the instructions
-               HashMap<Lop, Integer> nodeIndexMapping = new HashMap<Lop, 
Integer>();
+               HashMap<Lop, Integer> nodeIndexMapping = new HashMap<>();
                
                /* Determine all input data files */
                
@@ -2799,9 +2799,9 @@ public class Dag<N extends Lop>
 
                /* Get Shuffle and Reducer Instructions */
                
-               ArrayList<String> shuffleInstructions = new ArrayList<String>();
-               ArrayList<String> aggInstructionsReducer = new 
ArrayList<String>();
-               ArrayList<String> otherInstructionsReducer = new 
ArrayList<String>();
+               ArrayList<String> shuffleInstructions = new ArrayList<>();
+               ArrayList<String> aggInstructionsReducer = new ArrayList<>();
+               ArrayList<String> otherInstructionsReducer = new ArrayList<>();
 
                for( Lop rn : rootNodes ) {
                        int resultIndex = getAggAndOtherInstructions(
@@ -2962,7 +2962,7 @@ public class Dag<N extends Lop>
                if (!execNodes.contains(node))
                        return ret_val;
 
-               ArrayList<Integer> inputIndices = new ArrayList<Integer>();
+               ArrayList<Integer> inputIndices = new ArrayList<>();
 
                // recurse
                // For WRITE, since the first element from input is the real 
input (the other elements
@@ -3216,7 +3216,7 @@ public class Dag<N extends Lop>
                if (!execNodes.contains(node))
                        return -1;
 
-               ArrayList<Integer> inputIndices = new ArrayList<Integer>();
+               ArrayList<Integer> inputIndices = new ArrayList<>();
                int max_input_index = -1;
                //N child_for_max_input_index = null;
 
@@ -3317,7 +3317,7 @@ public class Dag<N extends Lop>
                if (!execNodes.contains(node))
                        return -1;
 
-               ArrayList<Integer> inputIndices = new ArrayList<Integer>();
+               ArrayList<Integer> inputIndices = new ArrayList<>();
                int max_input_index = -1;
                // get mapper instructions
                for( Lop childNode : node.getInputs()) {
@@ -3844,7 +3844,7 @@ public class Dag<N extends Lop>
        private static ArrayList<Instruction> 
collapseAssignvarAndRmvarInstructions(ArrayList<Instruction> insts) 
                throws DMLRuntimeException 
        {
-               ArrayList<Instruction> ret = new ArrayList<Instruction>();
+               ArrayList<Instruction> ret = new ArrayList<>();
                Iterator<Instruction> iter = insts.iterator();
                while( iter.hasNext() ) {
                        Instruction inst = iter.next();
@@ -3874,8 +3874,8 @@ public class Dag<N extends Lop>
        private static ArrayList<Instruction> 
createPackedRmvarInstructions(ArrayList<Instruction> insts) 
                throws DMLRuntimeException 
        {
-               ArrayList<Instruction> ret = new ArrayList<Instruction>();
-               ArrayList<String> currRmVar = new ArrayList<String>();
+               ArrayList<Instruction> ret = new ArrayList<>();
+               ArrayList<String> currRmVar = new ArrayList<>();
                for( Instruction inst : insts ) {
                        if( inst instanceof VariableCPInstruction 
                                && 
((VariableCPInstruction)inst).isRemoveVariableNoFile() ) {

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/AssignmentStatement.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/AssignmentStatement.java 
b/src/main/java/org/apache/sysml/parser/AssignmentStatement.java
index 2df4ed0..3d12394 100644
--- a/src/main/java/org/apache/sysml/parser/AssignmentStatement.java
+++ b/src/main/java/org/apache/sysml/parser/AssignmentStatement.java
@@ -48,14 +48,14 @@ public class AssignmentStatement extends Statement
        }
 
        public AssignmentStatement(DataIdentifier di, Expression exp, ParseInfo 
parseInfo) {
-               _targetList = new ArrayList<DataIdentifier>();
+               _targetList = new ArrayList<>();
                _targetList.add(di);
                _source = exp;
                setParseInfo(parseInfo);
        }
 
        public AssignmentStatement(ParserRuleContext ctx, DataIdentifier di, 
Expression exp) throws LanguageException {
-               _targetList = new ArrayList<DataIdentifier>();
+               _targetList = new ArrayList<>();
                _targetList.add(di);
                _source = exp;
                setCtxValues(ctx);

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/BuiltinFunctionExpression.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/sysml/parser/BuiltinFunctionExpression.java 
b/src/main/java/org/apache/sysml/parser/BuiltinFunctionExpression.java
index d5fa65d..62ed9fb 100644
--- a/src/main/java/org/apache/sysml/parser/BuiltinFunctionExpression.java
+++ b/src/main/java/org/apache/sysml/parser/BuiltinFunctionExpression.java
@@ -246,7 +246,7 @@ public class BuiltinFunctionExpression extends 
DataIdentifier
        
        private ArrayList<ParameterExpression> 
orderConvolutionParams(ArrayList<ParameterExpression> paramExpression, 
                        int skip) throws LanguageException {
-               ArrayList<ParameterExpression> newParams = new 
ArrayList<ParameterExpression>();
+               ArrayList<ParameterExpression> newParams = new ArrayList<>();
 
                for(int i = 0; i < skip; i++)
                        newParams.add(paramExpression.get(i));
@@ -274,7 +274,7 @@ public class BuiltinFunctionExpression extends 
DataIdentifier
 
        private ArrayList<ParameterExpression> 
replaceListParams(ArrayList<ParameterExpression> paramExpression,
                        String inputVarName, String outputVarName, int 
startIndex) throws LanguageException {
-               ArrayList<ParameterExpression> newParamExpression = new 
ArrayList<ParameterExpression>();
+               ArrayList<ParameterExpression> newParamExpression = new 
ArrayList<>();
                int i = startIndex;
                int j = 1; // Assumption: sequential ordering pool_size1, 
pool_size2 
                for (ParameterExpression expr : paramExpression) {
@@ -291,7 +291,7 @@ public class BuiltinFunctionExpression extends 
DataIdentifier
 
        private ArrayList<ParameterExpression> 
expandListParams(ArrayList<ParameterExpression> paramExpression, 
                        HashSet<String> paramsToExpand) throws 
LanguageException {
-               ArrayList<ParameterExpression> newParamExpressions = new 
ArrayList<ParameterExpression>();
+               ArrayList<ParameterExpression> newParamExpressions = new 
ArrayList<>();
                for(ParameterExpression expr : paramExpression) {
                        if(paramsToExpand.contains(expr.getName())) {
                                if(expr.getExpr() instanceof ExpressionList) {
@@ -316,14 +316,14 @@ public class BuiltinFunctionExpression extends 
DataIdentifier
                try {
                        if(_opcode == BuiltinFunctionOp.CONV2D || _opcode == 
BuiltinFunctionOp.CONV2D_BACKWARD_FILTER 
                                        || _opcode == 
BuiltinFunctionOp.CONV2D_BACKWARD_DATA) {
-                               HashSet<String> expand = new HashSet<String>();
+                               HashSet<String> expand = new HashSet<>();
                                expand.add("input_shape"); 
expand.add("filter_shape"); expand.add("stride"); expand.add("padding");
                                paramExpression = 
expandListParams(paramExpression, expand);
                                paramExpression = 
orderConvolutionParams(paramExpression, 2);
                        }
                        else if(_opcode == BuiltinFunctionOp.MAX_POOL || 
                                        _opcode == 
BuiltinFunctionOp.MAX_POOL_BACKWARD) {
-                               HashSet<String> expand = new HashSet<String>();
+                               HashSet<String> expand = new HashSet<>();
                                expand.add("input_shape"); 
expand.add("pool_size"); expand.add("stride"); expand.add("padding");
                                paramExpression = 
expandListParams(paramExpression, expand);
                                paramExpression.add(new 
ParameterExpression("filter_shape1", new IntIdentifier(1, this)));

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/DMLProgram.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/DMLProgram.java 
b/src/main/java/org/apache/sysml/parser/DMLProgram.java
index 716da40..43be802 100644
--- a/src/main/java/org/apache/sysml/parser/DMLProgram.java
+++ b/src/main/java/org/apache/sysml/parser/DMLProgram.java
@@ -38,9 +38,9 @@ public class DMLProgram
        private static final Log LOG = 
LogFactory.getLog(DMLProgram.class.getName());
        
        public DMLProgram(){
-               _blocks = new ArrayList<StatementBlock>();
-               _functionBlocks = new HashMap<String,FunctionStatementBlock>();
-               _namespaces = new HashMap<String,DMLProgram>();
+               _blocks = new ArrayList<>();
+               _functionBlocks = new HashMap<>();
+               _namespaces = new HashMap<>();
        }
        
        public HashMap<String,DMLProgram> getNamespaces(){
@@ -97,7 +97,7 @@ public class DMLProgram
        public ArrayList<FunctionStatementBlock> getFunctionStatementBlocks() 
                throws LanguageException
        {
-               ArrayList<FunctionStatementBlock> ret = new 
ArrayList<FunctionStatementBlock>();
+               ArrayList<FunctionStatementBlock> ret = new ArrayList<>();
                
                for( DMLProgram nsProg : _namespaces.values() )
                        ret.addAll(nsProg._functionBlocks.values());

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/DMLTranslator.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/DMLTranslator.java 
b/src/main/java/org/apache/sysml/parser/DMLTranslator.java
index d669f73..d41943d 100644
--- a/src/main/java/org/apache/sysml/parser/DMLTranslator.java
+++ b/src/main/java/org/apache/sysml/parser/DMLTranslator.java
@@ -127,7 +127,7 @@ public class DMLTranslator
                        for (String fname :  
dmlp.getFunctionStatementBlocks(namespaceKey).keySet()) {
                                FunctionStatementBlock fblock = 
dmlp.getFunctionStatementBlock(namespaceKey,fname);
                        
-                               HashMap<String, ConstIdentifier> constVars = 
new HashMap<String, ConstIdentifier>();
+                               HashMap<String, ConstIdentifier> constVars = 
new HashMap<>();
                                VariableSet vs = new VariableSet();
                        
                                // add the input variables for the function to 
input variable list
@@ -152,7 +152,7 @@ public class DMLTranslator
                
                // handle regular blocks -- "main" program
                VariableSet vs = new VariableSet();
-               HashMap<String, ConstIdentifier> constVars = new 
HashMap<String, ConstIdentifier>();
+               HashMap<String, ConstIdentifier> constVars = new HashMap<>();
                for (int i = 0; i < dmlp.getNumStatementBlocks(); i++) {
                        StatementBlock sb = dmlp.getStatementBlock(i);
                        vs = sb.validate(dmlp, vs, constVars, fWriteRead);
@@ -163,11 +163,11 @@ public class DMLTranslator
                if( fWriteRead ) 
                {
                        //propagate size and datatypes into read
-                       prepareReadAfterWrite(dmlp, new HashMap<String, 
DataIdentifier>());
+                       prepareReadAfterWrite(dmlp, new HashMap<>());
                
                        //re-validate main program for datatype propagation
                        vs = new VariableSet();
-                       constVars = new HashMap<String, ConstIdentifier>();
+                       constVars = new HashMap<>();
                        for (int i = 0; i < dmlp.getNumStatementBlocks(); i++) {
                                StatementBlock sb = dmlp.getStatementBlock(i);
                                vs = sb.validate(dmlp, vs, constVars, 
fWriteRead);
@@ -431,7 +431,7 @@ public class DMLTranslator
                        if (sb.get_hops() == null)
                                sb.set_hops(new ArrayList<Hop>());
                        
-                       ArrayList<Lop> lops = new ArrayList<Lop>();
+                       ArrayList<Lop> lops = new ArrayList<>();
                        for (Hop hop : sb.get_hops()) {
                                lops.add(hop.constructLops());
                        }
@@ -492,11 +492,11 @@ public class DMLTranslator
                if (sb instanceof WhileStatementBlock){
                
                        // create DAG for loop predicates
-                       pred_dag = new Dag<Lop>();
+                       pred_dag = new Dag<>();
                        ((WhileStatementBlock) 
sb).get_predicateLops().addToDag(pred_dag);
                        
                        // create instructions for loop predicates
-                       pred_instruct = new ArrayList<Instruction>();
+                       pred_instruct = new ArrayList<>();
                        ArrayList<Instruction> pInst = pred_dag.getJobs(null, 
config);
                        for (Instruction i : pInst ) {
                                pred_instruct.add(i);
@@ -540,11 +540,11 @@ public class DMLTranslator
                else if (sb instanceof IfStatementBlock){
                
                        // create DAG for loop predicates
-                       pred_dag = new Dag<Lop>();
+                       pred_dag = new Dag<>();
                        ((IfStatementBlock) 
sb).get_predicateLops().addToDag(pred_dag);
                        
                        // create instructions for loop predicates
-                       pred_instruct = new ArrayList<Instruction>();
+                       pred_instruct = new ArrayList<>();
                        ArrayList<Instruction> pInst = pred_dag.getJobs(null, 
config);
                        for (Instruction i : pInst ) {
                                pred_instruct.add(i);
@@ -598,9 +598,9 @@ public class DMLTranslator
                        ForStatementBlock fsb = (ForStatementBlock) sb;
                        
                        // create DAGs for loop predicates 
-                       Dag<Lop> fromDag = new Dag<Lop>();
-                       Dag<Lop> toDag = new Dag<Lop>();
-                       Dag<Lop> incrementDag = new Dag<Lop>();
+                       Dag<Lop> fromDag = new Dag<>();
+                       Dag<Lop> toDag = new Dag<>();
+                       Dag<Lop> incrementDag = new Dag<>();
                        if( fsb.getFromHops()!=null )
                                fsb.getFromLops().addToDag(fromDag);
                        if( fsb.getToHops()!=null )
@@ -747,7 +747,7 @@ public class DMLTranslator
                        ProgramBlock rtpb = new ProgramBlock(prog);
                
                        // DAGs for Lops
-                       dag = new Dag<Lop>();
+                       dag = new Dag<>();
 
                        // check there are actually Lops in to process (loop 
stmt body will not have any)
                        if (sb.getLops() != null && !sb.getLops().isEmpty()){
@@ -1187,8 +1187,8 @@ public class DMLTranslator
                        return;
                }
                
-               HashMap<String, Hop> ids = new HashMap<String, Hop>();
-               ArrayList<Hop> output = new ArrayList<Hop>();
+               HashMap<String, Hop> ids = new HashMap<>();
+               ArrayList<Hop> output = new ArrayList<>();
 
                VariableSet liveIn      = sb.liveIn();
                VariableSet liveOut = sb.liveOut();
@@ -1197,7 +1197,7 @@ public class DMLTranslator
                VariableSet updatedLiveOut = new VariableSet();
 
                // handle liveout variables that are updated --> target 
identifiers for Assignment
-               HashMap<String, Integer> liveOutToTemp = new HashMap<String, 
Integer>();
+               HashMap<String, Integer> liveOutToTemp = new HashMap<>();
                for (int i = 0; i < sb.getNumStatements(); i++) {
                        Statement current = sb.getStatement(i);
                        
@@ -1408,10 +1408,10 @@ public class DMLTranslator
                                        if( target instanceof IndexedIdentifier 
) {
                                                String fkey = 
DMLProgram.constructFunctionKey(fci.getNamespace(),fci.getName());
                                                throw new 
LanguageException("Unsupported function call to '"+fkey+"' in left indexing 
expression. " +
-                                                                               
    "Please, assign the function output to a variable.");
+                                                               "Please, assign 
the function output to a variable.");
                                        }
                                        
-                                       ArrayList<Hop> finputs = new 
ArrayList<Hop>();
+                                       ArrayList<Hop> finputs = new 
ArrayList<>();
                                        for (ParameterExpression paramName : 
fci.getParamExprs()){
                                                Hop in = 
processExpression(paramName.getExpr(), null, ids);
                                                finputs.add(in);
@@ -1444,9 +1444,9 @@ public class DMLTranslator
                                                throw new 
LanguageException(source.printErrorLocation() + "function " + fci.getName() + " 
is undefined in namespace " + fci.getNamespace());
                                        }
                                        
-                                       ArrayList<Hop> finputs = new 
ArrayList<Hop>();
+                                       ArrayList<Hop> finputs = new 
ArrayList<>();
                                        for (ParameterExpression paramName : 
fci.getParamExprs()){
-                                               Hop in = 
processExpression(paramName.getExpr(), null, ids);                              
               
+                                               Hop in = 
processExpression(paramName.getExpr(), null, ids);
                                                finputs.add(in);
                                        }
 
@@ -1554,7 +1554,7 @@ public class DMLTranslator
        
        public void constructHopsForConditionalPredicate(StatementBlock 
passedSB) throws ParseException {
 
-               HashMap<String, Hop> _ids = new HashMap<String, Hop>();
+               HashMap<String, Hop> _ids = new HashMap<>();
                
                // set conditional predicate
                ConditionalPredicate cp = null;
@@ -1655,7 +1655,7 @@ public class DMLTranslator
        public void constructHopsForIterablePredicate(ForStatementBlock fsb) 
                throws ParseException 
        {
-               HashMap<String, Hop> _ids = new HashMap<String, Hop>();
+               HashMap<String, Hop> _ids = new HashMap<>();
                
                // set iterable predicate 
                ForStatement fs = (ForStatement) fsb.getStatement(0);
@@ -2127,13 +2127,13 @@ public class DMLTranslator
                
                // Create an array list to hold the outputs of this lop.
                // Exact list of outputs are added based on opcode.
-               ArrayList<Hop> outputs = new ArrayList<Hop>();
+               ArrayList<Hop> outputs = new ArrayList<>();
                
                // Construct Hop for current builtin function expression based 
on its type
                Hop currBuiltinOp = null;
                switch (source.getOpCode()) {
                        case TRANSFORMENCODE:
-                               ArrayList<Hop> inputs = new ArrayList<Hop>();
+                               ArrayList<Hop> inputs = new ArrayList<>();
                                inputs.add( 
processExpression(source.getVarParam("target"), null, hops) );
                                inputs.add( 
processExpression(source.getVarParam("spec"), null, hops) );
                                String[] outputNames = new 
String[targetList.size()]; 
@@ -2174,7 +2174,7 @@ public class DMLTranslator
                        HashMap<String, Hop> hops) throws ParseException, 
HopsException {
                
                // this expression has multiple "named" parameters
-               HashMap<String, Hop> paramHops = new HashMap<String,Hop>();
+               HashMap<String, Hop> paramHops = new HashMap<>();
                
                // -- construct hops for all input parameters
                // -- store them in hashmap so that their "name"s are maintained
@@ -2223,7 +2223,7 @@ public class DMLTranslator
                        break;  
                        
                case ORDER:
-                       ArrayList<Hop> inputs = new ArrayList<Hop>();
+                       ArrayList<Hop> inputs = new ArrayList<>();
                        inputs.add(paramHops.get("target"));
                        inputs.add(paramHops.get("by"));
                        inputs.add(paramHops.get("decreasing"));
@@ -2295,7 +2295,7 @@ public class DMLTranslator
                        HashMap<String, Hop> hops) throws ParseException, 
HopsException {
                
                // this expression has multiple "named" parameters
-               HashMap<String, Hop> paramHops = new HashMap<String,Hop>();
+               HashMap<String, Hop> paramHops = new HashMap<>();
                
                // -- construct hops for all input parameters
                // -- store them in hashmap so that their "name"s are maintained
@@ -2331,7 +2331,7 @@ public class DMLTranslator
                        break;
                
                case MATRIX:
-                       ArrayList<Hop> tmp = new ArrayList<Hop>();
+                       ArrayList<Hop> tmp = new ArrayList<>();
                        tmp.add( 0, paramHops.get(DataExpression.RAND_DATA) );
                        tmp.add( 1, paramHops.get(DataExpression.RAND_ROWS) );
                        tmp.add( 2, paramHops.get(DataExpression.RAND_COLS) );
@@ -2374,7 +2374,7 @@ public class DMLTranslator
                        HashMap<String, Hop> hops) throws ParseException {
                
                // Construct Hops for all inputs
-               ArrayList<Hop> inputs = new ArrayList<Hop>();
+               ArrayList<Hop> inputs = new ArrayList<>();
                inputs.add( processExpression(source.getFirstExpr(), null, 
hops) );
                if ( source.getSecondExpr() != null )
                        inputs.add( processExpression(source.getSecondExpr(), 
null, hops) );
@@ -2386,7 +2386,7 @@ public class DMLTranslator
                
                // Create an array list to hold the outputs of this lop.
                // Exact list of outputs are added based on opcode.
-               ArrayList<Hop> outputs = new ArrayList<Hop>();
+               ArrayList<Hop> outputs = new ArrayList<>();
                
                // Construct Hop for current builtin function expression based 
on its type
                Hop currBuiltinOp = null;
@@ -2953,7 +2953,7 @@ public class DMLTranslator
                        break;  
                
                case SEQ:
-                       HashMap<String,Hop> randParams = new 
HashMap<String,Hop>();
+                       HashMap<String,Hop> randParams = new HashMap<>();
                        randParams.put(Statement.SEQ_FROM, expr);
                        randParams.put(Statement.SEQ_TO, expr2);
                        randParams.put(Statement.SEQ_INCR, (expr3!=null)?expr3 
: new LiteralOp(1)); 
@@ -2967,7 +2967,7 @@ public class DMLTranslator
                        
                        // arguments: range/size/replace/seed; defaults: 
replace=FALSE
                                
-                       HashMap<String,Hop> tmpparams = new HashMap<String, 
Hop>();
+                       HashMap<String,Hop> tmpparams = new HashMap<>();
                        tmpparams.put(DataExpression.RAND_MAX, expr); //range
                        tmpparams.put(DataExpression.RAND_ROWS, expr2);
                        tmpparams.put(DataExpression.RAND_COLS, new 
LiteralOp(1));
@@ -3041,7 +3041,7 @@ public class DMLTranslator
                }
                case BIAS_ADD:
                {
-                       ArrayList<Hop> inHops1 = new ArrayList<Hop>();
+                       ArrayList<Hop> inHops1 = new ArrayList<>();
                        inHops1.add(expr);
                        inHops1.add(expr2);
                        currBuiltinOp = new ConvolutionOp(target.getName(), 
target.getDataType(), target.getValueType(), Hop.ConvOp.BIAS_ADD, inHops1);
@@ -3050,7 +3050,7 @@ public class DMLTranslator
                }
                case BIAS_MULTIPLY:
                {
-                       ArrayList<Hop> inHops1 = new ArrayList<Hop>();
+                       ArrayList<Hop> inHops1 = new ArrayList<>();
                        inHops1.add(expr);
                        inHops1.add(expr2);
                        currBuiltinOp = new ConvolutionOp(target.getName(), 
target.getDataType(), target.getValueType(), Hop.ConvOp.BIAS_MULTIPLY, inHops1);
@@ -3115,7 +3115,7 @@ public class DMLTranslator
        }
 
        private ArrayList<Hop> getALHopsForConvOpPoolingCOL2IM(Hop first, 
BuiltinFunctionExpression source, int skip, HashMap<String, Hop> hops) throws 
ParseException {
-               ArrayList<Hop> ret = new ArrayList<Hop>();
+               ArrayList<Hop> ret = new ArrayList<>();
                ret.add(first);
                Expression[] allExpr = source.getAllExpr();
 
@@ -3130,7 +3130,7 @@ public class DMLTranslator
        }
 
        private ArrayList<Hop> getALHopsForPoolingForwardIM2COL(Hop first, 
BuiltinFunctionExpression source, int skip, HashMap<String, Hop> hops) throws 
ParseException {
-               ArrayList<Hop> ret = new ArrayList<Hop>();
+               ArrayList<Hop> ret = new ArrayList<>();
                ret.add(first);
                Expression[] allExpr = source.getAllExpr();
                if(skip != 1) {
@@ -3182,7 +3182,7 @@ public class DMLTranslator
        }
 
        private ArrayList<Hop> getALHopsForConvOp(Hop first, 
BuiltinFunctionExpression source, int skip, HashMap<String, Hop> hops) throws 
ParseException {
-               ArrayList<Hop> ret = new ArrayList<Hop>();
+               ArrayList<Hop> ret = new ArrayList<>();
                ret.add(first);
                Expression[] allExpr = source.getAllExpr();
                for(int i = skip; i < allExpr.length; i++) {

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/DataExpression.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/DataExpression.java 
b/src/main/java/org/apache/sysml/parser/DataExpression.java
index d1d896c..a24bc53 100644
--- a/src/main/java/org/apache/sysml/parser/DataExpression.java
+++ b/src/main/java/org/apache/sysml/parser/DataExpression.java
@@ -382,7 +382,7 @@ public class DataExpression extends DataIdentifier
 
        public Expression rewriteExpression(String prefix) throws 
LanguageException {
                
-               HashMap<String,Expression> newVarParams = new 
HashMap<String,Expression>();
+               HashMap<String,Expression> newVarParams = new HashMap<>();
                for( Entry<String, Expression> e : _varParams.entrySet() ){
                        String key = e.getKey();
                        Expression newExpr = 
e.getValue().rewriteExpression(prefix);

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/Expression.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/Expression.java 
b/src/main/java/org/apache/sysml/parser/Expression.java
index 084850a..1d7303e 100644
--- a/src/main/java/org/apache/sysml/parser/Expression.java
+++ b/src/main/java/org/apache/sysml/parser/Expression.java
@@ -38,21 +38,21 @@ public abstract class Expression implements ParseInfo
         */
        public enum BinaryOp {
                PLUS, MINUS, MULT, DIV, MODULUS, INTDIV, MATMULT, POW, INVALID
-       };
+       }
 
        /**
         * Relational operators.
         */
        public enum RelationalOp {
                LESSEQUAL, LESS, GREATEREQUAL, GREATER, EQUAL, NOTEQUAL, INVALID
-       };
+       }
 
        /**
         * Boolean operators.
         */
        public enum BooleanOp {
                CONDITIONALAND, CONDITIONALOR, LOGICALAND, LOGICALOR, NOT, 
INVALID
-       };
+       }
 
        /**
         * Built-in function operators.
@@ -136,7 +136,7 @@ public abstract class Expression implements ParseInfo
                TRACE, 
                TRANS,
                VAR
-       };
+       }
 
        /**
         * Parameterized built-in function operators.
@@ -148,7 +148,7 @@ public abstract class Expression implements ParseInfo
                TRANSFORMAPPLY, TRANSFORMDECODE, TRANSFORMENCODE, 
TRANSFORMCOLMAP, TRANSFORMMETA,
                TOSTRING,       // The "toString" method for DML; named 
arguments accepted to format output
                INVALID
-       };
+       }
        
        /**
         * Data operators.
@@ -162,7 +162,7 @@ public abstract class Expression implements ParseInfo
         */
        public enum FunctCallOp {
                INTERNAL, EXTERNAL
-       };
+       }
 
        /**
         * Data types (matrix, scalar, frame, object, unknown).
@@ -176,21 +176,21 @@ public abstract class Expression implements ParseInfo
                public boolean isScalar() {
                        return (this == SCALAR);
                }
-       };
+       }
 
        /**
         * Value types (int, double, string, boolean, object, unknown).
         */
        public enum ValueType {
                INT, DOUBLE, STRING, BOOLEAN, OBJECT, UNKNOWN
-       };
+       }
 
        /**
         * Format types (text, binary, matrix market, csv, unknown).
         */
        public enum FormatType {
                TEXT, BINARY, MM, CSV
-       };
+       }
        
        protected static final Log LOG = 
LogFactory.getLog(Expression.class.getName());
        
@@ -594,7 +594,7 @@ public abstract class Expression implements ParseInfo
        private int _beginLine, _beginColumn;
        private int _endLine, _endColumn;
        private String _text;
-       private ArrayList<String> _parseExceptionList = new ArrayList<String>();
+       private ArrayList<String> _parseExceptionList = new ArrayList<>();
        
        public void setFilename(String passed)  { _filename = passed;   }
        public void setBeginLine(int passed)    { _beginLine = passed;   }

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/ForStatement.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/ForStatement.java 
b/src/main/java/org/apache/sysml/parser/ForStatement.java
index 23b406b..f1404e1 100644
--- a/src/main/java/org/apache/sysml/parser/ForStatement.java
+++ b/src/main/java/org/apache/sysml/parser/ForStatement.java
@@ -24,10 +24,8 @@ import java.util.ArrayList;
 
 
 public class ForStatement extends Statement
-{      
-
-       
-       protected IterablePredicate             _predicate;
+{
+       protected IterablePredicate _predicate;
        protected ArrayList<StatementBlock> _body;
        
        public Statement rewriteStatement(String prefix) throws 
LanguageException{
@@ -37,7 +35,7 @@ public class ForStatement extends Statement
        
        public ForStatement(){
                 _predicate = null;
-                _body = new ArrayList<StatementBlock>();
+                _body = new ArrayList<>();
        }
        
        public void setPredicate(IterablePredicate pred){

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/FunctionCallIdentifier.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/FunctionCallIdentifier.java 
b/src/main/java/org/apache/sysml/parser/FunctionCallIdentifier.java
index 5993091..091d8cb 100644
--- a/src/main/java/org/apache/sysml/parser/FunctionCallIdentifier.java
+++ b/src/main/java/org/apache/sysml/parser/FunctionCallIdentifier.java
@@ -54,7 +54,7 @@ public class FunctionCallIdentifier extends DataIdentifier
        
        public Expression rewriteExpression(String prefix) throws 
LanguageException {
                        
-               ArrayList<ParameterExpression> newParameterExpressions = new 
ArrayList<ParameterExpression>();
+               ArrayList<ParameterExpression> newParameterExpressions = new 
ArrayList<>();
                for (ParameterExpression paramExpr : _paramExprs)
                        newParameterExpressions.add(new 
ParameterExpression(paramExpr.getName(), 
paramExpr.getExpr().rewriteExpression(prefix)));
                

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/FunctionStatement.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/FunctionStatement.java 
b/src/main/java/org/apache/sysml/parser/FunctionStatement.java
index 07a2284..fdddc92 100644
--- a/src/main/java/org/apache/sysml/parser/FunctionStatement.java
+++ b/src/main/java/org/apache/sysml/parser/FunctionStatement.java
@@ -36,10 +36,10 @@ public class FunctionStatement extends Statement
        }
        
        public FunctionStatement(){
-                _body = new ArrayList<StatementBlock>();
+                _body = new ArrayList<>();
                 _name = null;
-                _inputParams = new ArrayList<DataIdentifier>();
-                _outputParams = new ArrayList<DataIdentifier>();
+                _inputParams = new ArrayList<>();
+                _outputParams = new ArrayList<>();
        }
        
        public ArrayList<DataIdentifier> getInputParams(){

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/IfStatement.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/IfStatement.java 
b/src/main/java/org/apache/sysml/parser/IfStatement.java
index 3c890af..cbb0c7b 100644
--- a/src/main/java/org/apache/sysml/parser/IfStatement.java
+++ b/src/main/java/org/apache/sysml/parser/IfStatement.java
@@ -36,8 +36,8 @@ public class IfStatement extends Statement
        
        public IfStatement(){
                 _predicate = null;
-                _ifBody = new ArrayList<StatementBlock>();
-                _elseBody = new ArrayList<StatementBlock>();
+                _ifBody = new ArrayList<>();
+                _elseBody = new ArrayList<>();
        }
        
        public void setConditionalPredicate(ConditionalPredicate pred){

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/IfStatementBlock.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/IfStatementBlock.java 
b/src/main/java/org/apache/sysml/parser/IfStatementBlock.java
index 5410aca..1b42e08 100644
--- a/src/main/java/org/apache/sysml/parser/IfStatementBlock.java
+++ b/src/main/java/org/apache/sysml/parser/IfStatementBlock.java
@@ -55,8 +55,8 @@ public class IfStatementBlock extends StatementBlock
                        
ifstmt.getConditionalPredicate().setPredicate(constVars.get(((DataIdentifier)pred).getName()));
                }
                
-               HashMap<String,ConstIdentifier> constVarsIfCopy = new 
HashMap<String,ConstIdentifier>(constVars);
-               HashMap<String,ConstIdentifier> constVarsElseCopy = new 
HashMap<String,ConstIdentifier> (constVars);
+               HashMap<String,ConstIdentifier> constVarsIfCopy = new 
HashMap<>(constVars);
+               HashMap<String,ConstIdentifier> constVarsElseCopy = new 
HashMap<> (constVars);
                
                VariableSet idsIfCopy   = new VariableSet(ids);
                VariableSet idsElseCopy = new VariableSet(ids);
@@ -118,7 +118,7 @@ public class IfStatementBlock extends StatementBlock
                //              b) ELSE leave out of reconciled set
                
/////////////////////////////////////////////////////////////////////////////////
                
-               HashMap<String,ConstIdentifier> recConstVars = new 
HashMap<String,ConstIdentifier>();
+               HashMap<String,ConstIdentifier> recConstVars = new HashMap<>();
                
                // STEP 1:  (IF UNION ELSE) MINUS updated vars
                for (Entry<String,ConstIdentifier> e : 
constVarsIfCopy.entrySet() ){

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/MultiAssignmentStatement.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/sysml/parser/MultiAssignmentStatement.java 
b/src/main/java/org/apache/sysml/parser/MultiAssignmentStatement.java
index 1174e27..3db1e56 100644
--- a/src/main/java/org/apache/sysml/parser/MultiAssignmentStatement.java
+++ b/src/main/java/org/apache/sysml/parser/MultiAssignmentStatement.java
@@ -28,14 +28,13 @@ import org.apache.sysml.debug.DMLBreakpointManager;
 
 public class MultiAssignmentStatement extends Statement
 {
-               
        private ArrayList<DataIdentifier> _targetList;
        private Expression _source;
                
        // rewrites statement to support function inlining (creates deep copy) 
        public Statement rewriteStatement(String prefix) throws 
LanguageException{
                                
-               ArrayList<DataIdentifier> newTargetList = new 
ArrayList<DataIdentifier>();
+               ArrayList<DataIdentifier> newTargetList = new ArrayList<>();
                
                // rewrite targetList (deep copy)
                for (DataIdentifier target : _targetList){

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/OutputStatement.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/OutputStatement.java 
b/src/main/java/org/apache/sysml/parser/OutputStatement.java
index a93f508..a636519 100644
--- a/src/main/java/org/apache/sysml/parser/OutputStatement.java
+++ b/src/main/java/org/apache/sysml/parser/OutputStatement.java
@@ -90,7 +90,7 @@ public class OutputStatement extends Statement
                
                // rewrite parameter expressions (creates deep copy)
                DataOp op = _paramsExpr.getOpCode();
-               HashMap<String,Expression> newExprParams = new 
HashMap<String,Expression>();
+               HashMap<String,Expression> newExprParams = new HashMap<>();
                for (String key : _paramsExpr.getVarParams().keySet()){
                        Expression newExpr = 
_paramsExpr.getVarParam(key).rewriteExpression(prefix);
                        newExprParams.put(key, newExpr);

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/ParForStatementBlock.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/ParForStatementBlock.java 
b/src/main/java/org/apache/sysml/parser/ParForStatementBlock.java
index 8efbc9f..1e9cc15 100644
--- a/src/main/java/org/apache/sysml/parser/ParForStatementBlock.java
+++ b/src/main/java/org/apache/sysml/parser/ParForStatementBlock.java
@@ -97,15 +97,15 @@ public class ParForStatementBlock extends ForStatementBlock
        private static HashMap<String, LinearFunction> _fncache; //slower for 
most (small cases) cases
        
        //instance members
-       private long                  _ID         = -1;
-       private VariableSet       _vsParent   = null;  
+       private final long _ID;
+       private VariableSet       _vsParent   = null;
        private ArrayList<String> _resultVars = null;
        private Bounds            _bounds     = null;
        
        static
        {
                // populate parameter name lookup-table
-               _paramNames = new HashSet<String>();
+               _paramNames = new HashSet<>();
                _paramNames.add( CHECK ); 
                _paramNames.add( PAR ); 
                _paramNames.add( TASK_PARTITIONER ); 
@@ -118,7 +118,7 @@ public class ParForStatementBlock extends ForStatementBlock
                _paramNames.add( OPT_LOG ); 
                
                // populate defaults lookup-table
-               _paramDefaults = new HashMap<String, String>();
+               _paramDefaults = new HashMap<>();
                _paramDefaults.put( CHECK,             "1" );
                _paramDefaults.put( PAR,               
String.valueOf(InfrastructureAnalyzer.getLocalParallelism()) );
                _paramDefaults.put( TASK_PARTITIONER,  
String.valueOf(PTaskPartitioner.FIXED) );
@@ -130,7 +130,7 @@ public class ParForStatementBlock extends ForStatementBlock
                _paramDefaults.put( PROFILE,           "0" );
                _paramDefaults.put( OPT_LOG,           
OptimizerUtils.getDefaultLogLevel().toString() );
                
-               _paramDefaults2 = new HashMap<String, String>(); //OPT_MODE 
always specified
+               _paramDefaults2 = new HashMap<>(); //OPT_MODE always specified
                _paramDefaults2.put( CHECK,            "1" );
                _paramDefaults2.put( PAR,              "-1" );
                _paramDefaults2.put( TASK_PARTITIONER, 
String.valueOf(PTaskPartitioner.UNSPECIFIED) );
@@ -146,7 +146,7 @@ public class ParForStatementBlock extends ForStatementBlock
 
                //initialize function cache
                if( USE_FN_CACHE ) {
-                       _fncache = new HashMap<String, LinearFunction>();
+                       _fncache = new HashMap<>();
                }
                
                // for internal debugging only
@@ -156,10 +156,9 @@ public class ParForStatementBlock extends ForStatementBlock
                }
        }
        
-       public ParForStatementBlock()
-       {
-               _ID         = _idSeq.getNextID();
-               _resultVars = new ArrayList<String>();
+       public ParForStatementBlock() {
+               _ID = _idSeq.getNextID();
+               _resultVars = new ArrayList<>();
                
                LOG.trace("PARFOR("+_ID+"): ParForStatementBlock instance 
created");
        }
@@ -248,7 +247,7 @@ public class ParForStatementBlock extends ForStatementBlock
                else
                {
                        //set all defaults
-                       params = new HashMap<String, String>();
+                       params = new HashMap<>();
                        params.putAll( _paramDefaults );
                        predicate.setParForParams(params);
                }       
@@ -285,8 +284,8 @@ public class ParForStatementBlock extends ForStatementBlock
                LOG.trace("PARFOR: running loop dependency analysis ...");
 
                //### Step 1 ###: determine candidate set C
-               HashSet<Candidate> C = new HashSet<Candidate>(); 
-               HashSet<Candidate> C2 = new HashSet<Candidate>(); 
+               HashSet<Candidate> C = new HashSet<>(); 
+               HashSet<Candidate> C2 = new HashSet<>(); 
                Integer sCount = 0; //object for call by ref 
                rDetermineCandidates(pfs.getBody(), C, sCount);
 
@@ -364,14 +363,14 @@ public class ParForStatementBlock extends 
ForStatementBlock
                        if( check || var._dat.getDataType()!=DataType.SCALAR )
                                addToResultVariablesNoDup( var._var );
                //b) get and add child result vars (if required)
-               ArrayList<String> tmp = new ArrayList<String>();
+               ArrayList<String> tmp = new ArrayList<>();
                rConsolidateResultVars(pfs.getBody(), tmp);
                for( String var : tmp )
                        if(_vsParent.containsVariable(var))
-                               addToResultVariablesNoDup( var );               
        
+                               addToResultVariablesNoDup( var );
                if( LDEBUG )
                        for( String rvar : _resultVars )
-                               LOG.debug("INFO: PARFOR final result variable: 
"+rvar);         
+                               LOG.debug("INFO: PARFOR final result variable: 
"+rvar);
                
                //cleanup function cache in order to prevent side effects 
between parfor statements
                if( USE_FN_CACHE )
@@ -382,17 +381,14 @@ public class ParForStatementBlock extends 
ForStatementBlock
                return vs;
        }
        
-       public ArrayList<String> getReadOnlyParentVars() 
-       {
-               ArrayList<String> ret = new ArrayList<String>();
-
+       public ArrayList<String> getReadOnlyParentVars() {
+               ArrayList<String> ret = new ArrayList<>();
                VariableSet read = variablesRead();
                VariableSet updated = variablesUpdated();
                VariableSet livein = liveIn();  
                for( String var : livein.getVariableNames() ) //for all parent 
variables
                        if( read.containsVariable(var) && 
!updated.containsVariable(var) ) //read-only
                                ret.add( var );
-               
                return ret;
        }
 
@@ -408,7 +404,7 @@ public class ParForStatementBlock extends ForStatementBlock
        public PartitionFormat determineDataPartitionFormat(String var) 
        {
                PartitionFormat dpf = null;
-               List<PartitionFormat> dpfc = new LinkedList<PartitionFormat>();
+               List<PartitionFormat> dpfc = new LinkedList<>();
                
                try 
                {
@@ -865,7 +861,7 @@ public class ParForStatementBlock extends ForStatementBlock
                else if (s instanceof PrintStatement)
                {
                        PrintStatement s2 = (PrintStatement)s;
-                       ret = new ArrayList<DataIdentifier>();
+                       ret = new ArrayList<>();
                        for (Expression expression : s2.getExpressions()) {
                                List<DataIdentifier> dataIdentifiers = 
rGetDataIdentifiers(expression);
                                ret.addAll(dataIdentifiers);
@@ -918,7 +914,7 @@ public class ParForStatementBlock extends ForStatementBlock
        
        private List<DataIdentifier> rGetDataIdentifiers(Expression e)
        {
-               List<DataIdentifier> ret = new ArrayList<DataIdentifier>();
+               List<DataIdentifier> ret = new ArrayList<>();
                
                if( e instanceof DataIdentifier && 
                        !(e instanceof FunctionCallIdentifier || e instanceof 
BuiltinFunctionExpression || e instanceof 
ParameterizedBuiltinFunctionExpression) )
@@ -2016,14 +2012,12 @@ public class ParForStatementBlock extends 
ForStatementBlock
         * loop constructs. 
         *
         */
-       private static class Bounds
-       {
-               HashMap<String, Long> _lower     = new HashMap<String, Long>();
-               HashMap<String, Long> _upper     = new HashMap<String, Long>();
-               HashMap<String, Long> _increment = new HashMap<String, Long>();
-               
+       private static class Bounds {
+               HashMap<String, Long> _lower     = new HashMap<>();
+               HashMap<String, Long> _upper     = new HashMap<>();
+               HashMap<String, Long> _increment = new HashMap<>();
                //contains all local variable names (subset of lower/upper/incr 
sets)
-               HashSet<String> _local = new HashSet<String>();
+               HashSet<String> _local = new HashSet<>();
        }
        
        /**

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/ParameterizedBuiltinFunctionExpression.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/sysml/parser/ParameterizedBuiltinFunctionExpression.java
 
b/src/main/java/org/apache/sysml/parser/ParameterizedBuiltinFunctionExpression.java
index e2cd5a2..3286049 100644
--- 
a/src/main/java/org/apache/sysml/parser/ParameterizedBuiltinFunctionExpression.java
+++ 
b/src/main/java/org/apache/sysml/parser/ParameterizedBuiltinFunctionExpression.java
@@ -43,7 +43,7 @@ public class ParameterizedBuiltinFunctionExpression extends 
DataIdentifier
        
        private static HashMap<String, 
Expression.ParameterizedBuiltinFunctionOp> opcodeMap;
        static {
-               opcodeMap = new HashMap<String, 
Expression.ParameterizedBuiltinFunctionOp>();
+               opcodeMap = new HashMap<>();
                opcodeMap.put("aggregate", 
Expression.ParameterizedBuiltinFunctionOp.GROUPEDAGG);
                opcodeMap.put("groupedAggregate", 
Expression.ParameterizedBuiltinFunctionOp.GROUPEDAGG);
                
opcodeMap.put("removeEmpty",Expression.ParameterizedBuiltinFunctionOp.RMEMPTY);
@@ -78,7 +78,7 @@ public class ParameterizedBuiltinFunctionExpression extends 
DataIdentifier
        
        public static HashMap<Expression.ParameterizedBuiltinFunctionOp, 
ParamBuiltinOp> pbHopMap;
        static {
-               pbHopMap = new 
HashMap<Expression.ParameterizedBuiltinFunctionOp, ParamBuiltinOp>();
+               pbHopMap = new HashMap<>();
                
                
pbHopMap.put(Expression.ParameterizedBuiltinFunctionOp.GROUPEDAGG, 
ParamBuiltinOp.GROUPEDAGG);
                pbHopMap.put(Expression.ParameterizedBuiltinFunctionOp.RMEMPTY, 
ParamBuiltinOp.RMEMPTY);
@@ -116,7 +116,7 @@ public class ParameterizedBuiltinFunctionExpression extends 
DataIdentifier
                if ( pbifop == null ) 
                        return null;
                
-               HashMap<String,Expression> varParams = new 
HashMap<String,Expression>();
+               HashMap<String,Expression> varParams = new HashMap<>();
                for (ParameterExpression pexpr : paramExprsPassed)
                        varParams.put(pexpr.getName(), pexpr.getExpr());
                
@@ -141,15 +141,13 @@ public class ParameterizedBuiltinFunctionExpression 
extends DataIdentifier
        }
 
        public Expression rewriteExpression(String prefix) throws 
LanguageException {
-               
-               HashMap<String,Expression> newVarParams = new 
HashMap<String,Expression>();
+               HashMap<String,Expression> newVarParams = new HashMap<>();
                for (String key : _varParams.keySet()){
                        Expression newExpr = 
_varParams.get(key).rewriteExpression(prefix);
                        newVarParams.put(key, newExpr);
-               }       
-               ParameterizedBuiltinFunctionExpression retVal = new 
ParameterizedBuiltinFunctionExpression(_opcode,
-                               newVarParams, this);
-
+               }
+               ParameterizedBuiltinFunctionExpression retVal = 
+                       new ParameterizedBuiltinFunctionExpression(_opcode, 
newVarParams, this);
                return retVal;
        }
 
@@ -704,7 +702,7 @@ public class ParameterizedBuiltinFunctionExpression extends 
DataIdentifier
                
                // check validate parameter names
                String[] validArgsArr = {"target", "rows", "cols", "decimal", 
"sparse", "sep", "linesep"};
-               HashSet<String> validArgs = new 
HashSet<String>(Arrays.asList(validArgsArr));
+               HashSet<String> validArgs = new 
HashSet<>(Arrays.asList(validArgsArr));
                for( String k : varParams.keySet() ) {
                        if( !validArgs.contains(k) ) {
                                raiseValidateError("Invalid parameter " + k + " 
for toString, valid parameters are " + 

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/PrintStatement.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/PrintStatement.java 
b/src/main/java/org/apache/sysml/parser/PrintStatement.java
index 16e9e4a..27a5f0a 100644
--- a/src/main/java/org/apache/sysml/parser/PrintStatement.java
+++ b/src/main/java/org/apache/sysml/parser/PrintStatement.java
@@ -37,7 +37,7 @@ public class PrintStatement extends Statement
         */
        public enum PRINTTYPE {
                PRINT, PRINTF, STOP
-       };
+       }
 
        protected PRINTTYPE _type; // print, printf, or stop
        protected List<Expression> expressions;
@@ -75,14 +75,14 @@ public class PrintStatement extends Statement
                        throws LanguageException {
                _type = type;
                if (expressions == null) {
-                       this.expressions = new ArrayList<Expression>();
+                       this.expressions = new ArrayList<>();
                } else {
                        this.expressions = expressions;
                }
        }
 
        public Statement rewriteStatement(String prefix) throws 
LanguageException{
-               List<Expression> newExpressions = new ArrayList<Expression>();
+               List<Expression> newExpressions = new ArrayList<>();
                for (Expression oldExpression : expressions) {
                        Expression newExpression = 
oldExpression.rewriteExpression(prefix);
                        newExpressions.add(newExpression);

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/StatementBlock.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/StatementBlock.java 
b/src/main/java/org/apache/sysml/parser/StatementBlock.java
index d901119..71c1894 100644
--- a/src/main/java/org/apache/sysml/parser/StatementBlock.java
+++ b/src/main/java/org/apache/sysml/parser/StatementBlock.java
@@ -60,16 +60,16 @@ public class StatementBlock extends LiveVariableAnalysis 
implements ParseInfo
 
        public StatementBlock() {
                _dmlProg = null;
-               _statements = new ArrayList<Statement>();
+               _statements = new ArrayList<>();
                _read = new VariableSet();
                _updated = new VariableSet();
                _gen = new VariableSet();
                _kill = new VariableSet();
                _warnSet = new VariableSet();
                _initialized = true;
-               _constVarsIn = new HashMap<String,ConstIdentifier>();
-               _constVarsOut = new HashMap<String,ConstIdentifier>();
-               _updateInPlaceVars = new ArrayList<String>();
+               _constVarsIn = new HashMap<>();
+               _constVarsOut = new HashMap<>();
+               _updateInPlaceVars = new ArrayList<>();
        }
 
        public void setDMLProg(DMLProgram dmlProg){
@@ -322,8 +322,7 @@ public class StatementBlock extends LiveVariableAnalysis 
implements ParseInfo
                        }
                }
 
-               ArrayList<StatementBlock> result = new 
ArrayList<StatementBlock>();
-
+               ArrayList<StatementBlock> result = new ArrayList<>();
                StatementBlock currentBlock = null;
 
                for (int i = 0; i < body.size(); i++){
@@ -367,13 +366,10 @@ public class StatementBlock extends LiveVariableAnalysis 
implements ParseInfo
        }
 
        public static ArrayList<StatementBlock> 
mergeStatementBlocks(ArrayList<StatementBlock> sb){
+               if (sb == null || sb.isEmpty())
+                       return new ArrayList<>();
 
-               ArrayList<StatementBlock> result = new 
ArrayList<StatementBlock>();
-
-               if (sb == null || sb.isEmpty()) {
-                       return new ArrayList<StatementBlock>();
-               }
-
+               ArrayList<StatementBlock> result = new ArrayList<>();
                StatementBlock currentBlock = null;
 
                for (int i = 0; i < sb.size(); i++){
@@ -404,7 +400,7 @@ public class StatementBlock extends LiveVariableAnalysis 
implements ParseInfo
 
        public ArrayList<Statement> rewriteFunctionCallStatements (DMLProgram 
dmlProg, ArrayList<Statement> statements) throws LanguageException {
 
-               ArrayList<Statement> newStatements = new ArrayList<Statement>();
+               ArrayList<Statement> newStatements = new ArrayList<>();
                for (Statement current : statements){
                        if (isRewritableFunctionCall(current, dmlProg)){
 
@@ -548,7 +544,7 @@ public class StatementBlock extends LiveVariableAnalysis 
implements ParseInfo
                _statements = rewriteFunctionCallStatements(dmlProg, 
_statements);
                _dmlProg = dmlProg;
                
-               HashMap<String, ConstIdentifier> currConstVars = new 
HashMap<String,ConstIdentifier>(constVars);
+               HashMap<String, ConstIdentifier> currConstVars = new 
HashMap<>(constVars);
                for (Statement current : _statements) {
                        if (current instanceof OutputStatement) {
                                OutputStatement os = (OutputStatement)current;

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/VariableSet.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/VariableSet.java 
b/src/main/java/org/apache/sysml/parser/VariableSet.java
index c2a1151..29c4ae3 100644
--- a/src/main/java/org/apache/sysml/parser/VariableSet.java
+++ b/src/main/java/org/apache/sysml/parser/VariableSet.java
@@ -28,11 +28,11 @@ public class VariableSet
        private HashMap<String,DataIdentifier> _variables;
        
        public VariableSet() {
-               _variables = new HashMap<String,DataIdentifier>();
+               _variables = new HashMap<>();
        }
        
        public VariableSet( VariableSet vs ) {
-               _variables = new HashMap<String,DataIdentifier>();
+               _variables = new HashMap<>();
                if (vs != null)
                        _variables.putAll(vs.getVariables());
        }

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/WhileStatement.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/WhileStatement.java 
b/src/main/java/org/apache/sysml/parser/WhileStatement.java
index 7e347d0..e210818 100644
--- a/src/main/java/org/apache/sysml/parser/WhileStatement.java
+++ b/src/main/java/org/apache/sysml/parser/WhileStatement.java
@@ -25,8 +25,6 @@ import java.util.ArrayList;
 
 public class WhileStatement extends Statement
 {
-               
-       
        private ConditionalPredicate _predicate;
        private ArrayList<StatementBlock> _body;
        
@@ -35,16 +33,15 @@ public class WhileStatement extends Statement
                throw new LanguageException(this.printErrorLocation() + "should 
not call rewriteStatement for WhileStatement");
        }
        
-       public WhileStatement(){
-                _predicate = null;
-                _body = new ArrayList<StatementBlock>();
+       public WhileStatement() {
+               _predicate = null;
+               _body = new ArrayList<>();
        }
        
        public void setPredicate(ConditionalPredicate pred){
                _predicate = pred;
        }
-       
-       
+               
        public void addStatementBlock(StatementBlock sb){
                _body.add(sb);
        }
@@ -66,7 +63,6 @@ public class WhileStatement extends Statement
                return true;
        }
        
-
        public void mergeStatementBlocks(){
                _body = StatementBlock.mergeStatementBlocks(_body);
        }

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/common/CommonSyntacticValidator.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/sysml/parser/common/CommonSyntacticValidator.java 
b/src/main/java/org/apache/sysml/parser/common/CommonSyntacticValidator.java
index bab9cd0..890bad2 100644
--- a/src/main/java/org/apache/sysml/parser/common/CommonSyntacticValidator.java
+++ b/src/main/java/org/apache/sysml/parser/common/CommonSyntacticValidator.java
@@ -68,7 +68,7 @@ public abstract class CommonSyntacticValidator {
        protected String sourceNamespace = null;
        // Track imported scripts to prevent infinite recursion
        protected static ThreadLocal<HashMap<String, String>> _scripts = new 
ThreadLocal<HashMap<String, String>>() {
-               @Override protected HashMap<String, String> initialValue() { 
return new HashMap<String, String>(); }
+               @Override protected HashMap<String, String> initialValue() { 
return new HashMap<>(); }
        };
        // Map namespaces to full paths as defined only from source statements 
in this script (i.e., currentFile)
        protected HashMap<String, String> sources;
@@ -84,8 +84,8 @@ public abstract class CommonSyntacticValidator {
                currentFile = errorListener.getCurrentFileName();
                this.argVals = argVals;
                this.sourceNamespace = sourceNamespace;
-               sources = new HashMap<String, String>();
-               functions = (null != prepFunctions) ? prepFunctions : new 
HashSet<String>();
+               sources = new HashMap<>();
+               functions = (null != prepFunctions) ? prepFunctions : new 
HashSet<>();
        }
 
        protected void notifyErrorListeners(String message, Token op) {
@@ -466,7 +466,7 @@ public abstract class CommonSyntacticValidator {
                                return;
                        }
                        try {
-                               List<Expression> expList = new 
ArrayList<Expression>();
+                               List<Expression> expList = new ArrayList<>();
                                expList.add(expr);
                                thisinfo.stmt = new PrintStatement(ctx, 
functionName, expList, currentFile);
                        } catch (LanguageException e) {
@@ -489,7 +489,7 @@ public abstract class CommonSyntacticValidator {
                                return;
                        }
                        try {
-                               List<Expression> expressions = new 
ArrayList<Expression>();
+                               List<Expression> expressions = new 
ArrayList<>();
                                for (ParameterExpression pe : paramExpression) {
                                        Expression expression = pe.getExpr();
                                        expressions.add(expression);
@@ -509,7 +509,7 @@ public abstract class CommonSyntacticValidator {
                        return;
                }
                if(paramExpression.get(0).getExpr() instanceof DataIdentifier) {
-                       HashMap<String, Expression> varParams = new 
HashMap<String, Expression>();
+                       HashMap<String, Expression> varParams = new HashMap<>();
                        varParams.put(DataExpression.IO_FILENAME, 
paramExpression.get(1).getExpr());
                        for(int i = 2; i < paramExpression.size(); i++) {
                                // DataExpression.FORMAT_TYPE, 
DataExpression.DELIM_DELIMITER, DataExpression.DELIM_HAS_HEADER_ROW,  
DataExpression.DELIM_SPARSE
@@ -550,7 +550,7 @@ public abstract class CommonSyntacticValidator {
                        this.functionName = functionName;
                        this.paramExpression = paramExpression;
                }
-       };
+       }
 
        /**
         * Converts PyDML/DML built in functions to a common format for the 
runtime.

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/common/CustomErrorListener.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/sysml/parser/common/CustomErrorListener.java 
b/src/main/java/org/apache/sysml/parser/common/CustomErrorListener.java
index 6a27acf..2af5f69 100644
--- a/src/main/java/org/apache/sysml/parser/common/CustomErrorListener.java
+++ b/src/main/java/org/apache/sysml/parser/common/CustomErrorListener.java
@@ -42,7 +42,7 @@ public class CustomErrorListener extends BaseErrorListener {
        /**
         * List of parse issues.
         */
-       private List<ParseIssue> parseIssues = new ArrayList<ParseIssue>();
+       private List<ParseIssue> parseIssues = new ArrayList<>();
 
        public void setCurrentFileName(String currentFilePath) {
                currentFileName = currentFilePath;

http://git-wip-us.apache.org/repos/asf/systemml/blob/40dd894e/src/main/java/org/apache/sysml/parser/dml/DmlPreprocessor.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/parser/dml/DmlPreprocessor.java 
b/src/main/java/org/apache/sysml/parser/dml/DmlPreprocessor.java
index 823aef0..11d6c7f 100644
--- a/src/main/java/org/apache/sysml/parser/dml/DmlPreprocessor.java
+++ b/src/main/java/org/apache/sysml/parser/dml/DmlPreprocessor.java
@@ -87,7 +87,7 @@ public class DmlPreprocessor implements DmlListener {
 
        public DmlPreprocessor(CustomErrorListener errorListener) {
                this.errorListener = errorListener;
-               functions = new HashSet<String>();
+               functions = new HashSet<>();
        }
 
        public Set<String> getFunctionDefs() {

Reply via email to