Re: libseed-list questions about libseed and javascriptcore in general



On Wed, Aug 12, 2009 at 10:42 PM, Christian
Betz<christian betz gmail com> wrote:
> Hello.
>
> I managed to build seed on ubuntu 9.04 without much trouble. I am
> impressed and I have a very, very good feeling that seed will catch
> on. So, what are the major issues remaining before I can begin hyping
> this awesome technology? ;)
>
It really needs some testing for larger projects, so far all there is
is the few games in GNOME Games, and they really only test a few
things.

> Some background -- I've been working with the spidermonkey API for
> some time and was looking to dive into JavaScriptCore. The nice thing
> about spidermonkey is that there is a nice package available so that
> getting started embedding is a breeze. I struggled for a while with
> building trying to build a simple hello world type app using the jsc
> API, but failed (what I really wanted was a nice "-dev" type package
> with shared library/header files for jsc). I had given up until I
> found your project.
>
> i read that the only dependencies are webkit and
> gobject-introspection. does that mean that *in-theory* I can use
> libseed without the higher level gtk/gnome levels of the stack? the
> reason I ask is that I would like to use the libseed API on servers
> and embedded systems without X. If the answer is no, then I have a
> side question: what do you recommend as the path of least resistance
> towards using the javascriptcore api directly (without seed)? do you
> think there is ever a chance of getting just the engine/API split out
> of webkit as a separate package? is that something that people might
> be receptive to?
>

My planned future structure for seed is something like this:

- Have seed-api.c, which has the friendlified/glibstyleified wrappers
around JSC functions. Still part of libseed.
- libseed will also contain a sort of "Seed core" which will contain
things like: the imports system, the JavaScript builtins, JavaScript
"classes" (a concept internal to the JSC C API), which various modules
use (such as, FFI structures, and GObject-introspection boxed types,
will both inherit from "seed_pointer" or whatever it's named).
- All the GObject introspection functionality will be moved in to a
module, this will not change code at all, because it will still exist
as the imports.gi object. At this point libseed will only depend on
WebKit and GLib.
- There will be a sort of cohesive set of "standard modules" which
cover things that GI doesn't, most of these will depend on GLib (and
any library they happen to wrap). This includes things like the FFI
module, the os module, readline module, or sqlite module.
- Probably a large number of other modules built on top of things like
FFI or GI in JS, to provide convenient bindings.

> in other words, this is all I want to do right now:
> write some C code defines a print() function in the global context and
> then evaluate "print('hello world')". I *can* get this to work using
> the PPA packages you guys provide -- but it segfaults when i call
> JSGarbageCollect at the end :(
>
> Christian

The C extension modules (in modules/ folder of source), are probably
the best examples of the C API, just imagine if you were calling the
"seed_module_init" function from your main.


Robb,
> _______________________________________________
> libseed-list mailing list
> libseed-list gnome org
> http://mail.gnome.org/mailman/listinfo/libseed-list
>


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