Web Images Videos Maps News Shopping Gmail more »
Recently Visited Groups | Help | Sign in
Google Groups Home
[announce] O'Browser : OCaml on browsers
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  14 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Benjamin Canou  
View profile  
 More options Nov 17 2008, 11:20 am
Newsgroups: fa.caml
From: Benjamin Canou <benjamin.ca...@gmail.com>
Date: Mon, 17 Nov 2008 16:20:33 UTC
Local: Mon, Nov 17 2008 11:20 am
Subject: [Caml-list] [announce] O'Browser : OCaml on browsers
  Hi,

O'Browser is an implementation of the OCaml virtual machine in
JavaScript, designed to run in web browsers.
It features a runtime library compatible with OCaml's standard one
(including OOP and concurrent threads) and bindings of some JavaScript
functions to manipulate the DOM primitives.

The distribution is available at [1] and an online version of the
tutorial is reachable at [2].

Please note that this is an early version, in particular the DOM
interface module is neither pretty nor well typed.
However, it can already be used to create little applets or scripts (as
in the tutorial [2], the examples of the distribution [3] or my webpage
[4]) and we'll be glad to receive your comments or bug reports.

Have fun.

  Benjamin Canou.

[1] http://www.pps.jussieu.fr/~canou/obrowser-0.1.tar.bz2
[2] http://www.pps.jussieu.fr/~canou/obrowser/tutorial
[3] http://www.pps.jussieu.fr/~canou/obrowser/examples.html
[4] http://www.pps.jussieu.fr/~canou/

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kuba Ober  
View profile  
 More options Nov 17 2008, 10:44 pm
Newsgroups: fa.caml
From: Kuba Ober <ober...@osu.edu>
Date: Tue, 18 Nov 2008 03:44:20 UTC
Local: Mon, Nov 17 2008 10:44 pm
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers
On Monday 17 November 2008, Benjamin Canou wrote:

> O'Browser is an implementation of the OCaml virtual machine in
> JavaScript, designed to run in web browsers.
> It features a runtime library compatible with OCaml's standard one
> (including OOP and concurrent threads) and bindings of some JavaScript
> functions to manipulate the DOM primitives.
[...]
> Please note that this is an early version, in particular the DOM
> interface module is neither pretty nor well typed.
> However, it can already be used to create little applets or scripts (as
> in the tutorial [2], the examples of the distribution [3] or my webpage
> [4]) and we'll be glad to receive your comments or bug reports.

And the reason is?....

Pardon the question, but is this meant to be "useful" in the future,
or is it just a fun experiment (in which case the next target should
be brainfuck).

My question (why and what for?) is serious, though.

Cheers, Kuba

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Jon Harrop  
View profile  
 More options Nov 18 2008, 2:15 am
Newsgroups: fa.caml
From: Jon Harrop <j...@ffconsultancy.com>
Date: Tue, 18 Nov 2008 07:15:42 UTC
Local: Tues, Nov 18 2008 2:15 am
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers
On Monday 17 November 2008 16:20:50 Benjamin Canou wrote:

This is a really awesome project! Performance is fine on a decent browser.
Times taken to highlight syntax_common.ml on this machine:

Chrome:     0.5s
Firefox:    1.1s
IE7:        5.7s
Konqueror: 17.5s

Looks like you've got an OCaml bytecode interpreter written in Javascript.
Could you write a compiler and call eval to get better performance?

I've been thinking about run-time generating code using LLVM that runs in
OCaml's VM recently. Using that to implement Javascript on top of OCaml's VM
would be interesting...

Anyway, I think that's a really great piece of work!

--
Dr Jon Harrop, Flying Frog Consultancy Ltd.
http://www.ffconsultancy.com/?e

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
David Teller  
View profile  
 More options Nov 18 2008, 2:33 am
Newsgroups: fa.caml
From: David Teller <David.Tel...@univ-orleans.fr>
Date: Tue, 18 Nov 2008 07:33:48 UTC
Local: Tues, Nov 18 2008 2:33 am
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers

On Mon, 2008-11-17 at 22:43 -0500, Kuba Ober wrote:
> > Please note that this is an early version, in particular the DOM
> > interface module is neither pretty nor well typed.
> > However, it can already be used to create little applets or scripts (as
> > in the tutorial [2], the examples of the distribution [3] or my webpage
> > [4]) and we'll be glad to receive your comments or bug reports.

> And the reason is?....

