www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - D mentioned and criticized

reply Chris <wendlec tcd.ie> writes:
I had a look at Loci, more specifically the language goals[1]:

"While technically useful, the C programming language is often 
perceived as lacking sufficiently powerful abstractions to 
construct large and complex systems. For this reason, languages 
such as C++, Objective C and D were invented to provide 
abstractions on top of the language.

Unfortunately, these languages have significant problems. For 
example, C++ and D place undue attention to compile-time 
functionality that serves to complicate the source code."

I wonder what they mean specifically. Looking at Loci code, I can 
see more or less the same ideas, and a syntax similar to C++ and 
D.

The author goes on to talk about C++'s complicated semantics, 
which is fair enough. But it gives readers the impression that D 
is more or less the same as C++ and thus has the same problems. I 
think it's not fair to lump C++ and D together in this way.

[1] http://loci-lang.org/LanguageGoals.html
May 16 2016
next sibling parent reply Jonathan M Davis via Digitalmars-d <digitalmars-d puremagic.com> writes:
On Monday, May 16, 2016 18:25:23 Chris via Digitalmars-d wrote:
 The author goes on to talk about C++'s complicated semantics,
 which is fair enough. But it gives readers the impression that D
 is more or less the same as C++ and thus has the same problems. I
 think it's not fair to lump C++ and D together in this way.
Well, it's pretty easy to lump in C++ with D given that out of all of the successors to C++, D is the most similar to it. And while D is definitely simpler than C++, it's still a complicated language. So, I could easily see someone dismissing D as having C++'s problems if they didn't spend much time with it. But I have no idea what the case is with these folks. I'd never heard of Loci before you brought it up here. - Jonathan M Davis
May 16 2016
parent reply Chris <wendlec tcd.ie> writes:
On Tuesday, 17 May 2016 at 01:20:16 UTC, Jonathan M Davis wrote:
 On Monday, May 16, 2016 18:25:23 Chris via Digitalmars-d wrote:

 Well, it's pretty easy to lump in C++ with D given that out of 
 all of the successors to C++, D is the most similar to it. And 
 while D is definitely simpler than C++, it's still a 
 complicated language. So, I could easily see someone dismissing 
 D as having C++'s problems if they didn't spend much time with 
 it. But I have no idea what the case is with these folks. I'd 
 never heard of Loci before you brought it up here.

 - Jonathan M Davis
Ola first mentioned Loci in a recent thread. I'm always in favor of new PLs and / or ways of thinking. But I don't think it's good style to mention D in this way while not giving at least some reasons for doing so. To talk about C++'s problems instead is misleading. Given Loci's features, the complexity is or will soon be similar to D's. Just look at the templates. D also started out as a simple language, but as features are required and added, complexity increases. That's only natural. I'll keep an eye on it anyway.
May 17 2016
parent reply Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= writes:
On Tuesday, 17 May 2016 at 08:29:22 UTC, Chris wrote:
 Ola first mentioned Loci in a recent thread. I'm always in 
 favor of new PLs and / or ways of thinking. But I don't think 
 it's good style to mention D in this way while not giving at 
 least some reasons for doing so.
I think he was more elaborate in an earlier version of the website. IIRC he was a D user, but gave up on the language due to the design/development process that he felt was going nowhere. I think the main feature in Loci compared to C++ is that you can dynamically add interfaces to existing libraries from other languages using structural typing. So you can add polymorphism layers to existing C frameworks just by having pointers. http://loci-lang.org/StructuralTyping.html
May 17 2016
parent Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= writes:
On Tuesday, 17 May 2016 at 11:42:45 UTC, Ola Fosheim Grøstad 
wrote:
 On Tuesday, 17 May 2016 at 08:29:22 UTC, Chris wrote:
 Ola first mentioned Loci in a recent thread. I'm always in 
 favor of new PLs and / or ways of thinking. But I don't think 
 it's good style to mention D in this way while not giving at 
 least some reasons for doing so.
I think he was more elaborate in an earlier version of the website. IIRC he was a D user, but gave up on the language due to the design/development process that he felt was going nowhere. I think the main feature in Loci compared to C++ is that you can dynamically add interfaces to existing libraries from other languages using structural typing. So you can add polymorphism layers to existing C frameworks just by having pointers. http://loci-lang.org/StructuralTyping.html
Using fat pointers, one to the data and one to the interface: http://loci-lang.org/DynamicDispatch.html
May 17 2016
prev sibling parent reply Xinok <xinok live.com> writes:
On Monday, 16 May 2016 at 18:25:23 UTC, Chris wrote:
 I had a look at Loci, more specifically the language goals[1]:
 ...
I've been skimming through the docs and found one mention of D: http://loci-lang.org/Exceptions.html#scope-exit-block It seems to me that Loci is not a very "inspired" language meaning that it doesn't take inspiration from many other languages. The docs only ever refer to some classic mainstream are a few nice aspects such as modules, algebraic types, tuples, and concepts. But then I feel like it takes too much from C++ and mimics Java-esque OOP and concepts. I'm not saying these are bad things but there isn't much that makes Loci stand out as a programming language. I'll add this to my list of PL bookmarks. It's a new language with it's first stable build released just two years ago so maybe the best is yet to come.
May 16 2016
parent reply Guillaume Piolat <contact gam3sfrommars.fr> writes:
On Tuesday, 17 May 2016 at 01:29:15 UTC, Xinok wrote:
 On Monday, 16 May 2016 at 18:25:23 UTC, Chris wrote:
 I had a look at Loci, more specifically the language goals[1]:
 ...
