Giter VIP home page Giter VIP logo

Comments (13)

nomennescio avatar nomennescio commented on May 28, 2024

NOTE: current Factor docs (for 0.100 development version on master branch) only list the following vocabs in extras:

assocs.extras
combinators.extras
grouping.extras
math.extras
math.matrices.extras
namespaces.extras
sequences.extras
sets.extras
sorting.extras
splitting.extras
stream.extras

Check which vocabs are supported by 0.98, and which are supported by 0.99.

from testest.

nomennescio avatar nomennescio commented on May 28, 2024

Factor 0.99 supports the following extras vocabs:

assocs.extras
combinators.extras
grouping.extras
math.extras
math.matrices.extras
namespaces.extras
sequences.extras
sets.extras
sorting.extras
splitting.extras
stream.extras

from testest.

nomennescio avatar nomennescio commented on May 28, 2024

Factor 0.98 supports the following extras vocabs:

assocs.extras
combinators.extras
grouping.extras
math.extras
sequences.extras
sets.extras
sorting.extras
splitting.extras
stream.extras

from testest.

nomennescio avatar nomennescio commented on May 28, 2024

When looking at the original list as suggested in the issue, some of these are not extras vocabs as indicated, but separate vocabs located in the extra vocab root. Reconsider the list of vocabs to be preloaded.

from testest.

nomennescio avatar nomennescio commented on May 28, 2024

Note that the indicated load time increase to 5-6 seconds because of using libraries not preloaded, needs to be balanced against the size of the Factor image, plus the advantage some of these libraries add in terms of implementation effort. It still leaves a level playing field if a Kata depends on such a library. Most katas are not that time sensitive in the first place.

Vocabs in extra by definition are not stable, so a certain hesitance to guard against future incompatibility is warranted.

from testest.

nomennescio avatar nomennescio commented on May 28, 2024

Need to check if some of the mentioned vocabs have been moved to extra in 0.99. Those are primary candidates to preload.

from testest.

nomennescio avatar nomennescio commented on May 28, 2024

Out of the list of suggested vocabs, the following list is actually in extra, hence is not preloaded right now (the others are):

coroutines 
decimals
generators
infix
lru-cache
multisets
pair-rocket
pairs
path-finding
qw
trees
variants

I don't think they can all be considered to be "commonly-used", although they might be useful to preload.

from testest.

nomennescio avatar nomennescio commented on May 28, 2024

Out of the list in the previous comment, the following vocabs are also present in 0.98:

decimals
infix
lru-cache
pair-rocket
pairs
path-finding
qw
trees
variants

So coroutines ,generators, and multisets were newly introduced in 0.99.

from testest.

Kacarott avatar Kacarott commented on May 28, 2024

When I have referred to extras I do not mean purely vocabs ending in .extras, but rather than vocab in the extras root.

Also, all the vocab prefixes listed have vocabs in extras. It is not a list of explicit imports, but rather a list of prefixes to load. See load.

I have already done extensive testing with compile time, cold load time, warm load time, and image size. The final list is one which includes almost all vocabs which might be useful for kata, with only neglegible size difference (ie. the total size after increased image and removed extras ends up smaller than the current factor docker image).

from testest.

nomennescio avatar nomennescio commented on May 28, 2024

When I have referred to extras I do not mean purely vocabs ending in .extras, but rather than vocab in the extras root.

Also, all the vocab roots listed have vocabs in extras. It is not a list of explicit imports, but rather a list of prefixes to load. See load.

I have already done extensive testing with compile time, cold load time, warm load time, and image size. The final list is one which includes almost all vocabs which might be useful for kata, with only neglegible size difference (ie. the total size after increased image and removed extras ends up smaller than the current factor docker image).

Thanks for investigating that.
Right, so you want to load all vocabs with these prefixes?
So that would include the ".extras" variants.

Right. If you have already tested that then I'm fine with it. I will make sure it will work for both 0.98 and 0.99.

from testest.

nomennescio avatar nomennescio commented on May 28, 2024

I will introduce specializations for versions 0.98 and 0.99, so it will be easy to maintain.

from testest.

Kacarott avatar Kacarott commented on May 28, 2024

So that would include the ".extras" variants.

Yes, but not only those. But the .extras are especially important as they are the worst offenders for long load times, sequences.extras in particular.

from testest.

nomennescio avatar nomennescio commented on May 28, 2024

2058344

from testest.

Related Issues (5)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.