Jump to page: 1 25  
Page
Thread overview
Some questions on latest work
Apr 25, 2016
Bienlein
Apr 26, 2016
Bill Hicks
Apr 26, 2016
bigsandwich
Apr 26, 2016
Bill Hicks
Apr 26, 2016
Bill Hicks
Apr 27, 2016
Meta
Apr 27, 2016
Bill Hicks
Apr 27, 2016
jmh530
Apr 27, 2016
Abdulhaq
Apr 27, 2016
Jeremy DeHaan
Apr 27, 2016
Bienlein
Apr 27, 2016
jkpl
Apr 28, 2016
WhatMeWorry
Apr 28, 2016
Walter Bright
May 04, 2016
Bill Hicks
May 04, 2016
Abdulhaq
Apr 26, 2016
Stefan Koch
Apr 26, 2016
Suliman
Apr 26, 2016
ag0aep6g
Apr 26, 2016
Joakim
Apr 26, 2016
ag0aep6g
Apr 26, 2016
deadalnix
Apr 26, 2016
Era Scarecrow
Apr 27, 2016
Max Samukha
Apr 28, 2016
Joakim
Apr 28, 2016
Timon Gehr
Apr 28, 2016
H. S. Teoh
Apr 29, 2016
Walter Bright
Apr 29, 2016
Joakim
Apr 27, 2016
Bill Hicks
May 01, 2016
Bill Hicks
May 01, 2016
Seb
May 04, 2016
Bruno Medeiros
May 04, 2016
Bill Hicks
May 04, 2016
Gary Willoughby
Apr 27, 2016
Israel
Apr 27, 2016
NX
Apr 26, 2016
deadalnix
Apr 26, 2016
Bienlein
Apr 26, 2016
cym13
Apr 29, 2016
Bienlein
May 03, 2016
tsbockman
May 04, 2016
Bienlein
Apr 26, 2016
Adam D. Ruppe
April 25, 2016
Hello,

I've been busy with other things for about a year and would like to ask some questions to catch up with latest language/library additions in D. Looking through the change logs simply appeared to be a bit tedious. My questions might look a bit like asking pain point questions on purpose, but it's really only about catching up with the status on some issues:

* There was a problem with the GC leaking memory in some situations. Is this still the case?

* There was some talk about changing the standard library in a way that it can be used with the GC and without. My question is what the current status is concerning this topic.

* RefCounted only used to work with structs. It would be useful if it worked with classes as well. Is it being considered to work on this?

Thanks for any answers.
Regards, Bienlein
April 26, 2016
On Monday, 25 April 2016 at 21:20:04 UTC, Bienlein wrote:
> Hello,
>
> I've been busy with other things for about a year and would like to ask some questions to catch up with latest language/library additions in D. Looking through the change logs simply appeared to be a bit tedious. My questions might look a bit like asking pain point questions on purpose, but it's really only about catching up with the status on some issues:
>
> Thanks for any answers.
> Regards, Bienlein

To be frank, if you are using D for anything more than a throwaway hobby project, I have to tell you, D is a failed language, so stop wasting your time.  The people who think that one day D is going to replace or threaten C++, or for that matter any other programming language, are delusional.  No offense to all those who have spent great amount of time contributing to D, but people need to accept reality.

Five years ago Rust was not even a blip on the radar; however, over the years it has gained steady momentum.  It has a larger and ever-growing users and contributors, as well as many PL researchers that will ensure the language is future-proof for the next 10-20 years and beyond.  If you are running away from C++, Rust should be your first choice as a systems programming language.  And with all the 'improvements' that C++ has received, and will receive, there is really not much room left for D.

