keyvalue-users Mailing List for KeyValue
Status: Pre-Alpha
Brought to you by:
cassioneri
You can subscribe to this list here.
2010 |
Jan
|
Feb
|
Mar
(1) |
Apr
(3) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2011 |
Jan
|
Feb
|
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(1) |
Nov
|
Dec
|
From: Questions r. to t. u. of KeyValue.
<key...@li...> - 2011-10-27 22:13:59
|
Dear KeyValue user, I am happy to announce my talk on KeyValue at the Thalesians Seminar in London on 02 November 2011. The Thalesians is, mostly, a group of quantitative analysts working on the financial industry who regularly gather around nice snacks and drinks to discuss ideas in quantitative finance and related fields. Since KeyValue has been inspired by option pricing libraries and most its web site visitors are quantitative analysts, this is a great opportunity to present the library to people that can clearly take advantage of using it. For more information and to book your place, visit the Thalesian's web site: http://www.thalesians.com I am looking forward for the presentation and excited to hear the ideas that the "quants" can bring to KeyValue's development. Whether your are a "quant" of not, I hope you can make it. Cheers, Cassio Neri. |
From: Questions r. to t. u. of KeyValue.
<key...@li...> - 2011-09-04 17:04:56
|
Dear KeyValue user. KeyValue 0.3 has been released (see release note below). As you will see builder design has changed in a way that breaks code compatible with version 0.2. However, it should be easy to adapt your code to the new API. If you have any trouble in doing that, please, do not hesitate to send questions to this list. I will be very glad to assist you. As ever, your feedback is very welcome. Best regards, Cassio Neri. ----------------------------------------------------------------- 04 September 2011 - KeyValue 0.3 has been released ----------------------------------------------------------------- We are glad to announce the new release of KeyValue. The library is growing up and this release is all about flexibility and reliability. The next release will be about upgrading. The new C++ standard is around the corner and compiler vendors are already giving support to some of the new language features. Therefore, in the next release we will probably see some of these features in KeyValue's code. Users will be asked to upgrade their systems. Among the changes in KeyValue 0.3, we have: * Bye bye OpenOffice. Welcome LibreOffice. * Builders and have been redesigned (breaking code compatible with version 0.2). They are much more flexible in terms of returning types, making them more inheritance-friendly. * More unit tests have been added, improving KeyValue's reliability. * Many bug fixes. * User documentation has been updated accordingly. A more detailed list of changes is available. As for the previous version, KeyValue is still in a pre-alpha state which means that things might not work from the first shot. Please, be patient. We hope developers will start using and enjoying KeyValue. They are asked to contribute by providing feedback on their experience through the mailing list. This feedback will drive the development and help to improve KeyValue. For more information visit http://keyvalue.sourceforge.net |
From: Questions r. to t. u. of KeyValue.
<key...@li...> - 2011-03-03 01:24:52
|
Hi, Unfortunately, you can't put a #NULL in just one matrix entry but this is planned to be possible in the future. For the time being I suggest the approach given in the code below. In there, I'm supposing that nRows, nCols are known (size_t's) and your core library implements a function double calc(i, j) which computes the (i,j)-th entry of the matrix. keyvalue::value::Matrix m(nRows, nCols); for (size_t i = 0; i < nRows; ++i) { for (size_t j = 0; j < nCols; ++j) { try { m(i, j) = calc(i, j); } catch (...) { m(i, j) = something_that_indicates_an_error; } } } For something_that_indicates_an_error I have two suggestions: 1) An obviously invalid value: For instance, if your matrix is supposed to contain only positive numbers, then something_that_indicates_an_error could be 0.0, -1.0, std::numeric_limits<double>::quiet_NaN() or std::numeric_limits<double>::infinity(). Unfortunately, for the last two approaches, Excel shows 2.6965E+308 and 1.7977E+308, resp. 2) A string error message: Recall that keyvalue::value::Matrix entries are of type keyvalue::value::Variant and, therefore, they can hold the same types as Variants do. In particular they can be strings. Then, you can set something_that_indicates_an_error to "" (an empty string) or "Error" or, "#NULL", if you wish to fake an Excel error. A remark on the second suggestion. A keyvalue::value::Variant can also hold a type keyvalue::value::Nothing which indicates no data. My first idea was letting something_that_indicates_an_error to be this type but, unfortunately, I just realized that Excel considers it as 0.0. This is not a good thing and I'm going to change this behaviour. I was wondering to allow keyvalue::value::Variant to hold some type indicating an error that, latter, Excel would convert to #NULL. I thought, for instance to allow this type to be keyvalue::RuntimeError. Any suggestion? Cheers, Cassio. On Wed, Mar 2, 2011 at 9:32 AM, Questions relating to the use of KeyValue. <key...@li...> wrote: > Hi, > > I have a processor which computes and returns a keyvalue::value::Matrix to > Excel. > > Often, some (but not all) entries of this matrix cannot be computed and my > core library throws an exception. > > In that case the matrix appers in Excel filled with #NULLs. > > I would like to catch the exception for any failing entry and resume the > computations to have the right numbers whenever possible. How can I put a > #NULL in the failing entries to indicate the failure to the spreadsheet > user? > > Thanks a lot for your help! > > _______________________________________________ > KeyValue-users mailing list > Key...@li... > https://lists.sourceforge.net/lists/listinfo/keyvalue-users > > |
From: Questions r. to t. u. of KeyValue.
<key...@li...> - 2011-03-02 20:23:55
|
Hi, This is already possible using method DataSet::find() (See the latest online documentation [1] or your local copy of it) In this case, your code would look like: DataSet data; double x = 1.0; if (double* p = data.find(key::Positive("Facultative"))) x = *p; Let me provide the rationale for DataSet::find() and DataSet::getValue(). Having a pair has() / get() of methods as we sometimes see in similar classes (of other libraries) is not very efficient. In this approach, the method has() performs the look up and returns a bool to indicate success/failure. Then, in case of success, the method get() performs the same look up again to retrieve the value. Therefore, the look up is needlessly performed twice. A better and very popular approach is the two-steps-get. Rather than returning a bool to indicate success or failure, the get() method returns a pointer which, if null indicates failure, or if non null points to the value. I guess, KeyValue users most of the times expect to find the key and, otherwise, they want to throw an exception to indicate the failure. If KeyValue implemented only the two-steps get approach then users would need to repeat several times lines similar to: double x; if (double* p = data.get(key::Positive("Compulsory"))) x = *p; else trhow RuntimeError() & "Compulsory key not found"; Then I preferred to insert the throw above inside DataSet::getValue() and implement DataSet::find() following the two-step-get approach. Notice that DataSet::find() returns a pointer T where T is the type that the analogous call to DataSet::getValue() returns. Sometimes, this causes a bit of annoyance. Consider the case where the value associated to the key is expected to be a vector<double>. To avoid inefficient copy of vectors, DataSet::getValue() returns a shared_ptr<vector<double>> instead of vector<double>. Therefore, in this case, DataSet::find() returns shared_ptr<vector<double>>*, that is, a pointer to a (shared) pointer to a vector<double>. I'm thinking of adding some cleverness to DataSet::find() when the corresponding expected return of DataSet::getValue() has a pointer semantics to avoid the pointer-to-pointer returns. Any suggestion? [1] http://keyvalue.sourceforge.net/doc/0.2/ref/html/classkeyvalue_1_1DataSet.html#afad098f1923640b9f6ac4377ac491b90 On Wed, Mar 2, 2011 at 9:39 AM, Questions relating to the use of KeyValue. <key...@li...> wrote: > Hi, > > > > It would be useful to have facultative parameters in KeyValue that can be > overridden. > > For this we need a method that queries if a DataSet contains a given key or > not. Something like: > > > > DataSet data; > > double x = 1.0; > > if (data.hasValue(key::Positive("Facultative"))) > > x = data.getValue(key::Positive("Facultative"); > > > > Is this kind of feature available? > > > > Thanks for your help! > > ---- > Ce message electronique et tous les fichiers attaches qu'il contient sont > confidentiels et destines exclusivement à l'usage de la personne à laquelle > ils sont adresses. Si vous avez reçu ce message par erreur, merci de le > retourner à son metteur. Les idees et opinions presentees dans ce message > sont celles de son auteur, et ne representent pas necessairement celles de > l'institution ou entite affiliee dont l'auteur est l'employe. La > publication, l'usage, la distribution, l'impression ou la copie non > autorisee de ce message et des attachements qu'il contient sont strictement > interdits. > > This email and any files transmitted with it are confidential and intended > solely for the use of the individual or entity to whom they are addressed. > If you have received this email in error please return it to the sender. The > ideas and views expressed in this email are solely those of its author, and > do not necessarily represent the views of the institution or company of > which the author is an employee. Unauthorized publication, use, > distribution, printing or copying of this e-mail or any attached files is > strictly forbidden. > > ------------------------------------------------------------------------------ > Free Software Download: Index, Search & Analyze Logs and other IT data in > Real-Time with Splunk. Collect, index and harness all the fast moving IT > data > generated by your applications, servers and devices whether physical, > virtual > or in the cloud. Deliver compliance at lower cost and gain new business > insights. http://p.sf.net/sfu/splunk-dev2dev > _______________________________________________ > KeyValue-users mailing list > Key...@li... > https://lists.sourceforge.net/lists/listinfo/keyvalue-users > > |
From: Questions r. to t. u. of KeyValue.
<key...@li...> - 2011-03-02 10:07:51
|
---- Ce message electronique et tous les fichiers attaches qu'il contient sont confidentiels et destines exclusivement à l'usage de la personne à laquelle ils sont adresses. Si vous avez reçu ce message par erreur, merci de le retourner à son metteur. Les idees et opinions presentees dans ce message sont celles de son auteur, et ne representent pas necessairement celles de l'institution ou entite affiliee dont l'auteur est l'employe. La publication, l'usage, la distribution, l'impression ou la copie non autorisee de ce message et des attachements qu'il contient sont strictement interdits. This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please return it to the sender. The ideas and views expressed in this email are solely those of its author, and do not necessarily represent the views of the institution or company of which the author is an employee. Unauthorized publication, use, distribution, printing or copying of this e-mail or any attached files is strictly forbidden. |
From: Questions r. to t. u. of KeyValue.
<key...@li...> - 2011-03-02 09:50:41
|
---- Ce message electronique et tous les fichiers attaches qu'il contient sont confidentiels et destines exclusivement à l'usage de la personne à laquelle ils sont adresses. Si vous avez reçu ce message par erreur, merci de le retourner à son metteur. Les idees et opinions presentees dans ce message sont celles de son auteur, et ne representent pas necessairement celles de l'institution ou entite affiliee dont l'auteur est l'employe. La publication, l'usage, la distribution, l'impression ou la copie non autorisee de ce message et des attachements qu'il contient sont strictement interdits. This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please return it to the sender. The ideas and views expressed in this email are solely those of its author, and do not necessarily represent the views of the institution or company of which the author is an employee. Unauthorized publication, use, distribution, printing or copying of this e-mail or any attached files is strictly forbidden. |
From: Questions r. to t. u. of KeyValue.
<key...@li...> - 2010-10-17 16:30:19
|
Dear KeyValue user. KeyValue 0.2 has been released (see release note below). As you will see processor registration has changed in a way that breaks code compatible with version 0.1. However, it should be easy to adapt your code to the new API. If you have any trouble in doing that, please, do not hesitate to send questions to this list. I will be very glad to assist you. As ever, your feedback is very welcome. Best regards, Cassio Neri. -------------------------------------------------------------- 17 October 2010 - KeyValue 0.2 has been released -------------------------------------------------------------- After seven months from KeyValue's first release and more than 150 downloads, we are glad to announce the release of version 0.2. Among the major changes we have: * New support for help files (in HTML compressed format) for Excel add-in. * Command processors and special support for them through a dedicated Excel's menu. * Processor and its derived classes have been redesigned breaking code compatible with version 0.1. * Implementation of an unit testing framework. Great part of the library is covered giving more reliability to users. More unit tests to come. * Many bug fixes. * User documentation has been updated accordingly. A more detailed list of changes is available. Although functional, the library is still in a pre-alpha state which means that things might not work from the first shot. Please, be patient. We hope developers will start using and enjoying KeyValue. They are asked to contribute by providing feedback on their experience. This feedback will drive the development and help to improve KeyValue. For more information visit http://keyvalue.sourceforge.net |
From: Questions r. to t. u. of KeyValue.
<key...@li...> - 2010-04-19 18:21:18
|
Hi Rivo. First of all, sorry for the delayed reply (your message was waiting for approval but I dind't receive any alert from the mailling list. I must have wrongly configurated something.) > I have a problem building the openoffice-addin with the OOo3.2 SDK. Here is > the offending message in MS Visual Studio 2008 Pro Edn output window: > > ---------- > 6>C:\others\OOo3_2SDK\sdk\bin\cppumaker.exe ERROR: cannot dump Type > 'com/sun/star/uno/RuntimeException' > ... Short answer: Just try to build the openoffice-addin project again. If it doesn't work, then try to clean and build the project. Long answer follows: This is a weird intermittent problem. Unfortunately the process of building an OpenOffice add-in is quite complicated. One of the steps calls a tool called cppumaker which "dumps" .hpp files which are #included by KeyValue cpp files. For some reason, sometimes it fails but if you try again, miraculously, it succeeds. I thought to report this behavior to the OpenOffice developers but since it is hard to reproduce, I gave up. Fortunately, it seems to happen only the first time you try to build the openoffice add-in project. Thereafter the build runs smothly. > The 5 other targets were successfully built (BTW, I didn't see a spreadsheet > test file -- neither XL nor OOo -- anywhere ??). The spreadsheets used in the user documentation examples (keyvalue.ods and keyvalue.xlsx) are in doc/workbooks For the location of the add-ins, please, see Table 3 in Section 4 of the users documentation: doc/0.1/usr/html-m/ar01s04.html Regards, Cassio. |
From: Questions r. to t. u. of KeyValue.
<key...@li...> - 2010-04-10 18:41:41
|
Hi all, I have a problem building the openoffice-addin with the OOo3.2 SDK. Here is the offending message in MS Visual Studio 2008 Pro Edn output window: ---------- 6>C:\others\OOo3_2SDK\sdk\bin\cppumaker.exe ERROR: cannot dump Type 'com/sun/star/uno/RuntimeException' 6>make: *** [openoffice/com/sun/star/lang/XServiceInfo.hpp] Error 99 6>make: *** Waiting for unfinished jobs.... 6>C:\others\OOo3_2SDK\sdk\bin\cppumaker.exe ERROR: cannot dump Type 'com/sun/star/uno/RuntimeException' 6>make: *** [openoffice/com/sun/star/deployment/PackageInformationProvider.hpp] Error 99 6>C:\others\OOo3_2SDK\sdk\bin\cppumaker.exe ERROR: cannot dump Type 'com/sun/star/uno/TypeClass' 6>make: *** [openoffice/com/sun/star/lang/XMultiServiceFactory.hpp] Error 99 6>C:\others\OOo3_2SDK\sdk\bin\cppumaker.exe ERROR: cannot dump Type 'com/sun/star/uno/RuntimeException' 6>C:\others\OOo3_2SDK\sdk\bin\cppumaker.exe ERROR: cannot dump Type 'com/sun/star/uno/RuntimeException' 6>make: *** [openoffice/com/sun/star/lang/XTypeProvider.hpp] Error 99 6>make: *** [openoffice/com/sun/star/sheet/XAddIn.hpp] Error 99 ----------- The 5 other targets were successfully built (BTW, I didn't see a spreadsheet test file -- neither XL nor OOo -- anywhere ??). Regards, Rivo |
From: Questions r. to t. u. of KeyValue.
<key...@li...> - 2010-04-10 18:32:32
|
Hi all, Just to mention one point if you go the Mercurial way and build on Win. If you just plan to use KV, please rename the config/makefile-dev file to config/makefile-dev-example, say. As for now, don't forget to mv /usr/bin/link.exe /usr/bin/link-original.exe . Apparently, the build system mixes Cygwin tools with Win tools. This change won't have any big impact on the Cygwin system as you still have ln. make sln worked without any glitch afterwards so kudos to Cassio. Regards, Rivo |
From: Questions r. to t. u. of KeyValue.
<key...@li...> - 2010-03-20 17:12:48
|
20 March 2010 - KeyValue 0.1 has been released. This is the first KeyValue release ever! Although functional, the library is still in a pre-alpha state which means that things might not work from the first shot. Please, be patient. We hope developers will start using and enjoying KeyValue. They are asked to contribute by providing feed-back on their experience. This feed-back will drive the development and help to improve KeyValue. It is not only the code that is new and need to be tested. Actually, from the build system, going through the SourceForge set up (mercurial, file management, mailing lists, issue tracker, etc), up to the small icons in this web page, brief, everything is new. Regards, Cassio Neri |