Part of the startup time is calling all of our "startup hooks", of which I
have 35 right now in my Factor instance, in all of these vocabularies:

{
    "alien"
    "destructors"
    "alien.strings"
    "io.backend"
    "source-files.errors"
    "compiler.units"
    "vocabs"
    "io.files"
    "vocabs.loader"
    "command-line"
    "threads"
    "cpu.x86.features"
    "io.thread"
    "core-foundation.run-loop"
    "environment"
    "io.backend.unix:signal-pipe-thread"
    "io.launcher"
    "random.unix"
    "bootstrap.random"
    "io.sockets:ipv6-supported?"
    "openssl"
    "tools.crossref"
    "cocoa"
    "io.files.temp"
    "tools.deprecation"
    "core-foundation"
    "vocabs.cache"
    "vocabs.refresh.monitor"
    "opengl.gl"
    "opengl"
    "ui"
    "core-text.fonts"
    "core-text"
    "tools.errors.model"
    "ui.tools.error-list"
}

I'm sure a lot of that could be delayed in smart ways to make startup time
faster, that's what I meant by low hanging fruit, but also not something
that anyone is working on right now.

Best,
John.

On Mon, Jan 30, 2017 at 12:40 PM, <pet...@riseup.net> wrote:

> On 2017-01-30 18:14, Timothy Hobbs wrote:
> > If you are on linux, you might try this very new feature:
> > https://criu.org/Main_Page
> >
> > On 01/30/2017 17:29, Jim Mack wrote:
> >> You could also set up factor as a local web server, and send bash
> >> requests to it through a web page, and it would be able to accomplish
> >> them locally (or remotely) and report you the results.  It would be a
> >> quick round-trip cycle with great feedback and the ability to bookmark
> >> commands.
> >>
> >> On Sun, Jan 29, 2017 at 1:39 PM, <pet...@riseup.net
> >> <mailto:pet...@riseup.net>> wrote:
> >>
> >>     On 2017-01-29 16:20, John Benediktsson wrote:
> >>     > It would be nice to improve startup time. I imagine some low
> >> hanging
> >>     > fruits if we looked deeply into it. I'll make a note to get that
> >>     on my
> >>     > list, unless someone looks into it sooner.
> >>     >
> >>     >
> >>     >
> >>     >> On Jan 28, 2017, at 2:25 PM, pet...@riseup.net
> >>     <mailto:pet...@riseup.net> wrote:
> >>     >>
> >>     >> I spend a lot of time writing small scripts, often in bash.
> >> That is
> >>     >> becoming a more and more painful task as bash is a nice-enough
> >>     >> language
> >>     >> on the first look but in the end it seems to go out of it's way
> >> to
> >>     >> trip
> >>     >> you up with every character you type. I don't mean to rant, I
> >> know
> >>     >> it's
> >>     >> an old language that has to keep a lot of backward
> >>     compatibility and
> >>     >> it
> >>     >> actually still serves very well for what it was designed for,
> >>     as long
> >>     >> as
> >>     >> your script stays <100 lines. Still, there's a lot to be
> >> desired.
> >>     >>
> >>     >> Factor is a cool language, it's very expressive, mature, has a
> >>     lot of
> >>     >> libraries and has all sorts of tricks up its sleaves to bend it
> >> to
> >>     >> your
> >>     >> will (much like lisp in that regard). It would be a fun
> >>     experiment to
> >>     >> write a library or EDSL (embedded DSL) for bash-like scripting.
> >>     >> However
> >>     >> there's a bone to be picked:
> >>     >>
> >>     >> $ time bash -c ''
> >>     >> bash -c ''  0.00s user 0.00s system 94% cpu 0.004 total
> >>     >>
> >>     >> $ time factor-vm -e=''
> >>     >> factor-vm -e=''  0.12s user 0.05s system 99% cpu 0.178 total
> >>     >>
> >>     >> I know one can create a custom image and maybe cut down on the
> >>     startup
> >>     >> a
> >>     >> bit, but my question is - would it be possible to cut it down
> >> to
> >>     >> bash's
> >>     >> startup time *and* still have all the necessary vocabularies in
> >>     it? I
> >>     >> don't want to know the startup time with a small image that has
> >>     like
> >>     >> nothing in it, I can quickly test that myself. I'd need help to
> >>     answer
> >>     >> -
> >>     >> if you imagine the use case I'm talking about, include all the
> >>     vocabs
> >>     >> that use case would need and make all other possible
> >>     optimizations (if
> >>     >> there are) without sacrificing too much, can the startup reach
> >>     similar
> >>     >> times?
> >>     >>
> >>     >> --
> >>     >> ------------
> >>     >>   Peter Nagy
> >>     >> ------------
> >>     >>
> >>     >>
> >>
> >> ------------------------------------------------------------
> ------------------
> >>     >> Check out the vibrant tech community on one of the world's most
> >>     >> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> >>     >> _______________________________________________
> >>     >> Factor-talk mailing list
> >>     >> Factor-talk@lists.sourceforge.net
> >>     <mailto:Factor-talk@lists.sourceforge.net>
> >>     >> https://lists.sourceforge.net/lists/listinfo/factor-talk
> >>     <https://lists.sourceforge.net/lists/listinfo/factor-talk>
> >>     >
> >>     >
> >>
> >> ------------------------------------------------------------
> ------------------
> >>     > Check out the vibrant tech community on one of the world's most
> >>     > engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> >>     > _______________________________________________
> >>     > Factor-talk mailing list
> >>     > Factor-talk@lists.sourceforge.net
> >>     <mailto:Factor-talk@lists.sourceforge.net>
> >>     > https://lists.sourceforge.net/lists/listinfo/factor-talk
> >>     <https://lists.sourceforge.net/lists/listinfo/factor-talk>
> >>
> >>     Hi John,
> >>
> >>     you think you can reach similar startup times? That would be
> >> really
> >>     cool. I guess your todo list is rather long though.
> >>
> >>     As a side note, are there other concatenative languages you know I
> >>     could
> >>     look at?
> >>
> >>     --
> >>     ------------
> >>        Peter Nagy
> >>     ------------
> >>
> >>
> >> ------------------------------------------------------------
> ------------------
> >>     Check out the vibrant tech community on one of the world's most
> >>     engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> >>     _______________________________________________
> >>     Factor-talk mailing list
> >>     Factor-talk@lists.sourceforge.net
> >>     <mailto:Factor-talk@lists.sourceforge.net>
> >>     https://lists.sourceforge.net/lists/listinfo/factor-talk
> >>     <https://lists.sourceforge.net/lists/listinfo/factor-talk>
> >>
> >>
> >>
> >>
> >> ------------------------------------------------------------
> ------------------
> >> Check out the vibrant tech community on one of the world's most
> >> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> >>
> >>
> >> _______________________________________________
> >> Factor-talk mailing list
> >> Factor-talk@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/factor-talk
> >
> >
> > ------------------------------------------------------------
> ------------------
> > Check out the vibrant tech community on one of the world's most
> > engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> > _______________________________________________
> > Factor-talk mailing list
> > Factor-talk@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/factor-talk
>
> Thanks for the interesting links/ideas :)
>
> --
> ------------
>    Peter Nagy
> ------------
>
> ------------------------------------------------------------
> ------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> _______________________________________________
> Factor-talk mailing list
> Factor-talk@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/factor-talk
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Factor-talk mailing list
Factor-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to