Path: ...!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Kaz Kylheku <643-408-1753@kylheku.com> Newsgroups: comp.unix.shell,comp.unix.programmer,comp.lang.misc Subject: Re: Command Languages Versus Programming Languages Date: Fri, 29 Mar 2024 17:58:41 -0000 (UTC) Organization: A noiseless patient Spider Lines: 50 Message-ID: <20240329104716.777@kylheku.com> References: <20240329084454.0000090f@gmail.com> <20240329101248.556@kylheku.com> Injection-Date: Fri, 29 Mar 2024 17:58:41 +0100 (CET) Injection-Info: dont-email.me; posting-host="72aa73b25261e98b4b2ab1e9e611ffcd"; logging-data="469266"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX188Ahr0aFBXZLRFmPTEdfB7B0gvdqRDWKI=" User-Agent: slrn/pre1.0.4-9 (Linux) Cancel-Lock: sha1:08jh5AcqgizQlEx4wvK06u7KlN4= Bytes: 3293 On 2024-03-29, Muttley@dastardlyhq.com wrote: > On Fri, 29 Mar 2024 17:13:47 -0000 (UTC) > Kaz Kylheku <643-408-1753@kylheku.com> wrote: >>On 2024-03-29, Muttley@dastardlyhq.com wrote: >>> On Fri, 29 Mar 2024 08:44:54 -0700 >>> John Ames wrote: >>>>On Fri, 29 Mar 2024 09:55:33 -0000 (UTC) >>>>Muttley@dastardlyhq.com wrote: >>>> >>>>> My rule of thimb is that a scripting language is one whereby the >>>>> source code can be run immediately by the interpreter, eg perl, >>>>> python, regardless of what happens internally. A full fledged >>>>> programming language is one that requires a compile/debug/link step >>>>> first with the compiler and runtime (if required) being seperate. eg >>>>> Java, C >>>> >>>>By *that* logic, even Lisp and Forth don't count as "full-fledged >>>>programming languages" o_O Johanne's definition of a "scripting >>> >>> As a counter point, good luck writing a device driver in lisp. >> >>The Lisp machines had operating systems and device drivers written in >>Lisp, interrupt-driven and all. Where do you perceive the difficulty? > > Were the mucky bits actually written in Lisp or was Lisp simply calling some > routines written in assembler? Sorry, could you demarcate where exactly the goalposts are? Which mucky bits? In kernels written in C, there are mucky bits in assembler, like entry and exit into an trap/interrupt handler. You usually can't save the machine state in an interrupt handler without some instruction that is of no use in general code generation, not to mention detailed access to all the working registers that are not normally manipulated from the HLL. Yes, the mucky bits of communicating with the device, like passing frames to and from an ethernet card, would be written in Lisp. Assembly routines in Lisps, though not Lisp, can at least be written in Lisp notation and assembled within Lisp. In machine-compiled Lisps, there is the possibility of inline code, like in C or other languages. -- TXR Programming Language: http://nongnu.org/txr Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal Mastodon: @Kazinator@mstdn.ca