From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 95881 invoked by alias); 20 Sep 2017 07:05:18 -0000 Mailing-List: contact kawa-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: kawa-owner@sourceware.org Received: (qmail 95859 invoked by uid 89); 20 Sep 2017 07:05:16 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM,KAM_LAZY_DOMAIN_SECURITY autolearn=no version=3.3.2 spammy=frustrating, H*r:Unknown, tricks, spend X-HELO: blaine.gmane.org Received: from Unknown (HELO blaine.gmane.org) (195.159.176.226) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 20 Sep 2017 07:05:14 +0000 Received: from list by blaine.gmane.org with local (Exim 4.84_2) (envelope-from ) id 1duZ4A-0005Ge-Pd for kawa@sourceware.org; Wed, 20 Sep 2017 09:05:02 +0200 To: kawa@sourceware.org From: Helmut Eller Subject: Re: Environment Introspection Date: Wed, 20 Sep 2017 07:05:00 -0000 Message-ID: References: <87lgldyrg8.fsf@nexoid.at> <1222b13d-969b-d59f-4808-280199b140bc@bothner.com> <87efr4a7ft.fsf@nexoid.at> Mime-Version: 1.0 Content-Type: text/plain User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) X-IsSubscribed: yes X-SW-Source: 2017-q3/txt/msg00070.txt.bz2 On Mon, Sep 18 2017, Peter wrote: > I want actual debugging, When I tried to implement debugging for SLIME, I found Kawa quite frustrating and eventually gave up for the following reasons: Debugging, the way SLIME does it, is difficult/impossible because Kawa uses JVM exceptions for most error handling. While Kawa has now `with-exception-handler', few people use it and certainly no Java libraries use it. The Kawa code base also has the idiom try {...} catch (Throwable x) in a number of places, with defeats tricks based on com.sun.jdi.request.ExceptionRequest.notifyUncaught. Another problem with Kawa are the unstable/non-existing/constantly changing APIs to Kawa internals. I would suggest that you work as closely as you can with Per, so that he is aware of the issues and doesn't (unintentionally) break your work. For that reason, it makes a lot of sense to use LSP. LSP may not have a "standard" API for debugging, but I think it's fairly easy to add extensions to LSP for whatever you like. I would also expect that writing an Emacs front-end for LSP is easy/fun in comparison to digging around in Kawa internals. So let Per do the hard work on the Kawa side to make a good LSP server and spend your time in on the Emacs side :-). Helmut