Esug-list
By thread
esug-list@lists.esug.org
By month
Messages by month
- ----- 2026 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
January 2021
- 3 participants
- 4 messages
URGENT - Fully funded Research Internship for Smalltalk programmer
by Simon Holland
URGENT – Fully funded five-month research internship available immediately in the School of Computing and Communications at The Open University for programmer.
A fully funded place for a five-month Research Intern is immediately available at the School of Computing at the Open University. Prospective research interns could be excellent final year undergraduates, Masters students, or PhD students, or could have recently completed any of these awards. The post is available immediately, but in any case, you must be available to start in February 2021. Due to covid restrictions, the intern will be based remotely, with co-ordination online.
The project involves the iterative design, construction and exploration of a highly expressive Direct Combination system (although no previous knowledge of Direct Combination is required). Direct Combination is a family of user interaction techniques, and a user interaction framework. Recent developments in Stateful Traits (Tesone et al., 2020) have provided tools for creating new highly expressive Direct Combination systems.
The Project will involve designing, implementing and evaluating a new direct combination engine, and creating support tools as needed. You will be strongly encouraged to contribute as co-author to one or more refereed research publications. This research internship is available to start immediately and will run for five months. You will be able to work remotely for this whole period.
Skills
Good Smalltalk programming skills are essential, ideally in Pharo. Good written and oral English communication skills are essential. Willingness to consider the end-user’s point of view is important. Various background skills are not essential, but could be helpful, such as: knowledge of, or interest in, software composition research and metaprogramming; good TDD habits; acquaintance with stateful traits; acquaintance with the Data-Context-Interaction paradigm; experience and skills with the Pharo toolset, such as Roassal, the Glamorous Toolkit, and Iceberg.
Applications should include a CV with contact details and covering note that summarizes:
• evidence of appropriate knowledge, skills and experience,
• why you want to undertake this particular internship and why you would be a good candidate,
• telephone, email and postal contact details for two referees, at least one of whom must be able to comment on subject discipline specifics.
For more information, or for informal enquiries, which are encouraged, contact s.holland or o.howson (insert <at> here) open.ac.uk. Applications should also be sent to this address, and also copied to STEM-CC-Secretaries(a)open.ac.uk.
———————————————————————————————————————
Further particulars
Design, Implementation, and Evaluation of a highly expressive Direct Combination Prototype
Candidates are not required to know anything about Direct Combination (DC). However, some optional background is provided for candidates who might wish to know about the project’s aim and scope.
Direct Combination is variously a principle, a family of user interaction techniques, and a user interaction framework (Holland and Oppenheim, 1999; Holland et al., 2002a). Together, these can give users greatly enhanced flexibility interacting with digital systems and can reduce search when dealing with complex or unfamiliar interfaces (Holland et al., 2005).
Direct Combination also has potential to simplify multi-device interaction (Holland et al., 2002), enhance bimanual interaction (Webb, 2017), facilitate interactions spanning virtual and physical boundaries; encourage serendipitous interaction (Holland et al., 2002b), and to enable the incremental development of novel interactions by end-user programming (Holland, 2003). While the potential of Direct Combination has been widely noted (e.g. Beaudouin-Lafon and Mackay, 2000, Rekimoto, 2004, Bartoleo et al, 2006 , Webb, 2017, Agarwal et al, 2019) existing implementations have been constrained by the limitations of available mechanisms for the modelling of separation of concerns in multi-dimensional domain models.
However, new mechanisms that facilitate separation of concerns, in particular the revised version of Stateful Traits (Tesone et al., 2020) have created new opportunities for building highly expressive Direct Combination engines. Reenaskaug’s Data-Context-Interaction Paradigm (Reenskaug, 2006; James Coplien and Trygve Reenskaug, 2012) has also contributed relevant insights.
As well as prototyping the new DC engine, the project will prototype support tools. To this end, the project will also involve analysing and creating informal domain models for one or two end-user domains, anticipated to be an AR/VR game in Unity (linked via a simple OSC bridge) and possibly an interface to allow end users and music scholars to query, analyse and visualise large quantities of linked music data on the web (via SPARQL).
The choice of Smalltalk as preferred development environment reflects the fact that three previous implementations of Direct Combination at the Open University, and the reference implementations of both Stateful Traits and DCI, were all developed in Smalltalk (variously in Squeak, VisualWorks and Pharo). At the same time, the pervasively live-object nature of Smalltalk and its sophisticated IDE, along with the powerful metaprogramming facilities, offer substantial advantages in facilitating rapid prototyping and exploration.
References
Agarwal, Mallika, Arjun Srinivasan, and John Stasko. (2019) "VisWall: Visual Data Exploration Using Direct Combination on Large Touch Displays." 2019 IEEE Visualization Conference (VIS). IEEE, 2019
Bartolomeo, G., BlefariMelazzi, N., Cortese, G., Friday, A., Prezerakos, G., Walker, R. and Salsano, S., 2006, February. Sms: Simplifying mobile services-for users and service providers. In Advanced Int'l Conference on Telecommunications and Int'l Conference on Internet and Web Applications and Services (AICT-ICIW'06) (pp. 209-209). IEEE.
Beaudouin-Lafon, M. and Mackay, W.E., 2000, May. Reification, polymorphism and reuse: three principles for designing visual interfaces. In Proceedings of the working conference on Advanced visual interfaces (pp. 102-109).
James Coplien and Trygve Reenskaug (2012) The data, context and interaction paradigm. In SPLASH '12: Proceedings of the 3rd annual conference on Systems, programming, and applications: software for humanity.
Gedenryd, H. (2002). Beyond Inheritance, Aspects and Roles: a Unified Scheme for Object and Program Composition. TR2002/09, Department of Computing, The Open University, Milton Keynes, MK76AA, UK.
Holland, S. and Oppenheim, D. (1999) Direct Combination. Proceedings of CHI 1999 pp. 262-269.
Holland, S., Morse, D.R., Gedenryd, H. (2002a) Direct Combination: a New User Interaction Principle for Mobile and Ubiquitous HCI. In Paterno, F., (Ed.) (2002) Human Computer Interaction with Mobile Devices. Mobile HCI 2002.
Holland, Simon; Gedenryd, Henrik and Morse, David (2002b). Applying Direct Combination to afford spontaneity in Pervasive Computing. In: Workshop on Supporting Spontaneous Interaction in Ubiquitous Computing Settings, 29 Sep - 1 Oct 2002, Gothenburg, Sweden.
Reenskaug, T. (2006) DCI Documentation http://heim.ifi.uio.no/~trygver/themes/babyide/baby-documents.html (Accessed 19 Dec 2020)
Holland, Simon (2005). A first empirical study of direct combination in a ubiquitous environment. In: Fincher, Sally; Markpoulos, Panos; Moore, David and Ruddle, Roy eds. People and computers XVIII - Design for life: proceedings of HCI 2004. London, UK: Springer, pp. 229–247.
Holland, Simon (2003). Ambient Combination: Applying Direct Combination to Afford Spontaneity in Pervasive Computing . http://mcl.open.ac.uk/DC/uploads/Ambient%20Combination%20Long.pdf (accessed 10 Jan 2021)
Rekimoto, J. (2004). SyncTap: synchronous user operation for spontaneous network connection. Personal and Ubiquitous Computing, 8(2), 126-134.
Pablo Tesone, Stéphane Ducasse, Guillermo Polito, Luc Fabresse, Noury Bouraqadi (2020) A new modular implementation for stateful traits, Science of Computer Programming, Volume 195, 102470, ISSN 0167-6423, https://doi.org/10.1016/j.scico.2020.102470.
Webb, A.M., 2017. Phrasing Bimanual Interaction for Visual Design (Doctoral dissertation).
Jan. 24, 2021
Two year position at RMOD on Pharo and Machine Learning
by Stéphane Ducasse
Hello
we have a new position at RMOD France to work on machine learning algorithms for Pharo.
Please distribute this announce and do not hesitate to contact me for more information.
S.
--------------------------------------------
Stéphane Ducasse
http://stephane.ducasse.free.fr / http://www.pharo.org
03 59 35 87 52
Assistant: Aurore Dalle
FAX 03 59 57 78 50
TEL 03 59 35 86 16
S. Ducasse - Inria
40, avenue Halley,
Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
Villeneuve d'Ascq 59650
France
Jan. 21, 2021
UK Smalltalk User Group meeting - Wednesday, January 27th
by Giovanni Corriga
The next meeting of the UK Smalltalk User Group will be on Wednesday,
January 27th.
For this presentation, guest speaker Michael Engel will bring us back to
basics with a bare-metal Smalltalk-80 system for the Raspberry Pi.
In 2020, the Xerox PARC research laboratory celebrated its 50th
anniversary. One of the most important developments coming out of PARC is
the Smalltalk system, which integrates a programming language, operating
system and graphical user interface.
Today, most of the Smalltalk systems run in hosted mode on a conventional
operating system. This contradicts Dan Ingalls' idea that "an operating
system is a collection of things that don't fit inside a language; there
shouldn't be one". Accordingly, original Smalltalk systems, e.g. for the
Alto workstation, ran on the bare metal of the computer.
In this talk, we will discuss an approach to create a bare-metal
Smalltalk-80 implementation for the Raspberry Pi (
https://www.raspberrypi.org/ ), a popular family of ARM-based systems.
Interesting aspects that will be investigated are the overhead involved in
bringing the system to life and debugging it, adapting the system to
different Raspberry Pi models, and constraints due to properties of the
hardware and the Smalltalk-80 VM.
Michael Engel ( https://multicores.org/ ) is associate professor for
compiler design at the Norwegian University of Science and Technology
(NTNU) in Trondheim/Norway. His research interests lie on the intersection
of compilers, operating systems and modern hardware. In previous positions,
Michael worked at different German Universities as well as Oracle Labs
Cambridge and Leeds Beckett University. He also was founder and CTO of
kernel concepts, the first German company working with embedded Linux
systems in 1999.
Given the current COVID-19 restrictions, this will be an online meeting
from home.
If you'd like to join us, please sign up in advance on the meeting's Meetup
page ( https://www.meetup.com/UKSTUG/events/cbklbrycccbkc/ ) to receive the
meeting details. Don’t forget to bring your laptop and drinks!
Jan. 15, 2021
Beta Testing ARM64 Linux & Windows
by Stéphane Ducasse
Hi
Happy new year. This announce from the pharo consortium can interest some of you.
S.
> Begin forwarded message:
>
> From: "tesonep(a)gmail.com" <tesonep(a)gmail.com>
> Subject: [Pharo-users] Beta Testing ARM64 Linux & Windows
> Date: 11 January 2021 at 18:21:00 CET
> To: Pharo-dev <pharo-dev(a)lists.pharo.org>, Any question about pharo is welcome <pharo-users(a)lists.pharo.org>
> Reply-To: Any question about pharo is welcome <pharo-users(a)lists.pharo.org>
>
> In the last months, we have been working on the implementation of a MIT-licensed ARMv8 Just-In-Time compiler for Pharo VM.
> We would like to announce that a beta first version of our JIT backend is available for beta-testing for ARM Linux and Windows machines.
>
> We are very happy with the advance in this subject, as we have not only implemented a new backend but we have added more than 2500 tests of the JIT, the primitives, code generation, plugins, and the VM in general. Also, we are generating a lot of documentation and improving the process to really democratize the development of the VM.
>
> After all the text there are details on how to obtain the versions for testing it.
>
> The following sections give more details of the current status, and the following steps including Apple Silicon, Windows, and Linux ARM64.
>
> Current Status
>
> Our objective is to have a running JIT for the new aarch64 architecture (ARM 64bits). This task includes not only a new backend for the JIT compiler but also adding support for external libraries, dependencies, and the build process. This means having a working VM with comparable features as the one existing in Intel X64. We are targeting all the major operating systems running on this platform (Linux, OSX, Windows). Each of them presents different restrictions and conditions.
>
> After expending some time this is the current status:
>
> - We implemented a full backend for the JIT compiler targeting aarch64.
> - All the image side was adapted to run on it, tested on Ubuntu ARM 64 bits.
> - We added support for: Iceberg (Libgit) / Athens (Cairo) / SDL / GTK
> - We implemented a LibFFI based FFI backend as the default one for Pharo 9 in aarch64 (next to come in all platforms). This opens the door to easily port the features to other platforms and OSes. This new implementation does not have an impact on performance as it has comparable results with the old implementation. Much more, this implementation opens also the door to have runners in different threads than the VM thread (non-blocking FFI).
>
> Status By Platform
>
> Linux
>
> We have a working version of the VM. It is using the same code-base and build process for both architectures (Intel X64 / ARM aarch64). A version can be compiled and executed in all the platforms. Also, we have integrated the build using Open Build Services (OBS) to generate packages for all the mainstream distributions.
> Currently, the version for Debian-like systems (Debian, Ubuntu, Raspberry pi OS, etc) is available and ready to beta test; the details for installing them are in the end of the mail. Versions for ARCH-based and RPM-based systems are in the working (If you want to get them or to test them please contact us, so we can pass on the detail of how to get them).
>
> Windows
>
> We have extended the build process to fully support Microsoft Visual Studio compilers and more flexibility to select the targets, also we are building it to run in Windows ARM. To correctly run the VM in Windows it is needed to build all dependencies for aarch64.
> In this path, we have a working Intel x64 version with Cygwin and MSVC, and a MSVC version for aarch64 (ARM64).
> The ARM64 version is available to be beta-testing on machines with this architecture.
> The Details are at the end of the mail.
>
> OSX
>
> Our third target is to have a working version for the newest Apple silicon. We are acquiring the corresponding hardware to test and to address the differences in the API exposed to JIT applications. As it is the case of the Windows VM, there is no need to change the machine code generation backend, as it is the same that has been implemented for Linux; but to compile external libraries and particularities of the new OS version.
>
> Thanks for your support. In the meantime, we will continue giving you news about the current state and where are we going.
>
> Beta Testing - Linux
>
> For Debian like distributions, the instructions are the following.
>
> Installation
>
> 1) Add a new APT source, usually modifying a file in /etc/apt/sources.list.d/, for example, we can add the pharo.list file with the following content. Also, we need to register the key of the repository. These steps should be done only once. We are giving a little script for modifying the configuration. It is only needed to execute line by line.
>
> For Raspbian:
>
> echo "deb https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/… <https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…> ./" >> pharo.list
>
> sudo cp pharo.list /etc/apt/sources.list.d/pharo.list
>
> wget https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/… <https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…>
>
> sudo apt-key add Release.key
>
>
> For Ubuntu:
>
> echo "deb https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/… <https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…> ./" >> pharo.list
>
> sudo cp pharo.list /etc/apt/sources.list.d/pharo.list
>
> wget https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/… <https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…>
>
> sudo apt-key add Release.key
>
> 2) Update the repository to take the current versions
>
> sudo apt update
>
> 3) Install Pharo9 VM
>
> sudo apt install pharo9 libgit2
>
>
> 4) In case of using the interactive version (with UI) check if the packages libsdl2-2.0-0 and libcairo2 are installed (Usually they are installed, but depends what it is installed in the system). These are not needed for the headless execution or if it is not used by the image.
>
>
> Getting the images:
>
> The images can be downloaded using zero-conf, the latest image is ready to be used. It can be done with:
>
> wget -O - get.pharo.org/64/90 <http://get.pharo.org/64/90> | bash
>
>
> Running Pharo
>
> pharo Pharo.image eval 42 factorial
>
> Or interactive
>
> pharo Pharo.image --interactive
>
> Windows Testing
>
> A version of the VM is ready to be tested in Windows ARM64. A zip containing the VM is available in:
>
> https://files.pharo.org/vm/pharo-spur64/Windows-ARM64/PharoVM-9.0.0-4df0e56… <https://files.pharo.org/vm/pharo-spur64/Windows-ARM64/PharoVM-9.0.0-4df0e56…>
>
> As in Linux, the latest image is compatible with this version of the VM.
>
> Error reporting
>
> In case of encountering errors please report them attaching:
>
> - crash.dmp file and PharoDebug.log
> - Version of the image using (in case of any community project loaded, the names of those)
>
> - Complete machine version (the result of executing uname -a)
> - Complete information about the Linux distribution
>
> - Steps for reproducing the error (if needed)
>
> Thanks for the effort!!
>
> --
> Pablo Tesone.
> tesonep(a)gmail.com <mailto:tesonep@gmail.com>
--------------------------------------------
Stéphane Ducasse
http://stephane.ducasse.free.fr / http://www.pharo.org
03 59 35 87 52
Assistant: Aurore Dalle
FAX 03 59 57 78 50
TEL 03 59 35 86 16
S. Ducasse - Inria
40, avenue Halley,
Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
Villeneuve d'Ascq 59650
France
Jan. 15, 2021