D also has many flaws, and they don't know how to fix them or won't, specially not without breaking backward compatibility.  If you have a GC that is not optional, then you don't have a systems programming language.  They finally recognized that, and decided to remove all GC from Phobos so that they case say "see, no GC."  Even the basic containers that are available in C++ are missing in Phobos.  Why? Because of allocators, which are in experimental stage.  How many years did that take?  Over five years.  Good luck implementing some fancy container and hope you won't have to rewrite it again in the future.  Nowadays they're spending time implementing stupid features that nobody cares about or needs.  And why DMD still uses its own back-end and not GCC or LLVM is beyond me.  I guess you look really good on your resume for reinventing such a big wheel, but it's a foolish and arrogant mistake that has not benefited D.  And the idea of a foundation was proposed many years ago, but I suppose back then people were fantasizing about the day that Facebook would poor millions of dollars into D, but that never happened.  And Facebook's decision to no longer host DConf was a heavy blow.  The list goes on and on and one...
April 26, 2016
On Tuesday, 26 April 2016 at 01:04:21 UTC, Bill Hicks wrote:
> On Monday, 25 April 2016 at 21:20:04 UTC, Bienlein wrote:
>> [...]
>
> To be frank, if you are using D for anything more than a throwaway hobby project, I have to tell you, D is a failed language, so stop wasting your time.  The people who think that one day D is going to replace or threaten C++, or for that matter any other programming language, are delusional.  No offense to all those who have spent great amount of time contributing to D, but people need to accept reality.
>
> [...]

1) This rant has nothing to do with OP's questions.  It does not help him.

2) I'm not sure what you are so angry about.  D seems to be making slow but steady progress.  Its a community driven project, and its free.  If you would rather use C++ or Rust, you know where to find them.
April 25, 2016
On 04/25/2016 09:04 PM, Bill Hicks wrote:
> On Monday, 25 April 2016 at 21:20:04 UTC, Bienlein wrote:
>> Hello,
>>
>> I've been busy with other things for about a year and would like to
>> ask some questions to catch up with latest language/library additions
>> in D. Looking through the change logs simply appeared to be a bit
>> tedious. My questions might look a bit like asking pain point
>> questions on purpose, but it's really only about catching up with the
>> status on some issues:
>>
>> Thanks for any answers.
>> Regards, Bienlein
>
> To be frank, if you are using D for anything more than a throwaway hobby
> project, I have to tell you, D is a failed language, so stop wasting
> your time.  The people who think that one day D is going to replace or
> threaten C++, or for that matter any other programming language, are
> delusional.  No offense to all those who have spent great amount of time
> contributing to D, but people need to accept reality.
>
> Five years ago Rust was not even a blip on the radar; however, over the
> years it has gained steady momentum.  It has a larger and ever-growing
> users and contributors, as well as many PL researchers that will ensure
> the language is future-proof for the next 10-20 years and beyond.  If
> you are running away from C++, Rust should be your first choice as a
> systems programming language.  And with all the 'improvements' that C++
> has received, and will receive, there is really not much room left for D.
>
> D also has many flaws, and they don't know how to fix them or won't,
> specially not without breaking backward compatibility.  If you have a GC
> that is not optional, then you don't have a systems programming
> language.  They finally recognized that, and decided to remove all GC
> from Phobos so that they case say "see, no GC." Even the basic
> containers that are available in C++ are missing in Phobos.  Why?
> Because of allocators, which are in experimental stage.  How many years
> did that take?  Over five years.  Good luck implementing some fancy
> container and hope you won't have to rewrite it again in the future.
> Nowadays they're spending time implementing stupid features that nobody
> cares about or needs. And why DMD still uses its own back-end and not
> GCC or LLVM is beyond me.  I guess you look really good on your resume
> for reinventing such a big wheel, but it's a foolish and arrogant
> mistake that has not benefited D.  And the idea of a foundation was
> proposed many years ago, but I suppose back then people were fantasizing
> about the day that Facebook would poor millions of dollars into D, but
> that never happened.  And Facebook's decision to no longer host DConf
> was a heavy blow.  The list goes on and on and one...

That's a pretty awesome rant! Bill, could you please email me your mailing address? I'd be glad to send you a DConf T-shirt. Thanks! -- Andrei
April 26, 2016
On Tuesday, 26 April 2016 at 01:04:21 UTC, Bill Hicks wrote:
> On Monday, 25 April 2016 at 21:20:04 UTC, Bienlein wrote:
>> [...]
>
> To be frank, if you are using D for anything more than a throwaway hobby project, I have to tell you, D is a failed language, so stop wasting your time.  The people who think that one day D is going to replace or threaten C++, or for that matter any other programming language, are delusional.  No offense to all those who have spent great amount of time contributing to D, but people need to accept reality.
>
> [...]

I cannot believe what I just read ...
Anyhow have fun!
April 26, 2016
Ok, let's get out of this stupid troll and have some actual answers

