Package de.tuhrig.thofu.types

Examples of de.tuhrig.thofu.types.LList


   
    tokens.remove(0);    // remove ) after (i; i <...
   
    increment.add(new Token(";"));    // add a ; to the final increment instruction

    LList loop = new LList();
   
    loop.add(type("for"));
    loop.add(parse(define));
    loop.add(parse(condition));
    loop.add(parse(increment));
   
   
    LList begin = new LList(type("begin"));
   
    getSubListAndClear(tokens, 0, tokens.indexOf(new Token("{")));
   
    tokens = tokens.subList(1, tokens.size() - 1);
   
    for(List<Object> list: split(tokens)) {

      begin.add(parse(list));
    }
   
    loop.add(begin);
   
   
View Full Code Here


   
    tokens.remove(0);    // remove ) after (i; i <...
   
    condition.add(";");    // add a ; to the final increment instruction

    LList loop = new LList();
   
    loop.add(type("while"));
    loop.add(parse(condition));
    loop.add(parse(tokens));
   
    return loop;
  }
View Full Code Here

   
    tokens.remove(0);    // remove ) after (i; i <...
   
    condition.add(";");    // add a ; to the final increment instruction

    LList loop = new LList();
   
    loop.add(type("do"));
    loop.add(parse(condition));
    loop.add(parse(tokens));
   
    return loop;
  }
View Full Code Here

        instructions.add(current);
        current = new ArrayList<Object>();
      }
    }

    LList let = new LList();
   
    let.add(type("begin"));        // let and begin!!!!! TODO

    for(List<Object> instruction: instructions) {

      let.add(parse(instruction));
    }

    return let;
  }
View Full Code Here

   
    int position = getParenthesisBalance(tokens, 0, "(", ")");
   
    List<Object> parameterTokens = getSubListAndClear(tokens, 1, position);

    LList paras = new LList();

    for(Object t: parameterTokens) {
     
      if(!t.equals(",")) {
       
        List<Object> current = new ArrayList<Object>();
        current.add(t);
        current.add(";");
        LList inner = parse(current);
        paras.add(inner.get(0));
      }
    }

    LList lambda = new LList();
    lambda.add(type("lambda"));
    lambda.add(paras);
   
    LList begin = new LList(type("begin"));
   
    getSubListAndClear(tokens, 0, tokens.indexOf(new Token("{")));
   
    tokens = tokens.subList(1, tokens.size() - 1);
   
    for(List<Object> list: split(tokens)) {

      begin.add(parse(list));
    }
   
    lambda.add(begin);

    return lambda;
View Full Code Here

        }
      }
    }
    else {
     
      list.add(new LList());
    }
   
    // ------------------------------------------
    // Return the parsed if-else block
    // ------------------------------------------
View Full Code Here

    return list;
  }

  private LList chain(LList list, List<Object> tokens) {

    LList first = parse(tokens);
   
    first.add(1, strip(list));
   
    return first;
  }
View Full Code Here

      )
     */
   
    token = token.toString().replace(symbol, "");
   
    LList define = new LList();
    define.add(type("define"));
    define.add(type("tmp"));
    define.add(type(token));
   
    LList set = new LList();
    set.add(type("set!"));
    set.add(type(token));
    set.add(new LList(type(replacement), type(token), type("1")));
   
    LList result = new LList(type("tmp"));
   
    LList begin = new LList(type("begin"), define, set, result);
   
    list.add(type("lambda"));
    list.add(new LList());
    list.add(begin);
   
    return new LList(list);
  }
View Full Code Here

      )
     */
   
    token = token.replace(symbol, "");

    LList set = new LList();
    set.add(type("set!"));
    set.add(type(token));
    set.add(new LList(type(replacement), type(token), type("1")));
   
    LList result = new LList(type(token));
   
    LList begin = new LList(type("begin"), set, result);
   
    list.add(type("lambda"));
    list.add(new LList());
    list.add(begin);
   
    return new LList(list);
  }
View Full Code Here

TOP

Related Classes of de.tuhrig.thofu.types.LList

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.