View previous topic :: View next topic |
Author |
Message |
sean
Joined: 24 Jun 2004 Posts: 609 Location: Bay Area, CA
|
Posted: Thu Aug 18, 2005 6:46 am Post subject: |
|
|
The Ares zipfile is intended to be extracted into your /dmd folder. It will drop libraries in /lib and put the source in /src. Then you should edit sc.ini to have it look in /src/ares instead of /src/phobos. The -I option doesn't work so well for Ares because its namespaces clash with Phobos. |
|
Back to top |
|
|
JJR
Joined: 22 Feb 2004 Posts: 1104
|
Posted: Thu Aug 18, 2005 10:51 am Post subject: |
|
|
Can Ares be considered a drop-in replacement for phobos yet?
I would love to use it as such as soon as possible!
-JJR |
|
Back to top |
|
|
kris
Joined: 27 Mar 2004 Posts: 1494 Location: South Pacific
|
Posted: Thu Aug 18, 2005 11:15 am Post subject: |
|
|
JJR wrote: | Can Ares be considered a drop-in replacement for phobos yet?
I would love to use it as such as soon as possible!
-JJR |
It doesn't have a 'quarantined' backward compatability arena yet, athough Mango is fully compatible (with a -version=Ares). The two are complementary to each other, and make a useful combination. |
|
Back to top |
|
|
sean
Joined: 24 Jun 2004 Posts: 609 Location: Bay Area, CA
|
Posted: Thu Aug 18, 2005 11:28 am Post subject: |
|
|
Personally, I use Ares exclusively. But most people would probably miss the Phobos standard library. I suppose Ares should import Phobos.std into a namespace somewhere... perhaps 'old'? I've mostly been avoiding it because it's that many more files to update with new DMD releases
The basic Windows framework is in pretty good shape now. I'm going to finish the Linux threading implementation and then probably leave the Unix stuff alone for a while, as most of my coding there is speculative. Ares needs something more than printf/scanf for i/o, but perhaps Mango support is enough for now? |
|
Back to top |
|
|
pragma
Joined: 28 May 2004 Posts: 607 Location: Washington, DC
|
Posted: Thu Aug 18, 2005 11:43 am Post subject: |
|
|
sean wrote: | I suppose Ares should import Phobos.std into a namespace somewhere... perhaps 'old'? I've mostly been avoiding it because it's that many more files to update with new DMD releases |
I don't blame you. But if you ask me, it should probably be placed under 'phobos' (eg. std.phobos.math, std.phobos.stdio) within Ares. Make it a "satellite library" of sorts. _________________ -- !Eric.t.Anderton at gmail |
|
Back to top |
|
|
kris
Joined: 27 Mar 2004 Posts: 1494 Location: South Pacific
|
Posted: Thu Aug 18, 2005 12:16 pm Post subject: |
|
|
pragma wrote: | sean wrote: | I suppose Ares should import Phobos.std into a namespace somewhere... perhaps 'old'? I've mostly been avoiding it because it's that many more files to update with new DMD releases |
I don't blame you. But if you ask me, it should probably be placed under 'phobos' (eg. std.phobos.math, std.phobos.stdio) within Ares. Make it a "satellite library" of sorts. |
I'll second that notion. Though 'alt.phobos' might be a more suitable prefix for satellites |
|
Back to top |
|
|
JJR
Joined: 22 Feb 2004 Posts: 1104
|
Posted: Thu Aug 18, 2005 1:13 pm Post subject: |
|
|
Thanks for the responses, guys.
I guess for backward compatibility, including phobos somehow is a necessity... sadly.
I think there are a few functions in phobos, though, that would be quite useful still, std.math and the writef() functions for starters.
I guess writef() isn't that critical if I use mango, though. But I've actually grown somewhat fond of it, nevertheless.
-JJR |
|
Back to top |
|
|
sean
Joined: 24 Jun 2004 Posts: 609 Location: Bay Area, CA
|
Posted: Thu Aug 18, 2005 1:55 pm Post subject: |
|
|
I like writef as well. It's the one thing I really miss from Phobos. At the moment however, Ares' lack of UTF conversion routines is a significant obstacle for robust formatted i/o being a true library component. Perhaps that should be next on the list. I'll admit I've been avoiding it until now because it's such a darn big issue. Might it be enough to have basic conversion routines in the library and leave anything fancier for an ICU module? I'm hesitant to bundle in ICU by default as it's just so darn big. |
|
Back to top |
|
|
kris
Joined: 27 Mar 2004 Posts: 1494 Location: South Pacific
|
Posted: Thu Aug 18, 2005 2:09 pm Post subject: |
|
|
JJR wrote: | Thanks for the responses, guys.
I guess for backward compatibility, including phobos somehow is a necessity... sadly.
I think there are a few functions in phobos, though, that would be quite useful still, std.math and the writef() functions for starters.
I guess writef() isn't that critical if I use mango, though. But I've actually grown somewhat fond of it, nevertheless.
-JJR |
John ~ have you tried Stdout.print and Stdout.println in Mango? You may find they suit your needs just as effectively. |
|
Back to top |
|
|
kris
Joined: 27 Mar 2004 Posts: 1494 Location: South Pacific
|
Posted: Thu Aug 18, 2005 2:12 pm Post subject: |
|
|
sean wrote: | I like writef as well. It's the one thing I really miss from Phobos. At the moment however, Ares' lack of UTF conversion routines is a significant obstacle for robust formatted i/o being a true library component. Perhaps that should be next on the list. I'll admit I've been avoiding it until now because it's such a darn big issue. Might it be enough to have basic conversion routines in the library and leave anything fancier for an ICU module? I'm hesitant to bundle in ICU by default as it's just so darn big. |
Yeah, ICU should be optional in my opinion too. I'm currently working on a stripped down alternative for Mango that will share a common interface with the ICU wrapper. Does this sound like something useful? |
|
Back to top |
|
|
sean
Joined: 24 Jun 2004 Posts: 609 Location: Bay Area, CA
|
Posted: Thu Aug 18, 2005 2:22 pm Post subject: |
|
|
kris wrote: | Yeah, ICU should be optional in my opinion too. I'm currently working on a stripped down alternative for Mango that will share a common interface with the ICU wrapper. Does this sound like something useful? |
Definately. |
|
Back to top |
|
|
sean
Joined: 24 Jun 2004 Posts: 609 Location: Bay Area, CA
|
Posted: Thu Aug 18, 2005 2:27 pm Post subject: |
|
|
By the way, I just noticed that ICU 3.4 was released on August 1st. It's advertised as being a significant upgrade, though hopefully that won't break the D interface. |
|
Back to top |
|
|
Derek Parnell
Joined: 22 Apr 2004 Posts: 408 Location: Melbourne, Australia
|
Posted: Thu Aug 18, 2005 3:02 pm Post subject: Open source projects using Ares |
|
|
JJR wrote: | Can Ares be considered a drop-in replacement for phobos yet?
I would love to use it as such as soon as possible!
-JJR |
I have an issue here with using Ares, and/or Mango, with open source projects. If I used either in Build it would add one or more extras things to do for people to recompile Build on their system. I mean, do I also package up a copy of the Ares/Mango .lib file with Build? Or do I just make a reference to the download page for these libraries and tell people that they need a (specific?) version of Ares or Mango, if they want to compile Build?
If Ares/Mango were widely available then this wouldn't be a big issue.
And Ares is not completed yet either so subsequent release of Ares might break already downloaded copies of Build. Meaning that if a new Ares is released, people might also have to get an updated Build too.
This is the main reason why I'm sticking with Phobos for now. _________________ --
Derek
skype name: derek.j.parnell |
|
Back to top |
|
|
sean
Joined: 24 Jun 2004 Posts: 609 Location: Bay Area, CA
|
Posted: Thu Aug 18, 2005 3:18 pm Post subject: |
|
|
Ares makes no attempt to be compatible with Phobos, so cross-compilation with anything that actively uses Phobos library features will require some version blocks. That said, I want Ares to evolve as an alternative standard library, so features that make it into Ares should remain with very few changes (this is also one reason why development has been proceeding somewhat slowly). Perhaps the best way to handle new Ares code would be to put it in its own package (similar to the std::tr1 namespace being used now in C++). This should help to distinguish code under review from code that's somewhat "final," and hopefully help to solicit input on features that need review. |
|
Back to top |
|
|
pragma
Joined: 28 May 2004 Posts: 607 Location: Washington, DC
|
Posted: Thu Aug 18, 2005 4:26 pm Post subject: Re: Open source projects using Ares |
|
|
Derek Parnell wrote: | I have an issue here with using Ares, and/or Mango, with open source projects. If I used either in Build it would add one or more extras things to do for people to recompile Build on their system. I mean, do I also package up a copy of the Ares/Mango .lib file with Build? Or do I just make a reference to the download page for these libraries and tell people that they need a (specific?) version of Ares or Mango, if they want to compile Build? |
IMO, just bundle up the requisite verison source code for Mango and/or Ares and provide them alongside Build. At least that way, you'd be sure that Build will always compile as the user would have access to the correct version of Build's dependencies.
A slightly different way to go would be to teach Build how to create dependency-complete "source bundles" (a zip or jar would work great) of code that given program needs to compile. That way the source distribution would be a version-exact source tree for just that program, no more, no less. _________________ -- !Eric.t.Anderton at gmail |
|
Back to top |
|
|
|