3 ms·
I'd be delighted to discover new (as in new-to-me), high-quality IDEs and GUI toolkits, especially those drawing on Smalltalk or CLIM heritage, if you have any
by tonyg 8y ago
I'd be delighted to discover new (as in new-to-me), high-quality IDEs and GUI toolkits, especially those drawing on Smalltalk or CLIM heritage, if you have any recommendations. Which Lisp IDEs do you enjoy using?
- lispm 8y agoI've started many years ago with programming on the Mac using MacScheme - that was cool. Then Macintosh Common Lisp, which was really really great and later developed and sold by Apple for a few years - that was used for a lot of UI stuff. The later kind-of successor Clozure CL is more limited - it gets some basics right, but the IDE is limited. Nowadays I'm using LispWorks - which is commercial&expensive - but which has useful IDE and it gets many things right. It has also some CLIM influence in its CAPI UI toolkit. For example this in Racket 7 in the listener: (define (foo i) (if (zero? i) i (begin (write i) (foo (- i 1))))) (foo 10000) Takes around 20 seconds on my Macbook. This in the LispWorks 7.1.1 listener on the same Macbook: (compile (defun foo (i) (if (zerop i) i (progn (write i) (foo (- i 1)))))) (foo 10000) it runs in less than 1 second.
- tonyg 8y agoThanks for the pointers. Is LispWorks the only currently-available IDE you'd recommend? The example you've given runs very quickly in Racket; it completes in some vanishingly small fraction of a second. Perhaps you were running it in DrRacket? If you're interested in any kind of performance in Racket, use the console REPL rather than DrRacket. The IDE instruments the code quite heavily, slowing it down rather a lot. [ETA: For me, on a Linux machine, it takes 13ms in a terminal, and 227ms in DrRacket. I wonder why you were seeing the code run 100x slower than that? Perhaps it's a DrRacket-on-OSX thing.] [ETA 2: There's clearly some buffering going on. Display of the text is the slowest part in DrRacket, and 227ms isn't enough time to plausibly include the text-rendering, so measuring this stuff is basically just hard. The terminal, unsurprisingly, is better at printing text quickly :-) ]
- lispm 8y ago> Is LispWorks the only currently-available IDE you'd recommend? For some stuff Clozure CL is useful enough. An interesting Lisp IDE for music composition was developed with it: https://opusmodus.com https://opusmodus.com Allegro CL would be a good option on Windows/Linux - on Mac it is not native. But it's also commercial and expensive. > Perhaps you were running it in DrRacket yes, and when you resize the window the program stops while resizing...