Showing posts with label Squeak. Show all posts
Showing posts with label Squeak. Show all posts

Thursday, June 9, 2011

Squeak MVC

At squeak.org the blurb for 4.2 says
  and legacy MVC support
but the first test that I make gives a ScheduledControllers that is nil.
Both BitEditor and FormEditor appear unusable.
I looked in Monticello and the Universe browser but I see no relevant package to retrieve.
The package ToolBuilder-MVC retains this gem:
isActiveBuilder
"Answer whether I am the currently active builder"
"This is really a way of answering whether 'Smalltalk isMVC'"
ScheduledControllers ifNil:[^false].
So something is amiss.  I am looking for a dependency framework - events, or Announcements or whatever in this image.

In Kernel-Objects package the Object class has a class variable DependentsFields.

In Kernel-Model package Model has an instance var named dependents.

But I see no tests for MVC.

There had been a Tweak package and a code.google.com project to revive MVC in Squeak.  Perhaps more interesting is Announcements in Pharo and the coming changes to Model-View-Presenter in Dolphin Smalltalk.

Abstractions are needed.  MVC could be complex and Morphic seems best for direct manipulation rather than for traditional GUI applications.  I like the admissions made at Dolphin for their candor - and I like working in Dolphin when all that I need is a Windows app or tool over at http://apps.logiquewerks.com/ST

note:  the method >>isMVC  is not available.

BUT.  There is an answer.  You need to start a new project which is an MVC project.

And now you are in as old a Smalltalk as you can imagine: an ST-80.  Oh vey.  This is not offering an MVC option.  This is a collapsible Model-A in the cargo space of your auto-plane.

This is not Smalltalk the programming environment, but Smalltalk the split-environment for a house divided among partisans, some laboring under a tax of 90%, some under a flat-10%.

Friday, February 18, 2011

Squeak Smalltalk 4.2

Squeak Smalltalk 4.2 is now available at http://squeak.org as a single bundle "app".

I find the more conventional IDE to be to my liking - a click on a menubar selection opens a window.  On my Windows box this gave a much more conventional feel which, for better or worse, is now the common desktop look and likely an aid both to productivity and to ease of adoption.

This version is designed to be compatible with the coming "Cog" VM so additional performance improvements can be expected soon.

The main alternative 'squeak' is now http://pharo-project.org where Traits from Self have been brought into Smalltalk as an alternative to AOP and Mixins.  The awaited Pharo 1.2  is expected soon.

Both Squeak and Pharo are compatible with the Seaside 3.0 web application framework.

Friday, July 23, 2010

disposable 10$ laptop to throw-away into recycling?

Years ago in a Byte article Alan Kaye conjectured on electronic paper - the prospect of a 10$ laptop is now in the BBC news. But it will run linux ... and which linux?

Tuesday, May 25, 2010

Squeak Smalltalk 4.1


Could this be a Squeak right out of the box?

That is a menu bar with Projects, Tools, Extras, Windows, Help and a Search entry field. And where are the Fi$her-Price colours? (They are an option now.)

This is the influence of Gilad Bracha's Newspeak.  The release comes not long after Pharo Smalltalk went 1.0 (although I don't know the politics.)

The good news for Squeak and Smalltalk is that 4.1 has so many important changes which are not cosmetic. These include updated closures, even greater modularity (unload, reload), a new implementation of Traits from the folks who gave us traits. And a great many changes in the class hierarchy.  All of these listed when you click the green or the orange buttons on that "Welcome to Squeak 4.1" pane.

If you have wanted to learn Smalltalk, there are even more resources online now, including Pharo By Example. The first thing to know in Squeak or Pharo is to left or right click in that workarea background (the brushed aluminum-looking main window area.)

There will be other Smalltalk news coming when Vision Smalltalk appears (also known as DNG or Dolphin Next-Generation Smalltalk.)

It remains an oddity to me that Smalltalkers are still using Adobe PDF for their e-books .... see FotB.

Wednesday, August 26, 2009

Curl web content generated by Seaside 2.9

Today I tackled getting Seaside 2.9 alpha 4 sufficiently decoupled from HTML/XHTML to generate web content of MIME type 'text/vnd.curl'.

The Seaside alpha was installed in a Squeak 3.10 Smalltak image using a MonticelloCeonfigurations map from the folks at seaside.st

It was really satisfying to see a Curl application open in my browser with Seaside running as my localhost.

Now to get a "headless" version that can run as a server-side process to be maintained remotely ... that will start at seasidehosting.st

Squeak MonticelloConfigurations mcm for Seaside 2.9

If you are like me and have not used an Monticello configuration file such as the mcm file to install Seaside 2.9 in Squeak, what you need to do is download the mcm file and place it in the package-cache directory of the Squeak you are going to run.

I tried using Monticello to create a package and then edit the script but PackageInfo is broken even in the LevelPlayingField (LPF) image that I built by running
HTTPSocket httpFileIn: 'ftp.squeak.org/3.11/scripts/LPF.st'
in a workspace.

Once the file is where a monticello tool can see it, even the Monticello Browser can be used to load it by doing Open on the package-cache which should appear at top of the panel on the right of the browser.

Sunday, May 24, 2009

The Squeak Smalltalk FOTB: Sophie embraces Java?

The Sophie project site reports that Sophie 2.0 will be in java in order to be browser based.
Was Strongtalk considered? To think what could have been accomplished if Curl, the language, had been an option! Next I suppose I will hear that Croquet or Cobalt has left Squeak for Scala. It must be a typo. The must have mean Gears and JavaScript V8.

You can get Sophie 1.0.4 here and learn about the Future-of-the-book here.

Over the years I have seen 2 expert systems running in PROLOG rewritten by teams looking to use their FoxBase or their java skills so this should not surprise me. After all, the book will no longer contain text or the text will not be in UNICODE strings so why use a text-focused language with graphics. Or were ICON, UNICON or REBOL deemed more obscure than Squeak? Here's my tip: prototype Sophie 3.0 in Curl using the any type with all preprocessing directives turned at the lowest levels. Then implement it in your most effective language based on your project's developer pool.

Perhaps what they were choosing was not the language but the VM, and in that case the JVM would not be a bad choice if the CINCOM Smalltalk VM was not available for the terms of their license. But by the time 2.0 is released, they could well have made a major contribution to Clean Slate Smalltalk, or Strongtalk, or Self, or Io. And in a project such as this, Scala with traits would look to be a natural given the prospects of major refactoring in the future of the project (traits are to refactoring as were classes to OOP components.) Ok. Not a word about Rebol. Well, maybe one word: a project such as this needs to have the types on the side of the values, not the slots. What has been termed "cash instead of personal checks". Chapter the last.

Sunday, May 20, 2007

Tcl, fork, CommandShell and Squeak Smalltalk

Something rather Tcl-ish is available to Squeak Smalltalk based on the OSProcess classes: CommandShell. And of course it is only fully implemented on a Linux installation of Squeak.

But in Win32 where you cannot fork, you can likely get by using a socket on the child process, and there Squeak shines. And sockets are a definite alternative to messing with NamedPipes on Windows.

CommandShell detects whether it is being passed code to interpret or commands to execute, rather like a Tcl shell or any other scriptable shell. But scripting with Smalltalk is almost always a pleasure.

tbc at http://www.eclectic-pencil.com/