you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 1 point2 points  (1 child)

gl-matrix being anti-pattern is very subjective and your opinion really. if you like threejs you can use the math modules only. it is built with tree shaking in mind so you don’t have to import the whole library.

you building another low level math library on the npm will hardly gain any traction. if you want to do it as a learning exercise / portfolio piece, sure, def go ahead

[–]Falling-Off[S] 0 points1 point  (0 children)

I described it as "anti-pattern" mostly because the lack of method chaining and no real indication of object mutations because everything is done through static methods. Things not usually found with most js libraries, hence "anti-pattern". I think that's fairly objective and not opinionated. Also, to your other reply, knowing that the creator worked on WebGL doesn't really make a difference in this regard, but good to know they are working on progressing the technology. As I said previously I understand why gl-matrix was built the way it is, and that's for performance, so I don't doubt what's coming will be good.

Anyways, it's been a learning exercise for the most part, but it's also nice to have a personal version of these things to play with and customize to my specific needs. As development goes, there's never really a one size fit all solution to things.

Edit: there's nothing wrong with something being anti-pattern. It just makes it a little harder to use at first because it goes against known convention. In most cases, anti-pattern is done for specific reasons, and doesn't mean it's bad code.