Simon Hausmann | 1 Oct 2006 11:15
Picon
Favicon
Gravatar

Re: [RFC] How to handle backends properly?

On Saturday 30. September 2006 17:08, Kevin Ottens wrote:
> Hello list,
>
> As you probably know, Solid finally entered kdelibs yesterday. It's the
> second library using a frontend/backend architecture[T]. And basically it
> raises the question on how do we want to manage the development of those
> backends.
>
> Basically we have two kinds of backends:
>  - Fake backends, stub providing simulated features
>  - Backends actually providing real features
>
> Of course the fake backends are already hosted in kdelibs with the
> libraries to support the development and allow to unit test the libraries.
> So the question is more about where to host the other ones?
>
> Currently backends for Phonon are hosted in kdemultimedia[M] which looks
> like the right place to do this. For Solid the situation is less clear,
> should it be in kdebase/runtime[R]?
>
> At first that looks like a sensible choice. The problem I have with hosting
> those backends in kdebase or kdemultimedia is that we loose a property of
> this splitting (at least in the way they'll be perceived by distributors):
> decoupled release cycles.
>
> One of the point of those backends is to be able to make a release when a
> subsystem see its behavior changing (like in the transition from HAL 0.4 to
> 0.5 for instance). Hosting them in kdebase or kdemultimedia doesn't really
> support this idea.
>
(Continue reading)

Guillaume Laurent | 1 Oct 2006 12:13

Re: Using scripting languages for KDE4 main modules

On Saturday 30 September 2006 18:37, Hubert Figuiere wrote:
> > Although I like Python and support scriptability of apps, I understand
> > Leo's concern, because not everyone wants to put the bloat into his
> > system, because developer A wanted to have his app in language A, and
> > developer B in language B.
>
> This is exactly what is happening with Gnome. They introduced panel
> applets written in Python and using LOT OF RAM.

We can see this with Superkaramba, which does look nice but also consumes an 
awful lot of memory for rather basic functionality.

However it's clear that a scripting language would be a good thing to have. So 
the only solution I can see is to decide on an "official" scripting language, 
which would be included in KDE so that the dependency problem would be solved 
for people writing script-based apps. It will annoy people who want to stick 
to their own favorite language, but this is a case where trying to make 
everyone happy will end up with everyone frustrated. The good thing about 
Gnome is that it has served as an attraction point for the 
I-refuse-to-use-any-language-but-my-pet-one population, so I don't think the 
KDE crowd would see the enforcement of a standard scripting language as a 
problem anyway.

--

-- 
Guillaume.
http://www.telegraph-road.org

Thiago Macieira | 1 Oct 2006 12:31
Picon
Favicon

Re: Using scripting languages for KDE4 main modules

Guillaume Laurent wrote:
>However it's clear that a scripting language would be a good thing to
> have. So the only solution I can see is to decide on an "official"

There's a world of difference between a scripting language that allows one 
to extend an existing application and a scripting language to write a 
full application on.

For the former case, we already have decided on the official language and 
it's JavaScript. We already have the interpreter in KDELibs (KJS).

For the latter case, there's no decision on official language, since there 
doesn't have to be. Applications can be written using any binding. But, 
as this thread has proven, the basic applications must be in C++ so that 
memory consumption stays low.

> scripting language, which would be included in KDE so that the
> dependency problem would be solved for people writing script-based
> apps. It will annoy people who want to stick to their own favorite
> language, but this is a case where trying to make everyone happy will
> end up with everyone frustrated. The good thing about Gnome is that it
> has served as an attraction point for the
>I-refuse-to-use-any-language-but-my-pet-one population, so I don't think
> the KDE crowd would see the enforcement of a standard scripting
> language as a problem anyway.

--

-- 
  Thiago Macieira  -  thiago (AT) macieira.info - thiago (AT) kde.org
    PGP/GPG: 0x6EF45358; fingerprint:
    E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358
(Continue reading)

Guillaume Laurent | 1 Oct 2006 12:57

Re: Using scripting languages for KDE4 main modules

On Sunday 01 October 2006 12:31, Thiago Macieira wrote:
> Guillaume Laurent wrote:
> >However it's clear that a scripting language would be a good thing to
> > have. So the only solution I can see is to decide on an "official"
>
> There's a world of difference between a scripting language that allows one
> to extend an existing application and a scripting language to write a
> full application on.

I know, I wasn't talking about the case of extending an app.

> For the latter case, there's no decision on official language, since there
> doesn't have to be.

On the contrary, I think there has to be one.

> Applications can be written using any binding. But, 
> as this thread has proven, the basic applications must be in C++ so that
> memory consumption stays low.

Yes, but for non-basic apps which can be written in a scripting language, it's 
better if they are all written in the same one, so we can limit both memory 
usage and dependencies to a single binding.

--

-- 
Guillaume.
http://www.telegraph-road.org

Alexander Neundorf | 1 Oct 2006 13:00
Picon
Favicon

Re: Using scripting languages for KDE4 main modules

On Sunday 01 October 2006 12:57, Guillaume Laurent wrote:
> On Sunday 01 October 2006 12:31, Thiago Macieira wrote:
> > Guillaume Laurent wrote:
> > >However it's clear that a scripting language would be a good thing to
> > > have. So the only solution I can see is to decide on an "official"
> >
> > There's a world of difference between a scripting language that allows
> > one to extend an existing application and a scripting language to write a
> > full application on.
>
> I know, I wasn't talking about the case of extending an app.
>
> > For the latter case, there's no decision on official language, since
> > there doesn't have to be.
>
> On the contrary, I think there has to be one.

I don't think it would be possible to reach a consensus on this one: python 
<-> ruby <-> java <-> c# ...

Alex
--

-- 
Work: alexander.neundorf AT jenoptik.com - http://www.jenoptik-los.de
Home: neundorf AT kde.org                - http://www.kde.org
      alex AT neundorf.net               - http://www.neundorf.net

Boudewijn Rempt | 1 Oct 2006 13:07

Re: Using scripting languages for KDE4 main modules

On Sunday 01 October 2006 12:31, Thiago Macieira wrote:
> Guillaume Laurent wrote:
> >However it's clear that a scripting language would be a good thing to
> > have. So the only solution I can see is to decide on an "official"
>
> There's a world of difference between a scripting language that allows one
> to extend an existing application and a scripting language to write a
> full application on.
>
> For the former case, we already have decided on the official language and
> it's JavaScript. We already have the interpreter in KDELibs (KJS).

Not for Koffice, fortunately. We have Kross, which makes it really easy to 
offer one scripting interface that works with any language for which there's 
an interpreter plugin. We first used kjs for Krita's scripting language, but 
it was a pain to provide bindings to the objects we wanted to expose to 
script writers, and it was a pain to write scripts.

> For the latter case, there's no decision on official language, since there
> doesn't have to be. Applications can be written using any binding. But,
> as this thread has proven, the basic applications must be in C++ so that
> memory consumption stays low.

I haven't seen "proof", just some assertions, but aside from that, hadn't we 
better define a list of "the basic applications" then -- Leo's list is 
obviously much too large. If the list of basic applications for which C++ is 
required, then people who prefer a little more efficiency in their 
development process know what's left for them.

And I think it will be impossible to reach a concensus about a mandated 
(Continue reading)

Boudewijn Rempt | 1 Oct 2006 13:11

Re: Using scripting languages for KDE4 main modules

On Sunday 01 October 2006 12:57, Guillaume Laurent wrote:

> Yes, but for non-basic apps which can be written in a scripting language,
> it's better if they are all written in the same one, so we can limit both
> memory usage and dependencies to a single binding.

In an ideal world, yes, perhaps. But we don't have that luxury: I much prefer 
having the necessary applications written at all to not having them written 
because the person who has time & inclination to do something cannot stomach 
JavaScript.

There is a large class of applications for which it is silly to use anything 
as time consuming as C++: that class includes all applications that can make 
do with standard widgets, that don't have to do complex painting.

--

-- 
Boudewijn Rempt 
http://www.valdyas.org/fading/index.cgi
Thiago Macieira | 1 Oct 2006 13:31
Picon
Favicon

Re: Using scripting languages for KDE4 main modules

Boudewijn Rempt wrote:
>> For the former case, we already have decided on the official language
>> and it's JavaScript. We already have the interpreter in KDELibs (KJS).
>
>Not for Koffice, fortunately. We have Kross, which makes it really easy
> to offer one scripting interface that works with any language for which
> there's an interpreter plugin. We first used kjs for Krita's scripting
> language, but it was a pain to provide bindings to the objects we
> wanted to expose to script writers, and it was a pain to write scripts.

It doesn't have to be KJS, but it would be nice if it were, since it's 
already installed and part of KDE Libs.

But if any scripting is provided, JavaScript (in some form or another) 
should be supported. That's what was decided in aKademy 2005.

--

-- 
  Thiago Macieira  -  thiago (AT) macieira.info - thiago (AT) kde.org
    PGP/GPG: 0x6EF45358; fingerprint:
    E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358
Boudewijn Rempt | 1 Oct 2006 13:40

Re: Using scripting languages for KDE4 main modules

On Sunday 01 October 2006 13:31, Thiago Macieira wrote:

> It doesn't have to be KJS, but it would be nice if it were, since it's
> already installed and part of KDE Libs.
>
> But if any scripting is provided, JavaScript (in some form or another)
> should be supported. That's what was decided in aKademy 2005.

Maybe someone will write a kjs interpreter plugin for Kross, maybe not. I 
don't particularly care (especially not after having spent a couple of months 
coding in Javascript), but I guess it'll happen sometime. A dbus interpreter 
plugin would be much more interesting to me.