I've been skimming through the docs and found one mention of D: http://loci-lang.org/Exceptions.html#scope-exit-block It seems to me that Loci is not a very "inspired" language meaning that it doesn't take inspiration from many other languages. The docs only ever refer to some classic mainstream There are a few nice aspects such as modules, algebraic types, tuples, and concepts. But then I feel like it takes too much from C++ and mimics Java-esque OOP and concepts. I'm not saying these are bad things but there isn't much that makes Loci stand out as a programming language.
Nim is much more interesting a.
May 17 2016
parent reply Guillaume Piolat <contact gam3sfrommars.fr> writes:
On Tuesday, 17 May 2016 at 11:58:57 UTC, Guillaume Piolat wrote:
 On Tuesday, 17 May 2016 at 01:29:15 UTC, Xinok wrote:
 It seems to me that Loci is not a very "inspired" language 
 meaning that it doesn't take inspiration from many other 
 languages. The docs only ever refer to some classic mainstream 

 There are a few nice aspects such as modules, algebraic types, 
 tuples, and concepts. But then I feel like it takes too much 
 from C++ and mimics Java-esque OOP and concepts. I'm not 
 saying these are bad things but there isn't much that makes 
 Loci stand out as a programming language.
Nim is much more interesting as a D alternative, in the sense that it is a.
May 17 2016
parent reply Guillaume Piolat <contact gam3sfrommars.fr> writes:
On Tuesday, 17 May 2016 at 12:00:53 UTC, Guillaume Piolat wrote:
 Nim is much more interesting as a D alternative, in the sense 
 that it is a.
I give up, kept pressing ENTER while typing a message.
May 17 2016
next sibling parent Chris <wendlec tcd.ie> writes:
On Tuesday, 17 May 2016 at 12:02:02 UTC, Guillaume Piolat wrote:
 On Tuesday, 17 May 2016 at 12:00:53 UTC, Guillaume Piolat wrote:
 Nim is much more interesting as a D alternative, in the sense 
 that it is a.
I give up, kept pressing ENTER while typing a message.
"... in the sense that it is a" ???
May 17 2016
prev sibling parent reply Abdulhaq <alynch4047 gmail.com> writes:
On Tuesday, 17 May 2016 at 12:02:02 UTC, Guillaume Piolat wrote:
 On Tuesday, 17 May 2016 at 12:00:53 UTC, Guillaume Piolat wrote:
 Nim is much more interesting as a D alternative, in the sense 
 that it is a.
I give up, kept pressing ENTER while typing a message.
Please finish, I have to know what follows "a" :-)
May 18 2016
parent reply Guillaume Piolat <first.last gmail.com> writes:
On Wednesday, 18 May 2016 at 21:45:16 UTC, Abdulhaq wrote:
 On Tuesday, 17 May 2016 at 12:02:02 UTC, Guillaume Piolat wrote:
 On Tuesday, 17 May 2016 at 12:00:53 UTC, Guillaume Piolat 
 wrote:
 Nim is much more interesting as a D alternative, in the sense 
 that it is a.
I give up, kept pressing ENTER while typing a message.
Please finish, I have to know what follows "a" :-)
Nim is much more interesting as a D alternative, in the sense that it is a more radical departure from C++. Be it in syntax, meta-programming, and experimental features. It certainly said no to variable-sized integers, while Loci stays with them.
May 19 2016
next sibling parent Abdulhaq <alynch4047 gmail.com> writes:
On Thursday, 19 May 2016 at 13:53:46 UTC, Guillaume Piolat wrote:
 On Wednesday, 18 May 2016 at 21:45:16 UTC, Abdulhaq wrote:
 On Tuesday, 17 May 2016 at 12:02:02 UTC, Guillaume Piolat 
 wrote:
 On Tuesday, 17 May 2016 at 12:00:53 UTC, Guillaume Piolat 
 wrote:
 Nim is much more interesting as a D alternative, in the 
 sense that it is a.
I give up, kept pressing ENTER while typing a message.
Please finish, I have to know what follows "a" :-)
Nim is much more interesting as a D alternative, in the sense that it is a more radical departure from C++. Be it in syntax, meta-programming, and experimental features. It certainly said no to variable-sized integers, while Loci stays with them.
Thanks :-) - interesting.
May 19 2016
prev sibling parent Chris <wendlec tcd.ie> writes:
On Thursday, 19 May 2016 at 13:53:46 UTC, Guillaume Piolat wrote:
 On Wednesday, 18 May 2016 at 21:45:16 UTC, Abdulhaq wrote:
 On Tuesday, 17 May 2016 at 12:02:02 UTC, Guillaume Piolat 
 wrote:
 On Tuesday, 17 May 2016 at 12:00:53 UTC, Guillaume Piolat 
 wrote:
 Nim is much more interesting as a D alternative, in the 
 sense that it is a.
I give up, kept pressing ENTER while typing a message.
Please finish, I have to know what follows "a" :-)
Nim is much more interesting as a D alternative, in the sense that it is a more radical departure from C++. Be it in syntax, meta-programming, and experimental features. It certainly said no to variable-sized integers, while Loci stays with them.
It certainly is interesting. The fact that it compiles to C, C++ or Objective-C is also pretty handy. What turns me off is obligatory indentation à la Python :(, and I don't know how the fact that it compiles to C affects the language as a whole.
May 19 2016