Squeak code now browsable and bookmarkable on the Web

Klaus D. Witzel klaus.witzel at cobss.com
Sat Jan 5 17:33:11 UTC 2008

Hi Janko,

on Sat, 05 Jan 2008 15:52:57 +0100, you wrote:

> Hi Klaus,
> Klaus D. Witzel wrote:
>> nice work, and you will find something similiar on the result page of
>> http://www.google.com/search?q=OrderedCollection+addAllFirstUnlessAlreadyPresent:
> Site with a generated Squeak docs done by Bernd Oldenbuettel looks very  
> interesting: http://www.oldenbuettel.de/squeak-doku/, both from  
> organization and design perspective. Maybe is this a way to go?
>>  May I add 2-3 things:
>>  o fileIn hyperlinks which answer, with content-type: text/plain,
>>   the corresponding fileOut (at all the levels) as .st suffixed file,
>>   same as local fileOut would do.
> Thats interesting idea, probably quite useful too. So every  
> package/category/class/method would have a FileOut link where you got a  
> raw Smalltalk code in fileout format.

Precisely. This BTW is the only format that I know of Smalltalk sourcecode  
(with content-type: text/plain) which is indexed on the web. Can't wait to  
see that in action :)

> And with a little JavaScript a browser's Save as dialog is opened to  
> simply saving it.

Nooo :) Not b**lsh*t JS, just real hyperlinks (html anchor tag) for  
crawlers (and Smalltalkers :) I can help you with http's  
content-disposition header so that the file name returned is pretty  
<element>.st (or <element>.cs) and pops up the platform browser's "save as  
..." dialog.

>> o show the annotation info.
> What kind of annotation info have you in mind?

When you turn on annotations in preferences you see author initials and  
timestamp in Squeak's browser for the methods. These two items are public  
(see #methodsFor*) and should be shown, no?

>> o make available what's inside *each* MC package of the local directory
>>   in a similiar fashion, top-entry-point: MCZ package+version file name.
> Yes, I'll add packages so that full Url would be  
> /package/category/class/method.html.
> More package info, hmm, where and how to find it? Is it in image?
>> Then we could begin making *each*published*version* of every  
>> class+method *searchable* on the web (and perhaps link from the  
>> SqueakSource project pages to a server which has some bandwidth for  
>> crawlers).
> Question is where to put version in an Url. I won't put it base Url but  
> in a query part, but only if we are looking the  
> non-blessed/current/stable version of a package.

You can judge that programmatically?

> Namely, most people will like to see a current version of a package and  
> very rarely older ore newer/dev ones. This will also help crawlers to  
> know better, what is most important.
> Example:
> for current version 2.1:
> 	/Swazoo/Swazoo-Core/Site.html
> for older beta:
> 	/Swazoo/Swazoo-Core/Site.html&version=2.1beta1
> I would simply extract a version from SqueakSource's .mcz file names,  
> for example 2.1beta1 from Swazoo-2.1beta1.mcz

I'll wait until I can access examples. Perhaps I didn't understand  
something in the above.


> Best regards
> JAnko
>> Thanks for your effort!
>>  /Klaus
>>  On Fri, 04 Jan 2008 21:24:13 +0100, Janko wrote:
>>> Dear Squeakers,
>>> Latest debate about documentation, accessing of source from the web  
>>> and Google indexing warmed me to the point that I made a first glimpse  
>>> of a web interface to code in Squeak image:
>>>     http://squeak.aidaweb.si:8000
>>> This is a newest Damien's squeak-web image and if, for instance, you'd  
>>> like to see the code of that web app, here is its bookmarkable Url:
>>>     http://squeak.aidaweb.si:8000/category/aidabrowser.html
>>> Everything is bookmarkable: class categories, classes, methods. That  
>>> way it is very easy to email someone a link to some code in your  
>>> image. Yes, your own image can soon be accessible from the web that  
>>> way!
>>> Best regards
>>> Janko

More information about the Squeak-dev mailing list