In the Smalltalk heritage. Pharo comes from Smalltalk 80.

But we don't want to be stuck in 1980. We want Smalltalk 2014.
Smalltalk 80 was modern for 1980. They didn't want to be stuck in 1976. ...

And Smalltalk isn't unique to this. Is C11 not a C because it is not K&R, or C89, C90 or C99? Is Python 3.x not Python because it is not fully compatible with Python 2.x which is dominant?

Pharo wants to be a modern Smalltalk able to empower people in this era to do things that we do in 2014. We need appropriate modularity in the image. We need the image to be clean. We need to learn the lessons we as Smalltalker's have learned in the last 24 years and apply them to Pharo Smalltalk. And I believe that is much of what Pharo is attempting to do.

Noel in his talk said that Smalltalk doesn't play well with others. And with Pharo it still isn't as easy as in other languages like Python, Ruby, Lua, etc. But with NativeBoost we have a tool which enables us to do much. And NativeBoost isn't finished. I believe when NativeBoost is fully mature and the vm/image has sufficiently changed to enable us. We will have one of the best plays with others well stories.

I know in the app I am writing, NativeBoost's current condition struggled with my library. It often crashed. This library has to deal with a C Thread. Which is why I am spending my current time studying C.

Whether or not the Smalltalk Inspired crowd likes it, the moment some else declares that Pharo is a Smalltalk the Smalltalk Inspired marketing is tanked. The cat is out of the bag.

The Reddit thread demonstrates this. People went to the new website. They read the current marketing and were confused. What is this Pharo thing. And in the thread it comes out that Pharo is a Smalltalk. Lets make that clear up front. Then lets define what it means to be Pharo Smalltalk.

Here is an unfortunate quote from that thread.

"""
emaringolo 1 point an hour ago
Pharo is aimed to do serious/business development, and it's been reshaping itself since its conception (several years ago when it forked from Squeak). It doesn't want to have any backward or "historic" compatibility with other Smalltalks. You can see its changelogs and the roadmap for future versions to see how it is different, and how it will be different.
"""

This makes it sound like Pharo wants remove compatibility simply for the sake of not being a Smalltalk. As opposed to what I believe Esteban meant. And yes I understand that English is not his native language, and there are many for whom it is, who still use it poorly. What I believe he meant, is that Pharo will not be constrained by backward compatibility. If a change or feature that is of value to Pharo Smalltalk. That feature will be done even if it means breaking backward compatibility with other Smalltalk 80 based Smalltalks. We are moving forward. But this does not invalidate Pharo being a Smalltalk. As has been stated before, breaking changes happened in Smalltalk 76 and 80.

Smalltalk has a wonderful heritage. It is not without its issues. However the good of Smalltalk is enormous. Take a look at this chart
http://exploringdata.github.io/vis/programming-languages-influence-network/
Smalltalk is a big influence in the history of programming. This is something worth being a part of. Be proud of it.

Pharo needs to define what one vision of a modern Smalltalk is. Let us educate people of what our vision for Pharo Smalltalk is. And guess what folks its 2014. Before long it wont be. And before long the vision of Pharo 2014 will no longer be any more modern than Smalltalk 80. But neither Smalltalk 80 nor Pharo 3.0 constrain what it means to be Smalltalk. Smalltalk inspires vision and inspires people to do things which change the present and the future. Lets build on that heritage and take it forward. What does a modern Smalltalk snapshot 2014 mean. Lets educate and communicate. Others (non-Smalltalkers) don't get to define what Smalltalk is. We do.

Let us learn from them what they think Smalltalk is. Where they are wrong, educate them. Where they are right and we have an issue. Let's learn a lesson and improve our Smalltalk.

Computer science/art is young. This is a journey. Lets make it a good one.

Jimmie



On 04/30/2014 11:12 AM, p...@highoctane.be wrote:
Pharo := Smalltalk ++





On Wed, Apr 30, 2014 at 5:43 PM, Jimmie Houchin <jlhouc...@gmail.com <mailto:jlhouc...@gmail.com>> wrote:

    On 04/28/2014 11:12 AM, Marcus Denker wrote:

        … more a Smalltalk one using Pharo:

        MountainWest RubyConf 2014

        Noel Rappin: "But Really, You Should Learn Smalltalk”

        Smalltalk has mystique. We talk about it more than we use it.
        It seems like it should be so similar to Ruby. It has similar
        Object-Oriented structures, it even has blocks. But everything
        is so slightly different, from the programming environment, to
        the 1-based arrays, to the simple syntax. Using Smalltalk will
        make you look at familiar constructs with new eyes. We’ll show
        you how to get started on Smalltalk, and walk through some
        sample code. Live coding may be involved. You’ll never look at
        objects the same way again.

        
