sclass ThoughtSpace { new L statements; new HashSet statementsIndex; new LinkedHashMap concepts; void addStatement(Lisp l) { if (!containsStatement(l)) { statements.add(new LispStatement(l)); statementsIndex.add(l); } } bool containsStatement(Lisp l) { ret statementsIndex.contains(l); } }