David,

I actually really appreciate what you and others have done with Lift
and please don't take all I've said as criticism. When I said that I
realized I have to view Lift through FP goggles instead of OO ones,
I'm not saying that is bad, but that it was unusual for me (and
probably lots of web developers coming from Java, PHP etc.). I do
realize that inventing new concepts is a core value of Lift and maybe
I was expecting too much Java- or Scalaish conventions where some of
the things might come from the other influences you listed or be good
inventions in their own regard.

But I am quite certain that there are some simple things that can be
done to make the code easier to look at: moving things into separate
packages and moving some functions out of the classes where they don't
conceptually belong, if separation of concerns is at all a goal. Those
things were behind some of my thoughts that Lift could follow more OO
conventions, but I guess that isn't really about OO, but modularity. I
do not mean deep hierarchies or abstract factories or GOF patterns
when I say OO, but mostly separation of concerns, and a bit less
importantly, encapsulation. Then again, I might have a different idea
from you about what Lift's concerns are.
For concrete examples, I don't think any Atom stuff belongs directly
under the general HTTP package... that Req doesn't really need a
fixHtml function, it could easily be somewhere else that has more to
do with HTML and less with requests generally. Some of these changes
could probably be made even while retaining backwards compatibility
(through a separate compatibility layer and/or deprecated old methods
delegating to the new ones). I think it would be easier after a
version of Lift has moved to Scala 2.8 where package objects are
available.

Now this may be just my opinion, but I think when different concepts
are lumped together into large flat packages or large classes -- it
makes things harder to understand and use, not easier. If you don't
share that thought and wouldn't accept those kind of changes to Lift,
I will not do the review. However I was asked to name specific things
I find hard to understand but I don't want to go half way and just
name a couple of things I happened upon: I'm either going to go
through most of lift-webkit and write down my opinion of how to
categorize things better in it or I'll not go through any of it. If I
did go through it, I could help with documentation while doing so.

About documentation: I agree that it doesn't suck, but I think there
should at least be a better index to it. Maybe a simple wiki page or
two full of categorized links would do.

Erkki L

--

You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en.


Reply via email to