To me, the fact that you can write portable lightweight applets sounds
like a good enough reason. That and the fact that I can see this being
used by stuff like Ocsigen to make for (even) richer client-server
applications.

Just my two cents,
 David
--
David Teller-Rajchenbach
 Security of Distributed Systems
  http://www.univ-orleans.fr/lifo/Members/David.Teller
 Angry researcher: French Universities need reforms, but the LRU act brings liquidations.

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Florian Hars  
View profile  
 More options Nov 18 2008, 3:33 am
Newsgroups: fa.caml
From: Florian Hars <h...@bik-gmbh.de>
Date: Tue, 18 Nov 2008 08:33:42 UTC
Local: Tues, Nov 18 2008 3:33 am
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers
Benjamin Canou schrieb:

> Please note that this is an early version, in particular the DOM
> interface module is neither pretty nor well typed.

If you enhance these APIs, you should probably try to coordinate it
with whatever might happen in http://code.google.com/p/ocamljs/
so that source code will be as compatible as possible.

Yours, Florian.

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Paolo Donadeo  
View profile  
 More options Nov 18 2008, 4:12 am
Newsgroups: fa.caml
From: "Paolo Donadeo" <p.dona...@gmail.com>
Date: Tue, 18 Nov 2008 09:12:13 UTC
Local: Tues, Nov 18 2008 4:12 am
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers

> O'Browser is an implementation of the OCaml virtual machine in JavaScript,
> designed to run in web browsers.

What can I say? WOW, great idea!

--
Paolo
~
~
:wq

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Burgisser Francois  
View profile  
 More options Nov 18 2008, 4:20 am
Newsgroups: fa.caml
From: Burgisser Francois <franz.burgis...@jp.fujitsu.com>
Date: Tue, 18 Nov 2008 09:20:18 UTC
Local: Tues, Nov 18 2008 4:20 am
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers
Hi,

Good idea but maybe a browser plugin to manipulate DOM would be much more
efficient.
Still pretty instructive.

Franz

On 11/18/08 1:20 AM, "Benjamin Canou" <benjamin.ca...@gmail.com> wrote:

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Gabriel Kerneis  
View profile  
 More options Nov 18 2008, 4:40 am
Newsgroups: fa.caml
From: Gabriel Kerneis <kern...@pps.jussieu.fr>
Date: Tue, 18 Nov 2008 09:40:42 UTC
Local: Tues, Nov 18 2008 4:40 am
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers

On Tue, Nov 18, 2008 at 06:14:45PM +0900, Burgisser Francois wrote:
> Good idea but maybe a browser plugin to manipulate DOM would be much more
> efficient.

But, sadly, much less portable.

--
Gabriel

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kuba Ober  
View profile  
 More options Nov 18 2008, 1:15 pm
Newsgroups: fa.caml
From: Kuba Ober <ober...@osu.edu>
Date: Tue, 18 Nov 2008 18:15:43 UTC
Local: Tues, Nov 18 2008 1:15 pm
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers
On Tuesday 18 November 2008, you wrote:

> On Mon, 2008-11-17 at 22:43 -0500, Kuba Ober wrote:
> > > Please note that this is an early version, in particular the DOM
> > > interface module is neither pretty nor well typed.
> > > However, it can already be used to create little applets or scripts (as
> > > in the tutorial [2], the examples of the distribution [3] or my webpage
> > > [4]) and we'll be glad to receive your comments or bug reports.

> > And the reason is?....

> To me, the fact that you can write portable lightweight applets sounds
> like a good enough reason. That and the fact that I can see this being
> used by stuff like Ocsigen to make for (even) richer client-server
> applications.

I presume that one can have some Javascript library to abstract out platform
differences, but to have a whole new language? Well, of course what works
works, the question is if the performance is any good.

Cheers, Kuba

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kuba Ober  
View profile  
 More options Nov 18 2008, 1:18 pm
Newsgroups: fa.caml
From: Kuba Ober <ober...@osu.edu>
Date: Tue, 18 Nov 2008 18:18:19 UTC
Local: Tues, Nov 18 2008 1:18 pm
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers
On Tuesday 18 November 2008, Jon Harrop wrote:

That's what I was gonna suggest: if one could sorta-kinda macro-expand
bytecode interpreter running on some bytecode, then JIT platforms such
as tracemonkey could dramatically improve the performance of such code.

Cheers, Kuba

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Vincent Balat  
View profile  
 More options Nov 18 2008, 1:33 pm
