basic repl functionality