Paolo Bonzini's blog
Sake = Rake for Smalltalk
A while ago I tried looking at how an object model for a Rake-tool would look like in Smalltalk. Here are the somewhat polished results of that experiment.
One area where Ruby fares definitely better than Smalltalk is in creating DSLs. This is mostly because of the "implied self" of Ruby's syntax, which however is also a major source of complication in parsing Ruby. Therefore, the Sake object model is also an experiment in using class extensions creatively to implement Smalltalk DSLs.
Swazoo runs on GST!
That's it! Swazoo runs on GNU Smalltalk! Code is not yet committed, but it works and passes the entire testsuite.
This script for example will start a web server on http://localhost:8888/
PackageLoader fileInPackage: 'Swazoo'.
Swazoo.Resource subclass: MyResource [
answerTo: aRequest [
| response |
response := Swazoo.HTTPResponse ok.
response entity: '<h1>Hello World!</h1>'.
^response
]
]
site := Swazoo.Site new name: 'test'. "name is just for convenience"
site host: 'localhost' ip: '127.0.0.1' port: 8888.Using git without feeling stupid (part 2)
In the first installment, I showed how basic usage of git does not need any concept that is unique to a particular version control system. In this installment, I'll introduce more usage of git that requires learning a concept or two.
Using git without feeling stupid (part 1)
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 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.
CAPTCHA, the simplest gst external module
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.
