Igor you confuse me with someone else I never asked why Smalltalk doesn't have... nor I said that I want static types and interfaces. I am actually trying to use a Pharo instead of C++ with Unreal.
I hate static types and I hate interfaces. Only pointed that is possible. I don't like languages that think they are smarter than me. I love my freedom thank you very much and I love Pharo as it is language wise. On Thu, 3 Nov 2016 at 23:16, Igor Stasenko <siguc...@gmail.com> wrote: > On 3 November 2016 at 07:11, Dimitris Chloupis <kilon.al...@gmail.com> > wrote: > > Actually sorry Igor but you are wrong, you just defeated the purpose of > Smalltalk. To expose you to the internals. Of course you can implement > interfaces. You can even implement static types. You can do anything you > want. > > > So, why you asking then 'why smalltalk doesn't have .... ' when you know > that in smalltalk you can do anything you want? > Yes, you can do anything you want, but not everything you can do makes > sense to do. > And it doesn't defeats the purpose of smalltalk, it just defeats the > common sense. > > And last one, i don't understand what kind of 'exposure to internals' you > are talking about. > In smalltalk people used to write a functional tests, to check that your > code behaves as intended. Now you proposing to introduce static interfaces, > borrowed from other lanuages, the only purpose of which is to declare that > your code *could* behave as intended, no guarantees , nothing. > Just a set of formal rules on top of existing ones, with ZERO end effect > and benefits. > You want it? You are free to implement it. Good look with it.. > > I wonder, why so many people think that if they put soft pillows > everywhere, seal the doors (because outside is dangerous) , and after > sealing and pillowing everything they happily rest with thought 'now we are > safe'.. not realizing, that they built a perfect jail for themselves, > without any means to escape from it and do something in real world. > > The compiler is written in Smalltalk after all. > > On Wed, 2 Nov 2016 at 23:02, Igor Stasenko <siguc...@gmail.com> wrote: > > > If you want to ensure that your class(es) comply with certain protocol, > just write a test that covers the protocol and checks that class instances > will understand messages you want it to understand. > But there's no way to restrict your class to comply to whole protocol once > at a time, because tools made in a way, that you populating your class with > methods, each method is add individually and compiled separately, and the > only validation, the compiler is capable of is basically compliance with > smalltalk syntax. And it doesn't cares about higher lever requirement, like > whether your class turns to be 'valid' because of a method you just added, > ready to be used and for what. > Even more, there's no way to connect all those 'interface' formalisation > garbage rules with send sites (the place where you actually invoking one or > another method of one of potetial implementor of your interface), so it > makes no sense to do any (pre)validation on whatever class/object in a > system in order to check whether it conforms with it or not. > That's " Why don't Smalltalk or Smalltalklike languages have checked > interfaces?" > > -- > Best regards, > Igor Stasenko. > > > > > -- > Best regards, > Igor Stasenko. >