Category: Squeak

  • Conference News – Libre Software Meeting, 1-5 July, France

     

    Hilaire Fernandes wrote to tell the Squeak-dev mailing list that the 9th Libre Software Meeting will be held at Mont de Marsan, Landes, in SW France, on 1 – 5 July. LSM is an international free software event taking place in July each year, in a French town; the first event took place in 2000 at Bordeaux. This year, Squeak/Smalltalk will be well represented with conferences and workshops on Squeak, Seaside and Sophie. There will also be a coding sprint for Pharo, a new implementation of Smalltalk based on Squeak.

    For more information, see the post about the conference on Hilaire’s blog.
    http://blog.ofset.org/hilaire/index.php?post/Squeak-Smalltalk-LSM-2008

  • JSqueak – Smalltalk interpreter written in Java

    Dan Ingalls has released JSqueak, a Squeak interpreter written in Java. 

    JSqueak (formerly known as Potato) is less than 5000 lines of code, available under the MIT licence. It runs the Mini2.1 image, which is included for convenience. This image contains a complete Smalltalk development environment, including:

    • Rich text and Text editor
    • File browser (no file access in VM yet)
    • Code browser
    • Decompiler (plus temp-name hints)
    • Compiler
    • Source Code Debugger

    Dan wrote JSqueak to teach himself NetBeans and Java in the fall of 2006. Although he developed it as a throw-away project, he notes that

    it has features that recommend it for further useful service:

    • It is simple
      • Uses Java objects and storage management
      • Uses Java Integers for SmallIntegers
    • It is general
      • A weak(*) object table enables enumeration and mutation
    • It is efficient
      • Includes a method cache and an at-cache (**)
      • Also a cache of common SmallIntegers
    • (*) – This does not mean wimpy — it’s a good sturdy object table — it just doesn’t hold onto garbage.
      (**) – This is not an automated teller machine, but a device that speeds up array and stream access.

    These properties make it a reasonable base for teaching about VM design.

    Dan adds that a number of things should be finished or improved if this VM is to see further use – it currently runs between 10 and 30 times slower than the C-based VM! If you wish to track or contribute to such projects, he invites you to add yourself to the (brand new!) JSqueak Interest mailing list.

    You can find out more, and run the application as a WebStart Java Application at the JSqueak home page.

  • Squeak on the iPhone!

    John M McIntosh announced on the squeak-dev mailing list that “I’m pleased to say that I’m one of the 1.5% of the iPhone developer population that has been accepted to officially build applications for distribution via Apple’s iPhone Application Store.”

    He’s prepared a 93-day plan to build a new fully documented Objective C based source tree to host the Squeak VM on the iPhone and in addition as a 64bit VM on OS-X. He’s already collaborating with Impara who are looking at adapting the Squeak UI to the iPhone’s multi-touch paradigm and platform widgets, and is looking for further support (and funding) for this work.

    John is also looking to offer support for Squeak developers hoping to make their applications available through the iPhone Store, although he notes that Apple has a number of restrictions limiting the types of applications that can be made available in this way.

    The screenshot above shows a “visually exciting” 3.4 image running on an iPod Touch, the result of 15 days’ work. John does sound a note of caution: the VM is currently running at a speed equivalent to a 233Mhz 603e PowerBook, and 64MB of memory use is pushing the Apple’s imposed safety limits right to the max, so developers may have to relearn all those optimisation techniques they may have forgotten in recent years!

  • Randal Schwartz to join Smalltalk podcast (warning, some recursion involved)

     

    Randal Schwartz notes on his blog that: 

    James Robertson of the weekly Smalltalk Industry Misinterpretations podcast has graciously offered me the opportunity to add a short weekly Squeak News segment to his podcast.  I’ll be selecting the most recent posts from news.squeak.org, and reading them at varying speeds, depending on the amount of news.  Hear the result at the current podcast, andsubscribe to get future (weekly) releases.

    It would be really cool if my appearance reading the Squeak News gets picked up for Squeak News, so I’ll be reading an article from Squeak News for the podcast about reading the articles from Squeak News for the podcast.  Turtles all the way down!
    Heh, let’s see if this breaks the intar-web.

     

  • Qwaq developing new fast Smalltalk VM

    Eliot Miranda has posted some exciting news – he is working at Qwaq to develop Cog, a fast Smalltalk VM for Croquet. The VM will dynamically compile Smalltalk bytecodes to machine code transparently to the programmer, and execute this machine code instead of interpreting bytecode. He expects to have an initial release within a year which should execute pure Smalltalk code some 10 to 20 times faster than the current Squeak VM. The new VM will be released under the Qwaq open source licence (MIT-compatible).

    Eliot will be posting notes on his progress and design decisions on his blog, and notes that the VM is to be released under the Qwaq open source licence. He’s looking to maintain compatability with the existing Croquet VM, Hydra, and Slang plugins. His first post gives lots of interesting details of work done so far, and his future plans.

    Eliot is a long-time Smalltalker, having worked on VisualWorks for many years with a focus on VM development, and has recently been working with Gilad Bracha at Cadence.

  • Dan Ingalls Interview on FLOSS Weekly

    Randal L. Schwartz writes that:

    “Dan Ingalls graciously granted me a 90-minute interview for my FLOSS “Weekly”
    show.  We talked about the early days at Xerox PARC, the birth of Squeak,
    and the Lively Kernel.”  

    Dan Ingalls has been the principal architect of five generations of Smalltalk environments. He designed the byte-coded virtual machine that made Smalltalk practical in 1976. He also invented BitBlt, the general-purpose graphical operation that underlies most bitmap graphics systems today, as well as pop-up menus. He has received the ACM Grace Hopper Award for Outstanding Young Scientist, and the ACM Software Systems Award.

    Dan’s major contributions to the Squeak system include the original concept of a Smalltalk written in itself and made portable and efficient by a Smalltalk-to-C translator. He also designed the generalizations of BitBlt to arbitrary color depth, with built-in scaling, rotation, and anti-aliasing. He worked with John Maloney to produce much of Squeak’s Morphic and MVC frameworks, as well as its audio support. Dan is currently a member of the Squeak Board.

    Dan is a Distinguished Engineer at Sun Microsystems where he is working on the Lively kernel project, a new kernel for JavaScript that will offer the reflective capabilities needed for proper development support, as well as in-browser support for other high-level languages.

    You can listen to the interview online or download it at http://twit.tv/floss29.

    [Pop-Quiz: In which language is Dan more comfortable: C++ or Visual Basic?]

  • New Yorkers’ chance to see Squeak-based education tools

    The Mid-Hudson Valley Linux User Group will get the opportunity on 4th June to hear about a range of educational tools running on Squeak, including: SeasideScratchCroquet and Etoys. Joe Apuzzo will discuss his experience teaching 60 kids from 3th grade to 5th math and science (all within 15 minutes per group).

    Find out more at the website.

  • German Squeak Association Meeting: Demos

    The German Squeak Association (Squeak e. V.) had its annual meeting on May 17. For the second time, the meeting was hosted by the Software Architecture Group at the Hasso-Plattner-Institut in Potsdam. Before the official part, attendees of the meeting were given the opportunity to demonstrate their Squeak projects.

    First, Tobias Pape and Arian Treffer, students of HPI, demonstrated SwaLint, a source code checker for Squeak. SwaLint is intended as a successor to SmallLint and, thanks to its flexible plug-in architecture, supports running SmallLint checks seamlessly. SwaLint can be configured in great detail: thresholds for all kinds of values can be set, and output can be filtered. Users can easily implement their own plug-ins for the tool.

    Next, Michael Haupt (HPI) gave a brief demonstration of SqueakFS, which was implemented by Johan Björk and Eskil Andréen from Stockholm University, Sweden. SqueakFS makes the contents of a running Squeak image available as part of the file system. Currently, it is limited to read-only access, but the image can already be viewed from three perspectives: all classes as a flat collection, assorted by category, and by class hierarchy.

    Robert Krahn presented SqueakSVN, which is an ongoing development effort in the Software Architecture Group at HPI. The purpose of SqueakSVN is to make Subversion version control available to Squeak developers; it is able to import Monticello projects. SqueakSVN will be released in June.

    Martin Beck is currently working on his MSc thesis in the HPI Software Architecture Group. His work is dedicated to implementing NXTalk, a Smalltalk virtual machine for the Lego Mindstorms NXT platform. Development of NXTalk application takes place in a Squeak image, and assembled NXTalk images are transferred to the NXT for execution by the dedicated NXTalk VM. In the current state, simple images can be assembled and run: Martin demonstrated a program that can be used to steer a simple NXT bestowed with two motors.

    The popular introduction to the Seaside web application framework that was produced at HPI was briefly presented by David Tibbe, one of its co-authors.

    Robert Krahn had another appearance presenting the collection of games for the XO laptop developed by HPI students. All of the games are available for download as project or SAR files.

    Finally, Carl Friedrich Bolz (Düsseldorf University), Adrian Kuhn (University of Bern), and Toon Verwaest (University of Bern) presented SPy, their ongoing effort to implement the Squeak VM in Python using the sophisticated PyPy tool chain. SPy is currently lacking GUI  and other I/O support, but is able to load images and run the tinyBenchmarks. Right after the Squeak association meeting, a PyPy development sprint in Berlin will, amongst others, bring new improvements.

    After the official part of the association meeting, special guest Dan Ingalls gave a demonstration of Lively, his current project at Sun Labs. It looks and feels, admittedly, a bit like Squeak in disguise, but in Dan’s opinion, there is nothing bad about building the “same” system several times if it’s cool. That is certainly true for Lively.

  • S3 Highlights: Lively, COLA, Huemul, Squeak on Python and more

     

    On 15/16 May, the workshop on Self-Sustaining Systems (S3) took place at the Hasso-Plattner-Institut in Potsdam. An exciting event at a beautiful place, it featured invited talks by Ian Piumarta, Dan Ingalls, and Richard P. Gabriel, and five presentations of reviewed papers that approached self-sustainment from different angles.

    (more…)

  • Driving WifiBots with Squeak

    Noury Bouraqadi has some very exciting news for anyone interested in using Squeak for robotics. He writes on the mailing list that Squeak is now running on yet another platform: WifiBot robots. This work is a step towards both a smart software architecture that drives individual robots and  system that manages robots interactions and cooperation.

    If you’re interested in being watched by crowds of robots as you work, Noury and his colleagues are now seeking a PhD student to contribute to this project. See the project website for more details.