June 07, 2019
[ann] IPFS for Pharo
Over the last weeks I have started to explore IPFS more seriously.
IPFS, the Inter-Planetary File System, is supposed to be the
next-generation Web: a decentralized content-addressed database.
Since there is nothing better then Pharo for exploring databases,
I have started to write an IPFS interface to Pharo:
It connects to a local IPFS server, so you have to have one
running. It’s surprisingly straightforward to install and configure,
unless you have to fight with firewalls that block IPFS traffic.
Feedback of any kind is welcome!
by Stéphane Ducasse at June 07, 2019 05:36 PM
Blog post: About singleton
View at Medium.com
by Stéphane Ducasse at June 07, 2019 01:53 PM
June 02, 2019
PlantUML access from Pharo
Code is on GitHub: https://github.com/fuhrmanator/PlantUMLPharoGizmo
by Torsten (email@example.com) at June 02, 2019 01:12 PM
May 24, 2019
[Consortium] Lifeware and Schmidt Pro
The Pharo consortium is very excited and super happy to bring your attention to the following announce
The consortium got two contracts to support financially one year of engineer to improve Pharo.
The companies Lifeware and Schmidt Pro fund work on Pharo to improve Pharo. The total amount
of the two contracts is around 190 K Euros.
In addition the RMOD team got some resources from Inria.
The net result is that in 2019 the consortium will have 3.5 engineers working full time on Pharo.
– Esteban Lorenzano
– Pablo Tesone
– Cyril Ferlicot
– Guillermo Polito
It will boost Pharo. Note that the issues raised by Schmidt Pro and Lifeware
What is key to notice is that the consortium is working because many contributing companies are sharing ressources.
This is built a strong soil to grow Pharo and business around.
On the behalf of Inria, the consortium and the community we would like to thank
Lifeware and SchmidtPro for their strong support.
by Stéphane Ducasse at May 24, 2019 11:54 AM
May 23, 2019
Tech Talks restarted
Last year we had some “Pharo Tech Talks”… we want to start that again.
The time would be 17h local time (Berlin/Paris).
-> If you want to “drive” one of those dates —> send me a mail.
-> Dates are flexible, if you want to do a tech talk you can propose another date, too
-> For the dates without special talk, I think I will do a “lets fix something small” session as the default.
(with screen sharing, while the people on Discord help and discuss how to do it)
What can it be?
-> you could present your project
-> you could give a “lecture”
-> you could do some tutorial
-> You could moderate a audio chat around a topic
If someone wants to do something, send me a mail. I will for now already add these dates to the events list at
by Stéphane Ducasse at May 23, 2019 09:51 AM
May 21, 2019
[GSoC] Weekly Blog Posts
May 18, 2019
[book] new version of Pharo with Style
Just a little announce to mention that there is a new version of Pharo with Style.
by Stéphane Ducasse at May 18, 2019 08:36 PM
May 16, 2019
[GSoC] Student Introductions
Google Summer of Code 2019 has officially started with its community bonding period. Pharo Consortium has accepted 7 students from 4 different countries to participate in this year’s GSoC.
Every week our students will publish blog posts to announce and document their progress. In this first week, we asked students to introduce themselves, tell us a little about their background and the projects they will be working on.
These are the blog posts where our students introduce themselves to the community. Feel free to contact them personally with questions, feedback, or just words of encouragement.
- Atharva Khare, GSoC 2019: Extending DataFrame library for Pharo Consortium
- Nikhil Pinnaparaju, My Journey Into Google Summer of Code — 2019
- Dayne Lorena Guerra Calle, GSoC 2019 introducing my project: Next Generation of Unit Testing
- Evelyn Cusi Lopez, Better and more refactorings for Pharo — Part 1
- Myroslava Romaniuk, Improving Code Completion @ GSoC 2019: introduction
- Nina Medic, GSoC Project
- Smiljana Knezev, New Collections for Pharo
by Stéphane Ducasse at May 16, 2019 11:32 AM
[Ann] on do: messages
[Ann] TF-IDF in Pharo
A little library to learn super basic technique for document processing.
by Stéphane Ducasse at May 16, 2019 09:51 AM
May 15, 2019
[Ann] Pharo VM generated from Pharo
Just to keep everyone informed, last week I’ve spent a couple of days making slang work on Pharo again, based on the initial effort of Eliot.
The summary of what I did is:
– we can generate, compile and run a stack vm
– we can generate, compile and run a cog vm
– for this, I’ve done a couple of patches to VMMaker
– the ones specific to Pharo has been pushed
– the ones that touch cross dialect code are still in review (I think)
To do this work
– I had to review the AST-to-AST transformation, checking the output, comparing it to what squeak does and so on…
– I’ve written several unit tests to ensure that future migrations are easier to do
– I’ve introduced several compatibility classes/methods related to PackageInfo, Time and so on…
by Stéphane Ducasse at May 15, 2019 07:39 AM
April 28, 2019
[Ann] Two nice books for the forthcoming mooc!
To support the start of the new season of the Pharo Mooc (https://www.fun-mooc.fr/courses/course-v1:inria+41010+self_paced/about) on May 6th, we are happy to announce a new version of the book: TinyBlog: a First web App in Pharo in English and French.
http://books.pharo.org/tinyblog-tutorial/ and http://books.pharo.org/tinyblog-tutoriel/
Stéphane, Luc and Olivier. http://mooc.pharo.org
by Stéphane Ducasse at April 28, 2019 01:01 PM
April 27, 2019
Best paper award in the “Industrial Robot” category @ ICARSC 2019
IMTDouai Team (L. Fabresse/N. Bouraqadi) just won the Best paper award in the “Industrial Robot” category @ ICARSC 2019 () with our paper titled “PolySLAM: A 2D Polygon-based SLAM Algorithm” implemented in Pharo @johannDichtl @glozenguez
by Stéphane Ducasse at April 27, 2019 07:12 AM
April 26, 2019
Agile Artificial Intelligence
by Stéphane Ducasse at April 26, 2019 06:03 PM
April 25, 2019
Lunch with Alan Kay
Interesting read of Lunch with Alan
by Torsten (firstname.lastname@example.org) at April 25, 2019 09:28 AM
Madrid Smalltalk User Group Meeting on Pharo - 29. April 2019
Nueva reunión del meetup de Madrid Smalltalk el lunes 29/4: "Taller sobre Moldable Development en Pharo". Read more here
by Torsten (email@example.com) at April 25, 2019 09:02 AM
April 23, 2019
Pharo Sprint April 26
Read https://association.pharo.org/event-3253846 for more details.
by Torsten (firstname.lastname@example.org) at April 23, 2019 03:19 PM
Geranium is an Energy consumption simulator for participatory modelling and decision making, taking into account: urban, social and micro-climate data. It is written in Pharo available on github on
They are currently looking for a Pharo Developer for 4 months, based in La Rochelle France. Check the jobs channel on Pharo Discord if you are interested. Or check here.
by Torsten (email@example.com) at April 23, 2019 03:12 PM
Moose for Pharo 7
is now available. Check the webpage:
by Torsten (firstname.lastname@example.org) at April 23, 2019 03:10 PM
Type Checking Pharo methods
Manuel Leuenberger reported that he improved performance on his type checker for GT Tools.
Code is here: https://github.com/maenu/gtoolkit-contribution-typer
I wonder if it would work also without GT / Bloc / Brick and could be used already in a standard out of the box Pharo image...
by Torsten (email@example.com) at April 23, 2019 12:15 PM
April 18, 2019
[Pre-ann] Spec 2.0 Gtk3 bindings
People that assisted to Pharo Days 2019 (or that follow my twitter account) already know this, but it needs to be formally announced:
We are working on Spec 2.0, and it will provide not just the classic Morphic bindings but also a new option for developers: Gtk3 bindings!
Why we want a Spec 2.0 with different backends?
There are reasons that converged to decide us to make it:
- First, to provide a validated abstract Spec 2.0 that can be used with different backends, preparing Pharo to be able to switch backends without needing to recreate the full IDE from scratch each time (a problem we have partially now in our way to deprecate Morphic).
- Second, because we receive from different sources the requirement of having the possibility of developing real native-looking desktop applications. Yes, in moment where people talk about the cloud, SaaS and web-applications as the “next big thing” (something that is been declared since years, by the way), we believe is important to provide this, for two big reasons:
- Because there is still an important place for desktop applications market and most medium-size to big business still require them.
- Because Pharo itself is a desktop application! (And we need to provide the best experience possible on it).
For us, this is a fundamental step to continue improving Pharo itself, and it matches also the work we are doing on going real-headless: Pharo users will be able to start the Morphic world, a Gtk application or the next backend to come.
There are some other important players in the “native widgets scene”, so why we choose Gtk3?
Again, several reasons were taken into account:
- Gtk3 is cross platform. Yes, technically is just “native” in linux, but it works on Windows and macOS too.
- It is very mature and popular.
- It is made in plain C.
Next step: tool migration
The only way to know if you have covered what is needed is actually taking real-life use cases and implementing them. We have a list of tools that needs to be migrated and we are starting from them:
- Old GT tools will be replaced by new Spec tools (while preserving its power).
- Calypso UI needs to be rewritten in Spec 2.0 (it is in plain Morphic now).
- Pharo launcher as a standalone application is a good example of what you can do with the Gtk3 bindings.
And that’s it. Pharo 8.0 will come with Spec 2.0 and users will be able to benefit of it immediately
Pharo 80 will not need Gtk3. We will provide packages for Gtk3 for the people that need it. We will also release Spec20 soon so that people can try Spec 20 – independently of Gtk3
Pharo Consortium mainly Esteban, Pablo and Guille
by Stéphane Ducasse at April 18, 2019 06:06 PM
[ann] Workflow engine in Pharo
It is still in the early development and we discussed about making it public so everyone interested can join, take a look or provide any kind of feedback. I’m also at discord so you can contact me @skaplar.
by Stéphane Ducasse at April 18, 2019 06:00 PM
Pharo and native UIs - from Mars to Spec
Pharo 7 (beside many other features) was focused on being able to bootstrap an image right from the source as well as the transition to using git. Also stabilizing Iceberg tool with Git binding to have an improved source code management and give Pharo and its source code more exposure to the outside non-Smalltalk world.
Now Pharo 8 (which is currently in development) will focus on an updated version of Spec called "Spec 2.0". To build abstractions and prove that other backends (beside Morphic) could be used there is a plan to have a GTK binding as a second backend. This goes back to the old "Mars" project from Esteban - a native user interface framework which aimed to bring the native UI into Pharo. If I remember correctly back at the time it used an ObjectiveC Bridge.
This was already discussed on PharoDays 2019 and now Esteban gives some more detailed infos about the background on the Pharo mailinglist.
by Torsten (firstname.lastname@example.org) at April 18, 2019 01:11 PM
April 17, 2019
Workflow engine written in Pharo
In 2017 Netstyle open sourced a workflow engine for Pharo. I reported about this here.
Now in 2019 there is another Workflow engine written in Pharo from Sebastijan Kaplar:
Still in early development. But you can also join if you like
by Torsten (email@example.com) at April 17, 2019 06:27 PM
Data Analysis of UCI Heart Disease Dataset using Pharo
Data Analysis of UCI Heart Disease Dataset using Pharo - a short tutorial by Dhanya Sreekumar
by Torsten (firstname.lastname@example.org) at April 17, 2019 10:01 AM
April 16, 2019
Why I Talk About Smalltalk Even Though I’m Working in Java
Interesting medium.com article from Andrew Glynn called "Why I Talk About Smalltalk Even Though I’m Working in Java"
by Torsten (email@example.com) at April 16, 2019 09:21 PM
April 11, 2019
by Torsten (firstname.lastname@example.org) at April 11, 2019 03:40 PM
April 10, 2019
Pharo language track on exercism.io
An exercism.io language track for Pharo can be found here: https://exercism.io/my/tracks/pharo-smalltalk
by Torsten (email@example.com) at April 10, 2019 12:45 PM
Pharo DataFrame v2.0
Pharo DataFrame release v2.0 is available:
Read here what it can do for you.
by Torsten (firstname.lastname@example.org) at April 10, 2019 12:22 PM
Pharo graphics using Roassal
Milton shows some nice graphics examples on his twitter stream (using Pharo and Roassal):
by Torsten (email@example.com) at April 10, 2019 12:20 PM