[llvm-dev] [cfe-dev] [RFC] Moving (parts of) the Cling REPL in Clang

Chris Lattner via llvm-dev llvm-dev at lists.llvm.org
Fri Jul 10 15:50:16 PDT 2020


On Jul 10, 2020, at 2:58 PM, Richard Smith via cfe-dev <cfe-dev at lists.llvm.org> wrote:
> 
> One other thing I think we should consider: there will be substantial overlap between the incremental compilation, code generation, REPL, etc. of cling and that of lldb. For the initial integration of cling into LLVM, there's probably not much we can do about that, but it would seem beneficial for both cling and lldb if common parts could be shared where possible. As an extreme example, if we could fully unify the projects to the point where a user could switch into an 'lldb mode' in the middle of a cling session to do step-by-step debugging of code entered into the REPL, that would seem like an incredibly useful feature. Perhaps there's some common set of base functionality that can be factored out of lldb and cling and unified. It would likely be a good idea to start talking to the lldb folks about that early, in case it guides your work porting cling to trunk.

This is a really good point.  I’m not sure how much awareness there is on this list, but the Swift REPL is worth looking at if you haven’t seen it.  It is built on/in LLDB, and provides some really nice user experience features.

For example, if you evaluate an expression that crashes, you get a full backtrace and integrated debugger experience.  There are a couple of examples on this page, and more detailed info online:
https://swift.org/lldb/ <https://swift.org/lldb/>

-Chris

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200710/2df9f3d1/attachment.html>


More information about the llvm-dev mailing list