[nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Igor Skoric
I'm developing a web application which aims to migrate at least two VB3 
16-bit windows applications and a collection of other tools to a modern 
platform for the University of Technology Graz.
Because I have a free pass to choose technologies and environments I aim to 
contribute to the technologies that I use and document that contribution 
and its implementation as part of my Master's Thesis in Software 
Development and Business Management.

I would appreciate your input - ideas that you would like to see become 
reality for node.js and also in general.
I will choose one more of the ideas that fit and aim to make the sources 
available.

Thank you for your help.
Igor Skoric

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Igor Skoric
It will be a suite of tools for a geological lab. I plan to create a simple 
customer/project management suite and plug in a handful of applications for 
different processes. If you would like to recommend a different (but 
cutting edge) technology for this I would also be grateful.

On Tuesday, June 12, 2012 2:59:24 PM UTC+2, Ben Noordhuis wrote:

 On Tue, Jun 12, 2012 at 2:27 PM, Igor Skoric sk.i...@gmail.com wrote: 
  I'm developing a web application which aims to migrate at least two VB3 
  16-bit windows applications and a collection of other tools to a modern 
  platform for the University of Technology Graz. 
  Because I have a free pass to choose technologies and environments I aim 
 to 
  contribute to the technologies that I use and document that contribution 
 and 
  its implementation as part of my Master's Thesis in Software Development 
 and 
  Business Management. 
  
  I would appreciate your input - ideas that you would like to see become 
  reality for node.js and also in general. 
  I will choose one more of the ideas that fit and aim to make the sources 
  available. 
  
  Thank you for your help. 
  Igor Skoric 

 Could you tell more about what you're trying to build / port? Node is 
 not necessarily the best tool for every project. 


-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Paul Spaulding
Ben, I am interested in what you consider to be poor holes for a node.js 
peg.

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Ben Noordhuis
On Tue, Jun 12, 2012 at 3:14 PM, Paul Spaulding pjs67...@gmail.com wrote:
 Ben, I am interested in what you consider to be poor holes for a node.js
 peg.

There are some things you cannot reasonably do in node.js no matter
how hard you try, things like hard real-time, complex math, etc.
They're fundamentally at odds with the language and the environment it
runs in.

Then there is the broad category of things you /can/ but not
necessarily /should/ do. CRUD web apps come to mind: you /can/ write
your new blog engine in node.js but it doesn't have a killer edge over
other languages or frameworks (except for client/server code sharing,
maybe.)

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Ben Noordhuis
On Tue, Jun 12, 2012 at 3:08 PM, Igor Skoric sk.i...@gmail.com wrote:
 It will be a suite of tools for a geological lab. I plan to create a simple
 customer/project management suite and plug in a handful of applications for
 different processes. If you would like to recommend a different (but cutting
 edge) technology for this I would also be grateful.

Igor, see my previous email. node.js may or may not work for you. If
you're already familiar with, say, flask or django, I'd go with that.
The extra learning curve of a new language and framework will just get
in the way of getting things done.

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Joshua Holbrook
 things like hard real-time, complex math, etc.

To elaborate on the math aspect: Because of the significant js/C
barrier and the need for optimized code, node is a poor choice for
significant computation. I would recommend python and numpy/scipy for
this kinda stuff.

One approach you may consider is to use node to manage basic web ui
stuff, and then use the child_process module to shell out to workers
written in more appropriate languages as necessary. For a scientific
application this would probably even be a good fit.

 The extra learning curve of a new language and framework will just get
in the way of getting things done.

There's definitely a truth to this. When I did my masters, the biggest
lesson was that your time is worth *way* more than both money and
cool-factor. Flask might be boring but it's worth it if you're able to
ship faster in the short term (and with the timescale of a masters you
definitely want to be thinking short-term). Just something to think
about.

--Josh


On Tue, Jun 12, 2012 at 12:20 PM, Ben Noordhuis i...@bnoordhuis.nl wrote:
 On Tue, Jun 12, 2012 at 3:08 PM, Igor Skoric sk.i...@gmail.com wrote:
 It will be a suite of tools for a geological lab. I plan to create a simple
 customer/project management suite and plug in a handful of applications for
 different processes. If you would like to recommend a different (but cutting
 edge) technology for this I would also be grateful.

 Igor, see my previous email. node.js may or may not work for you. If
 you're already familiar with, say, flask or django, I'd go with that.
 The extra learning curve of a new language and framework will just get
 in the way of getting things done.

 --
 Job Board: http://jobs.nodejs.org/
 Posting guidelines: 
 https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
 You received this message because you are subscribed to the Google
 Groups nodejs group.
 To post to this group, send email to nodejs@googlegroups.com
 To unsubscribe from this group, send email to
 nodejs+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/nodejs?hl=en?hl=en



-- 
Joshua Holbrook
Engineer
Nodejitsu Inc.
j...@nodejitsu.com

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Joshua Holbrook
Python has a python/c barrier yes, but python's runtime is better
equipped to handle crossing the boundary with low overhead because it
was written with that use case in mind. v8, on the other hand, is
optimized for running javascript code and so making the jump back and
forth is considerably more effort for the vm.

I'm sure someone with more experience with node C bindings (or python
C bindings for that matter) could give a more technical explanation.
I'm more of an end-user and not as much a developer when it comes to
such bindings.

