| int token=st.nextToken(); |
int token=st.nextToken(); |
| switch(token){ |
switch(token){ |
| case StreamTokenizer.TT_NUMBER: |
case StreamTokenizer.TT_NUMBER: |
| // System.out.println("Number: "+st.nval+"String:"+st.sval); |
System.out.println("Number: "+st.nval+"String:"+st.sval); |
| break; |
break; |
| case StreamTokenizer.TT_WORD: |
case StreamTokenizer.TT_WORD: |
| // System.out.println("WORD: "+st.sval); |
System.out.println("WORD: "+st.sval); |
| break; |
break; |
| default: |
default: |
| // System.out.println("CHARACTER: "+token); |
System.out.println("CHARACTER: "+token); |
| break; |
break; |
| } |
} |
| return token; |
return token; |
| } |
} |
| } |
} |
| public LispObject nextObject() throws IOException{ |
public LispObject nextObject() throws IOException{ |
| // System.out.println("nextObject"); |
System.out.println("nextObject"); |
| int token=nextToken(); |
int token=nextToken(); |
| // System.out.println("token="+token); |
System.out.println("token="+token); |
| switch(token){ |
switch(token){ |
| case '(': { |
case '(': { |
| // System.out.println("readList"); |
System.out.println("readList"); |
| return readList(); |
return readList(); |
| } |
} |
| case '\'': { |
case '\'': { |
| // System.out.println("quote"); |
System.out.println("quote"); |
| LispObject ret=nextObject(); |
LispObject ret=nextObject(); |
| return new Cons(Symbol.quote,new Cons(ret,Symbol.nil)); |
return new Cons(Symbol.quote,new Cons(ret,Symbol.nil)); |
| } |
} |