From: Clark C . E. <cc...@cl...> - 2001-11-29 20:41:55
|
| > 2. Add "date", "time" and "currency" to | > the transfer method section (2 hours) | | These don't have direct support in most languages | (especially Perl/Python). I'd much rather create | a Web Page in yaml.org (the famous "central repository") | and have date, time and currency be the first members there. Ok. I can agree to this. I think we may need to have one small clairificaiton round on implict types. Here is what I understand: 1. Anything that starts with a non-indicator, and is non-alphabetic is subject to implicit typing. 2. Both the single and double quoted forms avoid implicit typing, and use the !str transfer method. 3. We agreed that implicit types would be a single token, and thus spaces can't be used in an implicit type. 4. I'm not sure... but I thought we had earmarked ! all by itself to force implicit typing after the style's properties are resolved (unfolding, unescaping, etc.) With these in place, I'm willing to relax #1 so that implicit typing occurs when the value does not contain spaces and starts with an alphabetic character. Examples: date : 2001-12-23 time : 13:34.00+5:00 str : 23 Rockeffeler Way int : 23 float : 3.0 datetime : ! 2001-12-23 13:34.00+5:00 Does this work for you both? | > In early March I'd like to write "libyaml". | > I just don't think I'll have time/cash to | > do it before then. | | I think libyaml is a big enough project that delaying | it to March, until after we have some working load/store | systems going, is a good idea anyway. Great. I know it'll be helpful for a libyaml to be out there... but I have several goals for it: 1. I'd like it to support both push and pull interfaces, with adapters to convert between them. 2. I'd like it to support both the sequential tree model and the random access graph model with the *same* interface (each node having a flag "access" which can be sequential, random, or inaccessable). 3. I'd like it to directly support simple YPATH/YATL filters, efficiently. Thus, a bit of YPATH/YATL would have to be fleshed out to make sure that the interfaces are right. 4. I'd like it to have a clear linkage with the Python, Perl, and PostgreSQL (for SQL queries) runtime systems. This takes a bit of thought, but I figure if it can nicely support these three; then the API can support just about any language. 5. I'd like it to be COM compliant so that the library can work on Windows as an OLE in-process server. Of course, as a unix .so as well. 6. Unicode support has to be done right. So... that said, I'd like it to be done "very well" and I'd hate to have a libyaml running around that worked poorly in these domains. It'll take about 6 months part time (10-15h/week) to construct the API and a solid implementation. That said, I'm about a month into it... with the interfaces fleshed out pretty well (but could use review). If native python/perl/java implementations are good enough for the next few months... GREAT! Best, Clark |