www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - what is the definition of new programming language

reply Sean <xiangc stud.fh-luebeck.de> writes:
Maybe this is an old topic or maybe this is a stupid question. But I am really
confusing about it.
I learned C programming language in high school, and then I learned C++ in the
first year in university. C++ likes opening a new world to me and gives me a
new feeling about how to think the problems and how to construct the programs.
The D language has lots of good features, I am exciting about these features,
but I can not feel as exciting as when I learn the C++ language. I do not know
weather because it does not have a new thinking style about how to programming
or something else.
Anyway, it is a really good language. But what is the definition of new
programming language?
Nov 07 2007
next sibling parent Bill Baxter <dnewsgroup billbaxter.com> writes:
Sean wrote:
 Maybe this is an old topic or maybe this is a stupid question. But I am really
confusing about it.
 I learned C programming language in high school, and then I learned C++ in the
first year in university. C++ likes opening a new world to me and gives me a
new feeling about how to think the problems and how to construct the programs.
 The D language has lots of good features, I am exciting about these features,
but I can not feel as exciting as when I learn the C++ language. I do not know
weather because it does not have a new thinking style about how to programming
or something else.
 Anyway, it is a really good language. But what is the definition of new
programming language?

One created after C++? What does it matter? If you want the same sort of Wow! you got going from C to C++, maybe you should learn a functional programming language next, like Scheme, Lisp, Haskell or OCaml. Then come back to D when you're done having fun and ready to do some real work. :-) --bb
Nov 07 2007
prev sibling next sibling parent Gregor Richards <Richards codu.org> writes:
Sean wrote:
 Maybe this is an old topic or maybe this is a stupid question. But I am really
confusing about it.
 I learned C programming language in high school, and then I learned C++ in the
first year in university. C++ likes opening a new world to me and gives me a
new feeling about how to think the problems and how to construct the programs.
 The D language has lots of good features, I am exciting about these features,
but I can not feel as exciting as when I learn the C++ language. I do not know
weather because it does not have a new thinking style about how to programming
or something else.
 Anyway, it is a really good language. But what is the definition of new
programming language?
 

If forb replaces the word "I" in the English language with the invented pronoun "forb", forb has create a new language. Or has forb? Forb thinks this is a philosophical discussion, the answer to which is actually totally irrelevant. Clearly D is a new language, but even if it wasn't, how would that affect forb's life? Yes, it's the same paradigm as C++ (object orientation), so you're not likely to learn much about Computer Science from learning D, but it's still an extremely useful language. - Gregor Richards
Nov 07 2007
prev sibling next sibling parent Regan Heath <regan netmail.co.nz> writes:
Sean wrote:
 Maybe this is an old topic or maybe this is a stupid question. But I
 am really confusing about it. I learned C programming language in
 high school, and then I learned C++ in the first year in university.
 C++ likes opening a new world to me and gives me a new feeling about
 how to think the problems and how to construct the programs. The D
 language has lots of good features, I am exciting about these
 features, but I can not feel as exciting as when I learn the C++
 language. I do not know weather because it does not have a new
 thinking style about how to programming or something else. Anyway, it
 is a really good language. But what is the definition of new
 programming language?

When I first found D it was all the smaller changes/differences which made me think "hey, that's cool". These things added up over time and I formed a general impression which was "wow, this is really cool". Each time D improves, like the recent "full closures" feature, I think "hey, that's cool" all over again. So, with D, given my long history in C/C++ etc, it's wasn't an immediate "wow" effect that I got but a gradual build up of "wow" if you will. Regan
Nov 08 2007
prev sibling next sibling parent reply simas <simas gmx.net> writes:
Sean Wrote:

 Maybe this is an old topic or maybe this is a stupid question. But I am really
confusing about it.
 I learned C programming language in high school, and then I learned C++ in the
first year in university. C++ likes opening a new world to me and gives me a
new feeling about how to think the problems and how to construct the programs.
 The D language has lots of good features, I am exciting about these features,
but I can not feel as exciting as when I learn the C++ language. I do not know
weather because it does not have a new thinking style about how to programming
or something else.
 Anyway, it is a really good language. But what is the definition of new
programming language?