To further elaborate: You *can* do basic math in javascript just fine,
and at a reasonable rate. For heavy lifting though, ya gotta go
lapack/atlas/etc.

--Josh

On Tue, Jun 12, 2012 at 2:18 PM, Matt hel...@gmail.com wrote:
 On Tue, Jun 12, 2012 at 3:29 PM, Joshua Holbrook josh.holbr...@gmail.com
 wrote:

 To elaborate on the math aspect: Because of the significant js/C
 barrier and the need for optimized code, node is a poor choice for
 significant computation. I would recommend python and numpy/scipy for
 this kinda stuff.


 Python has the same barrier. What makes it different? i.e. why couldn't
 someone created a NumNode/SciNode?

 Matt.

 --
 Job Board: http://jobs.nodejs.org/
 Posting guidelines:
 https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
 You received this message because you are subscribed to the Google
 Groups nodejs group.
 To post to this group, send email to nodejs@googlegroups.com
 To unsubscribe from this group, send email to
 nodejs+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/nodejs?hl=en?hl=en



-- 
Joshua Holbrook
Engineer
Nodejitsu Inc.
j...@nodejitsu.com

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Igor Skoric
On Tuesday, June 12, 2012 9:29:10 PM UTC+2, jesusabdullah wrote:

  things like hard real-time, complex math, etc. 

 To elaborate on the math aspect: Because of the significant js/C 
 barrier and the need for optimized code, node is a poor choice for 
 significant computation. I would recommend python and numpy/scipy for 
 this kinda stuff. 


The computations are not very complex. Computing performance is not 
important and the computation time is insignificant. But I still find your 
recommendations for that case (should i have it come up) interesting.
 

  The extra learning curve of a new language and framework will just get 
 in the way of getting things done. 

 There's definitely a truth to this. When I did my masters, the biggest 
 lesson was that your time is worth *way* more than both money and 
 cool-factor. Flask might be boring but it's worth it if you're able to 
 ship faster in the short term (and with the timescale of a masters you 
 definitely want to be thinking short-term). Just something to think 
 about. 


Right now I'm more concerned about the right topic for my thesis.
I have not worked with django or flask before. I have coded some pure 
php/js and i don't like PHP very much.

The planned scope is about 6-12 months.

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Igor Skoric
On Tuesday, June 12, 2012 9:20:40 PM UTC+2, Ben Noordhuis wrote:

 On Tue, Jun 12, 2012 at 3:08 PM, Igor Skoric sk.i...@gmail.com wrote: 
  It will be a suite of tools for a geological lab. I plan to create a 
 simple 
  customer/project management suite and plug in a handful of applications 
 for 
  different processes. If you would like to recommend a different (but 
 cutting 
  edge) technology for this I would also be grateful. 

 Igor, see my previous email. node.js may or may not work for you. If 
 you're already familiar with, say, flask or django, I'd go with that. 
 The extra learning curve of a new language and framework will just get 
 in the way of getting things done. 


Unfortunately I'm not familiar with either. It's going to be a learning 
experience either way. :) 

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Dean Mao
Well for one, scipy  numpy already exist.  If you want to do something
like linear regression, you'll have to build all kinds of base math
libraries into node before you can start working on anything.  It's great
if you want to create an equivalent scipy for node, but probably not in the
scope of a master's thesis.


On Tue, Jun 12, 2012 at 2:18 PM, Matt hel...@gmail.com wrote:

 On Tue, Jun 12, 2012 at 3:29 PM, Joshua Holbrook 
 josh.holbr...@gmail.comwrote:

 To elaborate on the math aspect: Because of the significant js/C
 barrier and the need for optimized code, node is a poor choice for
 significant computation. I would recommend python and numpy/scipy for
 this kinda stuff.


 Python has the same barrier. What makes it different? i.e. why couldn't
 someone created a NumNode/SciNode?

 Matt.

 --
 Job Board: http://jobs.nodejs.org/
 Posting guidelines:
 https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
 You received this message because you are subscribed to the Google
 Groups nodejs group.
 To post to this group, send email to nodejs@googlegroups.com
 To unsubscribe from this group, send email to
 nodejs+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/nodejs?hl=en?hl=en


