diff --git a/AlgebraicDataflowArchitectureModel/models/InventoryManagement.model b/AlgebraicDataflowArchitectureModel/models/InventoryManagement.model index 31bcdad..578d56c 100644 --- a/AlgebraicDataflowArchitectureModel/models/InventoryManagement.model +++ b/AlgebraicDataflowArchitectureModel/models/InventoryManagement.model @@ -1,10 +1,7 @@ channel ItemRegistration { - out inventory(itemDB:Map, registerItem(itemId:Str, itemName:Str, quantity:Int)) = insert(itemDB, itemId, {"count": quantity, - "name": itemName}) + out inventory(itemDB:Map, registerItem(itemId:Str, itemName:Str, quantity:Int)) = insert(itemDB, itemId, {"count": quantity, "name": itemName}) } channel ReceivingOrShipping(itemId:Str) { - out inventory.{itemId}.count(prev_quantity:Int, receiveOrShip(quantity:Int)) = if(prev_quantity + quantity >= 0, - prev_quantity + quantity, - prev_quantity) + out inventory.{itemId}.count(prev_quantity:Int, receiveOrShip(quantity:Int)) = prev_quantity + quantity } diff --git a/AlgebraicDataflowArchitectureModel/models/SimpleTwitter.model b/AlgebraicDataflowArchitectureModel/models/SimpleTwitter.model index 509b68a..486fafb 100644 --- a/AlgebraicDataflowArchitectureModel/models/SimpleTwitter.model +++ b/AlgebraicDataflowArchitectureModel/models/SimpleTwitter.model @@ -1,6 +1,5 @@ -channel Signup{ - out accounts(accountDB:Map, signUp(accountId:Str, name:Str)) = insert(accountDB, accountId, {"name": name, - "tweets": nil}) +channel Signup { + out accounts(accountDB:Map, signUp(accountId:Str, name:Str)) = insert(accountDB, accountId, {"name": name, "tweets": nil}) } channel Tweet(accountId:Str) { diff --git a/AlgebraicDataflowArchitectureModel/src/parser/Parser.java b/AlgebraicDataflowArchitectureModel/src/parser/Parser.java index 49d8596..9f9ea4a 100644 --- a/AlgebraicDataflowArchitectureModel/src/parser/Parser.java +++ b/AlgebraicDataflowArchitectureModel/src/parser/Parser.java @@ -464,14 +464,14 @@ // lower priority than add and sub if (first != null) monomials.add(first); Expression firstMonomial = monomials.get(0); - i = 1; + int j = 1; for (Symbol op2: addSubs) { - Expression secondMonomial = monomials.get(i); + Expression secondMonomial = monomials.get(j); Term term = new Term(op2); term.addChild(firstMonomial); term.addChild(secondMonomial); firstMonomial = term; - i++; + j++; } if (rootTerm == null) { rootTerm = new Term(op); @@ -484,6 +484,7 @@ } monomials.clear(); addSubs.clear(); + first = second; } else { // add or sub ==> new monomial monomials.add(first);