#proceduralprogramming — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #proceduralprogramming, aggregated by home.social.
-
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 -
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 -
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 -
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 -
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 -
🖥️ **Lập Trình Thủ Tục vs OOP: Nên Chọn Paradigm Nào?**
Tranh luận gắt: Thủ tục (dựa trên hàm, mô hình top-down) tốt cho hệ thống nhỏ/yêu cầu hiệu năng cao; OOP (đóng gói dữ liệu + logic trong đối tượng) phù hợp ứng dụng phức tạp, dễ bảo trì và làm việc nhóm. ✅ Quan trọng: **Chọn phương pháp phù hợp bài toán** - ngôn ngữ hiện đại thường tích hợp cả hai!#LậpTrình #OOP #ProceduralProgramming #LậpTrìnhHướngĐốiTượng #ProgrammingParadigms #SoftwareDevelopment #CôngNghệ #Tech #DevDebate
https://
-
🖥️ **Lập Trình Thủ Tục vs OOP: Nên Chọn Paradigm Nào?**
Tranh luận gắt: Thủ tục (dựa trên hàm, mô hình top-down) tốt cho hệ thống nhỏ/yêu cầu hiệu năng cao; OOP (đóng gói dữ liệu + logic trong đối tượng) phù hợp ứng dụng phức tạp, dễ bảo trì và làm việc nhóm. ✅ Quan trọng: **Chọn phương pháp phù hợp bài toán** - ngôn ngữ hiện đại thường tích hợp cả hai!#LậpTrình #OOP #ProceduralProgramming #LậpTrìnhHướngĐốiTượng #ProgrammingParadigms #SoftwareDevelopment #CôngNghệ #Tech #DevDebate
https://
-
🖥️ **Lập Trình Thủ Tục vs OOP: Nên Chọn Paradigm Nào?**
Tranh luận gắt: Thủ tục (dựa trên hàm, mô hình top-down) tốt cho hệ thống nhỏ/yêu cầu hiệu năng cao; OOP (đóng gói dữ liệu + logic trong đối tượng) phù hợp ứng dụng phức tạp, dễ bảo trì và làm việc nhóm. ✅ Quan trọng: **Chọn phương pháp phù hợp bài toán** - ngôn ngữ hiện đại thường tích hợp cả hai!#LậpTrình #OOP #ProceduralProgramming #LậpTrìnhHướngĐốiTượng #ProgrammingParadigms #SoftwareDevelopment #CôngNghệ #Tech #DevDebate
https://
-
🖥️ **Lập Trình Thủ Tục vs OOP: Nên Chọn Paradigm Nào?**
Tranh luận gắt: Thủ tục (dựa trên hàm, mô hình top-down) tốt cho hệ thống nhỏ/yêu cầu hiệu năng cao; OOP (đóng gói dữ liệu + logic trong đối tượng) phù hợp ứng dụng phức tạp, dễ bảo trì và làm việc nhóm. ✅ Quan trọng: **Chọn phương pháp phù hợp bài toán** - ngôn ngữ hiện đại thường tích hợp cả hai!#LậpTrình #OOP #ProceduralProgramming #LậpTrìnhHướngĐốiTượng #ProgrammingParadigms #SoftwareDevelopment #CôngNghệ #Tech #DevDebate
https://
-
🖥️ **Lập Trình Thủ Tục vs OOP: Nên Chọn Paradigm Nào?**
Tranh luận gắt: Thủ tục (dựa trên hàm, mô hình top-down) tốt cho hệ thống nhỏ/yêu cầu hiệu năng cao; OOP (đóng gói dữ liệu + logic trong đối tượng) phù hợp ứng dụng phức tạp, dễ bảo trì và làm việc nhóm. ✅ Quan trọng: **Chọn phương pháp phù hợp bài toán** - ngôn ngữ hiện đại thường tích hợp cả hai!#LậpTrình #OOP #ProceduralProgramming #LậpTrìnhHướngĐốiTượng #ProgrammingParadigms #SoftwareDevelopment #CôngNghệ #Tech #DevDebate
https://
-
Just completed day 4 of this year's Advent of Code:
https://gist.github.com/and-kal/da2371872ffc3ca76d998ddc7001a204Actually 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é.#AdventOfCode #AdventOfCode2024 #proceduralprogramming #ifthen
-
Just completed day 4 of this year's Advent of Code:
https://gist.github.com/and-kal/da2371872ffc3ca76d998ddc7001a204Actually 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é.#AdventOfCode #AdventOfCode2024 #proceduralprogramming #ifthen
-
Just completed day 4 of this year's Advent of Code:
https://gist.github.com/and-kal/da2371872ffc3ca76d998ddc7001a204Actually 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é.#AdventOfCode #AdventOfCode2024 #proceduralprogramming #ifthen
-
Just completed day 4 of this year's Advent of Code:
https://gist.github.com/and-kal/da2371872ffc3ca76d998ddc7001a204Actually 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é.#AdventOfCode #AdventOfCode2024 #proceduralprogramming #ifthen
-
CW: Rosetta Code and ATS
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
-
CW: Rosetta Code
Finally (at least for today), here is a second #Fortran program:
-
CW: 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.)
-
CW: 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.)