-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Dean Mao
If you currently do your math using matlab, I would suggest numpy.  There's
some documents on the scipy site that will help you transition your matlab
knowledge into numpy  python syntax.  There's no good reason for you to do
it in nodejs unless you want to make a significant math library
contribution.


On Tue, Jun 12, 2012 at 2:43 PM, Igor Skoric sk.i...@gmail.com wrote:

 On Tuesday, June 12, 2012 9:20:40 PM UTC+2, Ben Noordhuis wrote:

 On Tue, Jun 12, 2012 at 3:08 PM, Igor Skoric sk.i...@gmail.com wrote:
  It will be a suite of tools for a geological lab. I plan to create a
 simple
  customer/project management suite and plug in a handful of applications
 for
  different processes. If you would like to recommend a different (but
 cutting
  edge) technology for this I would also be grateful.

 Igor, see my previous email. node.js may or may not work for you. If
 you're already familiar with, say, flask or django, I'd go with that.
 The extra learning curve of a new language and framework will just get
 in the way of getting things done.


 Unfortunately I'm not familiar with either. It's going to be a learning
 experience either way. :)

 --
 Job Board: http://jobs.nodejs.org/
 Posting guidelines:
 https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
 You received this message because you are subscribed to the Google
 Groups nodejs group.
 To post to this group, send email to nodejs@googlegroups.com
 To unsubscribe from this group, send email to
 nodejs+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/nodejs?hl=en?hl=en


-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Matt
On Tue, Jun 12, 2012 at 5:34 PM, Joshua Holbrook josh.holbr...@gmail.comwrote:

 Python has a python/c barrier yes, but python's runtime is better
 equipped to handle crossing the boundary with low overhead because it
 was written with that use case in mind. v8, on the other hand, is
 optimized for running javascript code and so making the jump back and
 forth is considerably more effort for the vm.

 I'm sure someone with more experience with node C bindings (or python
 C bindings for that matter) could give a more technical explanation.
 I'm more of an end-user and not as much a developer when it comes to
 such bindings.


I'm familiar with Node's C++ bindings and I'm very familiar with Perl's C
interface (XS) and the overheads of passing objects back and forth there.
And Perl was designed very similarly to Python in that sense. The answer is
there's not that much difference between Node and Perl in that respect, and
I haven't seen any reason the equivalent to NumPy (or PDL which is the Perl
equivalent) couldn't be built in Node from my knowledge of the internals.

Not that this exists now, or is even in the scope of a masters thesis, but
I'm just saying it's not something that can't be done, it just hasn't been
done yet, IMHO.

Matt.

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Matt
On Tue, Jun 12, 2012 at 6:09 PM, Joshua Holbrook josh.holbr...@gmail.comwrote:

  it's not something that can't be done, it just hasn't been done yet,
 IMHO.

 Right. It's doable, it's just not actually that great of an idea.


Hah, well people said that at first about numerical calculations in Python
before NumPy existed, and Perl before PDL existed - after all that's what
Mathematica and FORTRAN were for ;-)

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Joshua Holbrook
 people said that at first about numerical calculations in Python before NumPy 
 existed

I doubt it. Scientists *love* having a scripting language on top of
their fortrans. It's a very old idea.

--Josh

On Tue, Jun 12, 2012 at 3:15 PM, Matt hel...@gmail.com wrote:
 On Tue, Jun 12, 2012 at 6:09 PM, Joshua Holbrook josh.holbr...@gmail.com
 wrote:

  it's not something that can't be done, it just hasn't been done yet,
  IMHO.

 Right. It's doable, it's just not actually that great of an idea.


 Hah, well people said that at first about numerical calculations in Python
 before NumPy existed, and Perl before PDL existed - after all that's what
 Mathematica and FORTRAN were for ;-)

 --
 Job Board: http://jobs.nodejs.org/
 Posting guidelines:
 https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
 You received this message because you are subscribed to the Google
 Groups nodejs group.
 To post to this group, send email to nodejs@googlegroups.com
 To unsubscribe from this group, send email to
 nodejs+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/nodejs?hl=en?hl=en



-- 
Joshua Holbrook
Engineer
Nodejitsu Inc.
j...@nodejitsu.com

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Stewart Mckinney
It's important to understand that the overhead of context switching in V8
is pretty painful when compared to Python. I'm doing a bit of work myself
embedding v8 in a fairly intensive environment, and it's been a hell of a
learning experience. There's a *metric s*** ton* of difference between the
standard Python interpreter and v8 and how they are interpreted.