The question is: why c++ makes you felt this? For me c++ makes solving complex problems simple and c++ reduce the number of code lines (compared to c). But c++ isn't perfect as we know. Every new programming language must help solving problems and writing code simpler, IMO. This is what i felt the first time i wrote a D program. Currently D lose its magic, for me. Things like const/invariant and <"staic".dup> (copy on write) confusing me. This makes writing code not simpler. Some discussion in this NG are very academically. The main point should be "how to solve problems simple and short", IMHO. How you think about this?
Nov 08 2007
next sibling parent Lutger <lutger.blijdestijn gmail.com> writes:
simas wrote:
 Sean Wrote:
 
 Maybe this is an old topic or maybe this is a stupid question. But I am really
confusing about it.
 I learned C programming language in high school, and then I learned C++ in the
first year in university. C++ likes opening a new world to me and gives me a
new feeling about how to think the problems and how to construct the programs.
 The D language has lots of good features, I am exciting about these features,
but I can not feel as exciting as when I learn the C++ language. I do not know
weather because it does not have a new thinking style about how to programming
or something else.
 Anyway, it is a really good language. But what is the definition of new
programming language?

The question is: why c++ makes you felt this? For me c++ makes solving complex problems simple and c++ reduce the number of code lines (compared to c). But c++ isn't perfect as we know. Every new programming language must help solving problems and writing code simpler, IMO. This is what i felt the first time i wrote a D program. Currently D lose its magic, for me. Things like const/invariant and <"staic".dup> (copy on write) confusing me. This makes writing code not simpler. Some discussion in this NG are very academically. The main point should be "how to solve problems simple and short", IMHO. How you think about this?

To me, this feeling of excitement comes from getting to know new *concepts* of programming for the first time. C++ has a whole lot of them, from object-orientation to flexible user defined types, RAII and generic programming. Not all of these concepts are supported well and programming in C++ is certainly not simple to say the least. But there are a whole lot of styles possible in C++, more than in most languages. The attractiveness of D for me is that it basically manages to do two things at once: 1) extend the already large amount of supported programming styles available in C++ and 2) do so in a manner that is less complicated and way more productive. On top of that, it is still a high-performance language. I find this very exciting because it allows the kind of freedom that can be found in C++ without losing that freedom again due to all kinds of messy limitations. </fanboy> While D introduces some features foreign to C-derived languages and perhaps even has some novel designs, it doesn't really sport new concepts that I know of. As said, if you want to find something really new to learn it's worthwile to look at a language like lisp which is quite different than C++.
Nov 08 2007
prev sibling parent reply "Antti Holvikari" <anttih gmail.com> writes:
On 11/8/07, simas <simas gmx.net> wrote:
 The question is: why c++ makes you felt this? For me c++ makes solving complex
problems simple and c++ reduce the number of code lines (compared to c). But
c++ isn't perfect as we know. Every new programming language must help solving
problems and writing code simpler, IMO. This is what i felt the first time i
wrote a D program. Currently D lose its magic, for me. Things like
const/invariant and <"staic".dup> (copy on write) confusing me. This makes
writing code not simpler. Some discussion in this NG are very academically. The
main point should be "how to solve problems simple and short", IMHO. How you
think about this?

I feel exactly like you. It's hard to explain why. All this syntactic sugar just confuses me. Feature after feature, and a 1000 ways to do everything. -- Antti Holvikari
Nov 08 2007
parent reply Bruce Adams <tortoise_74 yeah.woo.co.uk> writes:
Antti Holvikari Wrote:

 
 I feel exactly like you. It's hard to explain why. All this syntactic
 sugar just confuses me. Feature after feature, and a 1000 ways to do
 everything.
 
 -- 
 Antti Holvikari

I have a preferred strategy for games like chess. Prefer moves that give you more options over moves that restrict you. 1000 choices is a good thing. Otherwise, you're shoehorned into writing something in a way that doesn't always work well. Bruce.
Nov 09 2007
parent reply 0ffh <spam frankhirsch.net> writes:
Bruce Adams wrote:
 Antti Holvikari Wrote:
 
 I feel exactly like you. It's hard to explain why. All this syntactic
  sugar just confuses me. Feature after feature, and a 1000 ways to do
  everything.
 

