2015-05-11 10 views
13

Eines der Dinge, die mich am meisten beeindruckt haben, als ich mich in Pharo vertieft habe, war, dass sich der Finder an einem Beispiel finden konnte. Ich hatte das bisher nur in Sprachen wie Haskell gesehen, wo man sicher wissen kann, dass eine Funktion keine Nebenwirkungen hat. Wie schafft es Pharo, dies sicher, performant und nebenwirkungsfrei umzusetzen?Wie funktioniert Find-by-Example im Pharo Finder?

Antwort

12

Magie :)

Eigentlich ... obwohl ich habe automatisch aus den Tests über das Erstellen der Liste zu träumen, die Realität ist, dass wir manuell eine Liste von sicheren Nachrichten halten (natürlich fehleranfällig, ich ernst bezweifle, dass es 100% genau ist). Siehe MethodFinder>>#initialize.

Also ein Trick, aber nicht gerade magisch;)

+5

Danke! BTW, ich benutze diese Fähigkeit, um Gesichter hier zu schmelzen: http: //devblog.avdi.org/2015/05/11/in-which-i-make-you-hate-ruby-in-7-minutes/ – Avdi

+7

Es ist erwähnenswert, dass Pharo diese Fähigkeit von Squeak Smalltalk geerbt hat. Der Method Finder (von Ted Kaehler) ist jetzt über 15 Jahre alt). –

+3

Squeak war und wird großartig sein, Pharo basiert darauf und verdankt so viel der harten Arbeit von Menschen, die Squeak möglich gemacht haben. Danke Leute. – Kilon