On 2017-02-01 00:19, John Benediktsson wrote:
> 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

Is there any dumb way for me to test what would the startup time be have 
I removed all the hooks? That would show what is the actual overhead all 
the hooks bring.

-- 
------------
   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

Reply via email to