Lint, Smallint, Quality Assistant, Code Mentor et Code Critic

4 avril 2018

Vous ne savez pas trop comment utiliser l’outil Lint pour Smalltalk dans votre dialecte de Smalltalk préféré, que ce soit Pharo, Instantiations Smalltalk (auparavant VisualAge Smalltalk), Dolphin Smalltalk ou VisualWorks?

Vous devez tout premièrement savoir que cet outil porte différents noms selon l’environnement Smalltalk que vous utilisez.  Il est connu sous le nom de Quality Assistant dans Pharo, SmallLint dans Instantiations Smalltalk, Code Mentor dans Dolphin et Code Critic dans VisualWorks!

Une série de 2 articles (ici et ici) vous introduit à cet outil et à la construction de règles!


Smalltalk sur iOS et Android

28 novembre 2017

Smalltalk sur iOS et Android? Oui, c’est maintenant possible.  Mais c’est un brin plus compliqué qu’on ne le pense (pour l’instant).  Un excellent article de david Buck sur le sujet ici.

What’s new?

19 juillet 2016

What’s new?

After a major data loss (I haven’t given up on getting back all my data, mostly code repositories and databases!), I had to start all my pet projects from scratch. Luckily, it’s easier second time around as they say! And, lucky me, I store all my personal stuff on the web! So here’s a list of what’s coming up on this blog.


Even though I had a decent working version of the genetic algorithm program to find the best ruzzle grid (original posts in French here, here and here), I wasn’t satisfied with the code.  It slowly evolved from a bunch of code snippets into something I could somehow call a genetic algorithm.  Problem was that my solution was tailored for this specific problem only!  Since I lost all the Smalltalk code, I redid the whole thing from scratch : better design, simpler API, more flexible framework.  I can currently solve a TSP problem, the best ruzzle grid search and a diophantine equation.

I also plan to provide examples of the 8 queens problem, the knapsack problem, a quadratic equation problem, a resource-constrained problem and a simple bit-based example with the GA framework.  Besides, the are now more selection operators, more crossover operators, more termination detectors (as well as support for sets of termination criteria!), cleaner code and the list goes on!  So I’ll soon publish a GA framework for Pharo.

As most of you know, the Rush fan in me had to pick a project name in some way related to my favorite band!  So the framework will be called Freewill, for the lyrics in the song :

Each of us
A cell of awareness
Imperfect and incomplete
Genetic blends
With uncertain ends
On a fortune hunt that’s far too fleet


A stupid quest I’ll address after the first version of my GA framework is published.  It all started with a simple question related to the game of bingo (don’t ask!) : can we estimate the number of bingo cards sold in an event based on how many numbers it takes for each card configuration to have a winner?  So it’s just a matter of generating millions of draws and cards à la Monte Carlo and averaging how many numbers it takes for every configuration.  Why am I doing that?  Just because I’m curious!


There’s been a lot of action on the Pharo side and Glorp.  I plan on having a serious look at the latest Glorp/Pharo combo and even participate to the development!


I’ll translate my articles (in French here, here and here) on the SQL sudoku solver in English and test the whole thing on the latest MySQL server.  Besides, db4free has upgraded to a new MySQL server version!


I had done a port of NeoCSV to Dolphin right before losing all my code data.  Wasn’t hard to port so I’ll redo it as soon as I reinstall Dolphin!


It’s time to reinstall VisualAge, VisualWorks, Squeak, ObjectStudio and Dolphin and see what’s new in each environment!  From what I saw, there’s a lot of new and interesting stuff on the web side.  Add to that the fact that most social media platforms have had significant changes in their respective APIs recently, so there’s a lot to learn there!


That’s a wrap folks!

Smalltalk en vrac (29)

15 mars 2016


La spirale de Fibonacci avec Dr. Geo.

L’annonce du IWST16 : tous les détails.

La toute nouvelle VM de Cog est disponible ici!


Exemple d’une application avec Gemstone/S comme backend.


SelectEntity, un nouveau widget pour Spec!

Le Pharo Monthly de février 2016 est ici.

Comment déployer une application Seaside sur Linux.

Bits, bytes et bit masks pour le plaisir!

Phratch pour Debian : c’est maintenant disponible!

Un outil pour extraire les données d’un modèle SAP.

Un exemple d’utilisation de FFI dans Pharo.

Comment construire un browser en une seule page de code.


PDF4Smalltalk 1.4 est maintenant disponible!  Tous les détails ici et ici.

Smalltalk en vrac (28)

4 mars 2016




Fignolez vos papiers, corrigez vos publications : le call for paper de la conférence 11th Workshop on Implementation, Compilation, Optimization of OO Languages, Programs and Systems est annoncé ici!

Alan Kay, le visionnaire, cette figure légendaire dans le monde de Smalltalk, dans une ancienne entrevue.

Vous aimez les maths?  Vous aimez Smalltalk?  Didier H. Besset attend vos suggestions!


La version 1.4 de PDF4Smalltalk est maintenant disponible sur le Public Store Repository!


Pharo Days : les détails pour les inscriptions sont ici.

Visualiser les dépendances entre des packages FAMIX avec Moose/Pharo.


SqueakJS et ElectronJS : curieux?



Smalltalk en vrac (25)

19 février 2016


Continuez le fascinant voyage au coeur de la VM avec les toujours intéressantes explications de Clément Béra.

Seaside, HTTP et 503 : explications.


Du code Delphi tel que vu par Moose ici.

GToolkit 3.10 pour Pharo 5.0 est arrivé!

Unicode pour Pharo!  Hourra!  L’ai-je crié assez fort?  HOURRA! Et bravo!


Smalltalk Digest de février 2016, ici.

OBDCEXDI et VisualWorks : des détails.

Hidden Gems Screencast

16 février 2016

Une série de screencasts qui expliquent certaines fonctionnalités méconnues de VisualWorks. Cincom attend vos vidéos!