예제 #1
0
파일: List.java 프로젝트: TonyClark/XPL
 public Value append(List l2) {
   Value[] elements = new Value[size() + l2.size()];
   for (int i = 0; i < size(); i++) elements[i] = elementAt(i);
   for (int i = 0; i < l2.size(); i++) elements[i + size()] = l2.elementAt(i);
   return new List(elements);
 }
예제 #2
0
파일: Cons.java 프로젝트: TonyClark/XPL
 public void exec(Machine machine) {
   List list = (List) machine.popValue();
   Value value = machine.popValue();
   machine.pushValue(List.cons(value, list));
 }
예제 #3
0
파일: List.java 프로젝트: TonyClark/XPL
 public static List cons(Value head, List tail) {
   Value[] values = new Value[tail.size() + 1];
   values[0] = head;
   for (int i = 0; i < tail.size(); i++) values[i + 1] = tail.elementAt(i);
   return new List(values);
 }