On Monday, 25 April 2016 at 21:20:04 UTC, Bienlein wrote:
> Hello,
>
> I've been busy with other things for about a year and would like to ask some questions to catch up with latest language/library additions in D. Looking through the change logs simply appeared to be a bit tedious. My questions might look a bit like asking pain point questions on purpose, but it's really only about catching up with the status on some issues:
>
> * There was a problem with the GC leaking memory in some situations. Is this still the case?
>

As far as I know, this is not an issue on 64bits. On 32 bits, nothing fundamental changed, but the compiler got a bit smarter about alocating with the no scan flag, so that's better.

> * There was some talk about changing the standard library in a way that it can be used with the GC and without. My question is what the current status is concerning this topic.
>

Most of phobos is usable without a GC now, and it is getting better with every releases.

> * RefCounted only used to work with structs. It would be useful if it worked with classes as well. Is it being considered to work on this?
>

I don't know for that one, but if that doesn't work with classes, this is indeed a problem worth solving.

April 26, 2016
On Tuesday, 26 April 2016 at 01:04:21 UTC, Bill Hicks wrote:
> If you are running away from C++, Rust should be your first choice as a systems programming language.

Are you joking? When I am reading it's code my eyes begin to bleed. It's syntax is terrible.

Look at it:

enum Edge<T> {
	Edge(Option<T>),
	Nothing
}

impl<T> fmt::Display for Edge<T> {
	fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
		write!(f, "{}", match self {
			&Edge::Edge(_)        => "E",
			&Edge::Nothing        => "-",
		})
	}
}

impl<T: fmt::Display> fmt::Display for Edge<T> {
	fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
		write!(f, "{}({})", match self {
			&Edge::Edge(_)        => "E",
			&Edge::VirtualEdge(_) => "e",
			&Edge::Nothing        => "-",
		}, match self {
			&Edge::Edge(Some(v))        => v,
			&Edge::VirtualEdge(Some(v)) => v,
			_                           => "-"
		})
	}
}

Do you really think that modern language should like this?

I talked with a lot of rust fun-boys. Most of them do not understand do not understand the code of their favourite language.

Rust will die when Mozilla will move to WebKit. I much more believe in Swift success, that that Rust have any future.


April 26, 2016
Hi deadalnix,

thanks for taking the time to answer my questions. The issue with RefCounted and classes appears to be fixed. I found this: http://wiki.dlang.org/DIP74. I also found evidence on the Internet that the GC leaking memory is only an issue with 32 bit machines. Looks like I could have just googled those things. Didn't expect things to be that easy. Anyway, thanks for answering.

With regard to Rust I think it is a very well thought out language also with an ecosystem that is well thought out (e.g. crates, module system, and other things). But it is for pure systems programming. I will not enter this area any more in this life, but do my stuff in Java and have some performance critical parts in C++. For that purpose modelling power still matters and I find Rust falls short in this area (which is probably fine for a pure systems language) whereas C++ and D are very well equipped for this.

Cheers, Bienlein
April 26, 2016
On Tuesday, 26 April 2016 at 12:19:40 UTC, Bienlein wrote:
> Hi deadalnix,
>
> thanks for taking the time to answer my questions. The issue with RefCounted and classes appears to be fixed. I found this: http://wiki.dlang.org/DIP74. I also found evidence on the Internet that the GC leaking memory is only an issue with 32 bit machines. Looks like I could have just googled those things. Didn't expect things to be that easy. Anyway, thanks for answering.

Beware that what you found is but an Improvement Proposal, it hasn't been accepted in its current state yet and it hasn't been implemented either.
April 26, 2016
On Tuesday, 26 April 2016 at 04:37:03 UTC, deadalnix wrote:
> On 32 bits, nothing fundamental changed, but the compiler
> got a bit smarter about alocating with the no scan flag,
> so that's better.

Indeed, though any large array is liable to be pinned by a false pointer on 32 bit, even with no_scan.

I actually recommend malloc/free large arrays with easy lifetimes on 32 bit just to avoid those accidental leaks.

64 bit is fine though.

> I don't know for that one, but if that doesn't work with classes, this is indeed a problem worth solving.

I think it kinda works now but not very well because the ref countedness gets lost in inheritance. If it implements two interfaces for example, it cannot properly express that implicit conversion.

Usable though AFAIK, just clunky.
« First   ‹ Prev
1 2 3 4 5