View previous topic :: View next topic |
Author |
Message |
fawzi
Joined: 19 Feb 2008 Posts: 9 Location: Berlin, Germany
|
Posted: Sat Apr 19, 2008 3:51 am Post subject: moving external libraries wrappers to subpackages |
|
|
I wrote:
>> why not to move BLASLAPACK to a real package (blaslapack) I did it
>> locally and with it dsss install works nicely, without it it didn't work out
>> of the box.
Bill Baxter replied:
> The same would go for superlu, taucs, and umfpack then. They all
> follow the same general format of
> "libname.d" -> raw wrapper of C/Fortran API
> "dlibname.d" -> raw wrapper + some potentially higher-level d-specific > things
>
> I'm not opposed to the idea, but I just couldn't think of a good
> naming scheme I was satisfied with.
>
> I suppose I could go with the Tango scheme of
> lowerpackage.CapsModule.
> And then use umfpack.Umfpack, taucs.Taucs, superlu.SuperLU
> (or superlu.Superlu?) If so then might make more sense to do
> blas.Blas and lapack.Lapack, rather than combining the two.
> But then I'd probably need to separate the dll's for them too.
I think that this is a good idea. Actually one could still keep a unique dll for blas and lapack even if the packages are separated.
Maybe moving them to all to clibs.* or something like it to minimize the conflicts could be a good idea. |
|
Back to top |
|
|
baxissimo
Joined: 23 Oct 2006 Posts: 241 Location: Tokyo, Japan
|
Posted: Sat Apr 19, 2008 6:11 am Post subject: Re: moving external libraries wrappers to subpackages |
|
|
fawzi wrote: | I wrote:
>> why not to move BLASLAPACK to a real package (blaslapack) I did it
>> locally and with it dsss install works nicely, without it it didn't work out
>> of the box.
Bill Baxter replied:
> The same would go for superlu, taucs, and umfpack then. They all
> follow the same general format of
> "libname.d" -> raw wrapper of C/Fortran API
> "dlibname.d" -> raw wrapper + some potentially higher-level d-specific > things
>
> I'm not opposed to the idea, but I just couldn't think of a good
> naming scheme I was satisfied with.
>
> I suppose I could go with the Tango scheme of
> lowerpackage.CapsModule.
> And then use umfpack.Umfpack, taucs.Taucs, superlu.SuperLU
> (or superlu.Superlu?) If so then might make more sense to do
> blas.Blas and lapack.Lapack, rather than combining the two.
> But then I'd probably need to separate the dll's for them too.
I think that this is a good idea. Actually one could still keep a unique dll for blas and lapack even if the packages are separated.
Maybe moving them to all to clibs.* or something like it to minimize the conflicts could be a good idea. |
Good point about the dll. It's pretty much up to users to make dlls for themselves now anyway, and they can make them however they like. Except I do have a pragma link blaslapack.lib stuck in there somewhere. Just means users that don't call it that will get a linker warning.
Ok so I think I'll reorganize it like this:
Code: |
wrappers/blas
wrappers/lapack
wrappers/superlu
wrappers/umfpack
wrappers/taucs
|
The 'wrappers' will just be a subdir for organizing files, not a package. That'll make it easier to check out just the wrappers, for instance.
Module names will become Tango-esque caps.
How's that sound? |
|
Back to top |
|
|
fawzi
Joined: 19 Feb 2008 Posts: 9 Location: Berlin, Germany
|
Posted: Sat Apr 19, 2008 1:18 pm Post subject: |
|
|
excellent idea, actually even keeping wrappers as package would not be such a bad idea, "top-level" names should be used a sparingly as possible I think. |
|
Back to top |
|
|
baxissimo
Joined: 23 Oct 2006 Posts: 241 Location: Tokyo, Japan
|
Posted: Thu Jun 05, 2008 2:22 am Post subject: |
|
|
fawzi wrote: | excellent idea, actually even keeping wrappers as package would not be such a bad idea, "top-level" names should be used a sparingly as possible I think. |
I'm doing this now.
I've decided to start putting stuff into the top-level name "gobo". So it's
Code: | gobo.blas.Blas
gobo.lapack.Lapack
gobo.superlu.Superlu
gobo.umfpack.Umfpack
gobo.arpack.Arpack
|
|
|
Back to top |
|
|
fawzi
Joined: 19 Feb 2008 Posts: 9 Location: Berlin, Germany
|
Posted: Thu Jun 05, 2008 6:15 am Post subject: |
|
|
gobo? http://en.wikipedia.org/wiki/Gobo
something that goes between?
anyway I realized it later but tango convention is c (and c-wrappers) lowerCase, D modules CamelCase... I do not know if you want to follow that convention... |
|
Back to top |
|
|
baxissimo
Joined: 23 Oct 2006 Posts: 241 Location: Tokyo, Japan
|
Posted: Thu Jun 05, 2008 12:43 pm Post subject: |
|
|
The "greater burdock" one.
http://en.wikipedia.org/wiki/Greater_burdock
Has absolutely no meaning because I don't know what all will end up being in that namespace, and the important thing is just to have a name that's not too long, but still not that likely to clash with an identifier in a program.
That said, gobo's are yummy and good for you. And, like me, they are found mostly in Japan.
Quote: |
anyway I realized it later but tango convention is c (and c-wrappers) lowerCase, D modules CamelCase... I do not know if you want to follow that convention... |
I see. Well, all the Windows header file wrappers in tango.sys.win32 are in CamelCase, even though they're nothing but c-wrappers. Unless you have a problem with it, I'm inclined to leave it as-is. |
|
Back to top |
|
|
fawzi
Joined: 19 Feb 2008 Posts: 9 Location: Berlin, Germany
|
Posted: Thu Jun 05, 2008 2:33 pm Post subject: |
|
|
no problem for me... |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|