This is the mail archive of the kawa@sourceware.org mailing list for the Kawa project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: define-simple-class vs modules


Hi Per,

On 31 January 2011 19:25, Per Bothner <per@bothner.com> wrote:
>> I'm working on a scheme editing mode similar to Schemeway,
>
> Interesting - could you tell us more?

Sure - I'm creating an editing mode for Scheme based on IntelliJ. It
provides a really excellent framework for this sort of mode. It's
pretty basic at the moment, but I have most of the basics in place
(code formatting, REPL, navigation within a single file, rename,
completion etc). I'm pretty busy this week, but hopefully next week
I'll get it tidied up and released so people can try it out. Currently
it's pretty generic but I'd like to make it much more aware of both
SISC and Kawa, and my mid-term goal is to convert it fully to Kawa so
the mode itself is written in Scheme. To that end I'm working on a
Java to (non-idiomatic) Scheme converter to do the majority of the
grunt work.

Unfortunately the documentation for IntelliJ is a little sparse, so
I'll need to get debugging support working first, developing the
plugin is almost impossible without that.

> Traditional reflection is not a great solution for an IDE.
>
> If you have source code, you really want to parse it, so you
> can get trees - with line+column information, and references
> from uses to definitions.

Yeah, currently I bundle the Kawa jar, but I've thought about bundling
the source code jar as well - that's probably a better solution.

> Though one benefit of gnu.bytecode is that it provides the same API
> layered on core reflection as for reading from class files. ?One could
> layer a source-leverl reflection API on gnu.bytecode so it works
> with either core reflection or reading class files.

That sounds pretty nice, that would be a useful approach I think. I
haven't got to the stage of understanding inter-module navigation yet,
but that will be coming up soon.

Cheers,
Colin


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]