Author Topic: AutoLisp IDE Question  (Read 7070 times)

0 Members and 2 Guests are viewing this topic.

pkohut

  • Guest
AutoLisp IDE Question
« on: August 28, 2009, 07:17:58 PM »
The IDE that comes with AutoCAD gets the job done, but not without showing its age and
some glaring problems.  For most of us VLIDE is used by default, even when better editors
exist, mainly because of the debugging capabilities VLIDE have.

So, assume you've built the best IDE ever, bar none, VS is a distant 2nd place runner up
compared to your IDE.  There is just one problem, if it can't interactively debug lisp applications
NO ONE will ever use it.  How would you go about implementing the debugging features?

I'm guessing there are just 2 methods that would work -
  • Interface with the VL.arx API?  It's not an open API so this would require some reverse engineering.
  • Implement a full VLisp stack via your own interpreter?

I'm just brainstorming a bit and leaning towards the second item.  Would really like to get the thoughts
of others on how they would approach the problem.  FWIW, I have no IDE or written *any* code.  However,
if someone has already started such a project and it is open sourced, I'd like to work on it.

The graphic is some thoughts I had today.

Thanks,
Paul

« Last Edit: August 28, 2009, 07:29:00 PM by pkohut »

It's Alive!

  • Retired
  • Needs a day job
  • Posts: 8858
  • AKA Daniel
Re: AutoLisp IDE Question
« Reply #1 on: August 28, 2009, 07:50:28 PM »
I was thinking about this when I was playing around with this
http://www.theswamp.org/index.php?topic=29985.msg355644#msg355644

A lisp editor that would support a lisp 'solutions' with 'projects', that would create the necessary .PRV files for the vlisp compiler.  But the coffee buzz faded and I realized, I already have one
http://www.caelink.com/lisplink.htm It's not open source, but it's really cheap. It still would be fun though, I would like to help if the project gets off the ground

A standalone interpreter would be difficult to create as it would need to support COM functionality as well. I might start with using the VLISP engine, BTY which can be used to evaluate expressions via COM.

« Last Edit: August 28, 2009, 07:55:05 PM by Daniel »

Spike Wilbury

  • Guest
Re: AutoLisp IDE Question
« Reply #2 on: August 28, 2009, 08:13:42 PM »
Maybe something like this, could be a great addition to the OpenDCL project and a way great deal for lispers.

pkohut

  • Guest
Re: AutoLisp IDE Question
« Reply #3 on: August 28, 2009, 08:15:33 PM »
I was thinking about this when I was playing around with this
http://www.theswamp.org/index.php?topic=29985.msg355644#msg355644

Ya, that looks pretty good and I'm all in favor of a VS stylized IDE.  To me the
most important thing about an IDE is that it doesn't get in your way.  With
dockable windows that can be accomplished, by getting ride of shifting window
positions, excess dialog boxes, etc.

A lisp editor that would support a lisp 'solutions' with 'projects', that would create the necessary .PRV files for the vlisp compiler.  But the coffee buzz faded and I realized, I already have one
http://www.caelink.com/lisplink.htm It's not open source, but it's really cheap. It still would be fun though, I would like to help if the project gets off the ground
I saw that the other day (website only) and it just didn't pull my finger, but know looking at the feature list it is
something I need to look into further.

A standalone interpreter would be difficult to create as it would need to support COM functionality as well. I might start with using the VLISP engine, BTY which can be used to evaluate expressions via COM.
Can you elaborate on the COM support a bit?  I'm not fully following. 

I thought about using VL but could not come up with a clean interface without a documented API.  Going the roll
your own lisp interpreter is about the best I could come up with.  Up front it's a lot of work, but gained would be
flexibility and interoperability.

pkohut

  • Guest
Re: AutoLisp IDE Question
« Reply #4 on: August 28, 2009, 08:28:37 PM »
Maybe something like this, could be a great addition to the OpenDCL project and a way great deal for lispers.

Having never seen OpenDCL and hearing only great things about it, I'd be inclined to let it continue to do
what it does best.  If it has functionality that allows other programmers to access then that might be
something that could be leveraged.  Otherwise I a big fan of plugin software.

Kerry

  • Mesozoic relic
  • Seagull
  • Posts: 11654
  • class keyThumper<T>:ILazy<T>
