See the top rated post in this thread. Click here

Page 3 of 3 FirstFirst 123
Results 21 to 27 of 27

Thread: DotNet Visual Lisp

  1. #21
    Programming Moderator BlackBox's Avatar
    Join Date
    2009-11
    Posts
    5,208


    Default Re: DotNet Visual Lisp

    Couldn't find anything newer in my quick search, note LISP's position in the results:



    linky
    "Potential has a shelf life." - Margaret Atwood
    AutoCAD, and Civil 3D Certified Professional | Autodesk Authorized Developer
    Sincpac C3D ~ Autodesk Exchange Apps

  2. #22
    Certifiable AUGI Addict irneb's Avatar
    Join Date
    2015-11
    Location
    Jo'burg SA
    Posts
    4,512


    Default Re: DotNet Visual Lisp

    Yep, and for those "professional" ASM'ers / C'ers / C++'ers / Net'ters who think Lisp is just not a language to consider: http://www.lispworks.com/products/my...d_legends.html

    It actually sounds more like the other way round to me! Think about this:

    • A language where you have very little to actually program (between 5 and 10 times less than those C/C++/C#/VB.Net textbooks to draw a line);
    • Debugging is a breeze due to being able to run as interpreted and compiled interchangeably & mix-ably.
    • Compilation can be fine-grained for safe/fast/extreme optimizations all the way between an entire project, a single file, a group of function, a single function, or even just one or more lines inside a function. Try that one with C!
    • And then if you think it doesn't compile as efficiently ... most implementations of Lisp actually use a C compiler to produce native code ... so no, that's the exact same optimization you get from your own C compiler (never mind the slow, inefficient, and bloated C# / VB.Net)
    • You don't need to worry about errors since it won't crash the entire system, not even the calling function;
    • No need to know every little detail of compiled libraries if you want to reuse them, not to mention this same flexibility is available when communicating between Lisp and other languages;
    • The code can extremely easily modify itself to suit an un-thought-of situation, allowing for general purpose programs, without needing to think of every possible eventuality
    • The object orientation is so far in excess of what C++ / C# / VB attempts to even get to as to be in a CLASS of its own! Not even a benchmark to aim at for the others, rather a god in comparison to some pond-scum. Actually it was the very first OOo language to receive any form of standardization certificate and that from ANSI - while C was still floundering about with trying to affix some OO code to what's now known as C++. While the others were still grappling with concepts of inheritance, Lisp CLOS was evolving into something which took the concept of poly-morphism to all aspects of OO - back-and-forth between type / class / instance / method / property / etc. at any time including runtime. Thus CLOS is not just a Programming OO system, but also an Executing Modular Replaceable Object Orientation system - the others have no such concept at all!
    • Absolutely consistent code, there's extremely simple grammatical rules, unlike the incredibly complex C / C++. Even much more consistent than the "try to be consistent" C# / VB.Net
    • Built in types are at least comparable to the others, and in most cases in excess: E.g. you have to program your own Linked List in C, not so in Lisp!
    • Extending the built-in types can even be done after you program has been compiled! Once you notice you need something extra, just run the code to add it - no need to even recompile to various platforms.
    • Multi-tasking is built-into the very essence of Lisp. Even providing a portable threading concept - with C you need to do your threading native to the OS, so you can't simply recompile to a different environment.

    Aaggghhh! I give up! If someone still believes C/C++ or even those DotNet things are "good" languages to waste your time in, then they're masochists - actually deriving pleasure from making their lives as difficult as possible.
    Knowledge is proportional to experience, but wisdom is inversely proportional to ego!
    My little bit of "wisdom": Hind-sight is useless, unless used to improve the next forethought!

  3. #23
    Programming Moderator BlackBox's Avatar
    Join Date
    2009-11
    Posts
    5,208


    Default Re: DotNet Visual Lisp

    Quote Originally Posted by irneb View Post
    Aaggghhh! I give up! If someone still believes C/C++ or even those DotNet things are "good" languages to waste your time in, then they're masochists - actually deriving pleasure from making their lives as difficult as possible.
    ... Or, as in my case, I'm going to be switching back-and-forth between Civil 3D and Microstation.

    LISP, while I truly enjoy developing with it, is only (partially) supported by one of the platforms I am expected to work with (C3D). Whereas .NET is supported by both, and with enhanced feature exposure.

    Now, if you've got a way to extend LISP, I'd love to hear about it..? (<- Way above my skill)
    "Potential has a shelf life." - Margaret Atwood
    AutoCAD, and Civil 3D Certified Professional | Autodesk Authorized Developer
    Sincpac C3D ~ Autodesk Exchange Apps

  4. #24
    Programming Moderator BlackBox's Avatar
    Join Date
    2009-11
    Posts
    5,208


    Default Re: DotNet Visual Lisp

    Irneb, I saw the Wiki page you created (briefly)... so where does one begin to create the (vl-load-arx) type library functionality?
    "Potential has a shelf life." - Margaret Atwood
    AutoCAD, and Civil 3D Certified Professional | Autodesk Authorized Developer
    Sincpac C3D ~ Autodesk Exchange Apps

  5. #25
    Certifiable AUGI Addict irneb's Avatar
    Join Date
    2015-11
    Location
    Jo'burg SA
    Posts
    4,512


    Default Re: DotNet Visual Lisp

    At present I'm not going down that road, though to make such would be a form of acedDefun. The original idea would have been to create a defun for each method / property of an entity.

    What I'm now considering is (seeing as it's impossible to overwrite the AutoLisp interpreter inside the ACAD.EXE file) I'm working on implementing a secondary lisp interface. One which works similar to what the old VBA did (i.e. have CL-Load, CL-Run, etc. as commands, but also as AutoLisp defuns). That way you can at least call a *.lisp file to run in ACad.

    The reason I'm not attempting to simply extend all the methods to defuns is it would be a huge task if I can't get some form of runtime code generation. In C++ that's just way too complicated, though in CL it's par for the course!

    After I've got ECL working inside ACad I'll look at implementing acedDefuns from CL itself ... thus creating a direct link between ALisp and ECL - and using acedInvoke to also have a reverse link. That way old LSP/FAS files would work through the normal AutoLisp/VisualLisp interpreter, yet be able to communicate with the new LISP/FASL files loaded into the ECL interpreter - which in turn can link to ObjectARX classes (and if I further implement RNDZL it can link to DotNet as well). You see, all I need to do in order to have ECL link to ARX files is import the C++ header files (*.H) from the SDK - then it can generate CLOS classes from those directly and much more easily then generate the acedDefun's on the fly. If I wanted to do such in C++ I'd have had to code each one of those manually ... painful aint it?

    Thus you can use your old code as is, and have anything new in the LISP file - able to extract data to and from each other. At least that's the plan. It's not perfect, but ADesk makes it impossible to make it perfect! The only spot where I'm bumping my head as yet is to get the C++ ARX which loads ECL as an in process interpreter. I'm trying to follow a similar path to what Kean did with that Python interpreter, though not implementing it through DotNet.

    The reason I don't want it through DotNet is 2 fold: DotNet doesn't have a way of directly calling an AutoLisp function (so there's little change of making stuff like reactors and call-backs). But more importantly, I'd like this thing to work on all versions of ACad (even on Mac).
    Knowledge is proportional to experience, but wisdom is inversely proportional to ego!
    My little bit of "wisdom": Hind-sight is useless, unless used to improve the next forethought!

  6. #26
    Programming Moderator BlackBox's Avatar
    Join Date
    2009-11
    Posts
    5,208


    Default Re: DotNet Visual Lisp

    Speak of the devil:

    New AutoLISP Functions in AutoCAD 2012 for Mac

    ^^ Posted today

    It's no ARX equivalent, but at least they enhanced something!
    "Potential has a shelf life." - Margaret Atwood
    AutoCAD, and Civil 3D Certified Professional | Autodesk Authorized Developer
    Sincpac C3D ~ Autodesk Exchange Apps

  7. #27
    The Silent Type
    Join Date
    2015-10
    Location
    Portland, OR
    Posts
    3


    Default Re: DotNet Visual Lisp

    Irneb, just curious, have you made progress with this?
    Tom

Page 3 of 3 FirstFirst 123

Similar Threads

  1. visual lisp editor should be like visual studio
    By Wish List System in forum AutoCAD Wish List
    Replies: 1
    Last Post: 2011-11-17, 05:33 PM
  2. Programacion en Lisp y Visual Lisp
    By ralmavar in forum Español - AutoCAD / AutoCAD LT
    Replies: 7
    Last Post: 2009-06-15, 01:52 PM
  3. Visual LISP vs VBA
    By lxpichet in forum AutoCAD Customization
    Replies: 14
    Last Post: 2009-04-07, 10:56 PM
  4. Visual LISP: If and then?
    By mikelf in forum AutoLISP
    Replies: 4
    Last Post: 2008-04-17, 10:46 PM
  5. Replies: 2
    Last Post: 2008-02-01, 09:05 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •