Codeberg @Codeberg doesn't currently detect and display Interlisp sources, which it handles as binary files. I submitted a feature request for adding Interlisp support to Forgejo:

https://codeberg.org/forgejo/forgejo/issues/8184

The developers started working on the feature and merged a pull request:

https://codeberg.org/forgejo/forgejo/pulls/8377

Thanks Forgejo and Codeberg!

#interlisp #lisp #codeberg

we're pleased to announce https://guixotic.coop, a new free software cooperative focused on gnu guix and guile cofounded by @podiki, maxim cournoyer and me. we offer services including training, commercial support, development, system administration (CI/CD, HPC), packaging -- in short, everything guix and guile.

our goal is to strengthen & expand the community, bringing in new people and organizations (our clients), supporting development work, and growing the network of organizations supporting these technologies.

could you or an organization you know of benefit from our services? email contact@guixotic.coop or contact us here!

full announcement: https://lists.gnu.org/r/guix-devel/2025-07/msg00113.html

#gnu #guix #guile #lisp #cooperatives

alcinnz
alcinnz boosted
#article #ontology #programming #formal #lisp #concrete

https://screwlisp.small-web.org/lispgames/plant-insect-bird-ontology/

Plant Insect Bird practical formal ontology with Leonardo calculus

I revisit my #lispgames #gamejam #gamedev. In this article I create a formal ontology to be a vehicle for my concrete game redux of the jam (which had been lacklustre if technically interesting. Let's be technically interesting and have more lustre this time round.

Thoughts, commentary, ontological guidance gentle and stern if you will please.

A brightfield emacs partial screenshot showing a fragment of the low-level source of the formal ontology being created

YMMV if you keep reading.
---------------------------------------------------------
-- organisms-kb

[: type kb-index]
[: latest-written "2025-07-13/03:04.+12"]
[: contents <organisms-kb organisms-kb-properties (location: organisms) (location: plants) (location: insects) (location: birds) (location: sensors) (location: world)>]
[: preferred-directory "Organisms/"]
[: nullvalued {purpose namephrase requires mustload removed-entities uses-hostcommands codefiles profile overlay-on overlay-types overlay-own hostinfo indivinfo onto-amend leos-use dont-display sections local-ents latest-archived-entity archivepoint-sequence attrib-converted latest-rearchived}]

---------------------------------------------------------
-- organisms-kb-properties

[: type loadtime-operation]
[: latest-rearchived nil]

(progn (setf (get 'organisms-kb 'init-startup-proc) #'(lambda nil nil))
 (setf (get 'organisms-kb 'end-startup-proc) #'(lambda nil nil))
 (setf (get 'organisms-kb 'exit-proc) #'(lambda nil nil)))
 
---------------------------------------------------------
-- (location: organisms)
A brightfield emacs partial screenshot showing a fragment of the low-level source of the formal ontology being created YMMV if you keep reading. --------------------------------------------------------- -- organisms-kb [: type kb-index] [: latest-written "2025-07-13/03:04.+12"] [: contents <organisms-kb organisms-kb-properties (location: organisms) (location: plants) (location: insects) (location: birds) (location: sensors) (location: world)>] [: preferred-directory "Organisms/"] [: nullvalued {purpose namephrase requires mustload removed-entities uses-hostcommands codefiles profile overlay-on overlay-types overlay-own hostinfo indivinfo onto-amend leos-use dont-display sections local-ents latest-archived-entity archivepoint-sequence attrib-converted latest-rearchived}] --------------------------------------------------------- -- organisms-kb-properties [: type loadtime-operation] [: latest-rearchived nil] (progn (setf (get 'organisms-kb 'init-startup-proc) #'(lambda nil nil)) (setf (get 'organisms-kb 'end-startup-proc) #'(lambda nil nil)) (setf (get 'organisms-kb 'exit-proc) #'(lambda nil nil))) --------------------------------------------------------- -- (location: organisms)

“The illusion of freedom will continue as long as it’s profitable to continue the illusion. At the point where the illusion becomes too expensive to maintain, they will just take down the scenery, they will pull back the curtains, they will move the tables and chairs out of the way and you will see the brick wall at the back of the theater.”

– Frank Zappa

#capitalism #freedom #democracy

A few weeks ago I wondered what it takes to turn a small LISP-1 into a LISP-2. Turns out it takes just a few hours to get most things right, then some days to iron out a few subtleties, and then a couple of weeks to polish it into a piece of art.
MICRO COMMON LISP is a tiny, purely symbolic, microscopic subset of #CommonLISP. It runs in less than 64K bytes of memory, even on #DOS (tiny model) or CP/M. Here it is:
http://t3x.org/mcl/
#CPM#LISP

Right, and then that leads us towards Common Lisp's `define-modify-macro'.

Myself, I have found it handy also in Elisp:

(prog1
<set up a buffer, make it the current buffer, and return it>
<do things in the current buffer>)

#Lisp

@amoroso @interlisp

We are happy to share the preprint and slides of the paper "The Medley Interlisp Project: Reviving a Historical Software System" by Eleanor Young et al.:

https://interlisp.org/documentation/young-ccece2025.pdf

https://interlisp.org/documentation/young-ccece2025-slides.pdf

It tells the first 5 years of the Medley Interlisp Project and discusses what other historical software recovery groups can learn from our experience. The paper was presented at IEEE CCEECE 2025 in Vancouver and accepted for publication.

#retrocomputing #interlisp #lisp#SoftwarePreservation

An interesting remark in Josep Bigorra's post on why Scheme can be used for production work:

There’s only one truly universal ecosystem: the C ecosystem. Dynamic language modules are often just bindings to existing C libraries.

jointhefreeworld.org/blog/arti