<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Embeddable languages, an implementation</title>
	<atom:link href="http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/</link>
	<description>Cool links and commentary</description>
	<lastBuildDate>Wed, 21 Oct 2009 16:29:36 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Matt Bucknall</title>
		<link>http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/comment-page-1/#comment-405</link>
		<dc:creator>Matt Bucknall</dc:creator>
		<pubDate>Tue, 16 Sep 2008 20:15:06 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/#comment-405</guid>
		<description>Hi Alex,

By duplication of code, I mean Spidermonkey implementing its own data structures, data manipulation functions, unicode handling etc when Glib already provides such facilities. This might not be a problem on the server or desktop, but on memory constrained embedded devices (where Gnome is really starting to gain some momentum), this is an issue.

If one is to use an existing Javascript engine, perhaps JavaScriptCore would be a better choice seeing as WebKit seems to be winning the embedded browser wars, otherwise systems are going to end up with all of GLib&#039;s facilities, some duplicated by SpiderMonkey and some duplicated WebKit simultaneously. That is a really messy overall solution. Of course, bringing in a 3rd javascript engine and running that alongside webkit is not ideal either, but unless someone comes up with a grade A 100% Gtk+ and Glib-based web browser (which lets face it, isn&#039;t likely to happen anytime soon), there is not much choice about that.

I don&#039;t yet have a convincing argument for implementing yet another Javascript engine, as I said in my original post, I&#039;m just considering things at the moment. Such a task is hardly trivial, so there are lots of reasons not to do it. I feel uneasy about using SpiderMonkey and JavaScriptCore because they&#039;ve both been hacked around and are pretty messy inside (e.g. one minute the engine is designed to be standalone, the next minute is integrated into a browser, then it is hacked out again). My comment about a Glib-based Javascript engine being easier for Gnome developers to maintain meant that the code would be more in fitting with the GTK+ way of doing things from the inside out. Of course, another project is going to involve more work than using what is already available. There are pros and cons either way.

