Walter Bright wrote:
Jeremie Pelletier wrote:
watching wrote:
most programmer want use the language and a lot libraries that come
with it. instead of gui, db etc. you guys discuss until all
prospective users are gone off to use something that lets them do the
job
maybe it is time to put a large effort into libraries by all the
bright people that are arroung d.
The IDE I'm developing is exactly for that purpose, to bring more
people to D and to make writing D code more convenient.
Exactly, and I'm most pleased to see you and others stepping up to fill
in the gaps.
Thanks!
The D language doesn't need to come with tons of libraries out of the
box, its a systems language after all; C++ only comes with the STL and
C with the stdlib, you need platform headers and third party libraries
to do something more than a simple console program.
While that's true that C and C++ became successful with minimal
libraries, I think the bar is much higher these days. Looking at the go
library, there's a lot in there we could use in the D library.
http://golang.org/pkg/
The library is licensed under the
http://creativecommons.org/licenses/by/3.0/
meaning we can adapt it to D.
It's true that the bar for bundled libraries is higher nowadays; I
wouldn't touch C++ without boost for one.
The go library is rather impressive, I'm used to seeing that much out of
the box only in interpreted languages. In any ways its only a matter of
time before phobos catches on.
In any ways, I believe its a good thing to use multiple languages to
better understand the differences between them, the end result doesn't
change. I could've used java, C#, python or even mozilla's XUL with
javascript and the IDE would've been the same.
I disagree, as then the IDE would be dependent on those large
ecosystems. One nice thing about native apps is they stand alone.
One thing I do suggest is writing it in a "D-ish" style so that it will
be easier to translate to D at some point.
That's what I'm already doing, the STL and boost make it much easier to
do. I have string_t, wstring_t and dstring_t types derived from
std::basic_string to cover D strings, as well as ustring_t which is set
to the platform's native unicode encoding. I derived std::exception into
Exception and Error to behave like D's exceptions, used
boost::lexical_cast to create to<>() templates, I'm using struct and
class as they would be used in D (POD vs polymorphic object) using only
single inheritance and a lot of other support code to make a future port
as easy and straightforward as possible.
Jeremie