I'm very pleased to announce I have sucessfully ported Seaside 2.9
Alpha 4 to Dolphin Smalltalk X6.
The port includes all the Seaside packages offered by the Seaside
Builder site (http://builder.seaside.st) when we select the
advanced tab. The port uses Swazoo so Swazoo 2.031 and Sport was
ported too.
I took the previous versions of Sport (ported by Esteban Maringolo).
That save me a lot of work and time.
Another time saving decision was the way in which the file-in was
done. I implemented a native Installer class in Dolphin
so I can handle Installer scripts in the same format as the script
generated by the Seaside Builder site. I can handle
Monticello (zipped files), extract the source and import it into the
STS (Omnibase based) Dolphin Versioning Control System.
After the pharo/squeak source code is imported I can load the packages
from the repository into Dolphin.
The current state of the port is a pre-alpha with some bugs that can
be solved in a few days.
After that I have to organize the packages for a release candidate
that will be informed here.
For the stable releases I will try to provide Installer scripts as
does the Seaside Builder, with the packages know
as dialect neutral to be downloaded directly from builder.seaside.st,
and the Dolphin packages from other server.
I believe this kind of distribution ensures a fast way to be up to
date with the Seaside main codebase (Pharo).
Things that does not work (yet)
- Other codecs that WANullCodec. You can not get UTF-8 encoding for
strings.
- Partial continuations (I dont know if Dolphin Smalltalk X6 supports
this, I hope it does)
- We have 20 failing tests, related with Encoding/Unicode and Partial
Continuations. The rest is green.
Things to highlight:
- The SPI (Seaside Performance Index) is 1350 on my computer (in the
same computer Pharo gets 750).
- The installation procedure is pretty straightforward, being
amazingly fast.
All the other stuff is working
see advanced tab for alpha 4 on http://builder.seaside.st/
I 'm would like to thanks InfOil (the company where I work) by
supporting this port,
Guillermo Sapaya (Development Manager) to put me in charge of this
task and to the previous
"porter" Esteban Maringolo (who also works in InfOil) for his effort
done with the first
version of Sport, specially the sockets weird interface ;)
From now on InfOil will be trying to maintain the latest version of
Seaside up to date in Dolphin. We're going to publish the
installations instructions during the next week, be patient :)
Best Regards
Jose Sebastian Calvo
(GallegO)
Regards,
--
Esteban.
Many thanks to you, Esteban, InfOil, and anyone else who helped.
> I'm very pleased to announce I have sucessfully ported Seaside 2.9
> Alpha 4 to Dolphin Smalltalk X6.
Very very good news, thank you!
Ciao
...Jochen
GallegO schrieb:
having done some (Dolphin port) work on the first 2.9 alpha 1 I can only
say thank you very much for the work you did!!!
Regarding UTF8/Unicode: Based on my experience with 2.9 alpha 1 (where
only the Unicode/UTF8 tests failed) I started some work on an enhanced
Unicode/UTF8 Support for Dolphin. I'd like to merge in the stuff if I
may once your release is "stable".
CU,
Udo
GallegO schrieb:
Having utf-8 would be great, since it is kind of quite important for
the rest of us who have alfabets not covered by latin1.
This is just what I was hoping for!
If everything goes well and Dolphin gets decent and current ports of
Seaside, it might become very interesting platform for it, since it
offers better performance than Squeak, and it is still moderately
priced. Not to mention the "Pink Cadilac" development environment.
Since there is still no tangible roadmap for it, I do not dare to
speculate at loud what a great pair could DNG+Seaside make, but let me
say I still do have my high hopes.
rush
> Regarding UTF8/Unicode: Based on my experience with 2.9 alpha 1 (where
> only the Unicode/UTF8 tests failed) I started some work on an enhanced
> Unicode/UTF8 Support for Dolphin. I'd like to merge in the stuff if I
> may once your release is "stable".
Ohh that sounds good!
Do you think Dolphin should have Character class supporting codePoints
greater than 255? I have hacked (litle hacked ;) a subclass of
Character (UCharacter) after removing validations on the compiler
image side and now I can instantiate UCharacters > 255, the image has
been stable... but I'm not sure if this is part of the solution. I
thinking only on UTF-8 support for Seaside and not the whole
environment.
Not that I am expert on this, but having UTF-8 support only for
seaside sounds like a far safer road than poking around Character
class. And constraint of codepoints being smaller than 256 seems like
not too big one.
> ... but I'm not sure if this is part of the solution. I
> thinking only on UTF-8 support for Seaside and not the whole
> environment.
IMHO you won't get "full" support because once you hit the UI side (or
most Windows functions) it's back to String again.
However as long as you stay on the Smalltalk side everything is fine
(only exception being that you can't use Unicode Literals in methods).
CU,
Udo
> Not that I am expert on this, but having UTF-8 support only for
> seaside sounds like a far safer road than poking around Character
> class. And constraint of codepoints being smaller than 256 seems like
> not too big one.
I tend to disagree .... first of all you are effectivly limited to
characters with codePoint <128 as all characters with MSBit set will be
interpreted as (possible invalid) multibyte character.
Another point is concatenation of strings. Once you concatenate literal
strings (static from methods) together with user provided input you can
very easily mess up - simply try input/concatenate/output the euro sign
from a Squeak Image running WAKom (instead of WAKomEncoded) and you
might see what I mean. Try mixed Windows (Windows1552), Linux
(ISO8859-1), Mac (MacRoman) and/or Squeak (???) clients for additinal
"fun" ....
I.e. I had (wrongly encoded; due to missing UTF-8) euro signs as last
char before the closing tag - as the euro sign codepoint is > 128 the
browser interpreted this as the first byte of a multibyte char and eat
up the opening bracket of the tag .... which basically screwed up the
whole page as the loadScripts didn't get parsed and so on ...
And BTW .... maybe all our UTF-8/Unicode efforts are not needed anyway
because DNG is fully Unicode/UTF8 capable ... Andy?
CU,
Udo
Hmm.. maybe I am not undrestanding the situation well, so I will spell
out what I think is enough Unicode support, at least for me:
1) all html being served from seaside app is utf-8 encoded
2) all results that seaside collects and hands over to me (i.e. app),
like inputs from html forms, is utf-8 encoded
3) when my app wants to hand over some text to the Seaside (like in
#text:) it does so by handing over utf-8 encoded String
If that works, I think it is enough for me.
Especially, I do not expect to be able to pass Smalltalk string
literals directly as is to the Seaside. This might seem like a big
hurdle, but I believe that in real world app is much less so. Why?
Because web apps are typically multilingual, and I tend to have in
code only #keys to the messages that need to be displayed, and some
translator object is responsible for transforming that key into the
actual message. And that translator can be easily implemented to read
string literals from external file CouchDB, or something like that
where utf-8 messages can easily reside. Even when I am not writing
multilingual app, I try to stick to this design, since it is much
easier to fulfill end users urge to endlessly tweak messages in the
app.
Also keeping all user entered data in regular Dolphin strings but
utf-8 encoded, usually does not cause big problems, if there is a need
to communicate with non utf-8 aware component/object I tend to have
some helpers to transform string from utf-8 encoding to the local one,
and backwards.
Of course when DNG arrives it will natively support Unicode, and all
this issues will go away, but I think it would be great to have some
solution (which does not require taking the D-6XP guts out) that we
can use till then.
just my thoughts!
thanks
cjb
> I'm very pleased to announce I have sucessfully ported Seaside 2.9
> Alpha 4 to Dolphin Smalltalk X6.
Great news, thanks!
Thanks also to Guillermo, Esteban and InfOil.
I have spent the last couple of weeks playing around with WordPress
and PHP, all the time wishing it was Smalltalk. Maybe I should have
another look at Seaside now :-)
Thanks again!
Steve
--
swa...@ozemail.com.au
> Hmm.. maybe I am not undrestanding the situation well, so I will spell
> out what I think is enough Unicode support, at least for me:
[...]
> Also keeping all user entered data in regular Dolphin strings but
> utf-8 encoded, usually does not cause big problems, if there is a need
> to communicate with non utf-8 aware component/object I tend to have
> some helpers to transform string from utf-8 encoding to the local one,
> and backwards.
If you always provide UTF-8 encoded strings (either from a literal in a
method or from external l18n sources) then there should be no problem,
that's correct.
There is just one (maybe) thing to take care of: These strings should
really considered to be literal and should in no way be processed
(except for concatenation). No asLowercase/asUppercase, char replacement
..... whatsoever!!!
> Of course when DNG arrives it will natively support Unicode, and all
> this issues will go away, but I think it would be great to have some
> solution (which does not require taking the D-6XP guts out) that we
> can use till then.
+1!!!
Can't wait to get it :-)
> just my thoughts!
And highly appreciated!!
CU,
Udo
Steve,
I can only recommend that you do. For all my web apps up to now, I
have been coding my way with php. After playing around with Seaside
recently, i think this is it, it is ready for prime time. It is
rapidly getting mature, version 3.0 is just around the block, book
about it is getting finished, it is ported to several Smalltalks, and
it developed by vibrant community. Last but not least, the programming
model that Seaside introduces for web apps just kicks ass to any other
non smalltalk web framework, by far.
So I would say it is time to jump that wagon!
And of course, I am pretty much certain that if you become Seasider
(of Dolphin origin), that would be a great asset to both
communities :)
yes - DNG is full Unicode,
Frank
"Udo Schneider" <Udo.Sc...@homeaddress.de> schrieb im Newsbeitrag
news:4AAD5A50...@homeaddress.de...
On 14 sep, 04:26, "Frank Lesser [LSW]" <frank-les...@lesser-
software.com> wrote:
> Hi Udo,
> yes - DNG is full Unicode,
> Frank
And when is DNG going to be DNG? ;-)
The silence about it is deafening.
Best regards,
> I can only recommend that you do. For all my web apps up to now, I
> have been coding my way with php. After playing around with Seaside
> recently, i think this is it, it is ready for prime time.
It has been at least a couple of years since I looked at Seaside,
probably more like three or four actually.
What I am working on now is a good fit for WordPress, but in the
future I will definitely take a close look at Seaside. I have in the
past rolled my own (small) Web apps using Dolphin and Swazoo. With
Seaside now being maintained on Dolphin, using it would probably save
me a fair bit of time and effort.
> So I would say it is time to jump that wagon!
Thanks for the push :-)
Steve
--
swa...@ozemail.com.au
On 14 sep, 21:20, SteveAW <swar...@ozemail.com.au> wrote:
> Hi Rush,
>
> > I can only recommend that you do. For all my web apps up to now, I
> > have been coding my way with php. After playing around with Seaside
> > recently, i think this is it, it is ready for prime time.
>
> It has been at least a couple of years since I looked at Seaside,
> probably more like three or four actually.
>
> What I am working on now is a good fit for WordPress, but in the
> future I will definitely take a close look at Seaside. I have in the
> past rolled my own (small) Web apps using Dolphin and Swazoo. With
> Seaside now being maintained on Dolphin, using it would probably save
> me a fair bit of time and effort.
Steve, your work for Swazoo was very contributory, unfortunately now
the web services tools and other goodies you built are outdated (I
tried to install them on DX6 and it failed), now it would be very
useful to have them back, Spray was great and the Swazoo configuration
tools too.
Is good to see the good old dolphiners alive.
Shall we awake somebody else? Andy maybe?
Regards,
> Is good to see the good old dolphiners alive.
> Shall we awake somebody else? Andy maybe?
I am already wide awake.
I too am waiting to see how DNG will turn out and in the meantime I'm
working on a 3D game engine for D6. This is based on TV3D and will
hopefully be suitable for young-ish kids to use - so maybe Dolphin will
then be able to capture some of the existing Squeak eToys interest. When
it's ready I'll put up some new videos as a showcase.
I really should have piped up and joined in this thread to congratulate
Jose on the Seaside 3.0 port. This is GREAT news and I'd be very
interested in porting over the OA website (which is currently running
Steve's rather old Swazoo port) as soon as it's stable enough to do so.
So, don't write me off, I'm still here.
Best regards
Andy Bower
Object Arts Ltd
sorry - it is just hard work.
we are progressing - working hard to get a state which we can publish.
In short - we are transitioning from alpha to beta.
We have really good results - DNG starts to look like Dolphin 6 - but in
full Unicode.
The current DNG-VM is between 2.5 and 4 times faster (also in
macro-benchmarks )
than our VM which we used a year ago for the benchmarks published on the OA
site.
and is nearly feature complete. Also we are testing large applications from
key customers
- and as soon all these tests complete we will announce it.
Frank
"Esteban A. Maringolo" <emari...@gmail.com> schrieb im Newsbeitrag
news:cf9ba87f-5d2a-4e44...@e34g2000vbm.googlegroups.com...
> Steve, your work for Swazoo was very contributory, unfortunately now
> the web services tools and other goodies you built are outdated
You are right, very outdated!
> tried to install them on DX6 and it failed), now it would be very
> useful to have them back, Spray was great and the Swazoo configuration
> tools too.
I don't use either of these tools myself, and haven't for years, so I
haven't maintained them at all.
> Is good to see the good old dolphiners alive.
I still use Dolphin for my day-to-day work, but I am in regular e-mail
contact with a couple of old dolphiners. I think it's a bit like a
first love, you never really let it go completely :-) Like everyone, I
have my fingers crossed that DNG breathes life back into everything.
Steve
--
swa...@ozemail.com.au
Just want to say happy reunion by seaside.
Like to be back to life again by your appearance, hope to see more
of your dolphin/seaside goodies from your day-to-day work to share with us.
tk
This sounds super fabulous. I want it yesterday. Please please
please publish. If you would like any help with this I would really
really really like to help out. I am making picoLARC into an online
programming teaching thing to be incorporated into a website. We want
to teach programming via picoLARC and Dolphin Smalltalk. Etc etc etc.
The website downloads a single D6 executable with picoLARC in it.
picoLARC then communicates back to the website to do online teaching
and extreme programming. It would be super fabulous to be able to
incorporate this new game engine into the picoLARC website.
I am finishing a demo of a picoLARC program animation tree View this
week.
The idea is to use a single tree View as the Browser / debugger /
inspector for picoLARC / Dolphin.
The entire programming process is in one single tree View.
The tree View animates itself to show program execution.
You can program by building up a tree. So the parse tree is editted
directly in the tree View.
Online forums can be incorporated right into the picoLARC tree so that
group programming can be done in real time.
I will post the link to the program animation demo .exe when I get it
made a few days from now.
I will really really really like to incorporate this new game engine
into the picoLARC extreme programming website.
Here is the demo program that will be animated by the demo:
( you have to edit it to fix the word wrap. You can copy it into a
Workspace. )
( let
( ( tailPosFactorial-n: :=
( let
( ( tailPosFactorial-n:: :=
( lambda ( accumulator n )<---[ helper function does tail call ]
begin
( if ( = n 1 )
( accumulator )
( tailPosFactorial-n::
( * accumulator n )
( - n 1 ) ) ) ) ) )
begin
( lambda ( n )<---[ tail position implementation ]
begin
( tailPosFactorial-n:: 1 n ) ) ) )
( usualFactorial-n: :=
( lambda ( n )<---[ Usual recursive implementation of factorial
function ]
begin
( if ( = n 1 )
( 1 )
( * n ( usualFactoria-n: ( - n 1 ) ) ) ) ) )
)<---[ Define two versions of the factorial function into two new
variables ]
begin
( usualFactorial-n: 3 )
( tailPosFactorial-n: 3 )
)---[ let ]
( at:put: anArray 1 anObject )<---[ In picoLARC ]
is equivalent to
( anArray at: 1 put: anObject )
in Dolphin.
The LambdaLisp dialect inside of picoLARC is 5 to 10 times slower than
Dolphin for message sends. But most of the work can be delegated to
Dolphin which is faster. So the new Dolphin should make LambdaLisp
nearer to how fast Dolphin is now.
The C Lisp dialect inside of picoLARC should eventually be fast. It
is a dialect of lisp that looks a little like C and works exactly like
C.
All the dialects inside of picoLARC can be mixed together.
Nice to hear from you!
> hope to see more
> of your dolphin/seaside goodies from your day-to-day work to share with us.
On this topic, I agree with what Tim M. has posted in the past about
needing some kind of shared online package repository.
Maintaining goodies and packages by uploading them to some website
somewhere takes effort, and gets old quickly. I should know ... I have
enough unmaintained garbage packages floating around various websites
to last a lifetime :-)
I think I read Frank Lesser saying that a sharing platform is planned
for DNG. Another reason to look forward to DNG!
Steve
--
swa...@ozemail.com.au
> I think I read Frank Lesser saying that a sharing platform is planned
> for DNG. Another reason to look forward to DNG!
Have a look at:
We can remove the first item from the list of non working things !
Thanks to *Udo Schneider* providing support for handling of
UnicodeCharacters and improvements over the UnicodeString Dolphin's
class, we now have support for UTF-8 encoding in Seaside.
Screenshot: http://groups.google.com.ar/group/clubsmalltalk/web/UnicodeTest.png
Due to this changes we have a little delay in the sources organization
so the release (development release with unknown bugs) will be the
next week. Again please be patient.
Currently, we are looking at various ways to implement or simulate the
PartialContinuations (and full Continuation) support for Seaside.
Fortunately, Seaside 3, does not have a strong dependency on
Continuations but I think that Seaside without continuatios is 1/2
Seaside so we will now focusing on solve this.
Cheers
Sebastian