Path: ...!weretis.net!feeder9.news.weretis.net!panix!.POSTED.2602:f977:0:1::5!not-for-mail From: Rich Alderson Newsgroups: comp.os.vms Subject: Re: Clair Grant on VMS code base Date: 04 Apr 2025 15:24:48 -0400 Organization: PANIX Public Access Internet and UNIX, NYC Lines: 53 Sender: alderson+news@panix5.panix.com Message-ID: References: Injection-Info: reader1.panix.com; posting-host="2602:f977:0:1::5"; logging-data="22661"; mail-complaints-to="abuse@panix.com" X-Newsreader: Gnus v5.7/Emacs 22.3 Bytes: 2947 Simon Clubley writes: > On 2025-04-03, Arne Vajhøj wrote: >> On 4/3/2025 2:15 PM, Simon Clubley wrote: >>> On 2025-04-01, Arne Vajhøj wrote: >>>> He looks at size 6.2 -> 7.2 -> 8.2 -> 9.2 and .mar vs .c 6.2 -> 9.2. >>>> https://vmssoftware.com/resources/blog/2025-03-31-how-big-is-vms/ >>> How the hell does DCL have 30,000+ lines of code ? :-) >>> (Even allowing for the fact most of it is in Macro-32) >> Just for fun I downloaded bash and counted. 117 KLOC. > Wow. I had no idea it was now that big. OTOH, bash has got a _lot_ more > functionality in it than DCL does. >>> Also, regarding those BLISS/Macro-32 figures across the various modules >>> in general, I wonder how much smaller the code would have been if it had >>> been written in C ? >> C is a relative high LOC/FP language. >> Most LOC/FP tables have C in the 100-125 range and macro-assembler >> in the 200-250 range. >> If we adjust for VAX instructions being more powerful/complex >> than average ISA, add a random number and subtract wind speed I >> will estimate the Macro-32 / C ratio to be around 1.5-1.75. >> If you buy that then the DCL 33 KLOC would be 19-22 KLOC in C >> to be compared with bash 117 KLOC. > The problem with that analysis is what DCL does. > It basically parses, validates, and executes commands it has been given. > That is something which can be implemented a lot more easily and concisely > in a HLL with abstracted data structure capabilities (which includes > even C) than an assembly language with no such capabilities. That also depends on the operating system environment. TOPS-20, on later PDP-10 systems including clones, has a built in system call COMND% which is a fully capable command parser which includes context sensitive help, switch parsing, etc. High-level languages on TOPS-20 have COMND% calls in their run time systems. -- Rich Alderson news@alderson.users.panix.com Audendum est, et veritas investiganda; quam etiamsi non assequamur, omnino tamen proprius, quam nunc sumus, ad eam perveniemus. --Galen