![]() |
![]() |
|
Looking back, what have we learned in this course?
Well, I'll give my take,
because I've found that sometimes students have different ideas
of what this class was about,
or wonder
We didn't learn new programming languages, so what was this class about?
.
The major themes of the class included:
To do this, we got some other things along the way:
Although students tend to call itec380 "the racket class", I'll claim we DID NOT LEARN RACKET, hardly. We covered only six keywords; five of the concepts are also covered in the first couple weeks of Java I: call-a-function `(`; if-else-if `cond`, declare a global variable `define`; declare a local variable `let`; create a function-value `lambda`; and `define-struct`. If teaching racket, we'd have covered the module-system, mutation, for-loop forms, and much more2.
However, a couple of things you may have learned (while using racket) was: - using a *lightweight* language where you can easily write significant programs using just those six constructs -- that was perhaps new. - experience with dynamic type-checking [and understand both: people who prefer a static type-system's guarantees, as well as those who argue that static-typing sometimes just slows them down]
You can now better gauge what various keywords in Java are buying you: when they are helping protect you from errors, and when they are causing you to have to jump through hoops to appease the compiler/language.
At the start of the class, I said that my goals was to get you to think differently about programming (even just writing your Java programs).
Merry programming, and Happy New Year! --Ian
This page licensed CC-BY 4.0 Ian Barland Page last generated | Please mail any suggestions (incl. typos, broken links) to ibarland ![]() |