It's very much undocumented. It's also very ad-hoc since I just added
functions as they were needed.

You can see the implementation in the GNU APL source under src/emacs_mode I
think. Every command is in its own file with a name ending with *Command.cc.

I'm on the phone right now so I can't give you a comprehensive list, but
there are commands that do:

Show the implementation of a function
Define a new function
List all functions, variables
Trace updates to a variable
List all system commands
List all quad-variables
Show the si-stack
Clear the si-stack
Get the tag for a function (the tag contains the source file and line where
it was defined)

If you need other commands, it's trivial to add.

Regards,
Elias
On 15 Aug 2014 04:24, "Chris Moller" <mol...@mollerware.com> wrote:

>  I'll take a look at that.  Is your protocol documented somewhere?  Or is
> it implicit in gnu-apl-mode/native?
>
> cm
>
>
> On 08/13/14 23:28, Elias Mårtenson wrote:
>
> Hello Chris,
>
>  I've been following the discussions about the GTK wrapper, and while I'm
> not using it myself (since I work on the Emacs integration) I realise that
> there are plenty of (potential) overlaps between our projects.
>
>  In particular, I want to let you know about the Emacs mode backchannel
> protocol that the mode uses for directly communicating with the GNU APL
> interpreter. When started, if gives you a simple text-based protocol
> through which you can do things such as defining functions or creating
> listeners that send you a message whenever a variable is changed (this is
> used by the realtime variable watcher).
>
>  It would be neat if you were to consider implementing some of the
> feature I added to the Emacs mode, and if you do it would be useful if you
> used the same protocol as I am using.
>
>  Please let me know if you have any questions.
>
>  Regards,
> Elias
>
>
>

Reply via email to