--

-- 
Boudewijn Rempt 
http://www.valdyas.org/fading/index.cgi
Cyrille Berger | 1 Oct 2006 13:53

Re: Using scripting languages for KDE4 main modules

> >Not for Koffice, fortunately. We have Kross, which makes it really easy
> > to offer one scripting interface that works with any language for which
> > there's an interpreter plugin. We first used kjs for Krita's scripting
> > language, but it was a pain to provide bindings to the objects we
> > wanted to expose to script writers, and it was a pain to write scripts.
It's not quiet correct :) The pain to write scripts in JavaScript is your 
personnal opinion :) as for the API to write bindings, it wasn't quiet 
pleasant, but I had wrotten a thin layer on top of kjs/kjsembed to get an api 
that I like more :)
But the real reason why the kjs/kjsembed binding was never completed is that I 
started to work on it just before a period when I lost interest in 
programming for kde, and when I came back I decided that it was a better idea 
to have some sort of universal binding, that would work for all scripting 
languages. That's when I discovered Sebastian had developed for kexi the 
solution I wanted to use.

> It doesn't have to be KJS, but it would be nice if it were, since it's
> already installed and part of KDE Libs.
>
> But if any scripting is provided, JavaScript (in some form or another)
> should be supported. That's what was decided in aKademy 2005.
In trunk, there is an initial support for kjs/kjsembed for kross. Even if I 
have never understood that decision (JavaScript is neither a good language 
for non-programmer, neither a language that is liked by programmers...), 
KOffice (and all applications that decide to use kross) will have support for 
KJS.

--

-- 
--- Cyrille Berger ---

(Continue reading)


Gmane