HN user

Nicolay77

7 karma
Posts0
Comments11
View on HN
No posts found.

Separating interfaces from implementations is ALWAYS good design.

If I understand correctly, a pure virtual interface avoids inline functions. And there can be a lot of one-liner inline functions in a large project.

So there's a diference between standard good-design and this yet-another-thing-that-became-a-pattern.

I think that compilers should be specially easy to write in Lisp over any other language.

However in the time that most people were writing compilers no common or popular computer had enough memory to run Lisp reasonably. Even 8MB were a luxury.

Now we have 2GB of RAM as the norm.

Almost all 'design patterns' are just instances of yet another pattern: The Human Compiler.

Make your language do something it can't naturally do, by having to transform abstractions into hand crafted code. Especially when using a higher level language would make that 'design pattern' automatic or innecesary.

That said, I'm not agains patterns per se, I just don't see them as the 'Holy grail' that fixes all the developer problems if only you used them well, because they are nothing of that sort.

'Design patterns' are simply like an Assembler programmer doing ADTs, just because he knows about OOP, and he is methodic about his work, but it doesn't mean that what he's doing is the only way to use classes when programming.

Funny, I started doing a lisp interpreter a while back and I have only got to the part where it makes a damn fine calculator.

I believe my version is much handier than having to use Emacs.