title: Enforce inlining of functions in CoffeeScript or JavaScript
body: <p>I'm trying to structure my code in many short functions, so it is easily readable even without many comments, due to the flow of functions and variable. Last year I we were implementing a high performance application in C which was structured the same way, but the avoid function calls, we annotated virtually every function as inline.</p>
  
  <p>Now I'm writing a NodeJS application in CoffeeScript and have structured a part of my code in tens of small functions which are called from loops. This would aggregate to few hundred - few thousand function calls - depending on the size of the data-structure. Since those functions could be merged into one bigger one, the calls could be avoided, however it would very much degrade the quality of the code.</p>
  
  <p>I've found on SO a reference to <a href="http://www.slideshare.net/madrobby/extreme-javascript-performance" rel="nofollow">Extreme JavaScript Performance</a>, which is a presentation from 2009 and shows a huge performance improvement when inlining functions on firefox and IE, as well as a noticeable improvement for Chrome and Safari. Now this was 5 years ago and JS-engines are improving with the time, so my question is:</p>
  
  <p>Is it possible to enforce inlining of functions when CoffeeScript creates JS or in JS by the parser, with some specific keyword or parameter?</p>
  
  <p>Or should I simply wait for the V8 engine to realise and handle this automatically (or maybe it is done already)?</p>