Echo JS 0.11.0

<~>

anywhichway comments

anywhichway 2348 days ago. link 2 points
We were unaware of hyperx. Hyperx has a better architecture and will probably perform better. It uses a classic parser based approach internally. Tlx relies on the DOM for its parsing (fine for small components, but will bog down for larger ones). Tlx is currently a little smaller, has its own Vdom and h functions (i.e. no dependencies). Tlx can also bind the template literal interpolator so that components can be built. Hyperx is BSD licensed so we will probably use portions of hyperx and modify it it to add the binding capability and remove dependencies. Thanks for pointing out hyperx!
anywhichway 2348 days ago. link 1 point
It will. It has its own render function. See the file in the example directory.
anywhichway 2503 days ago. link 1 point
Agree, although perhaps I was not sufficiently clear in the article when I spoke to libraries. The challenge for libraries is they have to address a whole slew of use cases, e.g. intersecting just a few arrays of 20 items each (which will show almost no performance difference across implementations) or dealing with 10 arrays of 10,000 items each.

Like others, I have found that micro-optimization of applications is rarely useful ... its the architecture that counts. However, frameworks and libraries are different.
anywhichway 2503 days ago. link 1 point
Very true on functions calls, suppose I could have been more explicit. Personally I was surprised at some of the cost for some of core functions, particularly when they can sometimes be re-written in JavaScript itself to run faster. I made a couple of article edits to highlight this. 

Also, the variability across browsers is at times quite surprising. 

Finally,take a look at a whole slew of commonly used libraries that contain map and forEach all over the place for things that need to be fast like set operations, cross products, large matrix traversal, etc.

A down compiler really would be nice, write the code using map or forEach and have is automatically converted ...

Think I'll wait for WASM rather than go back to C++. Personally, I wish LISP had been chosen as the programming language of the web ... which should make it obvious why I like JavaScript.
anywhichway 2508 days ago. link 1 point
Yeah, we liked this. It is about the simplest thing we found. Downside is there is still no way to trap assignment, e.g.

subArray[1] = [9] can't be prevented when it is necessary to ensure all elements are numbers.
anywhichway 2615 days ago. link 1 point
True, in BETA, just days away. Added a clarification to the home page.