pharo VS iceberg

Compare pharo vs iceberg and see what are their differences.

pharo

Pharo is a dynamic reflective pure object-oriented language supporting live programming inspired by Smalltalk. (by pharo-project)

iceberg

Iceberg is the main toolset for handling VCS in Pharo. (by pharo-vcs)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
pharo iceberg
18 5
1,140 133
1.5% 0.8%
10.0 9.2
4 days ago 6 days ago
Smalltalk Smalltalk
GNU General Public License v3.0 or later MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

pharo

Posts with mentions or reviews of pharo. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-04.

iceberg

Posts with mentions or reviews of iceberg. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-10-11.
  • LSP could have been better
    12 projects | news.ycombinator.com | 11 Oct 2023
    The problem with the filesystem is that it privileges organization scheme which isn’t the best one for every editing task. This makes, for example, implementation inheritance hard because your class has a bunch of invisible code in it. But, it you could expand all the superclass methods into a single view and then have edits automatically integrated into the appropriate places, this wouldn’t be as much of a problem.

    Java’s filesystem hierarchy is a great example of a “fileout” format for the sort of environment I’m talking about. Another example here is smalltalk repositories generated by Iceberg: https://github.com/pharo-vcs/iceberg

  • Pharo 11, the pure object-oriented language and environment is released!
    7 projects | /r/programming | 11 May 2023
    and looking at sample git commit (I assume this was done in Iceberg): https://github.com/pharo-vcs/iceberg/pull/1687/files
  • Stop Writing Dead Programs
    1 project | news.ycombinator.com | 20 Oct 2022
    By committing the code to a git repo and having a code review like every other language out there.

    I'm guessing you have never tried these things but image based Smalltalk implementations have supported VCS for decades now, literally. In Pharo this is with git using Iceberg:

    https://github.com/pharo-vcs/iceberg

    They even wrote a tutorial to make it easier: https://github.com/pharo-vcs/iceberg/wiki/Tutorial

    It's not magic, it's not even a problem, because the problem you're imagining doesn't actually exist. So long as the user of the system has at least half a brain (and maybe less) they will be capable of distributing their code with git these days.

  • Design Principles Behind Smalltalk (2001)
    2 projects | news.ycombinator.com | 20 May 2022
    Iceberg for Pharo: https://github.com/pharo-vcs/iceberg

    Monticello: http://www.wiresong.ca/monticello/

    I haven't used the latter, but the former is easy to use and based on libgit. Create a new repository, select the packages that go into it, make the initial commit. After that it'll tell you when the changes don't match the repo. You can select down to the method level since it's aware of the language's syntax and semantics. The generated repository looks like the Iceberg repo itself, a collection of directories for the packages and then .st files for the classes and their contents.

  • Pharo 10
    7 projects | news.ycombinator.com | 5 Apr 2022
    > a copy of your code the environment does some extra epicycles to copy it outside

    Iceberg https://github.com/pharo-vcs/iceberg is the Git/etc. integration built into Pharo and works extremely well. You don't need to "file out" code if that's what you meant.

What are some alternatives?

When comparing pharo and iceberg you can also consider the following projects:

Cuis-Smalltalk-Dev - Active development of Cuis Smalltalk

gtoolkit - Glamorous Toolkit is the Moldable Development environment. It empowers you to make systems explainable through experiences tailored for each problem.

SqueakJS - A Squeak Smalltalk VM in Javascript

REPLEndpoint - A RESTful endpoint that behaves like a REPL

squeak.org - Squeak/Smalltalk Website

pharo - The Sources for Pharo

CodeParadise - Framework for developing web applications and Node.js applications using Smalltalk

PharoChipDesigner - A little chip design game inspired by KOHCTPYKTOP: Engineer of the People by Zachtronics

Parasol - Testing web apps in Smalltalk using Selenium WebDriver.

PharoByExample9 - The version of Pharo by Example for Pharo 90

Rebol3 - Source code for the Rebol [R3] interpreter