Smalltalkers

Talk Small and Carry a Big Class Library

I posted one of my rambling blog posts over at http://developers.curl.com but I did not drift into what my current battle is: to generate Curl web content markup using Smalltalk.

Curl is like HTML for commercial, corporate enterprises or for restricted access copyright material browsing. It looks much like XHTML without the end tags: you can see this in
{bold }
or
{pre }
which you could think of as curly braces for the opening < and the closing >.

But it is also a rich kind of expression-based macro-equipped sorta-functional language and the programming environment - written in Curl - I rank second only to Smalltalk ( and I do not mean Gnu ;-)

The problem I keep running into is that in Smalltalk web frameworks the assumption is always HTML or XHTML and the coupling gets quite tight.

I view the web as HTTP and the HT does not stand for HTML and should by now be called MCTP for MIME-typed Content Transport Protocol. Whatever.

If you have some ideas on how to proceed with any of the frameworks - especially with their handling of HTML attributes and styles - I would be glad to hear. At the moment I have worked with Aida, Seaside 2.8 and Iliad in Gnu on Linux and in Pharo on Windows ( I cannot get Gnu + Swazoo + Magritte + Iliad to build in Cygwin or Msys. If you can, I'd love to hear how)

I tried to get some input from Smalltalk/X, but no response.

This morning I have gone back to KomServices + KomHttpServer + HttpView2 but am hitting some syntax errors loading HttpView2 into Pharo.

Share

Reply to This

Replies to This Discussion

Squeak 3.10 tolerates a HttpView2 extra named SwikiFormatter >> resolveLink with

self extractCodeFrom: u block: [:url :class |
url := model urlForLink: url.
uurl := url asUppercase.

but Pharo will not compile and should not.

This snippet was likely intended to be

self extractCodeFrom: u block: [:url :class |
uurl := (self model urlForLink: url) asUppercase.

"oh vey. Testing a package. What a concept."

I fix this, but it breaks on another. Pity PitL.


this was likely

Reply to This

Curl "Hello World" example now running on Kom under HttpView2 in Squeak 3.10

Rather painful to see the hard-coded HTML classes in String, WriteStream, HttpResponse ...

Makes you think Dependency Injection might sometimes be a good idea ...

Reply to This

To give credit where due, I see this in Comanche

WriteStream

>>contentType

self flag: #svp.
"SVP: We should not be assuming that all write streams contain html content. This needs to be fixed."

^'text/html' asMIMEType

" you could call this \"character-mode\" Smalltalk if you were afflicted with my sense of humor ..."

Reply to This

RSS

About

Badge

Loading…

© 2009   Created by James Robertson on Ning.   Create a Ning Network!

Badges  |  Report an Issue  |  Privacy  |  Terms of Service