Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think the idea is that SmallTalk replaced conditional syntax with methods on booleans. You could call `ifTrue:` on a boolean, passing it a code block; a true boolean would execute the block, and a false boolean would not. (There was also an `ifFalse:` method.)

This feels more like a party trick than anything. But it does represent a deep commitment to founding the whole language on object orientation, even when it seems silly to folks like me.

 help



Linguistically, it meant your control structures looked the same as native language control structures so there was never any dividing line visually between your code and the system.

It also made it really easy to ingest code, and do meta programming.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: