[erlang-questions] integrating nodejs with erlang code

Robert Virding <>
Mon Apr 15 17:44:18 CEST 2013


You have two problems, well many problems really but two major problems: 

- the syntax of JS is "not trivial". It's one of those that look simple until you really examining it. PHP is another case of this. 
- implementing shared mutable data in Erlang which is rather straight forward but again is "not trivial" to get it efficient. 

To get some idea of the problem look at my Luerl, Lua implemented in Erlang. First version an interpreter but I have a compiler now. 
https://github.com/rvirding/luerl 

Robert 

----- Original Message -----

> From: "aman mangal" <>
> To: "Zheng Zhibin" <>
> Cc: "Robert Virding" <>, "Ali
> Attarwala" <>, "Shailesh Tyagi"
> <>, "wncc iitb" <>,
> "Erlang" <>, "chirag jain"
> <>
> Sent: Wednesday, 10 April, 2013 8:49:03 PM
> Subject: Re: [erlang-questions] integrating nodejs with erlang code

> Hi,

> How can I go about implementing JS in erlang? This seems interesting
> to me. Please tell me what do you mean by implementing JS or node.js
> in erlang?

> Aman Mangal
> 3rd year Undergraduate
> Department of Computer Science & Engineering
> IIT Bombay
> www.cse.iitb.ac.in/~amanmangal

> On Wed, Apr 10, 2013 at 10:42 PM, Zheng Zhibin < 
> > wrote:

> > beam.js would be one way to build node.js into Erlang :)
> 

> > Cheers
> 
> > Ben
> 

> > 在 2013-4-10,下午11:46,Robert Virding <
> >  > 写道:
> 

> > > The most efficient way of connecting Erlang with node.js would
> > > be,
> > > of
> > > course, to implement JS and hence node.js in Erlang. Maybe not
> > > the
> > > easiest way, but definitely the most efficient connection. :-)
> > 
> 

> > > Robert
> > 
> 

> > > > From: "Joe Armstrong" <  >
> > > 
> > 
> 
> > > > To: "Eduardo Gurgel" <  >
> > > 
> > 
> 
> > > > Cc: "Ali Attarwala" <  >, "Shailesh Tyagi"
> > > > <
> > > >  >, "wncc iitb" <
> > > > 
> > > > >,
> > > > "Erlang" <  >, "chirag jain" <
> > > >  >
> > > 
> > 
> 
> > > > Sent: Wednesday, 10 April, 2013 11:14:19 AM
> > > 
> > 
> 
> > > > Subject: Re: [erlang-questions] integrating nodejs with erlang
> > > > code
> > > 
> > 
> 

> > > > Just curious, but what is the *least efficient* way of
> > > > connecting
> > > > node.js to Erlang.
> > > 
> > 
> 

> > > > If I were doing this I'd start with the least efficient method,
> > > > build
> > > > my app, measure, then optimize if
> > > 
> > 
> 
> > > > necessary.
> > > 
> > 
> 

> > > > If the optimization is not necessary you have saved yourself a
> > > > whole
> > > > lot of work.
> > > 
> > 
> 

> > > > Alternatively, write the code and if it is not fast enough wait
> > > > ten
> > > > years.
> > > 
> > 
> 

> > > > Cheers
> > > 
> > 
> 

> > > > /Joe
> > > 
> > 
> 

> > > > On Tue, Apr 9, 2013 at 2:11 PM, Eduardo Gurgel <
> > > > 
> > > > >
> > > > wrote:
> > > 
> > 
> 

> > > > > On Mon, Apr 8, 2013 at 12:37 PM, aman mangal <
> > > > > 
> > > > > > wrote:
> > > > 
> > > 
> > 
> 

> > > > > > Hi,
> > > > > 
> > > > 
> > > 
> > 
> 

> > > > > > What is the most efficient way to pass events/data from
> > > > > > erlang
> > > > > > processes to nodejs and vice versa? Setting up a tcp socket
> > > > > > may
> > > > > > be
> > > > > > slower or inefficient. I was thinking of doing something
> > > > > > native.
> > > > > > Both erlang and nodejs provide libraries(NIF) to call C
> > > > > > functions
> > > > > > but none of them provide an efficient implementation for
> > > > > > calling
> > > > > > erlang/nodejs functions from C or C++ as far as I know.
> > > > > > Please
> > > > > > suggest some ideas!
> > > > > 
> > > > 
> > > 
> > 
> 

> > > > > You could take a look on BERT RPC:
> > > > 
> > > 
> > 
> 

> > > > > https://github.com/rtomayko/node-bertrpc
> > > > 
> > > 
> > 
> 

> > > > > https://github.com/mojombo/bert.erl
> > > > 
> > > 
> > 
> 

> > > > > Right now, bert-rpc.org is returning 404, but it was up two
> > > > > days
> > > > > ago:
> > > > 
> > > 
> > 
> 

> > > > > http://bert-rpc.org/
> > > > 
> > > 
> > 
> 

> > > > > Maybe checking cached webpage on bert-rpc.org may help you.
> > > > 
> > > 
> > 
> 

> > > > > --
> > > > 
> > > 
> > 
> 

> > > > > Eduardo
> > > > 
> > > 
> > 
> 

> > > > > _______________________________________________
> > > > 
> > > 
> > 
> 
> > > > > erlang-questions mailing list
> > > > 
> > > 
> > 
> 
> > > > > 
> > > > 
> > > 
> > 
> 
> > > > > http://erlang.org/mailman/listinfo/erlang-questions
> > > > 
> > > 
> > 
> 

> > > > _______________________________________________
> > > 
> > 
> 
> > > > erlang-questions mailing list
> > > 
> > 
> 
> > > > 
> > > 
> > 
> 
> > > > http://erlang.org/mailman/listinfo/erlang-questions
> > > 
> > 
> 

> > > _______________________________________________
> > 
> 
> > > erlang-questions mailing list
> > 
> 
> > > 
> > 
> 
> > > http://erlang.org/mailman/listinfo/erlang-questions
> > 
> 

> > _______________________________________________
> 
> > erlang-questions mailing list
> 
> > 
> 
> > http://erlang.org/mailman/listinfo/erlang-questions
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20130415/025e8d73/attachment.html>


More information about the erlang-questions mailing list