A key thing to understand about v8 is that it JIT compiles your Javascript
straight into machine language ( via the meta-lang pipeline: Crankshaft-
Helium- Lithium ). This makes context switches far, far more costly,
because v8 does not actually deal directly ( much ) with its abstractions.
It does use them in formulation but then discards them when no longer
needed. This means if you go a-fetching v8 has to do some searching and
constructing before it can make your switch, unless you've asked v8 to
'hold onto' something ( which in turn, slows down the VM slightly via the
GC and forces some parts of the VM to not optimize because your essentially
telling the interpreter this is volatile ). This is part of the reason
why v8 encourages you to use Local Handles whenever possible.

The smackdown here isn't that hard  - your looking at about 0.00032ms or so
( off the top of my head ) - but you take an array of say, a million
elements, and there you go. Suddenly your looking at 1/3 seconds time just
to iterate over a massive JS array in C++.

Compare this to Python, or Ruby, or Perl, most interpreters of which keep
their abstractions available ( in memory ) and deal with them directly.
Context switches are not as painful because Python/Ruby/Perl do not have to
do any building up on fetch or switch, they simply grab the
abstraction's pointer and go. So its really best to limit those as much as
possible.

If you do proceed, some things to keep in mind:

-As I mentioned, big arrays are painful if you need to access them in C. I
would recommend following Node's lead and using buffer patterns where
appropriate. In other words, try to make your switches as 'meaty' as
possible.

-It seems to be more painful to access JS from C++ ( via -Get() ) then it
does to callback C++ from JS ( via FunctionTemplates ).

-... but it doesn't seem that painful to call JS functions, or to create
one-use JS Objects for your arguments in C++ ( via Function-Call() and
v8::Object::New ).

These are just my (not particularly scientific) observations.

Best of luck!

On Tue, Jun 12, 2012 at 6:29 PM, Joshua Holbrook josh.holbr...@gmail.comwrote:

  people said that at first about numerical calculations in Python before
 NumPy existed

 I doubt it. Scientists *love* having a scripting language on top of
 their fortrans. It's a very old idea.

 --Josh

 On Tue, Jun 12, 2012 at 3:15 PM, Matt hel...@gmail.com wrote:
  On Tue, Jun 12, 2012 at 6:09 PM, Joshua Holbrook 
 josh.holbr...@gmail.com
  wrote:
 
   it's not something that can't be done, it just hasn't been done yet,
   IMHO.
 
  Right. It's doable, it's just not actually that great of an idea.
 
 
  Hah, well people said that at first about numerical calculations in
 Python
  before NumPy existed, and Perl before PDL existed - after all that's what
  Mathematica and FORTRAN were for ;-)
 
  --
  Job Board: http://jobs.nodejs.org/
  Posting guidelines:
  https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
  You received this message because you are subscribed to the Google
  Groups nodejs group.
  To post to this group, send email to nodejs@googlegroups.com
  To unsubscribe from this group, send email to
  nodejs+unsubscr...@googlegroups.com
  For more options, visit this group at
  http://groups.google.com/group/nodejs?hl=en?hl=en



 --
 Joshua Holbrook
 Engineer
 Nodejitsu Inc.
 j...@nodejitsu.com

 --
 Job Board: http://jobs.nodejs.org/
 Posting guidelines:
 https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
 You received this message because you are subscribed to the Google
 Groups nodejs group.
 To post to this group, send email to nodejs@googlegroups.com
 To unsubscribe from this group, send email to
 nodejs+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/nodejs?hl=en?hl=en


-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en


Re: [nodejs] Ideas for contribution to node.js in the context of a Master's Thesis

2012-06-12 Thread Matt
On Tue, Jun 12, 2012 at 10:47 PM, Stewart Mckinney lordma...@gmail.comwrote:

 A key thing to understand about v8 is that it JIT compiles your Javascript
 straight into machine language ( via the meta-lang pipeline: Crankshaft-
 Helium- Lithium ). This makes context switches far, far more costly,
 because v8 does not actually deal directly ( much ) with its abstractions.
 It does use them in formulation but then discards them when no longer
 needed. This means if you go a-fetching v8 has to do some searching and
 constructing before it can make your switch, unless you've asked v8 to
 'hold onto' something ( which in turn, slows down the VM slightly via the
 GC and forces some parts of the VM to not optimize because your essentially
 telling the interpreter this is volatile ). This is part of the reason
 why v8 encourages you to use Local Handles whenever possible.

 The smackdown here isn't that hard  - your looking at about 0.00032ms or
 so ( off the top of my head ) - but you take an array of say, a million
 elements, and there you go. Suddenly your looking at 1/3 seconds time just
 to iterate over a massive JS array in C++.


Sure, but IIRC neither NumPy nor PDL concepts of Arrays/Vectors/whatever
are strictly language native. So it's basically the same as a Buffer.

(sorry I guess this should be another thread).

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups nodejs group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en