public static Expression newLiteral(Token tok)
	{
		switch(tok.getKind())
		{
		case TRUE: return new LiteralBool(tok.getLineNumber(), tok.getCharPos(), LiteralBool.Value.TRUE);
		case FALSE: return new LiteralBool(tok.getLineNumber(), tok.getCharPos(), LiteralBool.Value.FALSE);
		case INTEGER: return new LiteralInt(tok.getLineNumber(), tok.getCharPos(), Integer.valueOf(tok.getLexeme()));
		case FLOAT: return new LiteralFloat(tok.getLineNumber(), tok.getCharPos(), Float.valueOf(tok.getLexeme()));
		default: return new Error(tok.getLineNumber(), tok.getCharPos(), "Unknown Operation: " + tok);
		}
	}