12
I Use This!
Very Low Activity

News

Analyzed 7 minutes ago. based on code collected 1 day ago.
Posted about 16 years ago by Paolo Bonzini
More and more projects are switching over to git or other distributed VCS. Even projects using centralized servers are doing so, because even if your project doesn't have a network of developers each with their own repository, distributed VCS have a ... [More] very nice set of additional features. For example, the set of available offline operations is very complete; and as a consequence, not relying on network connection makes the system much faster even when you are not offline. Also, the possibility to quickly create and throw away branches makes it easier to do experiments.read more [Less]
Posted about 16 years ago by Sam Phillips
I have been working on and off for the past couple of years on a Prototype Object language (called Twain) similar to Self in my spare time. I have developed about a dozen partial implementation in Haskell, Scheme, Squeak, Visual Works, GST, Python ... [More] , C, etc. The most recent of these has been an interpreter in GST. Since there are a lot of similarities between Smalltalk and my target language, and openness of the class Smalltalk language, I've been able to piggy back on many of the standard Smalltalk classes for the primitive data types.read more [Less]
Posted about 16 years ago by Paolo Bonzini
This is a translation of http://d.hatena.ne.jp/hdb/20071201 which is a blog post in Japanese by Hiroshi Higa. I don't speak Japanese, so I asked the author to write a very simple summary of the article, which I then augmented.read more
Posted about 16 years ago by Paolo Bonzini
A killer feature that I would like to add is copy-on-write string handling. For a good example, see this post on ruby-talk (aka comp.lang.ruby): When you take a substring in Ruby, it doesn't copy the string data. Instead, it just ... [More] constructs a new string object (just a few words of memory) that references into the original string. Only when either string is modified does the string content get copied. read more [Less]
Posted about 16 years ago by Sam Phillips
I've become spoiled with Python's module and package system. So here I give you a half baked (but mostly working) alternative package loader.read more
Posted about 16 years ago by Paolo Bonzini
GNU Smalltalk 3.0 has been released at    ftp://ftp.gnu.org/gnu/smalltalk The release was tested on the following systems: i686-pc-linux-gnu x86_64-pc-linux-gnu powerpc-apple-darwin8.9.0 powerpc-unknown-linux-gnu ... [More] sparc-unknown-linux-gnu ia64-hp-linux-gnu s390-ibm-linux-gnu hppa-hp-linux-gnu Thanks to Stephen Compall, Thomas Girard, Robin Redeker for help and testing of this release! News from 2.3.6 to 3.0 (Changes from the last release candidate, 2.95h, are listed later.) Important changes:read more [Less]
Posted about 16 years ago by Paolo Bonzini
GNU Smalltalk 3.0 has been released at    ftp://ftp.gnu.org/gnu/smalltalk The release was tested on the following systems: i686-pc-linux-gnu x86_64-pc-linux-gnu powerpc-apple-darwin8.9.0 powerpc-unknown-linux-gnu ... [More] sparc-unknown-linux-gnu ia64-hp-linux-gnu s390-ibm-linux-gnu hppa-hp-linux-gnu Thanks to Stephen Compall, Thomas Girard, Robin Redeker for help and testing of this release! News from 2.3.6 to 3.0 (Changes from the last release candidate, 2.95h, are listed later.) Important changes:read more [Less]
Posted about 16 years ago by Stephen Compall
This is a little debugging helper for analyzing hash functions in GST by looking at collisions in LookupTables. I just copied one of the more-or-less identical #findIndex: implementations and added a counter to it, then a nice method for slicing up a whole table for analysis.read more
Posted over 16 years ago by Paolo Bonzini
Sometimes I just wander around in blogs looking for cool snippets in other programming languages. Since the upcoming GNU Smalltalk 3.0 will have some features from Python and Ruby (most notably generators), it is nice to test corner cases and see if ... [More] GNU Smalltalk's behavior matches what happens in other languages. I came across two implementations of the power-set function in Python, a recursive and an iterative one: # by Guido van Rossum def power(s): if len(s) == 0: yield Set() else: # Non-destructively choose a random element:read more [Less]
Posted over 16 years ago by Stephen Compall
I have been thinking about my favorite programming languages: Smalltalk, Common Lisp, and Scheme. These languages have much in common, and share many features, all the way down to syntax extension. I tend to be working in or studying any of these ... [More] three when I am not pushing PHP for money. These languages have an amazing pedigree, and many of their features have been ever so slowly moving into the mainstream. So what keeps this little club so exclusive? Is it my affinity for Lisp macrology? Is it the necessarily corresponding dearth of built-in funny characters? Perhaps, but I also realized they shared lexical, non-local block return in common, an interesting feature that others seem to overlook. All three languages encourage you to define new control structures procedurally, using higher-order functions. This is especially true of Smalltalk where even retrieving array and dictionary elements has useful¹ associated control structures: anArray at: 42 ifAbsent: [self defaultAt: 42]. anArray at: 42 ifPresent: [:newElt | self defaultAt: 42 put: newElt]. read more [Less]