Jump to content

Lisp usage in 2024?


Pixel_Outlaw

Recommended Posts

Hello All,

I'm a fairly accomplished Lisp programmer looking to switch careers and get into CAD.
I'm fluent in 5 or so dialects of Lisp (Common Lisp, Scheme, Clojure, Emacs Lisp, more recently InterLisp).
I do Clojure as a software engineer professionally (it's a dialect of Lisp) but I feel I'd like to get back to drafting.

I suppose I have some questions (and I'll offer some cool VisualLISP as a introduction :) )

1. How common is VisualLISP these days professionally? I can program in other languages but my heart is in Lisp as a programmer.
2. Can you make a career out of VisualLISP and scripting or do I need a drafting degree for serious employment?
3. Any advice to switch careers would be helpful. I'm a software engineer but I do have highschool and college credits towards AutoCAD which I enjoyed.
4. What products use VisualLISP? I believe I've seen BabaCAD, BricsCAD and of course AutoCAD.

I'll offer a useful VisualLISP function as my first "hello" here. :)
It was written on AutoCAD 2004, not sure how much the language has changed but that's all I have at hand.

;; This lets you filter a list of ANY structure using a keep function
(defun filter (collection keep-fn / temp)
  (foreach i collection
    (if (keep-fn i)
      (setq temp (cons i temp))))
  (reverse temp))

;; Example usage (higher order functions FTW!)
;; (filter '((1 . 2) (3. 4) (5 . -6) (7 . -8)) (lambda (n) (> (cdr n) 0)))
;; returns ((1 . 2) (3 . 4))


 

Edited by Pixel_Outlaw
Link to comment
Share on other sites

There is a market for serious program development, that is where the customer is prepared to pay for a solution, some examples a 3 hr manual task now 2 minutes, a multi high rise window panel all dimensioned like wise 2 minutes and so on, many here will attest to the time savings. The big issue people don't want to pay. Thats why the lisp section here is so busy look at forums/autodesk same thing. 

 

I have a number of clients and yes they are happy to pay, they are all over the world. They contacted me.

 

A house drafting package 130 lisps took 2 years to develop. I still add options now and then. Some of my programs are like 2000 lines of code, that is for 1 task. 

 

You need to have a Cad product to code on and test I would look at Bricscad pro V24, its a reasonable price, supports lisp and VL, I would not use Autocad LT 2024 as it is missing lisp functions. There are more Cad varieties out there ZWCAD, Drafsight, plus others, only comment is don't use Get & Setproperty as its not supported in all Cad products.

 

You could go knock on doors and try to sell your services to potential clients, but it's a hard task. Yes I have done it locally with limited success very hard to convince people how muct time they are going to save to spend with the kids or more projects.

 

You need to maybe make a video showing smart solutions actually drawing something. Whilst you have offered a high end solution as an example have no idea of what it would really be used for, 40+ years programming lisp. A smart example, counting blocks, making tables, sending result to Excel is what people want, yes can read and write direct to Excel, Word and Access. May be an opportunity there. There are many here who have web sites look at what they are producing, start at Autodesk App store, look at here at Downloads.

 

Price wise I was a State dealer for a civil product full package was $9000, current version is like $2500. So don't think your going to become a millionaire over night.

 

Wish you well, I am sure others will comment.

 

 

 

Edited by BIGAL
Link to comment
Share on other sites

Posted (edited)

Hello BIGAL, thanks for your expert direction!

It sounds like rather than trying to specialize in Lisp routines, it might be good for me to get in with a drafting company who uses Lisp internally.
I can do some rudimentary drafting, and might be able to do both happily. Getting a foot in the door is kind of a mystery for me as a Software Engineer with a degree in that.

Thanks for the suggestion on BricsCAD I'll see if I can snag a copy!
Seems like AutoCAD, DraftSight, ZWCAD, BabaCAD, BricsCAD,  progeCAD compete in the smaller scale Lisp space.
One thing that just doesn't sit well with me is paying year after year for software I can't own. If I'd have done that with AutoCAD instead of keeping my 2004 copy installed on an old machine I'd have probably paid 5 figures by now. ;) It seems some others offer "perpetual" licenses which is good.

You raise a very valid point, people don't understand the LONG TERM payoffs of scripting in CAD. It's possible to save weeks of your life with a handful of well placed Lisp routines.
In my mind, if you're not programming in CAD you're not getting your full value out of the software.

Regarding my Lisp snippit. I realize now that there are multiple types of people using Lisp.
Those who write more routines (like you and I) and those who don't wish to learn Lisp but wish to use our routines.
My snippet above was for the people making new routines. Especially people who want to build routines that select or delete things based on any possible test they could come up with. (Even beyond the usual "properties" - extending for example into geometric tests)
That's why having a parameter which is a function itself is so important in the case above.
Leaving the item selection criterion open lets this function bend and contort into anything the programmer might want as far as focusing on items in a collection go.

I think you are correct, I need to demonstrate a user-centric routine not a language extension routine.
I kind of want to try making a routine that generates a gazebo from some prompted parameters.
That'd probably be very fun for me.

I have hand written Excel files in many programming languages. Probably not too terrible in visual Lisp.
I assume this would be for things like a "bill of materials" ?


Thanks for all the help!
- Ryan Burnside
 

Edited by Pixel_Outlaw
Typos
Link to comment
Share on other sites

  • 2 weeks later...

Hi @Pixel_Outlaw,

 

I'm the author of BabaCAD software and I just want to encourage you to start programming lisp in BabaCAD. There are so many users (more and more every day) switching to BabaCAD because of it's low price and because it has Lisp support, but also for developers, there are also C# (dot.Net) and VisualBasic programming API and soon there will be Python API for BabaCAD Home users. You can use your knowledge and experience in Lisp programming to help BabaCAD users to speed up their drafting work. I'm ready to put your contact (for free, no obligations) as a BabaCAD lisp developer on BabaCAD's website main page, so please feel free to contact me.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...