Re: AutoLisp IDE Question
« Reply #5 on: August 28, 2009, 08:39:21 PM »
Maybe something like this, could be a great addition to the OpenDCL project and a way great deal for lispers.

Having never seen OpenDCL and hearing only great things about it, I'd be inclined to let it continue to do
what it does best.  ............

I agree.
kdub, kdub_nz in other timelines.
Perfection is not optional.
Everything will work just as you expect it to, unless your expectations are incorrect.
Discipline: None at all.

Kerry

  • Mesozoic relic
  • Seagull
  • Posts: 11654
  • class keyThumper<T>:ILazy<T>
Re: AutoLisp IDE Question
« Reply #6 on: August 28, 2009, 08:42:30 PM »

Paul,
Is your goal stand alone debugging ?

.. Due to the interactive nature of the VLIDE with AutoCAD objects (graphics and tables), that would be an enormous task.


kdub, kdub_nz in other timelines.
Perfection is not optional.
Everything will work just as you expect it to, unless your expectations are incorrect.
Discipline: None at all.

It's Alive!

  • Retired
  • Needs a day job
  • Posts: 8858
  • AKA Daniel
Re: AutoLisp IDE Question
« Reply #7 on: August 28, 2009, 08:58:25 PM »
Can you elaborate on the COM support a bit?  I'm not fully following. 

Just saying that it would be a lot of work writing an interpreter that can evaluate expressions like
 (vlax-create-object "ADODB.Connection") , (vla-get-ModelSpace ActiveDocument) . etc


pkohut

  • Guest
Re: AutoLisp IDE Question
« Reply #8 on: August 28, 2009, 09:02:58 PM »

Paul,
Is your goal stand alone debugging ?

.. Due to the interactive nature of the VLIDE with AutoCAD objects (graphics and tables), that would be an enormous task.

Debugging would definitely be done via an ARX module *some how*.  If a new lisp interpreter was called for, also written
in ARX, then the debugging capabilities would just be an extension of the interpreter.  That's the big question, how to
go about the plumbing?

Spike Wilbury

  • Guest
Re: AutoLisp IDE Question
« Reply #9 on: August 28, 2009, 09:14:11 PM »
Is this project someone else just started? and to provide a replacement of this old Vital Lisp IDE... sound like a great task.

All the luck to you!

It's Alive!

  • Retired
  • Needs a day job
  • Posts: 8858
  • AKA Daniel
Re: AutoLisp IDE Question
« Reply #10 on: August 28, 2009, 09:23:49 PM »
call acedEvaluateLisp and put the result on the stack  :laugh:

pkohut

  • Guest
Re: AutoLisp IDE Question
« Reply #11 on: August 28, 2009, 09:29:11 PM »
Is this project someone else just started? and to provide a replacement of this old Vital Lisp IDE... sound like a great task.

All the luck to you!

Nothing started, was just thinking to myself kind of low level about what it would take to implement debugging hooks.
The swamp collective can come up with many more ideas and maybe someone, or a group can pick it up as a project
to persue.  If it was open source then all the better  :-)

pkohut

  • Guest
Re: AutoLisp IDE Question
« Reply #12 on: August 28, 2009, 09:32:37 PM »
call acedEvaluateLisp and put the result on the stack  :laugh:

That's a thought  :-) Setting and triggering break points could be an issue.

Spike Wilbury

  • Guest
Re: AutoLisp IDE Question
« Reply #13 on: August 28, 2009, 09:33:04 PM »
call acedEvaluateLisp and put the result on the stack  :laugh:

I bet that's what the guys from basis did ... no reinventing the wheel....

pkohut

  • Guest
Re: AutoLisp IDE Question
« Reply #14 on: August 28, 2009, 11:27:33 PM »
call acedEvaluateLisp and put the result on the stack  :laugh:

Hmm, you might be on to something there, a little further digging...
http://www.intellicad.net/forum/topics/intellicad-lisp-debugger?page=1&commentId=2285825%3AComment%3A3361&x=1#2285825Comment3361
and that's your 'noggin / avatar :-)

Now go up 2 messages to the post made by iCadSalescom Jan 27, 2009 at 11:28am.
He gives 2 links to lisp debuggers, these things are OLD, but they shed some light on
a possible approach.

Wheels are turning.