Re: Libraries and effiency
Re: Libraries and effiency
- Subject: Re: Libraries and effiency
- From: Tommy Bollman <email@hidden>
- Date: Sun, 8 Aug 2010 04:50:01 +0200
Hello.
I must say that I am a strong believer in ONE info.plist file, which helds all the information, and we cannot require any LibraryLoader to use them really, but it would have been nice with one centralized source.
There are other which maybe only I see as a problem. Efficiency is one of them, that's why I am a strong believer in hard coded paths.
My tools do make that really simple. And I think at least AppleMods supports full out hardcoded paths.
There are other issues than just loading libraries comfortably here, there are also issues of being able to list the contents, of say the current file, together with the libraries it contains, The parsing of the whole shebang will of course only happen once, until the buffer is killed, but there may be some overhead in this.
I also believe that the centralized info.plist file should hold not only the info about ALL libraries for ALL loaders, (in reality there are only two (I'm more in the "private market" really, mostly concerned with what I and you pull together by ourselves). but the info plist file should also contain all the directories the user have set up for some purpose with AppleScript, so that the information is globally acessible from just ONE point. There should also be an attribute for loader system, One for AppleMods, one for ScriptFactory, and one marked Private (which means that those are folders that the user has decided upon. ) -I'm really more to looking at all those folders as Realms than folders, in that it is evident that any subfolders is within that realm.
Maybe be it would be nice to have a convention with a document subfolder per folder within a realm. -One other BIG problem, is the documentation, at least the one which one writes for one self, or the code that we loot from the net.
And of course there should be room for specifying application servers. -Very useful creatures that can boost your system a little, or at least help you leverage your codebase better if you are into scripting.
I think clippings also is an attribute, that should be set for some folders. So that external tools will know that those are clippings and not Libraries. I have another category as well, and that is snippets, which is a full tree with code organized per application, or theme.
My LibraryLoader supports these kind of things.
I can foresee that I will end up with my own property.list file, and that will be net.macscripter.mcusr.libraryloader.plist
I have now added all my wishes for such a file, and that is because there is a thousand different ways of organizing your code really,
and I can really only speak for my self.
But I think such a file should not impose any restrictions, but give the whole shebang -said as a user.
I'd like to have both network local and user domains.
within those domains I'd like to add properties to the realms (the subtrees starting at a path)
loader type property : AppleMods, Private, ScriptFactory (alphabetical) (only valid when folder type is Library.)
Maybe two or three different attributes, telling how stuff are documented. for a property regarding documentation, per realm.
I'd like to have foldertype of doc, snippet, clipping, and Library.
Then I'd like to have a whole other top group for application server, -this is for both editing it, and listing the libraries it contains, for the purpose of copying/looking at signatures, - documenting, etc.
On 7 Aug 2010, at 19:20, Tommy Bollman wrote:
> Hello. I'll look into it, and think about it.
>
> Currently there are no such thing as collaborating loader systems on the Mac Os x. But I think your idea is generally good and supports it.
> I'll come back on this.
>
> On 7 Aug 2010, at 16:39, Philip Aker wrote:
>
>> On 2010-08-07, at 04:17:11, Tommy Bollman wrote:
>>
>>> Hello Phillip
>>>
>>> This looks very good, I had figured I would use a property list like this with the Library Loader script I am working, and can be found at MacScripter.net <http://www.macscripter.net/viewtopic.php?id=33487 > : It is very user centric, you have full access to all the files within the editor of your preference. This is centered around hardcoded paths, since the paths are predefined within the script like the properties list does. You then really just select the library category, then choose the file you want to create a loader statement for, -the correct loader statement will then be pasted onto the clipboard.
>>
>>> -I was about to implement creation of a property list like yours, during installation /reconfiguration this weekend, -and may still manage that!.
>>
>> A test application which sets up the shared property list is available here: <http://www.vcn.bc.ca/~philip/osa/dl/OSAScriptLibraryInfo.zip>.
>> It creates the default property list if it doesn't exist or resets it if it does.
>>
>> It's not the final version (only good for Intel 32/64, 10.5 or later). I should be able to compile for a 10.4 target at some point. The final will be freely available for library loader applications to include in their released products (commercial or otherwise).
>>
>> One label was changed: DisabledSuffixes -> DisabledSubstrings
>>
>>
>> [...]
>>
>> More on the rest of your post as it applies to the shared property list notion later, however:
>>
>>> I would like to add a whole sub section to your property list which held collections of functionality, both files and directories
>>
>> As previously mentioned, the concept has some required sections but is otherwise open to entries by loader applications so feel free to add your own entries. The basic idea is that users don't have to move their scripts around in order to accommodate different library loaders. The "required" entries set properties for library folders only -- they don't deal with individual scripts -- that task is left up to the individual library loaders.
>>
>> You should add your application entries keyed by a unique bundle identifier. Something like:
>>
>> <key>com.bollman.library.loader</key>
>> <dict>
>> <key>Version</key>
>> <string>1.2.3</string>
>> <key>SomeKey</key>
>> <string>some value</string>
>> …
>> </dict>
>>
>>
>> Philip Aker
>> echo email@hidden@nl | tr a-z@. p-za-o.@
>>
>> Democracy: Two wolves and a sheep voting on lunch.
>>
>>
>
> Best regards
>
>
>
> Tommy Bollman
> --------------------------------------------------------------------------------------------------
> Mollison's Bureaucracy Hypothesis:
> If an idea can survive a bureaucratic review
> and be implemented it wasn't worth doing.
>
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> AppleScript-Users mailing list (email@hidden)
> Help/Unsubscribe/Update your Subscription:
> Archives: http://lists.apple.com/archives/applescript-users
>
> This email sent to email@hidden
>
Best regards
Tommy Bollman
--------------------------------------------------------------------------------------------------
Mollison's Bureaucracy Hypothesis:
If an idea can survive a bureaucratic review
and be implemented it wasn't worth doing.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
AppleScript-Users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
Archives: http://lists.apple.com/archives/applescript-users
This email sent to email@hidden