evancz / react-angular-ember-elm-performance-comparison Goto Github PK
View Code? Open in Web Editor NEWComparing performance of Elm, React, Angular, and Ember
License: BSD 3-Clause "New" or "Revised" License
Comparing performance of Elm, React, Angular, and Ember
License: BSD 3-Clause "New" or "Revised" License
I don't mean to be "that guy" and nitpick the benchmarked code, but... I'm gonna be.
The TodoMVC React code was written for an old version of React. If you actually pop it open and try using it, it throws an error (try editing an item). React.findDOMNode
hasn't been a thing since React 0.13; that should be changed to ReactDOM.findDOMNode
.
Hand-optimized React 15 code would also switch all the components from React.createClass
to extending React.Component
, which is the new hotness and (AFAIK) renders faster. This would necessitate adding another Babel transform to the React demo.
I couldn't figure out how to actually run this (locally, so I could make changes).
When I open index.html
, I just get ReferenceError: Elm is not defined
. That was after installing Elm and doing elm-package install
in src
which was just a guess on my part. That didn't seem to fix anything.
Instructions for setting this up would be nice!
Thanks for a great article! I'm very sorry for opening an issue for this, but I couldn't understand how does Elm gets around the issues you mention for requestAnimationFrame. Could you please point me in the right direction?
Any interest in a PR for scripts to run on node with C code coverage?
You would get info with just strace, but I am interested in Node code blocks and Node hints that could be optimized to give Elm performance on par with Haskell.
Hi @evancz amazing work with Elm ๐ I am really looking forward to add some Elm at work.
I found that the benchmark results differ in a considerable way when I tried it in Firefox.
Environment:
Firefox 48.0.2
As you can see in the screenshot Angular 2
is the winner in both naive and optimized implementation. Also it is quite strange why there such a big performance difference in almost all implementation, they are approx. 2X slower in firefox than in chrome.
Chrome 52
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.