     case EndOfFile
 }
 
+// Parse input
 guard Process.arguments.count == 2 else {
     fatalError("usage: \(Process.arguments[0]) [filename]")
 }
 let filename = Process.arguments[1]
 
+// Load file
 let system: Logic
 if let file = FileStream(filename) {
     do {

        }
    }
} catch {
    print("")
}

    fatalError("Invalid filename")
}

// Run loop
do {
    while true {
        // Print prompt
        print("? ", terminator: "")
        
        // Get line
        guard let line = InputStream().getLine() else { throw InputError.EndOfFile }
        do {
            // Parse query
            let q = try terminating(query).parse(line.characters)
            
            // Run query
            let success = system.query(q) { results in
                if results.isEmpty {
                    print("True")
