Wow, impressive improvements!

Seems like „soon“ Bloc and Gtk could be on the same footing, and FFI 
improvements „never hurt anybody“.

The rest of the list is no less spectacular.
Probably more spectacular, but I’m constrained by platform requirements, so I 
can’t use interesting languages to „further the cause of evil“, so anything 
that smells like „better integration“ gives me shivers.

Thanks to everyone involved, keep on rocking ;-)

From: Esteban Lorenzano via Pharo-dev <pharo-dev@lists.pharo.org>
Sent: Friday, April 26, 2024 12:20 PM
To: pharo-dev@lists.pharo.org; pharo-us...@lists.pharo.org
Cc: Esteban Lorenzano <esteba...@netc.eu>
Subject: [Pharo-dev] [ANN] Pharo 12 Release !


Dear Pharo users and dynamic language lovers:

We have released Pharo<https://pharo.org/> version 12!

What is Pharo?

Pharo is a pure object-oriented programming language and a powerful environment 
focused on simplicity and immediate feedback.

[https://pharo.org/news/Pharo12.png]

  *   Simple & powerful language: No constructors, no types declaration, no 
interfaces, no primitive types. Yet a powerful and elegant language with a full 
syntax fitting in one postcard! Pharo is objects and messages all the way down.
  *   Live, immersive environment: Immediate feedback at any moment of your 
development: Developing, testing, debugging. Even in production environments, 
you will never be stuck in compiling and deploying steps again!
  *   Amazing debugging experience: Pharo environment includes a debugger 
unlike anything you've seen before. It allows you to step through code, restart 
the execution of methods, create methods on the fly, and much more!
  *   Pharo is yours: Pharo is made by an incredible community, with more than 
100 contributors for the last revision of the platform and hundreds of people 
constantly contributing with frameworks and libraries.
  *   Fully open-source: Pharo full stack is released under 
MIT<https://opensource.org/licenses/MIT> License and available on 
GitHub<https://github.com/pharo-project/pharo>

... more on the Pharo Features page<http://www.pharo.org/features>.

In this iteration of Pharo, we continue working on our objectives of 
improvement, clean-up and modularization. Also, we included a number of 
usability and speed improvements. A complete list of changes and improvements 
is available in our 
Changelog<https://github.com/pharo-project/pharo-changelogs/blob/master/Pharo120ChangeLogs.md>

Some highlights of this amazing version:

Highlights
New breakpoint system

The debug point system is a breakpoint model that supersedes the previous 
implementation of breakpoints and watchpoints. They are configurable, 
composable, and extensible. The traditional breakpoints remain available, 
including conditional breakpoints, one-time breakpoints, and object-centric 
breakpoints. Additionally, there are new types of breakpoints, such as 
chained-breakpoints, which condition the activation of certain breakpoints on 
the triggering of others (e.g., breakpoint B only activates if breakpoint A is 
hit first). Debug points also feature a dedicated browser and integration 
options.

[https://pharo.org/news/Pharo12DebugPoints.png]

Tools

  *   Scalable fluid class syntax is now the default one
  *   Preparing the introduction of the Bloc graphic system by migrating more 
tools to Spec2 widgets
  *   Spec2 UI framework enhancements to support GTK 4
  *   Leaner version of the Metacello package manager
  *   More robust and strict mode for FFI

System

  *   New architecture for refactorings and domain specific transformations
  *   Code loading speed improvement
  *   Fast browsing via fully optimized package tags
  *   Optmized memory usage via optimized method protocols
  *   Compiler simplifications and improvements

Virtual machine

  *   Massive image support with permanent space
  *   String/ByteArray comparison speed up

Development Effort

This new version is the result of 1895 Pull Requests integrated just in the 
Pharo repository. We have closed 865 issues and received contributions from 
more than 70 different contributors. We have also a lot of work in the separate 
projects that are included in each Pharo release:

  *   
http://github.com/pharo-spec/NewTools<https://github.com/pharo-spec/NewTools>
  *   
http://github.com/pharo-spec/NewTools-DocumentBrowser<https://github.com/pharo-spec/NewTools-DocumentBrowser>
  *   http://github.com/pharo-spec/Spec<https://github.com/pharo-spec/Spec>
  *   http://github.com/pharo-vcs/Iceberg<https://github.com/pharo-vcs/Iceberg>
  *   
http://github.com/ObjectProfile/Roassal3<https://github.com/ObjectProfile/Roassal3>
  *   
http://github.com/pillar-markup/Microdown<https://github.com/pillar-markup/Microdown>
  *   
http://github.com/pillar-markup/BeautifulComments<https://github.com/pillar-markup/BeautifulComments>
  *   
http://github.com/pharo-project/pharo-vm<https://github.com/pharo-project/pharo-vm>

Contributors

We always say Pharo is yours. It is yours because we made it for you, but most 
importantly because it is made by the invaluable contributions of our great 
community (yourself). A large community of people from all around the world 
contributed to Pharo 12.0 by making pull requests, reporting bugs, 
participating in discussion threads, providing feedback, and a lot of helpful 
tasks in all our community channels. Thank you all for your contributions.

The Pharo Team

Discover Pharo: https://pharo.org/features

Try Pharo: http://pharo.org/download<https://pharo.org/download>

Learn Pharo: http://pharo.org/documentation<https://pharo.org/documentation>

Reply via email to