luismgz | 14 years ago | on: Dart programming language design
luismgz's comments
luismgz | 14 years ago | on: PyPy 1.6 Released - Full Python 2.7.1 Implementation
There's something like Pypy for Ruby already: It is Pypy itself. Pypy is a framework for implementing jitted dynamic languages (any language, not just python). You can generate interpreters for any language you want, as long as you write them in Rpython (restricted python). So, if you want a pypy for Ruby, just write a ruby interpreter in Rpython, and then use the pypy translation toolchain to compile it down to C, while automatically generating a just in time compiler for free.
luismgz | 14 years ago | on: So you want to write a fast Python?
2) How does it compare to c? It's pretty competitive in highly algorithmic code, cpu intensive and numerical tasks. For anything else, it depends. Overall, it on average up to 4 times faster than regular python.
3) Why there's still a difference? Pypy is a work in progress. You should compare it to other projects such as v8 or tracemonkey.
4) Restricted python: It's the static subset of python used to implement pypy. It takes the place of c in cpython. Yes, it's much faster, but also more limited and less flexible. It's nicer than c, but not as cool as full python. You can also find Shedskin and Cython. Shedskin is a true static subset of python that compiles to c++. Cython is a python-like language that adds type declarations to the language to make it closer to c.
Unladen Swallow was a separate project and it's dead now. Psyco is the predecessor of pypy. It is no longer maintained.
luismgz | 14 years ago | on: Poll: Have you moved from JavaScript to CoffeeScript?
luismgz | 14 years ago | on: Poll: Have you moved from JavaScript to CoffeeScript?
It's all about power, flexibility, succintness and readability, all things that make programming more enjoyable and fun.
luismgz | 14 years ago | on: Poll: Have you moved from JavaScript to CoffeeScript?
luismgz | 14 years ago | on: Poll: Have you moved from JavaScript to CoffeeScript?
luismgz | 14 years ago | on: Poll: Have you moved from JavaScript to CoffeeScript?
luismgz | 14 years ago | on: Poll: Have you moved from JavaScript to CoffeeScript?
luismgz | 14 years ago | on: Ask HN: Any alternative to JavaScript in sight?
luismgz | 15 years ago | on: PyPy 1.5 Released: Catching Up
luismgz | 16 years ago | on: Facebook speeds up PHP
Although I still hope pypy will deliver on its promisses. We have to bear in mind that pypy's goal is not just enhanced speed. Its goals are much broader and this is one reason why, perhaps, this is not the best approach if you want full speed (there are trade offs which seem acceptable considering all the other benefits, such as easier of implementation of dynamic languages on top of pypy's framework).
luismgz | 16 years ago | on: PEP 3146: Merge Unladen Swallow into CPython
luismgz | 16 years ago | on: PEP 3146: Merge Unladen Swallow into CPython
luismgz | 16 years ago | on: PEP 3146: Merge Unladen Swallow into CPython
Pypy, on the other hand, is a new implementation of Python (just like ironpython or jython), and it could eventually replace cpython in the future if it proves to be succesfull (although it would be a long way off).
In few words: Python, the language, have many implementations. Cpython is the current reference one. Unladen Swallow aims to improve it, not to replace it. Actually, even the US developers acknowledge that Pypy (or any other succesfull implementation that may come up) is the future, because it doesn't have to bear the burden imposed by the c platform.
As for its boring syntax, this won't be a problem. Coffeescript demonstrated that you can target a messy language and make it beatiful and fun. Dart already has a "transpiler" for compiling it down to javascript. If Dart becomes a good compilation target (and it looks so), people will start wrting their own transpilers targeting Dart. The best of both worlds. As for the concerns about the null chance of other browsers adopting Dart, this is a battle they can't win. Dart will run everywhere, either on its own VM or compiled to javascript. And it will lead to a situation where new applications run on every browser, but "work best on Chrome". How long will the other vendors keep on pushing a mediocre, substandard language such as javascript when Dart is already making developers lives easier, and applications faster and better?