How do I quit swift repl without using ctrl-d?

Ankit Goel picture Ankit Goel · Jun 11, 2015 · Viewed 10.2k times · Source

I want to quit swift repl gracefully and not use ctrl-d to exit it.

For eg. python repl can be exited by typing exit(). Is there a similar way of quitting swift repl?

Answer

l --marc l picture l --marc l · Nov 20, 2015

This answer complements Ankit Goel's correct :quit answer to also (1) provide an understanding of why the : is needed and (2) other options besides :quit.

Swift REPL works in conjuction with the LLDB debugger.

: is a REPL escape prefix to execute an LLDB command. From within REPL, :help will list the available LLDB commands.

Any of the following will quit both Swift REPL and subsequently LLDB with a single command line.

:exit
:quit
:q

One can also exit REPL into LLDB with just : and, then later quit (or exit) using the LLDB command directly.

sh$ swift
  Welcome…
1> print(18 + 4)
  22
2> :
(lldb) print "hello"
  (String) $R0 = "hello"
(lldb) quit
sh$

Addendum: The LLDB command c or continue can be used to return to the Swift REPL environment.