Version française
Home     About     Download     Resources     Contact us    
Browse thread
OCamlJit 2.0
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Yoann Padioleau <padator@w...>
Subject: Re: [Caml-list] [Was: OCamlJit 2.0]

On Nov 20, 2010, at 7:42 AM, Benedikt Meurer wrote:

> 
> On Nov 20, 2010, at 16:19 , Vincent Balat wrote:
> 
>> On Nov 19, 2010 21:20:01, Yoann Padioleau wrote:
>>> On Nov 19, 2010, at 11:46 AM, Dario Teixeira wrote:
>> ...
>>>> Actually, Facebook has a compiler that transforms PHP source code into
>>>> C++ [1], and they claim a 50% reduction in CPU usage.
>>> 
>>> Yes, which is good. But if you think about it is "only" a x2 speedup vs a
>>> really slow bytecode interpreter (the Zend PHP interpreter). PHP is known
>>> for being more than 30 times slower than C.
>>> It's even slower than Ruby on
>>> http://shootout.alioth.debian.org/u32/which-programming-languages-are-fast
>>> est.php There are lots of opportunities to do better IMHO.
>> 
>> Would it be completely inconceivable for a company like facebook to 
>> reimplement everything using a fast well designed typed language

I think it is inconceivable. I doubt facebook will switch to ocaml and ocsigen tomorrow :)
The problem is how to migrate code to another language smoothly ? You can not
stop all development for a month and say "Hey everybody, we are porting
our 10 millions lines of code of PHP to X.". The reason C++ succeeded was
because there was a smooth migration path. C code is valid C++ code. You
can incrementally add objects to an existing codebase.

Do we have example of big companies porting their whole codebase to another language ?


>> instead of "spending hundreds of millions of dollars on machines that run PHP 
>> bytecode interpreters"? (quoting Yoann)

Apparently they decided to keep PHP and switch from a slow bytecode interpreter
to a 2x-faster compiler.

> 
> It's probably not a technical decision, but more likely a marketing decision. If you tell Joe

Who is Joe ? A developer ? A user ? A venture capitalist ?

> that your webservices run on Java, PHP or .NET, he'll say "great", "sure" or "wow" (not because Joe's familiar with the technology or the theory, but because he's familiar with the terms). Tell Joe your webservices run on OCaml or Haskell and the best answer you can get will be "what?".

I doubt any user care about how facebook is implemented. Twitter and Foursquare run on Scala and
this is not a very popular language.


> 
>> Vincent [not completely joking]
> 
> Benedikt
> _______________________________________________
> 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