@kentpitman

Thank you!
Indeed your post is a good read and instructive on many counts.

Three notes:

(1)
«=====
(LOOP FOR X FROM 3 TO 5 COLLECT X)
(3 4 5)

(LOOP COLLECT X FOR X FROM 3 TO 5)
(3 4 5 6)
=====»

This is an important example (and a good catch), which has "procedural" written all over it and it shows that `loop' isn't actually declarative—it can only be viewed as such, carefully.

It seems to me that it would be interesting to fix the second case, rather than prohibit it, _but_ it may be difficult to justify the effort.
(Regrettably, I can't recall exactly what the _current_ Common Lisp specification says, but I'll check later.)

(2)
Yes, I have always found the design and history of the pathname system very instructive, in more ways than I can elaborate now.
And let no one forget about logical pathnames, too.

"LOSSAG" fit in a single 36-bit word, didn't it?

As a footnote, a long time ago I was something of a user of old IBM mainframe operating systems like VM/370¹, which did not have directories and separated a file name from a file type with a space (each up to eight characters, no lower case).
_________
¹ Bulgaria was lagging behind the technological times then.

(3)
It's interesting to mention an emulator in this context.
I can see a weak analogy to historical reconstructions.
(There are many people who do them, mostly as recreation.
I have been to some, watching horse riders shoot arrows and sheltering in a 7th-century-model tent from the rain.)

#CommonLisp
#ComputerHistory
#DeclarativeProgramming
#DeclarativeStyle
#History
#Lisp
#ProceduralProgramming
#ProceduralStyle

@screwlisp

Corso Completo PHP 8 per PRINCIPIANTI (Parte 1)

https://peertube.uno/videos/watch/9414c9ab-40bd-4716-98af-017214fbb10a

Corso Completo PHP 8 per PRINCIPIANTI (Parte 1)

PeerTube

Just completed day 4 of this year's Advent of Code:
https://gist.github.com/and-kal/da2371872ffc3ca76d998ddc7001a204

Actually a pretty good way to get familiar with a new programming language.
Though that's probably some super inefficient #Lua code and loopy as hell. But I think there's something nice about its #naïveté.

https://adventofcode.com/2024

#AdventOfCode #AdventOfCode2024 #proceduralprogramming #ifthen

Advent of Code 2024, Day 4 (Lua)

Advent of Code 2024, Day 4 (Lua) . GitHub Gist: instantly share code, notes, and snippets.

Gist

Okay, you #ATS fans, whom I know to be plentiful! Here is the #RosettaCode task for drawing antialiased straight lines, done in ATS:

https://rosettacode.org/wiki/Xiaolin_Wu's_line_algorithm#ATS

#ATSlang #FunctionalProgramming #ProceduralProgramming

Xiaolin Wu's line algorithm

Task Implement the Xiaolin Wu's line algorithm described in Wikipedia. This algorithm draws anti-aliased lines. Related task See Bresenham's line algorithm...

Rosetta Code
Modular arithmetic

Modular arithmetic is a form of arithmetic (a calculation technique involving the concepts of addition and multiplication) which is done on numbers with a defined...

Rosetta Code

I have added #ObjectIcon --
https://rosettacode.org/wiki/Modular_arithmetic#ObjectIcon

#RosettaCode #ProceduralProgramming

(I will not call this an example of #LogicProgramming, given that I never use goal-direction or failure in any significant way. But #ObjectOriented does apply.)

Modular arithmetic

Modular arithmetic is a form of arithmetic (a calculation technique involving the concepts of addition and multiplication) which is done on numbers with a defined...

Rosetta Code

I just keep going. It is a pretty simple task. I did more than was called for, in the #ATS example I did first.

Here is #Fortran --

https://rosettacode.org/wiki/Modular_arithmetic#Fortran

As with the ATS, I use a macro, although the macro system is not as capable as that of ATS.

(I used the C preprocessor. There was once a standard Fortran preprocessor, but it was removed from the standard. Nobody used it. Everyone used the C preprocessor, m4, or some such.)

#RosettaCode #ProceduralProgramming

Modular arithmetic

Modular arithmetic is a form of arithmetic (a calculation technique involving the concepts of addition and multiplication) which is done on numbers with a defined...

Rosetta Code