| Related articles |
|---|
| A tiny self-hosting compiler used for teaching michael.lehn@uni-ulm.de (Michael Lehn) (2026-08-24) |
| Re: A tiny self-hosting compiler used for teaching Keith.S.Thompson+u@gmail.com (Keith Thompson) (2026-08-24) |
| Re: A tiny self-hosting compiler used for teaching michael.lehn@uni-ulm.de (Michael Lehn) (2026-08-25) |
| Re: A tiny self-hosting compiler used for teaching thanks-to@Taf.com (CóilínNioclásínGlostéir) (2026-09-04) |
| Re: A tiny self-hosting compiler used for teaching ram@zedat.fu-berlin.de (2026-09-05) |
| Re: A tiny self-hosting compiler used for teaching gneuner2@comcast.net (George Neuner) (2026-09-05) |
| Re: A tiny self-hosting compiler used for teaching ram@zedat.fu-berlin.de (2026-09-05) |
| Re: A tiny self-hosting compiler used for teaching gneuner2@comcast.net (George Neuner) (2026-09-05) |
| Re: A tiny self-hosting compiler used for teaching michael.lehn@uni-ulm.de (Michael Lehn) (2026-09-05) |
| Re: A tiny self-hosting compiler used for teaching michael.lehn@uni-ulm.de (Michael Lehn) (2026-09-05) |
| Re: A tiny self-hosting compiler used for teaching gneuner2@comcast.net (George Neuner) (2026-09-07) |
| [4 later articles] |
| From: | ram@zedat.fu-berlin.de |
| Newsgroups: | comp.compilers |
| Date: | Sat, 05 Sep 2026 07:02:21 +0000 |
| Organization: | Compilers Central |
| References: | 26-08-007 |
| Injection-Info: | gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="31741"; mail-complaints-to="abuse@iecc.com" |
| Keywords: | courses, comment |
| Posted-Date: | 05 Sep 2026 20:17:02 EDT |
Michael Lehn <michael.lehn@uni-ulm.de> 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.
[What language to teach first is an old and insoluble problem. When
I was in school most places started with Pascal while MIT started
with Lisp. That meant they were dealing with interesting data
structures and introspection while we were still explaining how
big to make an array. -John]
Return to the
comp.compilers page.
Search the
comp.compilers archives again.