Re: mutter tiling



On Thu, Mar 17, 2011 at 10:36 AM, Jeffery Olson <olson jeffery gmail com> wrote:
Wow. there is a lot of crazy in this thread. I'm sorry.

<rant>

>>>>  Me personally, I'm not in favor of writing writing it
>>>> in _javascript_ because of the dynamic typing (will be painfull to find
>>>> problems caused by changed Mutter bindings).

The risk that you're describing, there's a set of tools you can
develop to hedge against this very eventuality. They're called unit
tests. This is probably a textbook example for why unit tests are
important, especially in a dynamic language environment.

Of course unit tests are important. But, it's annoying, and certainly less that optimal, to have to write unit tests to check for errors that a type system handles naturally. And, then you *still* end up having to a ton of runtime checking of types in your code, which can easily turn into a mess.
 

Now the Bad News: there's no existing unit test infrastructure in
gnome-shell _javascript_ land. We need it, badly. And the Good News:
there's lots of great frameworks out there for this for both the
browser (qunit, screw-unit, jspec, etc) and server-side (vows, jspec
again, etc) environments that we, as a community, can leverage to this
end. This is something that's been on my mind quite a bit, lately.

Java has some of the best unit testing infrastructure around.
 

Also: have you even given _javascript_ a chance? Please don't let it's
history in the browser bias you against it; it's a marvelous language
with a lot of really interesting features that makes nice, expressive
code possible. I think the gnome-shell team made a *great* choice when
they chose _javascript_ for the scripting environment and scriptmonkey
is a good engine with a great performance for our needs (with a clean,
C-based API.. putting aside the hype around v8, for now). The work the
team has done around the introspection-based bindings is excellent.

The gnome-shell team, like myself, know that there's a ways to go yet,
in terms of making the _javascript_ extensibility environment more
robust and exposing more features of the underlying C code. Sadly,
they have other dragons to slay right now and heading into 3.2. It's a
good thing that this is an FOSS project and anyone can submit
features/patches (I've done my share to expose a few methods in
mutter, but there's much to be done still). I've found the team to be
very constructive and receptive to patches, thus far.

> I've been wondering about the possibility of the leveraging the GWT compiler
> to write gnome-shell extensions (any js code, really) in Java.

I hope you're joking, because I don't even know where to begin with
this. Java is definitely a step backwards, here.

Uh... at the risk of causing more ranting, would you care to elaborate here?

Note that I'm not at all proposing some kind of mandate or official blessing at all. I was simply mentioning the possibility of writing extension code (thanks to the fact that the impl language is _javascript_), in a language with strong type safety, tons of tooling, perhaps more developers world-wide than any other, and a large, awesome open-source community. Also, I don't think you should assume that people don't know _javascript_ just because they would prefer using a type-safe language...

<snip/>

Jesse


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]