The idea of resource:work is great, but its location (inside the work/ 
directory of the Factor checkout itself) makes it really prone to an erroneous 
“git clean” if I’m not paying attention.  Adding new vocabularies via 
.factor-roots or FACTOR_ROOTS is easy enough, but then requires I type out the 
full path in many situations (e.g. scaffold-vocab), which is also annoying, if 
for no other reason than my private vocabulary collection is in different 
places on different machines (different Unix users, different operating 
systems, etc.).  What would be great is to say, “Treat /path/to/whatever as 
resource:whatever”.  This doesn’t appear hard to add, but I’m wondering if 
there’s a reason we’re not already doing so.

As long as we’re on the topic: it looks relatively easy to extend out the 
vocabulary system to support versions, so that, instead of doing

        “whatever” require

you’d instead do

        { “whatever” “2.4” } require

which would allow you to selectively load a specific version of a vocabulary 
into a specific Factor instance based on a slight tweak to the path (e.g., 
maybe whatever/ would become whatever/2.4/).  I’m guessing we’ve not done this 
because there’s concerns about this approach.  What are they?  Do we, like the 
Go community, simply not want to support this?  (My interest in this is 
actually that doing so would be the first step towards allowing package 
management, which really nicely dovetails with the above.  Think having 
resource:packages and then being able to just directly require a package you 
want.)

Anyway, thoughts on either of the above?

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

------------------------------------------------------------------------------
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
Factor-talk mailing list
Factor-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to