Re: List of QuantLibXL Functions

Posted by eric ehlers on
URL: http://quantlib.414.s1.nabble.com/List-of-QuantLibXL-Functions-tp10730p10732.html

Hi Dave

I trust it's OK with you that I cc quantlib-dev in this response to
your attached message; the answers to your questions (some of which
were provided in Nando's earlier message) might be interesting for
others.

On Thu, 10 Feb 2005 09:22:41 -0500, David Brown <[hidden email]> wrote:
> Eric-
>
>    We want to do whatever can contribute to the project.  I saw the
> intent of QuantLibAddIn and it makes sense to me, we just thought that
> it wasn't coming along becuse it only had three functiosn listed in
> the webpages you sent us.  QuantLibXL appeared more developed, which
> it may be.

QuantLibXL is mature, QuantLibAddin is a few weeks old and just
getting ready for a first release which I would describe as a
prototype.  The QuantLibAddin design doc shows three functions in
order to illustrate the design; at the moment in the latest CVS
snapshot there are a dozen or so functions.

>    Just to get this straight:  QuantLibAddIn is going to do away with
> QuantLibXL by taking all of it's functionality.  

Yes, QuantLibAddin will be extended to support all functions currently
present in QuantLibXL and the goal will be complete backward
compatibility, so that a spreadsheet based on QuantLibXL can load
QuantLibAddin and see the same results.

> Moreover, your intent
> is to imbed all of the functions that QuantLibXL has and find a slick
> way of only having to write the functiosn once.  Instead of writing
> the functions multiple times, you are going to instead use multiple
> 'interfacing' formats which will achieve what you desire.

In the existing QuantLibAddin design, functions are defined once in a
core C++ library, which is further wrapped in platform-specific
functionality for target platforms.  The source code for these
platform-specific addins is generated automatically based on the
function definitions, so I'd say the 'slick way of only writing
functions once' is already implemented. :)

>    The list of interfaces given enough time wil  be:
>    1) Excel  2) OO Spreadsheet  3) GNUmeric  4)FpML  5) C++  6) C  etc
>
>   Am I correct in my thinking here?

The existing prototype supports Excel, OO, C, and C++.  Gnumeric
support is in the works.  The design could be extended to support any
platform that understands C++, and isn't limited to spreadsheets.

I wouldn't list FpML among the target platforms for QuantLibAddin.
QuantLibAddin clients on all target platforms - an Excel spreadsheet,
a standalone C++ executable, whatever - will all be able to
serialize/deserialize QuantLib objects to/from FpML using the design
already explained earlier in this thread.

>   In other words, FpML input would only be one of the many inputs that
> QuantLibAddIn handles.  (Is this correct?)

I'd say there are two ways QuantLibAddin could construct a
QuantLib::Instrument -
1) by calling its usual constructor
2) by calling the new constructor which accepts a TermSheet

>    I noticed that the QuantLibXL cell calls all started with QL.  Did
> the name QL get cut out when you compiled a list of all functions?

The method I used listed the function's name as it appears in the list
of symbols exported by the DLL - the spreadsheet addin gives each of
these symbols an alias which is the QL_xxx.

> Best Wishes,
> David Brown

Best Regards
Eric