[HN Gopher] LibJS JavaScript Engine
       ___________________________________________________________________
        
       LibJS JavaScript Engine
        
       Author : webmaven
       Score  : 51 points
       Date   : 2022-03-30 16:48 UTC (6 hours ago)
        
 (HTM) web link (libjs.dev)
 (TXT) w3m dump (libjs.dev)
        
       | oso2k wrote:
       | This would be a better link:
       | https://github.com/SerenityOS/serenity/tree/master/Userland/...
       | 
       | OP links to a not quite informative web site.
        
         | geuis wrote:
         | That's not much better to be honest. No readme.
        
           | oso2k wrote:
           | True. Looks to be a little tightly coupled to the OS for the
           | moment.
        
       | dang wrote:
       | Related ongoing thread:
       | 
       |  _SerenityOS Browser now passes the Acid3 test_ -
       | https://news.ycombinator.com/item?id=30853392 - March 2022 (44
       | comments)
        
       | codezero wrote:
       | If you want to see some good videos of Linus Groh developing
       | libJS, check out his YouTube channel:
       | https://www.youtube.com/linusgroh
       | 
       | Also, SerenityOS's creator has a great channel:
       | https://www.youtube.com/c/andreaskling
        
         | akling wrote:
         | I, too, enjoy Linus's YouTube channel! :^)
         | 
         | His meticulous approach of implementing specifications by
         | writing code interleaved with quotes from the spec has inspired
         | me to adopt the same style.
        
       | gigel82 wrote:
       | It would be nice if LibJS would become an independent library,
       | but last time I checked it had way too many dependencies on other
       | core / helper libraries in SerenityOS for it to be ripped out;
       | not sure why it would need a separate website unless making it
       | independent is in the plans.
        
         | linusgroh wrote:
         | Being closely integrated with the rest of the system &
         | libraries is a feature, not a bug - no plans to change anything
         | about it :^) That being said, it's definitely possible to use
         | it outside of SerenityOS as a regular library, just need a
         | checkout of the serenity source for that. See
         | https://github.com/linusg/libjs-test262 for an example,
         | specifically the CMake files and `src/main.cpp`.
         | 
         | The separate website is just to have a nice & short link to the
         | test262 graph and whatever else we'll put there eventually; and
         | also because it's built/deployed in a slightly different way
         | than the main serenityos.org website.
        
       | atirip wrote:
       | Oh for fucks sake people. There seems to be 5 lines of text on
       | that page and to see them I needed to turn off content blockers.
       | Jeez...
        
         | Beltalowda wrote:
         | It's your "content blocker" that's broken if it's blocking
         | random stuff. It's a very simple website without weird things.
        
           | [deleted]
        
         | simion314 wrote:
         | Use a browser that let's you disable JS by default and
         | whitelist websites where you have no choice.
        
       | hajile wrote:
       | What is the draw here compared to other JS engines (either
       | v8/JSC/spidermonkey on the big end or something like
       | quickJS/duktape on the small end)?
        
         | gigel82 wrote:
         | All those other engines are cross-platform, whereas LibJS is
         | UNIX only and actually very dependent on SerenityOS libraries
         | (so not really a portable UNIX library), but that's apparently
         | the intended design.
        
           | orbifold wrote:
           | To be fair both JavaScriptCore and V8 heavily rely on the
           | base C++ libraries that are part of Chromium and Webkit.
        
             | gigel82 wrote:
             | You can totally build and use V8 independently (many
             | projects, including node.js, do it) and they have
             | documentation specifically targeted at embedders.
             | 
             | JSC is not as nice but can still be built and embedded as a
             | stand-alone library.
        
       ___________________________________________________________________
       (page generated 2022-03-30 23:02 UTC)