• fidodo@lemm.ee
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    I’ve always said JavaScript was an elegant language with a horrible implementation. Now that we have typescript and modern ecmascript standards I feel vindicated.

    The prototype system is a bit confusing despite being simple, but it’s very powerful despite being simple, which I think balances it out. Also using modern classes abstracts the more confusing bits and you very very rarely need to actually understand the underlying mechanics if ever anymore. Plus you rarely even need classes either with the first class functions.

    Parallelism could really improve. Don’t think I’d want to mess with shared memory, but I’d like to be able to pass actual in memory objects instead of having to serialize everything first. Maybe a child process sandbox that can be filled and relinquished once or something like that?

    • ShortFuse@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      1 year ago

      You can use SharedArrayBuffer but honestly it feels like something engineered for one specific purpose (OpenGL).

      It would be nice to have shared objects and strings with whatever syntax helps sync locks. You can technically use UTF8 with helpers like TextDecoder, and I could probably sit and write all that logic using Promises, but I’d imagine the amount of data conversion to make it happen would negate the performance gains from multithreading in the first place.