you more options over moves that restrict you. 1000 choices is a good thing. Otherwise, you're shoehorned into writing something in a way that doesn't always work well.

It is like cybernetician Heinz von Försters "Imperative": "Always act in such a manner as to maximise your future possibilities." But note that we are talking abount /semantic/ choices, not /syntactic/! Perl is such a fupped language, because it's cluttered with syntactic choices that do not only /fail to enrich/ its semantics, but do even /obstruct/ elegant and meaningful additions to it. Regards, Frank
Nov 09 2007
next sibling parent reply 0ffh <spam frankhirsch.net> writes:
0ffh wrote:
 Perl is such a fupped language [*], [...]

to be fair I should have added [*]: "outside the set of it's originally intended set of use cases" Regards, Frank
Nov 09 2007
parent Bruce Adams <tortoise_74 yeah.who.co.uk> writes:
0ffh Wrote:

 0ffh wrote:
 Perl is such a fupped language [*], [...]

to be fair I should have added [*]: "outside the set of it's originally intended set of use cases" Regards, Frank

One of perl's orgins is as a combination of sed & awk, which explains rather a lot if you ask me.
Nov 09 2007
prev sibling parent Bruce Adams <tortoise_74 yeah.who.co.uk> writes:
0ffh Wrote:

 Bruce Adams wrote:
 Antti Holvikari Wrote:
 
 I feel exactly like you. It's hard to explain why. All this syntactic
  sugar just confuses me. Feature after feature, and a 1000 ways to do
  everything.
 

you more options over moves that restrict you. 1000 choices is a good thing. Otherwise, you're shoehorned into writing something in a way that doesn't always work well.

It is like cybernetician Heinz von Försters "Imperative": "Always act in such a manner as to maximise your future possibilities." But note that we are talking abount /semantic/ choices, not /syntactic/! Perl is such a fupped language, because it's cluttered with syntactic choices that do not only /fail to enrich/ its semantics, but do even /obstruct/ elegant and meaningful additions to it. Regards, Frank

Let me put that another way. If all you have is a hammer.... everything looks like a nail. I want the whole tool box.
Nov 09 2007
prev sibling next sibling parent "David B. Held" <dheld codelogicconsulting.com> writes:
Sean wrote:
 Maybe this is an old topic or maybe this is a stupid question. But I am really
confusing about it.
 I learned C programming language in high school, and then I learned C++ in the
first year in university. C++ likes opening a new world to me and gives me a
new feeling about how to think the problems and how to construct the programs.
 The D language has lots of good features, I am exciting about these features,
but I can not feel as exciting as when I learn the C++ language. I do not know
weather because it does not have a new thinking style about how to programming
or something else.
 Anyway, it is a really good language. But what is the definition of new
programming language?

Perhaps you aren't using the language to its fullest potential. I experienced the "wow" factor when I saw what D could do with metaprogramming, which goes way beyond any other imperative language that I've run across (and even beats a lot of functional ones to boot). Of course, it's unlikely that you do a lot of metaprogramming unless you write libraries heavily. It should be no surprise that roughly 60 years of programming language design has made the typical programming tasks a commodity for any decent language. The tasks that should surprise you are things that aren't commodity jobs. Dave
Nov 09 2007
prev sibling parent renoX <renosky free.fr> writes:
I think that you'd better ask yourself whether it was truly C++ which 
excited you or because it was your first introduction to object-oriented 
programming, generic programming..

So, no D doesn't provide a new "paradigm", but it's still a much better 
language than C++ is..

Regards,
renoX


Sean a écrit :
 Maybe this is an old topic or maybe this is a stupid question. But I
 am really confusing about it. I learned C programming language in
 high school, and then I learned C++ in the first year in university.
 C++ likes opening a new world to me and gives me a new feeling about
 how to think the problems and how to construct the programs. The D
 language has lots of good features, I am exciting about these
 features, but I can not feel as exciting as when I learn the C++
 language. I do not know weather because it does not have a new
 thinking style about how to programming or something else. Anyway, it
 is a really good language. But what is the definition of new
 programming language?
 

Nov 09 2007