<P> <B><FONT SIZE="+2"> Some Impressions on ESUG'94 </FONT></B>
<P> Trevor Hopkins<BR> Department of Computer Science,<BR> University ofManchester, U.K<BR> <A HREF="mailto:email@example.com">firstname.lastname@example.org</A>
<P> The second ESUG Summer School was held at University College, Cork (UCC) in Ireland from Monday, 5th September to Friday, 9th September. UCC is the second oldest university in Ireland, and is situated in a pleasant campus area about lkm from Cork city center. Although the buildings of the old quadrangle (which has only three sides!) form ed an elegant backdrop to the group photograph, the School itself was held in the Science Building, an exceptional example of 1960's high-rise concrete architecture. Including the speakers and local helpers, 49 people from seven european countries (and the USA) attended this year's School, a considerable increase on 1993.
<P> A big part of the Summer School was devoted to tutorials on advanced technical topics. Both of the tutorials on Monday were concerned with the construction of graphical user interf aces in different Smalltalk systems. The morning presentation was on "Graphical Interfaces in Visualworks" by Malik Bouabsa (LITP, University of ParisVI, France), who reviewed the approach taken by ParcPlace Systems (PPS). Malik concentrated on the classe s used to support the Model-View- Controller (MVC) approach, including major parts of the VisualComponent hierarchy and the use of PluggableAdaptors.
<P> The Monday afternoon tutorial was on "Graphical Interfaces in Smalltalk/V" by Patrick Barril (MASI , University of ParisVI, France). Patrick compared the different approaches to user interfaces used by evolving versions of Smalltalk/V, including old and new versions for Mac, DOS and Windows PCs and OS/2 machines, and compared this with the PPS viewpoin t.
<P> Tuesday's tutorial was "Instance-oriented Programming in Smalltalk" by Trevor Hopkins (CSD, University of Manchester, UK). Trevor illustrated the alternatives to simple static inheritance available in Smalltalk systems, including specializing in stances using blocks, using dynamic inheritance (where the class of an existing object is changed), and wrappers and encapsulators.
<P> On Wednesday, Matthias Buecker (Georg Heeg Objektorientierte Systeme, Dortmund, Germany) presented a talk on "Optimi sation Problems". Matthias delved deeply into the mathematics of constraints and optimisation problems, with examples, and then presented COME, a system written using ObjectWorks which represents and then finds solutions for such problems. Interestingly, the structure of the Smalltalk objects and classes closely models the mathematical description of such problems.
<P> The morning tutorial on Thursday discussed the "Binary Object StorageSystem" (BOSS). This was to be presented by Philippe Krief (ACKIA, Boulogne, France), who prepared the OHP slides, but was unable to attend himself. At short notice, Rob Vens (University of Groningen, Netherlands) stepped in, and presented the mechanism provided by ParcPlace Systems (for use with ObjectWorks and VisualW orks) to transport arbitrary objects from one image to another, or for storage in a conventional file system. Rob was careful to identify both the capabilities and limitations of BOSS, as well as the techniques used when BOSS is used to save and restore c lasses and methods.
<P> On Thursday afternoon. Francois Pachet (Laforia, University of Paris VI, France) introduced "Epiphyte Systems in Smalltalk-80".Francois considered the use of the become: and doesNotUnderstand: mechanisms to build 'spy' objects, capable of monitoring the messages sent to (almost) any object. Based on this, he also demonstrated tools to aid both the understanding and the potential reuse of Smalltalk objects. The ability to dynamically install a spy on an object, and to selectively trace messages sent to that object, was nicely demonstrated by the tools shown.
<P> The final tutorial on Friday morning was "The Self language Language and Environment" by Mario Wolczlco (Sun Microsystems Labs Inc., Mountain View, USA). Mario present ed Self, a new object- oriented programming language designed by David Ungar and Randall Smith, initially at Stanford University, with development work now moved to SMLI. In many ways, Self resembles Smalltalk, but removes unnecessary concepts (classes, f or example!) as well as some restrictions (multiple dynamic inheritance is now available). The current Self user interface uses animation and direct manipulation, and shows directly the 'object- centric' (as opposed to 'class- centric') approach to applic ation development.
<P> Demonstrations of various kinds formed a second important part of the Summer School. On Tuesday afternoon, there were two presentations from vendors: VisualAge (IBM) and Visua- Works (ParcPlaceSystems). This was an interesting an d useful opportunity to compare two rather different products, both based on Smalltalk and targetted at the construction of client-server business and financial applications.
<P> Further demonstrations were held on Friday afternoon. Mario Wolczko gave a short preview of the newest version (4.0) of Self and its user interface. He did this using a computer-based slide show written within the Self system. The nature of the new UI was particularly interesting, using an 'outliner' metaphor for all programmi ng tasks, and was constructed from graphical objects known as 'morphs'. This was followed by a demonstration by Matthias Buecker, who (while we watched) successfully added a new class to his COME system for solving an optimization problem suggested by An nick Fron. Matlhias also demonstrated the power of the debugger, particularly as a tool for understanding the subclass interface, and showed how Smalltalk applications can quite literally be "debugged into existence".
<P> More informal demonstrations and discussion sessions were held throughout the event. Thanks to the efforts of the technical staff and students at UCC, a large number of Mac and PC machines with a variety of Smalltalk implementations were made available. Many attendees were able to ins tall various Smallalk applications, often used as the focus for detailed discussions, while others were able to attempt exercises suggested by the tutorial speakers.
<P> The Summer School also had a very active social component, with plenty of opportunities for individual discussions over lunch and dinner. On the Tuesday evening, the conference dinner was held; this involved a coach trip to the charming harbour town of Kinsale. There was a short opportunity to explore the town and harbour, so as to wor k up an appetite. The four-course dinner itself was attended by 54 people, and was followed by after-dinner drinks in the bar, where several attendees displaying unexpected musical abilities on the piano. Many of those present were induced to try the dark Irish stout beers; indeed, some attendees made exceptionally spirited attempts to revive the fortunes of the local Murphy's and Beamish brewery companies.
<P> On Wednesday afternoon, a sight-seeing coachtrip was organised, which look in various local places of interest. This included the Jameson Heritage Center, based on an old distillery, which explained to everyone exactly how Irish whiskey is made.
<P> All the local organisation was magnificently carried out by Richard Studdert of UCC, aided by a small army of helpers. This author would like to thank technical and secretarial staff, research students and all others who worked so hard to make the event the success it was; in particular, the unstinting efforts of Richard Studdert cannot be undervalued. <p> You can also take a look at the <a href="http://www.esug.org/Conferences/1994/program">programme</a> of this second Summer School.