Newsgroups: fa.caml
From: Vincent Balat <vincent.ba...@pps.jussieu.fr>
Date: Tue, 18 Nov 2008 18:33:20 UTC
Local: Tues, Nov 18 2008 1:33 pm
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers
Hi,

On Tuesday 18 November 2008 19:15:28 Kuba Ober wrote:

Our final goal is of course to write the whole Web application in OCaml (both
server and client sides). And thus to get the same static guarantees for the
code beeing executed on the browser as we have on server side with Ocsigen
(for example valid xhtml, etc).

To run OCaml on a browser, there are several solutions:
For example you can use a compiler to js (see for example ocamljs), or a
plugin. O'Browser is an alternative. It seems to be efficient enough for most
uses. For tasks requiring very high efficiency, the only solution is a plugin
_and_ a very efficient xhtml/css rendering engine.

Cheers,
Vincent Balat

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
David Thomas  
View profile  
 More options Nov 18 2008, 3:02 pm
Newsgroups: fa.caml
From: David Thomas <david...@yahoo.com>
Date: Tue, 18 Nov 2008 20:02:10 UTC
Local: Tues, Nov 18 2008 3:02 pm
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers
I'd like to see a plugin that makes available to JS a function to execute ocaml bytecode.  There could be a standard way to check for support, and the pure javascript interpreter could be loaded if it is missing (for those browsers/computers on which performance is reasonable).

--- On Tue, 11/18/08, Vincent Balat <vincent.ba...@pps.jussieu.fr> wrote:

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Benjamin Canou  
View profile  
 More options Nov 21 2008, 10:27 am
Newsgroups: fa.caml
From: Benjamin Canou <benjamin.ca...@gmail.com>
Date: Fri, 21 Nov 2008 15:27:26 UTC
Local: Fri, Nov 21 2008 10:27 am
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers
  Hi,

>From Kuba Ober:
> Pardon the question, but is this meant to be "useful" in the future,
> or is it just a fun experiment (in which case the next target should
> be brainfuck).

Coming soon: the OCaml VM on a turing machine !

>From Burgisser Francois :
> Good idea but maybe a browser plugin to manipulate DOM would be much
> more efficient.
>From Gabriel Kerneis:
> But, sadly, much less portable.
>From Jon Harrop:
> Could you write a compiler and call eval to get better performance?
>From David Thomas:
> I'd like to see a plugin that makes available to JS a function to
> execute ocaml bytecode.

Our plan is to achieve efficiency with a (not yet available) browser
plug-in (the original bytecode interpreter or the native compiler) while
remaining portable by using the JavaScript VM where the plug-in is not
available. So we don't currently focus on optimizing (and complexifying)
too much the JavaScript version.

>From David Teller:
> To me, the fact that you can write portable lightweight applets sounds
> like a good enough reason. That and the fact that I can see this being
> used by stuff like Ocsigen to make for (even) richer client-server
> applications.

Indeed, as Vincent wrote, even if O'Browser is at this point only a
client-side scripting core, it takes place into the Ocsigen project and
will be used to interact with (OCaml) server code (in its current form
or not).

  Benjamin Canou.

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
William Le Ferrand  
View profile  
 More options Nov 30 2008, 7:09 am
Newsgroups: fa.caml
From: "William Le Ferrand" <William.Le-Ferr...@polytechnique.edu>
Date: Sun, 30 Nov 2008 12:09:20 UTC
Local: Sun, Nov 30 2008 7:09 am
Subject: Re: [Caml-list] [announce] O'Browser : OCaml on browsers

Hi !

Thank you for this amazing work !

I'm rewriting large parts of my website using this tool, and I may have
found two little bugs :

* get_attribute (in rtjs.js)

when get_attribute "toto" returns a boolean, value_from_string returns the
empty string (this is nasty ..)

(temporary) solution : in rtjs.js, just cast on line 33 with something like

  return value_from_string (v == null ? "" : (v+""));

* input (in js.ml)

it seems that the editable function

    editable = (
      function
          true -> (try  Node.remove_attribute node "disabled" with _  -> ())
        | false -> Node.set_attribute node "disabled" "disabled"
);

works better. (at least it works with buttons, check boxes and so on)

Thank you again !

All best,

William Le Ferrand

www.beouifi.org

2008/11/21 Benjamin Canou <benjamin.ca...@gmail.com>

--
William Le Ferrand

E-mail : will...@beouifi.org
Mobile : +33 6 84 01 52 92

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google