Talking Meta

Meta talk about Smalltalk, Seaside, Magritte, Pier and related things.

Is Seaside a Squeak Fork?

Repeatedly people mention that Seaside maintains its own fork of Squeak, what is simply not true. To see some examples read this and listen to that.

More than a year ago we started to provide the highly successful one-click images. These are pre-installed Seaside images that come bundled with VMs for the major platforms. The first releases were based on standard Squeak 3.9 images. Later versions were built using the developer images, themselves being built on top of official Squeak 3.9 images. Todays one-click images are built using Pharo Smalltalk. Into these images we installed a standard distribution of Seaside, without applying other modifications.

I don’t understand why some people think that Seaside images are a fork? We wouldn’t have the time and resources to do this, even if we wanted to.

Posted by Lukas Renggli at 29 March 2009, 5:36 pm with tags seaside, pharo, squeak, smalltalk comment link

Code Critics in OB

In this screencast (5.4 MB) I present 3 tools from the refactoring engine and how they are integrated into the OmniBrowser framework. These demoed tools are:

  • Code Critics: Detect common problems and possible bugs in your code, and even provides automatic transformations to fix some of these issues.
  • Parse Tree Searcher: Allows one to search for arbitrary code snippets.
  • Rewrite Engine: Enables you to quickly define your own refactorings, based on the parse tree searcher.

Update: Check out this article for information on how to load these tools.

Posted by Lukas Renggli at 28 March 2008, 8:40 pm with tags pharo, squeak, refactoring, omnibrowser, screencast 2 comments link

New Refactorings

In this screencast (2.1 MB) I present 3 new refactorings that were are not part of the original refactoring browser. I use these refactorings on a daily bases and I think that they are a huge time saver.

Update: The refactorings presented in this screen-cast are the following ones:

  • Create accessors for class: This is a composite refactoring that uses the existing accessor refactoring to create accessors for all instance-variables.
  • Realize class: This refactoring overrides all abstract methods of the superclasses with a method that calls #shouldBeImplemented.
  • Move method to class/instance side: This refactoring moves the selected method from class- to instance-side or vice-versa.
Posted by Lukas Renggli at 18 March 2008, 8:59 am with tags pharo, squeak, refactoring, omnibrowser, screencast 4 comments link

OmniBrowser Refactoring Tools

Over the past couple of months I’ve been integrating some more refactoring tools with the OmniBrowser framework. This was mostly done as a side-track of different projects: Whenever I needed another feature I added it to my preferred browser framework.

Today I can say that the integration is complete. I use the refactoring tools together with OmniBrowser on a daily bases and it helps me a lot to work more efficiently in Squeak. The new refactoring tools do not depend on the old Morphic UI anymore and are purely based on the OmniBrowser framework. I decided to do a couple of screen-casts to show some less obvious features of these tools.

To follow along, you need to load the refactoring tools for your particular version of Squeak. In my case, I am using Squeak 3.9 and I work with the latest prerequisites from SqueakSource:

Then you need to load the following OmniBrowser packages from http://source.wiresong.ca/ob:

  • OmniBrowser-lr.407
  • OB-Morphic-lr.45
  • OB-Standard-lr.323
  • OB-Refactory-lr.78
  • OB-Regex-lr.8

Note, that you might need to unload old OmniBrowser packages beforehand, in case your image came with an existing version (such as with Squeak 3.9).

Enough writing. In this first screencast on OB-Refactory I am demonstrating scoped refactorings:

OmniBrowser Scoped Refactoring (4.9 MB)

Posted by Lukas Renggli at 16 March 2008, 6:25 pm with tags pharo, squeak, refactoring, omnibrowser, screencast 1 comment link

Dog Food

Coderspiel mentions Seaside in the article The right tool for the slob:

And freaking Smalltalk programmers—what could possibly be harder to deploy?—host their own site, their "CMS" if you must, for the Seaside web framework. The site isn’t always fast, it’s probably not always running, but at least the framework has the courage to show itself.

There are many more examples:

  • Squeak is the official web site for Squeak. The web site is based on SmallWiki running on Squeak.
  • SqueakSource is the official source code repository for Squeak. The web application is based on Seaside running on Squeak. The SqueakSource source code is hosted on SqueakSource.
  • Seaside-Hosting is a free hosting service for Seaside applications. The web application is based on Seaside running on Squeak. The Seaside-Hosting management interface is hosted on Seaside-Hosting.
  • Talking Meta. The post you are reading is displayed to you through the Blog plugin for Pier, a CMS written on top of Seaside running on Squeak. In fact, this very blog was the initiator for this blog’s blog plugin.
Posted by Lukas Renggli at 19 January 2008, 2:41 pm with tags smalltalk, squeak, seaside, squeaksource, seasidehosting, pier 1 comment link
<< 1 2 >>