LispCookbook / cl-cookbook

The Common Lisp Cookbook
http://lispcookbook.github.io/cl-cookbook/
Other
932 stars 138 forks source link

Type System Chapter. #325

Open commander-trashdin opened 4 years ago

commander-trashdin commented 4 years ago

I'm not sure, which is why this is an issue instead of commit.

Complex types involving satisfies are not checked inside a function body, only at its boundaries.

(it's somewhere at the end). Okay, so the example after that does not involve any type decl, that has satisfies. What's even more important, nothing satisfies is checked at compile time, because there can be pretty much any function in there, so it is impossible. This is strictly runtime only. This part needs rewriting, I'll try to think about it myself as well.

vindarel commented 4 years ago

You are right:

I think that the example has a point about static type checks happening more (better term?) at the functions' boundaries.