Path: csiph.com!weretis.net!feeder9.news.weretis.net!news.misty.com!news.iecc.com!.POSTED.news.iecc.com!nerds-end From: ram@zedat.fu-berlin.de Newsgroups: comp.compilers Subject: Re: A tiny self-hosting compiler used for teaching Date: Sat, 05 Sep 2026 07:02:21 +0000 Organization: Compilers Central Sender: johnl%iecc.com Approved: comp.compilers@iecc.com Message-ID: <26-09-005@comp.compilers> References: <26-08-007@comp.compilers> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="27643"; mail-complaints-to="abuse@iecc.com" Keywords: courses Posted-Date: 07 Sep 2026 11:30:17 EDT X-submission-address: compilers@iecc.com X-moderator-address: compilers-request@iecc.com X-FAQ-and-archives: http://compilers.iecc.com Xref: csiph.com comp.compilers:3757 Michael Lehn wrote or quoted: >In practice, we have seen the opposite. Since introducing ABC, students who >come to the course without previous programming experience have had a >noticeably easier time. They can first learn the programming concepts without >having to deal with some of C's syntactic peculiarities, and the later >transition to C or C++ has not been a problem. Writing a compiler requires implementing complex data structures (like symbol tables) and managing memory. If students have no prior programming experience, they must learn basic control flow, data structures, memory management and compiler theory simultaneously. This creates a steep learning curve, even with a simplified language. The claim that transitioning to C or C++ later "has not been a problem" is the most debatable point. While learning concepts first is beneficial, C requires a deep understanding of hardware interaction, manual memory management, and pointers - areas where students taught via idealized languages frequently struggle. From: ram@zedat.fu-berlin.de (Stefan Ram)