Matt.</description>
		<content:encoded><![CDATA[<p>Hi Alex,</p>
<p>By duplication of code, I mean Spidermonkey implementing its own data structures, data manipulation functions, unicode handling etc when Glib already provides such facilities. This might not be a problem on the server or desktop, but on memory constrained embedded devices (where Gnome is really starting to gain some momentum), this is an issue.</p>
<p>If one is to use an existing Javascript engine, perhaps JavaScriptCore would be a better choice seeing as WebKit seems to be winning the embedded browser wars, otherwise systems are going to end up with all of GLib&#8217;s facilities, some duplicated by SpiderMonkey and some duplicated WebKit simultaneously. That is a really messy overall solution. Of course, bringing in a 3rd javascript engine and running that alongside webkit is not ideal either, but unless someone comes up with a grade A 100% Gtk+ and Glib-based web browser (which lets face it, isn&#8217;t likely to happen anytime soon), there is not much choice about that.</p>
<p>I don&#8217;t yet have a convincing argument for implementing yet another Javascript engine, as I said in my original post, I&#8217;m just considering things at the moment. Such a task is hardly trivial, so there are lots of reasons not to do it. I feel uneasy about using SpiderMonkey and JavaScriptCore because they&#8217;ve both been hacked around and are pretty messy inside (e.g. one minute the engine is designed to be standalone, the next minute is integrated into a browser, then it is hacked out again). My comment about a Glib-based Javascript engine being easier for Gnome developers to maintain meant that the code would be more in fitting with the GTK+ way of doing things from the inside out. Of course, another project is going to involve more work than using what is already available. There are pros and cons either way.</p>
<p>Matt.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: alexl</title>
		<link>http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/comment-page-1/#comment-404</link>
		<dc:creator>alexl</dc:creator>
		<pubDate>Tue, 16 Sep 2008 17:26:40 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/#comment-404</guid>
		<description>Matt: 

Eh, i&#039;m not sure what you mean, but a (re-)implementation of javascript just to use glib is both duplication of code (you&#039;ll be running two js implementations if you also run firefox) and harder to maintain (spidermonkey is already maintained, the new implementation is not).

Not to mention that we wont&#039; get any of the advantages of all the important performance work done on the mainline js engines.</description>
		<content:encoded><![CDATA[<p>Matt: </p>
<p>Eh, i&#8217;m not sure what you mean, but a (re-)implementation of javascript just to use glib is both duplication of code (you&#8217;ll be running two js implementations if you also run firefox) and harder to maintain (spidermonkey is already maintained, the new implementation is not).</p>
<p>Not to mention that we wont&#8217; get any of the advantages of all the important performance work done on the mainline js engines.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt Bucknall</title>
		<link>http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/comment-page-1/#comment-403</link>
		<dc:creator>Matt Bucknall</dc:creator>
		<pubDate>Mon, 15 Sep 2008 20:24:35 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/#comment-403</guid>
		<description>Hi,

This is an area I&#039;ve been thinking about quite a lot recently and I&#039;ve been considering development of an all-GLib implementation of ECMA-262. A GLib implementation would avoid duplication of code and hopefully be easier for Gnome developers to maintain. Perhaps a collaboration is in order? What do you think?

Matt.</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>This is an area I&#8217;ve been thinking about quite a lot recently and I&#8217;ve been considering development of an all-GLib implementation of ECMA-262. A GLib implementation would avoid duplication of code and hopefully be easier for Gnome developers to maintain. Perhaps a collaboration is in order? What do you think?</p>
<p>Matt.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: alexl</title>
		<link>http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/comment-page-1/#comment-402</link>
		<dc:creator>alexl</dc:creator>
		<pubDate>Mon, 15 Sep 2008 09:21:52 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/#comment-402</guid>
		<description>rainwoodman:
You can already create object with e.g.:
new GType.GtkLabel(&quot;label&quot;, &quot;some text&quot;)

There is no code atm to import a full namespace, so the functions of a namespace are not visible. However, the actual call is very similar to the one for method calls (they are both just c functions really).

Some work is happening on getting this running atm. More info later.</description>
		<content:encoded><![CDATA[<p>rainwoodman:<br />
You can already create object with e.g.:<br />
new GType.GtkLabel(&#8221;label&#8221;, &#8220;some text&#8221;)</p>
<p>There is no code atm to import a full namespace, so the functions of a namespace are not visible. However, the actual call is very similar to the one for method calls (they are both just c functions really).</p>
<p>Some work is happening on getting this running atm. More info later.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rainwoodman</title>
		<link>http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/comment-page-1/#comment-401</link>
		<dc:creator>rainwoodman</dc:creator>
		<pubDate>Mon, 15 Sep 2008 05:16:49 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/#comment-401</guid>
		<description>alxel, 
Do you have any ideas on how to invoke the function members of a namespace and the constructors of an object-klass?</description>
		<content:encoded><![CDATA[<p>alxel,<br />
Do you have any ideas on how to invoke the function members of a namespace and the constructors of an object-klass?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rainwoodman</title>
		<link>http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/comment-page-1/#comment-400</link>
		<dc:creator>rainwoodman</dc:creator>
		<pubDate>Mon, 15 Sep 2008 02:35:00 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/#comment-400</guid>
		<description>alxel,

i added a factory function to create some gtk objects with GScript.
Just a prove-idea thing. as shown in the screenshot.

http://rainwoodman.dreamhosters.com/wp/2008/09/a-little-progress-on-gscript/

also, the js engine has a standard name &#039;libjs&#039; (at least on fedora, try search js-devel package), in configure.ac a PKG_CHECK libjs is sufficient.</description>
		<content:encoded><![CDATA[<p>alxel,</p>
<p>i added a factory function to create some gtk objects with GScript.<br />
Just a prove-idea thing. as shown in the screenshot.</p>
<p><a href="http://rainwoodman.dreamhosters.com/wp/2008/09/a-little-progress-on-gscript/" rel="nofollow">http://rainwoodman.dreamhosters.com/wp/2008/09/a-little-progress-on-gscript/</a></p>
<p>also, the js engine has a standard name &#8216;libjs&#8217; (at least on fedora, try search js-devel package), in configure.ac a PKG_CHECK libjs is sufficient.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: russian-anonymous</title>
		<link>http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/comment-page-1/#comment-399</link>
		<dc:creator>russian-anonymous</dc:creator>
		<pubDate>Sat, 13 Sep 2008 22:17:02 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/#comment-399</guid>
		<description>alexl 

you have my full support on this. Zoo of languages is very uneasy environment to live in. And JS must-know today, because of web. Also it is impossable to incorporate useful scripts done by users(can&#039;t imagine firefox exentions written in 15+ scripting langs) if there are no standard lang.

&gt;vaScript prototype-based model is a bit weird,

if i&#039;m not mistaken, next version of standard has separate classes and objects, not prototype based...

sorry for bad english</description>
		<content:encoded><![CDATA[<p>alexl </p>
<p>you have my full support on this. Zoo of languages is very uneasy environment to live in. And JS must-know today, because of web. Also it is impossable to incorporate useful scripts done by users(can&#8217;t imagine firefox exentions written in 15+ scripting langs) if there are no standard lang.</p>
<p>&gt;vaScript prototype-based model is a bit weird,</p>
<p>if i&#8217;m not mistaken, next version of standard has separate classes and objects, not prototype based&#8230;</p>
<p>sorry for bad english</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: the band&#8217;s playin&#8217; &#8250; GScript.</title>
		<link>http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/comment-page-1/#comment-398</link>
		<dc:creator>the band&#8217;s playin&#8217; &#8250; GScript.</dc:creator>
		<pubDate>Fri, 12 Sep 2008 22:18:04 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/#comment-398</guid>
		<description>[...] Javascript + GObject is something that is going to happen. When I read my jammed VALA mail list, I found a post related to GScript, an javascript + GObject implementation. It was announced in http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/ [...]</description>
		<content:encoded><![CDATA[<p>[...] Javascript + GObject is something that is going to happen. When I read my jammed VALA mail list, I found a post related to GScript, an javascript + GObject implementation. It was announced in <a href="http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/" rel="nofollow">http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rainwoodman</title>
		<link>http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/comment-page-1/#comment-397</link>
		<dc:creator>rainwoodman</dc:creator>
		<pubDate>Fri, 12 Sep 2008 22:11:51 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/#comment-397</guid>
		<description>Hi Alexl, I was also thinking about javascript + GObject for some time. Nice to see that you made such big progress on it! recently I also came up with some ideas about bridging Javascript with gobject at http://rainwoodman.dreamhosters.com/wp/2008/09/new-ideas-are-popping-out/

BTW: in the svn rev 4, js-gtk doesn&#039;t work as expected because you&#039;ve prefixed the signals with &quot;on_&quot;.</description>
		<content:encoded><![CDATA[<p>Hi Alexl, I was also thinking about javascript + GObject for some time. Nice to see that you made such big progress on it! recently I also came up with some ideas about bridging Javascript with gobject at <a href="http://rainwoodman.dreamhosters.com/wp/2008/09/new-ideas-are-popping-out/" rel="nofollow">http://rainwoodman.dreamhosters.com/wp/2008/09/new-ideas-are-popping-out/</a></p>
<p>BTW: in the svn rev 4, js-gtk doesn&#8217;t work as expected because you&#8217;ve prefixed the signals with &#8220;on_&#8221;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: alexl</title>
		<link>http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/comment-page-1/#comment-396</link>
		<dc:creator>alexl</dc:creator>
		<pubDate>Wed, 10 Sep 2008 19:56:24 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2008/09/09/embeddable-languages-an-implementation/#comment-396</guid>
		<description>Markus: 

To each his own. Some people like .net, some not. I have no interest in arguing about that. 

Anyway, i don&#039;t think the exact language picked is really that important for the users. One can write good or bad programs in all languages, and arguing that you must use a specific language to make the user happy is just lame.</description>
		<content:encoded><![CDATA[<p>Markus: </p>
<p>To each his own. Some people like .net, some not. I have no interest in arguing about that. </p>
<p>Anyway, i don&#8217;t think the exact language picked is really that important for the users. One can write good or bad programs in all languages, and arguing that you must use a specific language to make the user happy is just lame.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
