enjoying salad since 1978.

Tuesday, September 04, 2007

Putting my money where my mouth is

I've been going on and on about Scala and lift these past few months to pretty much anybody who would listen. Lift, an alpha web framework for the object-functional language Scala, takes advantage of Scala's numerous features to provide a surprisingly powerful web framework in less than 10k lines of code. Take a look at the lift site to get an idea of what it can do. (Hint: David wrote a wiki in 45 lines of code)

I can see it doing for Scala was Rails did for Ruby.

So when David asked me if I wanted to be a committer, I jumped at the opportunity. I have a couple of patches going in my local SVN working copy mostly related to proper serving of MIME types and caching that I hope to get in soon.

Labels: ,

4 Comments:

Blogger TylerWeir said...

Dave has a quick little entry about building a new lift webapp:

http://blog.circleshare.com/index.php?/archives/62-lift-QuickStart.html#extended

I think one of the big factors for Rails, Grails, *other mvc web framework* is all the helper scripts and it seems like Lift is still early on in that phase (I looked at it a couple of months ago, so I may be wrong now).

11:15 AM

 
Blogger Steve Jenson said...

Yes, lift doesn't have too many helper scripts but lift is still pretty uncomplicated by things like scaffolding, migrations, etc. I'm sure that will change but I'm not sure when or even how. Maybe something like Rail's generator isn't appropriate or we can do something better; it sucks checking in all that generated code and we have the advantage of a rich type system.

2:42 PM

 
Blogger Chris Baker said...

Must resist Steve...

Dude... everytime you throw out one of these things I end up slicing away a significant portion of my life. Erlang, there's three months... blogging, two years... How am I going to find time to play Madden 08? (One of my favorite stories is how I told you over one of the episodes of Salad With Steve that devoting all your time to "blogging" sounded crazy because all it was was a 1 dimensional web framework.)

As someone who's slogged through more periods of Struts hell I will say that Java is more than desperate for a Railsesque environment. Right now I'm in infatuated with NetKernel.

11:25 AM

 
Blogger Chris Baker said...

Dammit.

The introduction from the scala overview is really speaking to me:

True component systems have been an elusive goal of the
software industry. Ideally, software should be assembled
from libraries of pre-written components, just as hardware is
assembled from pre-fabricated chips. In reality, large parts
of software applications are written "from scratch", so that
software production is still more a craft than an industry.

Components in this sense are simply software parts which
are used in some way by larger parts or whole applications.
Components can take many forms; they can be modules,
classes, libraries, frameworks, processes, or web services.
Their size might range from a couple of lines to hundreds of
thousands of lines. They might be linked with other components
by a variety of mechanisms, such as aggregation, parameterization,
inheritance, remote invocation, or message
passing.

We argue that, at least to some extent, the lack of
progress in component software is due to shortcomings in the
programming languages used to define and integrate components.
Most existing languages offer only limited support for
component abstraction and composition. This holds in particular
for statically typed languages such as Java and C#
in which much of today's component software is written.

9:37 AM

 

Post a Comment

Links to this post:

Create a Link

<< Home