Smalltalk Tools in JavaScript for ExtJs 4.0

March 10, 2011

ExtJs 4.0 Class Browser

ExtJs 4.0 Class Browser

ExtJs 4.0 is an advanced JavaScript library that I have chosen as the basis for rendering QuickSilver widgets across multiple browsers and mobile devices. It support SVG graphics, flexible data models, and dynamic component loading.

Currently, I am porting QuickSilver from ExtJs 3.3 to ExtJs 4.0. There has been a complete rewrite of much of the library and this has resulted in a great deal of work in migrating the Smalltalk widget libraries.

ExtJs 4.0 has a new class system which is more similar to the Smalltalk class system.

As an exercise, I tried building (in JavaScript) a Smalltalk-style class browser for the native ExtJs classes and the tool works quite well. In fact, it is very similar to tools currently being built by Dan Ingalls (who created both Squeak and the original Smalltalk-72 and Smalltalk-80).

Smalltalk has long had the reputation for being a highly productive language. I keep wondering whether the productivity has been due to the simple language syntax or to the powerful tools available in the environment. It seems that Dan Ingalls has built a complete Smalltalk development environment
using JavaScript as the only language.

Smalltalk tools for JavaScript? I would be glad to hear your thoughts.


8 Responses to “Smalltalk Tools in JavaScript for ExtJs 4.0”

  1. Andy Burnett Says:

    I think the language has some elegant features, but it is the tools, and the class hierarchy, combined with the ‘liveliness’ of the environment that makes the system so productive

  2. Denis Says:

    “Smalltalk tools for JavaScript” – very interesting idea. But you never get smalltalk like debugger 😦
    Browser can be improved if you split class pane to “namespace”-pane and class-pane. In “namespace”-pane you see “ext”, “ext.button”, “”. And in class-pane you see simple class names without “namespace”..

    Great work

  3. Peter Fisk Says:

    Excellent idea for namespace pane.
    I will implement it.

    Thanks Denis

  4. Carl Gundel Says:

    Very cool, but please don’t get sidetracked. 😉

    • Peter Fisk Says:

      The goal is to build an environment with the productivity of Smalltalk for today’s Internet-based applications.

      And there are slightly different ways to achieve the goal…

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: