[ prog / sol / mona ]

prog


A Lisp hacker

14 2019-10-05 18:47

More recently, I've been rewriting the Common Lisp and gaining structure to my idea. Now I feel as if I may be able to continue with the Common Lisp or Ada, so at least I'm making good progress. Just yesterday, I started rewriting a Rule 30 implementation in CHIP-8 and greatly improving it, for the Octo Jam VI, and I forgot some details. I may have an article documenting it available, today.

>>13
Hello. Be made aware that I've been banned from that website, so you likely won't be seeing much of my work there any longer. I'm not upset about this, because I didn't particularly care for that website to start with; I much prefer these venues, where I need no account and whatnot; I'm not anonymous with this message, but that's by choice, as I could easily enter any discussion here anonymously. Here, I can only be judged by those messages that may be connected to me, whereas on that website I was judged by my entire history; I received too many ``downvotes'', apparently making my way to receiving the most out of anyone, and was banned for it. A lack of ``downvotes'' in these anonymous venues is another nicety, as the idea is clearly broken to anyone who cares to mull it over.

In any case, I'm glad you've enjoyed my work. I would consider mentioning my work here more regularly, but I don't want to obnoxiously use this website; it's also important to stress that, with what little I've done, I've arguably taken a more general thread and made it about myself, which could be considered poor form. If you'd care to be made aware of my recent going ons, I recommend you poll my RSS feed and occasionally poll my Finger service.

Do you have opinions on ECL and Clasp (excuse the conflation but I think you see what I am getting at)?

I don't know enough about Clasp to know how its interfacing compares to ECL's FFI:C-INLINE, et al. I prefer to write portable Common Lisp, so I'm only lightly intrigued by such interfacing, anyway.

In your opinion do these implementations offer major ease of use advantages over CFFI?

I don't use the CFFI, so I don't know. I've written little ECL interfacing and I very much dislike how FFI:CLINES only works when compiled, yet doesn't properly behave with EVAL-WHEN at :COMPILE-TOPLEVEL only; to get the behavior I needed, I had to wrap it with an IGNORE-ERRORS, instead, which I found ridiculous.

The portablility tradeoff is obvious but I am sure there's a lot more to discuss...

Programming with Ada has shown me how poor Common Lisp's interfacing functionality is and more of why I've been right to seek to avoid it. Writing a system interface binding is much more arduous, because one is restricted to what each implementation supports, if one wants to avoid CFFI and other such things which add complications. In sum, it's overly complicated and I'll continue to seek to avoid it where I can; sans networking and multiple threads of program execution, there's not much good reason to write such nonstandard Common Lisp, I think, and I'll simply take care to write even those programs in a way that avoids intimately marring them from such considerations. As an example, it's usually simple to see how to write a networking program that communicates over streams and leaves the actual system interfacing that connects it to the network elsewhere, so that the majority is perfectly portable Common Lisp.

Learning Ada has made me a better programmer, I think.

169


VIP:

do not edit these