[llvm-dev] [cfe-dev] [RFC] Moving (parts of) the Cling REPL in Clang
Vassil Vassilev via llvm-dev
llvm-dev at lists.llvm.org
Sat Jul 11 00:19:28 PDT 2020
On 7/11/20 1:50 AM, Chris Lattner wrote:
> On Jul 10, 2020, at 2:58 PM, Richard Smith via cfe-dev
> <cfe-dev at lists.llvm.org <mailto: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/
Thanks Chris! The comments <https://reviews.llvm.org/D34444#793311>
coming from John McCall allude to this that we need some broader
discussion on how we do things for incremental compilation. I still have
not forgotten that I need to get back to him with that ;)
That's one of the challenges I see. Currently upstreaming our patches
did not have enough context. Now I hope that we can start with something
minimal (and likely wrong) but we will have a common tool in the context
of which we can discuss how to make things better. Putting swift-repl
folks, lldb folks and cling folks in one virtual room may be helpful.
>
> -Chris
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200711/00fd294f/attachment.html>
More information about the llvm-dev
mailing list