<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<span dir="ltr" style="margin-top:0; margin-bottom:0;">This reminds me of a graduate compiler construction course I took in the early 70s. A buddy and I wrote our compilers in a high level language. The others used Univac 1100 assembler. Buddy and I had our compilers going early and made them way past the specs the prof dictated, polishing them until they glowed. With 24 starters there were eight survivers of the course. Then in the last class the prof mentioned he'd blown his budget for machine time. He looked at my friend and I and we went bright red as the others sat oblivious. The host language compiler was some painful number of times more expensive to run than the assembler and linking would have been cheaper too. I guess this could segue into a chat about bloatware. :-)</span>
<br><span dir="ltr" style="margin-top:0; margin-bottom:0;">Pete</span>
<br>
<div class="fairemail_quote">
<div dir="ltr">
<p>Dec 20, 2025 1:08:12 PM Mike Lisanke <mikelisanke@gmail.com>:</p>
</div>
<blockquote style="margin:0;border-left:3px solid #ccc; padding-left:10px;">
<div dir="ltr">
Pete, There are many courses for an Engineer in Computer Systems science/engineering. And they include HLD and ISA and bit-slice and architecture. And yes, also compiler and interpreter design and machine language programming bootstrapping into assembly language and boot loaders. There are as they say the Whole Nine Yards. Many of us really old timers learnt machines from the ground up. I was younger than most when many many CPUs MPUs were being shoveled onto the mass market for embedded systems And the newest thing, personal computers. Most had no tools and had many of us using one system (with BASIC and DOS) to boot assembly languages for other cpu on bare hardware. I recall as a HS hobbyist typing in my own hex editor into memory the boot block of DOS on an (at the time smallest) 8" Shugart 128K floppy diskette. Those were the days. And when I got to UF their Computer engineering lab had US play with bitslice to build our own ALU. But fortunately, before even seeing the hardware in the lab... I simulated it on one of my PCs in my apartment; and was done in a half hour vs 2-3 that others had... coding by hand, pencil and paper, and using hex-keypad to key into raw HW. That was the best fun and learning of its time; I've often wondered how much it was repeated as "kids today" take for granted that infrastructure is Just There. So much so, that when I ask about Cross Platform tool development, nobody in Triangle Linux Users Group wants to volunteer to talk,,, I would but it's gotten way more complicated to keep Toolchains up to date (and functional) that Egg on Face is always a likely occurrence.
<div>
<br>
</div>
<div>
Thanks for your musing this AM and the memories it brought back. QED
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">
On Sat, Dec 20, 2025 at 12:33\u202fPM Pete Soper via TriEmbed <<a href="mailto:triembed@triembed.org" target="_blank">triembed@triembed.org</a>> wrote:
<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex;">
<div>
<span dir="ltr" style="margin-top:0px;margin-bottom:0px;">The blog below caught my attention on Hacker News and got me thinking about bottom up understanding of computing. This is about projects relating to some kind of demo/contest event for FPGA's (field programmable gate arrays), but the author goes into some detail about how entertaining "toys" like a VGA graphics generator can be made. That led to thinking about whether learning to work with FPGAs would help somebody to understand how computers "really work". But a little more thought made me ask myself whether a modern programmer even needs to know about, let alone understand machine language. Not clear that this is relevant. (but I'd love it if at least one CS course would show how decompiling a single C++ statement leveraging overloading, polymorphism, grotesque layers of header references, etc can result in an avalanche of machine code)</span>
<br><span dir="ltr" style="margin-top:0px;margin-bottom:0px;">Anyway, I haven't even finished this and I'm talked out of the supposition. :-)</span>
<br><span dir="ltr" style="margin-top:0px;margin-bottom:0px;">But perhaps some of you might be interested in playing with FPGAs, as the hobby level hardware is very cheap and tools and examples are plentiful.</span>
<br>
<br><span dir="ltr" style="margin-top:0px;margin-bottom:0px;"><a href="https://www.a1k0n.net/2025/12/19/tiny-tapeout-demo.html" target="_blank">https://www.a1k0n.net/2025/12/19/tiny-tapeout-demo.html</a></span>
<br>
<br><span dir="ltr" style="margin-top:0px;margin-bottom:0px;">Pete</span>
<br>
</div> _______________________________________________
<br>
Triangle, NC Embedded Interest Group mailing list
<br>
<br>
To post message: <a href="mailto:TriEmbed@triembed.org" target="_blank">TriEmbed@triembed.org</a>
<br>
List info: <a href="http://mail.triembed.org/mailman/listinfo/triembed_triembed.org" rel="noreferrer" target="_blank">http://mail.triembed.org/mailman/listinfo/triembed_triembed.org</a>
<br>
TriEmbed web site: <a href="https://TriEmbed.org" rel="noreferrer" target="_blank">https://TriEmbed.org</a>
<br>
To unsubscribe, click link and send a blank message: mailto:<a href="mailto:unsubscribe-TriEmbed@bitser.net" target="_blank">unsubscribe-TriEmbed@bitser.net</a>?subject=unsubscribe
<br>
Searchable email archive available at <a href="https://www.mail-archive.com/triembed@triembed.org/" rel="noreferrer" target="_blank">https://www.mail-archive.com/triembed@triembed.org/</a>
<br>
<br>
</blockquote>
</div>
<div>
<br clear="all">
</div>
<div>
<br>
</div><span class="gmail_signature_prefix">-- </span>
<br>
<div dir="ltr" class="gmail_signature">
Best regards, Mike
</div>
</blockquote>
</div>
</body>
</html>