Reading this have me bad flashbacks to seeing and building filesystem APIs, but do long as you don't have any PTSD over that, an interesting read one a nice contrast been Go and Rust.https://twitter.com/QuinnyPig/status/1236016975773675521 …
-
-
Replying to @ShriramKMurthi
Always wished there was a course about representing domain concepts in a formal language. Something that cut across logic, ontology, SE, PL, databases, AI/expert systems. Just hundreds of examples of "here's the how the world works, now encode that in an API."
3 replies 5 retweets 27 likes -
-
Replying to @ShriramKMurthi @wcrichton
I really wonder what the principles would be in teaching such a course. I feel like the right way to do this is a heavy amount of learn-through-doing given open-ended projects with just the right amount of structure. I'm not sure if there's a better way to teach this, though.
1 reply 0 retweets 1 like -
(and of course, even the thing I just said is super vague: if we could all design the perfect project that gave every student the aha moment, life would be way easier.)
1 reply 0 retweets 0 likes -
Replying to @krismicinski @ShriramKMurthi
My sense is to start by reforming the traditional API design class. eg at CMU, the topic is a small part of the "Intro to SE" course. Hence, ends up being very Java-focused. All concepts are represented as classes, design patterns, so on. See: https://www.cs.cmu.edu/~charlie/courses/15-214/2016-fall/slides/13-api%20design.pdf …
1 reply 0 retweets 1 like
An easy place to start is with algebraic data types, higher-order functions and parametric polymorphism. I spend several lectures in CS 242 showing how these features in Rust enable better representations of systems concepts than in C. See "Concurrency": http://cs242.stanford.edu/f19/lectures/08-1-concurrency …
-
-
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.
cognitive psychology. PhD