<div dir="ltr">Hi all,<div><br></div><div>Thanks for the questions on the REPL.</div><div><br></div><div>With respect to incorporating a REPL into another program, the text-based Swift REPL is available in and implemented via LLDB. As Swift LLDB is implemented on top of LLDB, there are two projects involved with regards to the source. The source code for the core of LLDB (as available via <a href="http://llvm.org">llvm.org</a>) is available according to the terms of the license as spelled out at <a href="http://llvm.org">llvm.org</a>. The Swift-specific parts (i.e. any files not in the <a href="http://llvm.org">llvm.org</a> LLDB source base) are available according to the license as specified at <a href="http://swift.org">swift.org</a>. I would direct you to those licenses to see if they are compatible with your desired usage.</div><div><br></div><div>There are at least a few apps that incorporate LLDB into their IDEs, either via the SB API (the LLDB C++-based API), via the GDB Remote protocol, and via the GDB mi protocol (via lldb-mi). It is definitely possible to go the route of setting up an app that communicates with LLDB to get a REPL experience that way.</div><div><br></div><div>I'll be able to comment more directly on questions this upcoming week.</div><div><div>-- <br></div><div class="gmail_signature"><div dir="ltr">-Todd</div></div>
</div></div>