http://www.confreaks.com/videos/3284-mwrc-but-really-you-should-learn-smalltalk


    In this thread and many others there is this debate as to whether
    Pharo is a Smalltalk or is Smalltalk Inspired.

    I find the Smalltalk Inspired arguments to be unpersuasive. To be
    Smalltalk Inspired is to say that you are not a Smalltalk. It is
    to say that Pharo is not Smalltalk but inspired by it.

    I find that reasoning patently false.

    First of all everything in Pharo begins from a Smalltalk image. It
    comes from Squeak Smalltalk which comes from Apple Smalltalk. etc.

    Pharo has an isA relationship with Smalltalk, not an isInspiredBy
    relationship. It may change and add features, but as has been
    stated before, Smalltalk isn't a static idea or artifact. It has
    always been a dynamic live environment in which to change itself
    into something it believed to be better. By removing features and
    by growing them.

    Smalltalk (an instance of SmalltalkImage), SmalltalkImage,
    SmalltalkImageTest, SmalltalkEditingState are all part of the
    Pharo Smalltalk image.

    The Pharo image is a Smalltalk image. It says so inside the image
    itself.

    Where are we hosting are source code?  Would that be SmalltalkHub?
    Lets see something.
    http://www.smalltalkhub.com/#!/~Pharo
    <http://www.smalltalkhub.com/#%21/%7EPharo>

    Okay, Pharo might be doing things that would break compatibility
    with other Smalltalks. And that causes some people pain and grief.
    However that does not make Pharo not a Smalltalk. Was Smalltalk 76
    constrained by backward compatibility with Smalltalk 72? Or
    Smalltalk 80 with either Smalltalk 76 or 72?  No!

    Is it a requirement of Pharo to be constrained by other Smalltalk
    implementations in order to still be a Smalltalk. No!

    And then there is the argument of the outside worlds perception of
    Smalltalk. Since when does the perception of the outside world
    change whether or not Pharo is a Smalltalk? If the outside world
    changed their mind and decided Smalltalk is wonderful, does Pharo
    then all of the sudden become a Smalltalk? Ugh!

    We are who we are. Our roots are our roots. Pharo should be happy
    and proud to be a Smalltalk. A Smalltalk that is continuing the
    heritage of innovation. A Smalltalk that is continuing the
    heritage of inventing the future.

    We have decided to be marketing driven. Marketing is important.
    But marketing should determine who we are. And we should engage in
    disingenuous marketing practice trying to hide our roots or who we
    are.

    Why do we things distancing ourselves from Smalltalk advantages
    us? Just because there are lots of uneducated people who have the
    wrong idea about Smalltalk. Clojure embraced its Lisp heritage and
    is thriving. Lisp has every bit as much baggage.

    This talk which inspired this thread called Pharo as Smalltalk. He
    said, Pharo Smalltalk throughout the presentation. So in the mind
    of the presenter and now in the mind of the audience at the
    conference and of the video, Pharo is a Smalltalk. So now are we
    to go about re-educating all these people that Pharo is not a
    Smalltalk but is rather Smalltalk Inspired?

    We don't require the outside world's permission. We don't need
    their approval. We would like to have a reasonable and sufficient
    number of them to catch the Pharo Smalltalk vision and become a
    part of the family. Do we really desire everybody. No. Do we
    desire those people who are so closed minded that the mention of
    Smalltalk closes their mind because of their ignorance. I don't
    think so.

    Smalltalk is different. Pharo is Smalltalk and is different. There
    will be those who don't like it because of the baggage they bring,
    not the baggage we bring. And that is okay. All of us think
    different. People need to embrace what empowers them and quit
    complaining about what empowers somebody else. We need to embrace
    empowering people who understand Smalltalk not the people who
    don't get it for whatever reason. Let those people go and be
    empowered somewhere else. We and they will both be better off.

    Feel free to shred and destroy my arguments. I am proud to use
    Smalltalk. And currently Pharo is the Smalltalk I am choosing to
    use. Currently I am studying C. A C library is required for my
    project and in order to use Pharo and use this library, I need
    sufficient C skills.

    My opinion unapologetically.

    And if the powers that be who are in charge of Pharo decide that
    Smalltalk (in name) is baggage and Pharo is not Smalltalk. And
    that marketing Pharo as Smalltalk is bad. Then please be honest
    and change all references in the image of Smalltalk to Pharo. Also
    change SmalltalkHub to PharoHub or SmalltalkInspiredHub.

    If if not, be sincere and embrace Pharo Smalltalk.

    Long live Smalltalk.

    Jimmie



Reply via email to