• Why do IDEs have Power Save mode? (Re: Java and OpenJFX or JavaScript a

    From Mild Shock@21:1/5 to Mild Shock on Tue Jun 17 16:19:37 2025
    The restart maybe explains why IntelliJ has a
    Power Safe mode, but I am not 100% sure about
    the details. But if the end-user behaviour is
    not compatible with the chosen delays, he might

    tear down the tasks again and again. This could
    use compute power. Some incremental tasks or tasks
    that block (i.e. the "lag") could be a solution.
    Incremental tasks that do only small work and

    not big work, are less perceived as blocking
    (i.e. the lag). But a ghost text that maybe
    involves calling an Artificial Intelligence API
    is probably in nature not a small work task,

    in the sense that it would occupy a short work
    time, the Artificial Intelligence API server
    might be busy and cause a task slow down.

    Disclaimer: I am doing some brain writing here...

    Mild Shock schrieb:
    Somebody wrote:

    noticeable lag waiting for completion candidates

    A lag wouldn’t be a problem. I guess the problem
    is that the GUI gets blocked, right? If your GUI
    has tasks and timers, you could try the follow:

    - Debouncing Timer: To start ghost after lets
      say 1000 ms, the debouncing is to assure that
      the ghost appears after the last edit and not
      after the first edit.

    - Abortable Task: The ghost is then computed
      asynchronously via a task. But this task is
      again tied to the debouncing, means the task
      gets aborted if the end-user shows impatience.

    I checked a couple of GUI tools to do that. Had
    rather bad experience with Java and OpenJFX, so I
    am returning back to the JavaScript and WHATWG
    with my ongoing research.

    SVG tags were not working out the box https://wiki.openjdk.org/display/OpenJFX/Main

    No runLater(), any task can any time modify the DOM!
    https://whatwg.org/

    But maybe there are other GUI frameworks which
    can do it. If tasks are also used for highlighting
    I belive they can be also run asynchronously without
    explicitly juggling with some queues,

    just await the asynchrous routine that the task
    would execute, in a instrumentation loop, and ignore
    the aborts, since an abort is now good news and not
    bad news, it only indicates that

    the end user did an edit and that the task
    will be restartet.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mild Shock@21:1/5 to Mild Shock on Tue Jun 17 16:21:39 2025
    Hi,

    The fukkers stole my name:

    Jan - Local AI Assistant
    https://github.com/menloresearch/jan

    Bye

    P.S.: Meanwhile I am struggling with Quantum Paper
    whille doing a dark/light CSS. Look my light olive turned dark
    olive, that is somewhere near chocolate or is it dog shit?

    P.P.S.: Just figured out yesterday that some browser defaults
    are more Motif/OSF than Material/Google, aka Quantum Paper.

    Mild Shock schrieb:

    The restart maybe explains why IntelliJ has a
    Power Safe mode, but I am not 100% sure about
    the details. But if the end-user behaviour is
    not compatible with the chosen delays, he might

    tear down the tasks again and again. This could
    use compute power. Some incremental tasks or tasks
    that block (i.e. the "lag") could be a solution.
    Incremental tasks that do only small work and

    not big work, are less perceived as blocking
    (i.e. the lag). But a ghost text that maybe
    involves calling an Artificial Intelligence API
    is probably in nature not a small work task,

    in the sense that it would occupy a short work
    time, the Artificial Intelligence API server
    might be busy and cause a task slow down.

    Disclaimer: I am doing some brain writing here...

    Mild Shock schrieb:
    Somebody wrote:

    noticeable lag waiting for completion candidates

    A lag wouldn’t be a problem. I guess the problem
    is that the GUI gets blocked, right? If your GUI
    has tasks and timers, you could try the follow:

    - Debouncing Timer: To start ghost after lets
       say 1000 ms, the debouncing is to assure that
       the ghost appears after the last edit and not
       after the first edit.

    - Abortable Task: The ghost is then computed
       asynchronously via a task. But this task is
       again tied to the debouncing, means the task
       gets aborted if the end-user shows impatience.

    I checked a couple of GUI tools to do that. Had
    rather bad experience with Java and OpenJFX, so I
    am returning back to the JavaScript and WHATWG
    with my ongoing research.

    SVG tags were not working out the box
    https://wiki.openjdk.org/display/OpenJFX/Main

    No runLater(), any task can any time modify the DOM!
    https://whatwg.org/

    But maybe there are other GUI frameworks which
    can do it. If tasks are also used for highlighting
    I belive they can be also run asynchronously without
    explicitly juggling with some queues,

    just await the asynchrous routine that the task
    would execute, in a instrumentation loop, and ignore
    the aborts, since an abort is now good news and not
    bad news, it only indicates that

    the end user did an edit and that the task
    will be restartet.


    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)