Hi archeologist and Smalltalk oldies freaks
We with alex started to scan the book "A Taste of Smalltalk" (thanks
Ted for the rights to do that).
However, it takes me around 3 min per pages, so I would like to know if
somebody want to
do some postprocessing of the files to see if we can obtain a pdfs and
at which quality.
The images of the prefaces and the first chapters are available at:
http://www.iam.unibe.ch/~ducasse/WebPages/FreeBooks.html
Stef
Dr. Stéphane DUCASSE (ducasse(a)iam.unibe.ch)
http://www.iam.unibe.ch/~ducasse/
"if you knew today was your last day on earth, what would you do
different? ... especially if, by doing something different, today
might not be your last day on earth" Calvin&Hobbes
Enjoy. Let me know of problems, ideas and so forth.
Lukas Renggli and Alexandre Bergel helped alot with this release (and I
haven't merged all their work yet). If they keep interest, I'm betting
we'll be seeing various interesting things happen.
Daniel Vainsencher
Ned Konz <ned(a)bike-nomad.com> wrote:
> On Saturday 05 October 2002 04:01 pm, danielv(a)netvision.net.il wrote:
>
> > Welll, it's been a long time since I've released the RB, and the
> > last release wasn't the most friendly out-of-box. A few reasons you
> > will like this release -
>
> Great! I've been waiting for this for 3.2!
>
> Thanks, Daniel!
> --
> Ned Konz
> http://bike-nomad.com
> GPG key ID: BEEA7EFE
Hi
I'm preparing some material for a lecture where I would like students
(mostly non smalltalker and non-schemers)
to build a minimal prototype-based language, a minimal class-based,
mixin-based languages.
I have already all the material for a reflective class-based language
(but this will be too much).
So I was wondering if you already play with the idea and how you were
coding the prototype based language.
In particular I would like to know what are the minimal methods and how
you handle state.
Stef
Dr. Stéphane DUCASSE (ducasse(a)iam.unibe.ch)
http://www.iam.unibe.ch/~ducasse/
"if you knew today was your last day on earth, what would you do
different? ... especially if, by doing something different, today
might not be your last day on earth" Calvin&Hobbes
Or, for those who're maybe wondering "what's all that noise with
SqueakMap, ModuleFiler, Dynamic menus and that Spaghetti thing?"
Well, they're all basically projects geared to make Squeak more friendly
to packages living outside the standard image, and the people that write
them and use them.
This is quite independent and complementary to having a modules system,
and can help Squeak shrink.
I'll explain SqueakMap first -
People used to unix machines find it quite normal that they have to
compile new packages for their computer.
Windows users are quite used to popping a CD in, pressing next.next.next
and having it appear, if they happen to have what's needed, and nothing
gets fubared.
Debian (a linux distribution) people bring up a dizzying menu with >8000
packages, select what they want, from a new kernel version, to a
shoot-em-up to an astronomy package, ask for them to be installed, and
drink coffee while everything is downloaded automatically from a central
server, where everything is (more or less) up to date, including
whatever libraries are needed, configured and installed.
In none of the above systems do most users have the same precise
applications installed... people can and do choose what tools and games
they like to have available, and there's a standard, common way to
realize their choice.
SqueakMap makes Squeak a little like Debian. Open a Morphic package
browser - you get an open list of packages, updateable on the web. As
many as have a proper download Url, can be installed by select&click.
So if you like Whisker or the Refactoring Browser, you can install it as
easy as pie, without any sort of searching at all.
If you're a new Squeaker, you can see what's available very easily, and
try things out.
If you're developing something neat and want to get feedback beyond the
next few days after you announce it on the list, post a SqueakMap
description, with a convinient download page, and you're set.
If you want to try out SqueakMap, you should wait to Gorans next (6th)
release, and use either his package browser, or my simpler, more limited
one.
If you want to try it NOW, use release 5, which works just fine but
requires a little manual work to install -
* unzip
http://anakin.bluefish.se:8000/gohu/uploads/11/squeakmap-020924.zip
* run sminstall-mini.st
* unzip and filein
http://anakin.bluefish.se:8000/gohu/uploads/11/SqueakMapFix-020924.cs.gz
* SMSqueakMapBrowser open
To use my package loader, also do
* filein
http://modules.squeakfoundation.org/People/dvf/Packages/SM-Loader.st
* SMLoader open
Either tool will display a list of packages. Pick one and see it's
details, if it has a download url, you can download/install it with a
couple of clicks. You're welcome to try it out. If you want to browse
the web UI, go to http://marvin.bluefish.se:8000/sm. You can also
register your own package there, it's just a form you need to fill out.
The idea is to get SqueakMap + a simple package loader into 3.2, so
people can then easily load anything they want.
This mail is already too long.
Next - DynamicOpenMenu, but that's tommorrow.
Daniel Vainsencher
PS. if I've left anything out, or you have any questions, please ask
on-list or off.
Heya,
I just stumbled across the SPP stuff on the squeak swiki, the last
update for it was 2.9 though.
There is also another Squeak Template pages system, but it doesn't seem
to be as clean or easy to use as SPP is. Supposedly, it's used for good
chunks of Swiki.net
Has it been ported forward to 3.2 yet? Is Stephen Pair still on this
list?
When I try and file it into a recent version, I get a traceback.
-Daniel
You're right - SqueakMap is a catalog. It's purpose is to make package
visible and easily installable. It doesn't explicitly manage conflicts
or dependencies.
There is a nice trick we could use to help with dependencies: upload a
package that loads other packages, like this -
packages _ {'Refactoring Browser'. 'SM Package Loader'} collect:
[:packageName |
SMSqueakMap default cardWithName: packageName].
packages do: [:package | (SMInstaller forPackage: package directory:
package downloadUrl) install]
Just put something like this in an .st.gz file somewhere on the web,
register your package using the web form at
http://marvin.bluefish.se:8000/sm/regpackage, including the download
url, and that's it, anyone can now load all required components in
proper order.
Daniel Vainsencher
Stephane Ducasse <ducasse(a)iam.unibe.ch> wrote:
> Hi Daniel
>
> thanks for the explanation.
> Daniel how possible conflicts are managed? I guess that they are not.
> Is it right?
> Can I express dependencies among my packages?
>
> > If you want to try out SqueakMap, you should wait to Gorans next (6th)
> > release, and use either his package browser, or my simpler, more
> > limited
> > one.
> >
> > If you want to try it NOW, use release 5, which works just fine but
> > requires a little manual work to install -
> > * unzip
> > http://anakin.bluefish.se:8000/gohu/uploads/11/squeakmap-020924.zip
> > * run sminstall-mini.st
> > * unzip and filein
> > http://anakin.bluefish.se:8000/gohu/uploads/11/SqueakMapFix-
> > 020924.cs.gz
> > * SMSqueakMapBrowser open
> >
> > To use my package loader, also do
> > * filein
> > http://modules.squeakfoundation.org/People/dvf/Packages/SM-Loader.st
> > * SMLoader open
> >
> > Either tool will display a list of packages. Pick one and see it's
> > details, if it has a download url, you can download/install it with a
> > couple of clicks. You're welcome to try it out. If you want to browse
> > the web UI, go to http://marvin.bluefish.se:8000/sm. You can also
> > register your own package there, it's just a form you need to fill out.
> >
> > The idea is to get SqueakMap + a simple package loader into 3.2, so
> > people can then easily load anything they want.
> >
> > This mail is already too long.
> > Next - DynamicOpenMenu, but that's tommorrow.
> >
> > Daniel Vainsencher
> > PS. if I've left anything out, or you have any questions, please ask
> > on-list or off.
> >
> >
> Dr. Stéphane DUCASSE (ducasse(a)iam.unibe.ch)
> http://www.iam.unibe.ch/~ducasse/
> "if you knew today was your last day on earth, what would you do
> different? ... especially if, by doing something different, today
> might not be your last day on earth" Calvin&Hobbes
The URL for the impatient -
http://modules.squeakfoundation.org/People/dvf/Packages/Refactory.st
The SqueakMap entry -
http://marvin.bluefish.se:8000/sm/package/2b1e12d7-3d60-481d-975e-3eca5a
ef50b9
To open it, RefactoringBrowser openBrowser.
Welll, it's been a long time since I've released the RB, and the last
release wasn't the most friendly out-of-box. A few reasons you will like
this release -
* Simplified install
This release is a single 1MB .st file. Just download and filein. Or, if
you have some SqueakMap based tool, like the SM Browser by Goran or my
Package Loader, you can bring it up, pick the Refactoring Browser,
choose to install, and you're done.
* It works
Tests are green, some basic sanity checking works on a clean 3.2 4956
image. Of course there are probably bugs hidden somewhere in there, but
that I need you to help me with that.
* Lint works again
Thanks to Alexandre Bergel and Lukas Renggli, who fixed that and a few
other issues in CS@ESUG, this year in Douai.
More detailed version information is at the SqueakMap page.
The release process changed quite a bit on the way to this release:
I was very annoyed with maintaining the 15 (!) different files of code,
by abusing changesets to keep the layers separate. Abuse your tools and
you'll get sore thumbs. The world is consistent that way. Making a
release was long, downloading and installing was annoying, testing it
was hard and time consuming. So when things were broken, they didn't get
fixed, which makes for very lousy maintenance.
Using Avi Bryant's ModuleFiler, I am able to file out the related system
categories and all their class extensions to the base image with one
operation, creating one file. The normal system categories and method
categories keep my layering information intact and more consistent than
I could with changesets.
Thanks to SqueakMap, it's now a snap to download, install and update new
versions, and will soon even be easy to upload and publish new versions
too.
Easy management will make for less laborious releases, and hopefully
better maintenance.
So you're welcome to download, install and play with it, and please let
me know of any trouble you encounter.
Daniel Vainsencher
How difficult would it be to turn Squeak into an OS? Has there been any
discussion / papers about this that someone can point me to?
Thanks,
Derek
Phasecraft: Smarter Web Development.
Experts in web design, databases, flash design, multi-lingual sites,
branding, marketing and web hosting.
phone: 604-874-6463
mailto:info@phasecraft.com
http://www.phasecraft.com
Stephane Ducasse <ducasse(a)iam.unibe.ch> wrote:
> Please do. I have problem to exactly understand what is happening with
> the SqueakMap and other stuff
Hmm, can you be more specific?
I'll try to help with a few summerizing mails.
> but I would love to be able to have envy like source management.
We don't have anything like that. The direction seems to be more towards
lightweight, simple tools that allow collaboration, and not complete,
heavy frameworks that force it.
> Stef
> >
> Dr. StÈphane DUCASSE (ducasse(a)iam.unibe.ch)
> http://www.iam.unibe.ch/~ducasse/
> "if you knew today was your last day on earth, what would you do
> different? ... especially if, by doing something different, today
> might not be your last day on earth" Calvin&Hobbes
Dear All,
I have gotten multiple 'Mail delivery failed: returning message to sender'
regarding root(a)bigpond.net.au for mails to the list. But I know they *have*
reached the list.
Has anyone seen a similar effect?
Does anyone know root(a)bigpond.net.au?
Greetings,
Stephan
-------- Original Message --------
From: - Sun Oct 6 15:18:50 2002
X-UIDL: 4ab0a45fb03d23e7b1b114d11ab7cd44
X-Mozilla-Status: 0001
X-Mozilla-Status2: 00000000
X-Envelope-From: <MAILER-DAEMON(a)post.webmailer.de>
X-Envelope-To: <sr(a)evolgo.de>
X-Delivery-Time: 1033835055
Received: from mta03bw.bigpond.com (mta03bw.bigpond.com [139.134.6.86]) by
mailin.webmailer.de (8.9.3/8.8.7) with ESMTP id SAA23387 for <sr(a)evolgo.de>; Sat, 5
Oct 2002 18:24:14 +0200 (MET DST)
Received: from hatchet ([144.135.24.87]) by mta03bw.bigpond.com
(Netscape Messaging Server 4.15 mta03bw Jul 16 2002 22:47:55) with
SMTP id H3IO8700.353 for <sr(a)evolgo.de>; Sun, 6 Oct 2002 02:24:07 +1000
Received: from CPE-203-45-49-44.vic.bigpond.net.au ([203.45.49.44]) by
bwmam07.mailsvc.email.bigpond.com(MailRouter V3.0n 62/23271860); 06 Oct 2002
02:24:07
Received: from mail by hatchet with local (Exim 3.35 #1 (Debian)) id 17yJon-0001cY-00 for <sr(a)evolgo.de>;
Mon, 07 Oct 2002 08:24:09 +1000
X-Failed-Recipients: root(a)bigpond.net.au
From: Mail Delivery System <Mailer-Daemon(a)bigpond.net.au>
To: sr(a)evolgo.de
Subject: Mail delivery failed: returning message to sender
Message-Id: <E17yJon-0001cY-00@hatchet>
Date: Mon, 07 Oct 2002 08:24:09 +1000
This message was created automatically by mail delivery software (Exim).
A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:
root(a)bigpond.net.au
(generated from root@localhost)
SMTP error from remote mailer after RCPT TO:<root(a)bigpond.net.au>:
host pop-server.bigpond.net.au [144.135.25.13]:
550 recipient <root(a)bigpond.net.au> unknown
------ This is a copy of the message, including all the headers. ------
Return-path: <sr(a)evolgo.de>
Received: from hatchet
([127.0.0.1] helo=localhost ident=root)
by hatchet with esmtp (Exim 3.35 #1 (Debian))
id 17yJP2-00019N-06
for <root@localhost>; Mon, 07 Oct 2002 07:57:32 +1000
Received: from pop-server.bigpond.net.au [144.135.24.13]
by localhost with POP3 (fetchmail-5.9.11)
for root@localhost (single-drop); Mon, 07 Oct 2002 07:57:32 +1000 (EST)
Received: from mta05bw.bigpond.com ([192.168.115.95]) by
mailms2ps.email.bigpond.com (Netscape Messaging Server 4.15
mailms2ps Apr 29 2002 13:22:02) with ESMTP id H3C86302.94X for
<emolina(a)bigpond.net.au>; Wed, 2 Oct 2002 14:51:39 +1000
Received: from mail.theinternetone.net ([144.135.24.87]) by
mta05bw.bigpond.com (Netscape Messaging Server 4.15 mta05bw Jul
16 2002 22:47:55) with SMTP id H3C86100.JHO for
<emolina(a)bigpond.net.au>; Wed, 2 Oct 2002 14:51:37 +1000
Received: from 62.4.94.4 ([62.4.94.4]) by
bwmam07.mailsvc.email.bigpond.com(MailRouter V3.0n 56/18183488); 02 Oct 2002
14:51:32
Received: (qmail 25356 invoked from network); 2 Oct 2002 04:51:02 -0000
Received: from mail.theinternetone.net (HELO lnx-3.ams-2.theinternetone.net)
(62.4.94.210)
by mail.theinternetone.net with SMTP; 2 Oct 2002 04:51:02 -0000
Delivered-To: mailman-squeak-dev(a)lists.squeakfoundation.org
Received: (qmail 25124 invoked from network); 2 Oct 2002 04:50:25 -0000
Received: from mailout11.sul.t-online.com (194.25.134.85)
by mail.theinternetone.net with SMTP; 2 Oct 2002 04:50:25 -0000
Received: from fwd11.sul.t-online.de
by mailout11.sul.t-online.com with smtp
id 17wbSq-0001cz-06; Wed, 02 Oct 2002 06:50:24 +0200
Received: from karl (520090536516-0001(a)[80.142.47.250]) by
fmrl11.sul.t-online.com
with esmtp id 17wbSg-1gxSOOC; Wed, 2 Oct 2002 06:50:14 +0200
Received: from localhost
([127.0.0.1] helo=evolgo.de ident=sr)
by karl with esmtp (Exim 3.35 #1 (Debian))
id 17wbSa-0000TE-00
for <squeak-dev(a)lists.squeakfoundation.org>; Wed, 02 Oct 2002 06:50:08 +0200
Message-ID: <3D9A7B00.6050403(a)evolgo.de>
From: Stephan Rudlof <sr(a)evolgo.de>
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.0) Gecko/20020529
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: squeak-dev(a)lists.squeakfoundation.org
Subject: Re: [ENH] converse-raok
References: <200209300356.g8U3ubPB452811(a)atlas.otago.ac.nz>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Sender: 520090536516-0001(a)t-dialin.net
Sender: squeak-dev-admin(a)lists.squeakfoundation.org
Errors-To: squeak-dev-admin(a)lists.squeakfoundation.org
X-BeenThere: squeak-dev(a)lists.squeakfoundation.org
X-Mailman-Version: 2.0.8
Precedence: bulk
Reply-To: squeak-dev(a)lists.squeakfoundation.org
List-Help: <mailto:squeak-dev-request@lists.squeakfoundation.org?subject=help>
List-Post: <mailto:squeak-dev@lists.squeakfoundation.org>
List-Subscribe: <http://lists.squeakfoundation.org/listinfo/squeak-dev>,
<mailto:squeak-dev-request@lists.squeakfoundation.org?subject=subscribe>
List-Id: The general-purpose Squeak developers list
<squeak-dev.lists.squeakfoundation.org>
List-Unsubscribe: <http://lists.squeakfoundation.org/listinfo/squeak-dev>,
<mailto:squeak-dev-request@lists.squeakfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.squeakfoundation.org/pipermail/squeak-dev/>
Date: Wed, 02 Oct 2002 06:50:08 +0200
Richard,
after taking a short look at the code:
BinaryBlockConverse>>fixTemps should be added to the changeset, since it is
called by SortedCollection>>sortBlock:.
Greetings,
Stephan
ok(a)cs.otago.ac.nz wrote:
> from preamble:
>
> "Change Set: converse-raok
> Date:
30 September 2002
> Author:
Richard A. O'Keefe
>
> There are applications, like reserving a sorted collection,
> or sorting in reverse order, but not limited to those,
> where we would like to take the converse of a predicate.
> The converse of a function f : (x, y) -> z is a function
> converse(f) : (y, x) -> z.
>
> This change set adds a class BinaryBlockConverse and methods
> so that aBlock converse value: x value: y = aBlock value: y value: x."!
--
Stephan Rudlof (sr(a)evolgo.de)
"Genius doesn't work on an assembly line basis.
You can't simply say, 'Today I will be brilliant.'"
-- Kirk, "The Ultimate Computer", stardate 4731.3
--
Stephan Rudlof (sr(a)evolgo.de)
"Genius doesn't work on an assembly line basis.
You can't simply say, 'Today I will be brilliant.'"
-- Kirk, "The Ultimate Computer", stardate 4731.3