D - friendly hello
- Axel Kittenberger (64/64) Aug 17 2001 Hi!
- Walter (72/72) Aug 17 2001 I wish you luck with Dtone. It looks like a worthy effort. It's fun to s...
- Axel Kittenberger (10/18) Aug 17 2001 However it's also fun to see the "zeitgeist" in language designs, how
- Anthony Steele (5/7) Sep 09 2001 The more I think about this the more sense it makes. More times than I c...
Hi! As most of the burst last time (slashdot effect) I also heared by slashdot over your project. Well I'm working since ~7 months on a rather similar project, I even thought a while calling it 'D' also, but (no offence) on a second consideration I considered it after the long existance of C today a little arrogant to claim a single letter for my thoughts. Well let's be happy since otherwise we would be facing a heavy name clash right now :o) I simply added a 'tone' to the D so it resulted in 'Dtone', well difficult to speak and to tell a friend, but easy to find in a search engine once you know how to spell :o) But according to shakespear: "What's in a name?" :o) Okay back to the technical stuff. In principle it are the same ideas, enhance the existing C language syntax with a modern (java like) structure but without breaking native compability. My project is a hobby only and is of course 100% OpenSource. (the compiler is GPL, the user libraries LGPL, and the examples public domain). As many new languages I'm using the hybrid approach, generating in the backend traditional c code. It's easy to do and easy to debug, and in contrast I'm a rather unexpirienced compiler writer, since this is actually my first "real" compiler (beside some experiments). Oh nearly forgot a link :o) http://www.dtone.org - One thing I noticed you're using 'char', 'short', 'long', etc. I'm personally a fan for calling things like they are. Why is a 2 byte memory place called "short"? And how will the future be? How will we call types if the first 128 bit computers come out? "extreme", "mega"? Well I'm using int8, int16, int32, uint8, uint16, uint32 and byte This names actually call things just like they are, and is open extensable. The difference between byte and uint8 is that one is used for 256 integers and the other for ascii text. - I also used the idea to use int32[] some_array; an array undefined size, however the difference is the Dtone compiler does not maintain dynamic arrays, it's the programmer responsiblity to take care it "points" to something valid. If the programmer wants a maintained array he needs to use a 'Vector' class as usual. The [] syntax is actually a replacement for the int * foobar; - From a programmers point of view I don't like the source code to be subordinated by the documentation, with the <code> statements, I think of situations if the tech writer is somebody different than the programmer, failures of the tech writer could change the code! - I had actually absolute no problems implementing multiple inheritance. But actually just because I did not allow diamond constructs. This simplifies the compiler writers task a lot. And is at least as powerfull as the interface structure, which is in my opinion just a workaround to a restriction java set itself firstplace. - How are you planning to use 'const'? Just as in C? The specs completly miss it. In example I'm using following syntax for const arrays: currently: int32[~] const_array; in future maybe: int32[const] const_array; - As I'm hearing you're using a properitary backend :o(, this will of course make most source based cooperations nearly impossible, since even if you're frontend is GPL the license will have to have an special exception ("expanded") to be allowed to link with your backend. Well however I wanted to introduce myself kindly, and say hello. I hope we'll both have a fruitful future. - Axel
Aug 17 2001
I wish you luck with Dtone. It looks like a worthy effort. It's fun to see what different ideas people have with languages. I know it's a very long shot for a single person to design a new language and make it a success, but since I have all the other bits necessary to make a reasonably complete system, why not try. I'm tired of saying how I would have done language X differently, it's time to actually try making one. I've gotten a lot of positive responses, encouraging me to move forward with it. -Walter Axel Kittenberger wrote in message <9limhk$14en$1 digitaldaemon.com>... Hi! As most of the burst last time (slashdot effect) I also heared by slashdot over your project. Well I'm working since ~7 months on a rather similar project, I even thought a while calling it 'D' also, but (no offence) on a second consideration I considered it after the long existance of C today a little arrogant to claim a single letter for my thoughts. Well let's be happy since otherwise we would be facing a heavy name clash right now :o) I simply added a 'tone' to the D so it resulted in 'Dtone', well difficult to speak and to tell a friend, but easy to find in a search engine once you know how to spell :o) But according to shakespear: "What's in a name?" :o) Okay back to the technical stuff. In principle it are the same ideas, enhance the existing C language syntax with a modern (java like) structure but without breaking native compability. My project is a hobby only and is of course 100% OpenSource. (the compiler is GPL, the user libraries LGPL, and the examples public domain). As many new languages I'm using the hybrid approach, generating in the backend traditional c code. It's easy to do and easy to debug, and in contrast I'm a rather unexpirienced compiler writer, since this is actually my first "real" compiler (beside some experiments). Oh nearly forgot a link :o) http://www.dtone.org - One thing I noticed you're using 'char', 'short', 'long', etc. I'm personally a fan for calling things like they are. Why is a 2 byte memory place called "short"? And how will the future be? How will we call types if the first 128 bit computers come out? "extreme", "mega"? Well I'm using int8, int16, int32, uint8, uint16, uint32 and byte This names actually call things just like they are, and is open extensable. The difference between byte and uint8 is that one is used for 256 integers and the other for ascii text. - I also used the idea to use int32[] some_array; an array undefined size, however the difference is the Dtone compiler does not maintain dynamic arrays, it's the programmer responsiblity to take care it "points" to something valid. If the programmer wants a maintained array he needs to use a 'Vector' class as usual. The [] syntax is actually a replacement for the int * foobar; - From a programmers point of view I don't like the source code to be subordinated by the documentation, with the <code> statements, I think of situations if the tech writer is somebody different than the programmer, failures of the tech writer could change the code! - I had actually absolute no problems implementing multiple inheritance. But actually just because I did not allow diamond constructs. This simplifies the compiler writers task a lot. And is at least as powerfull as the interface structure, which is in my opinion just a workaround to a restriction java set itself firstplace. - How are you planning to use 'const'? Just as in C? The specs completly miss it. In example I'm using following syntax for const arrays: currently: int32[~] const_array; in future maybe: int32[const] const_array; - As I'm hearing you're using a properitary backend :o(, this will of course make most source based cooperations nearly impossible, since even if you're frontend is GPL the license will have to have an special exception ("expanded") to be allowed to link with your backend. Well however I wanted to introduce myself kindly, and say hello. I hope we'll both have a fruitful future. - Axel
Aug 17 2001
I wish you luck with Dtone. It looks like a worthy effort.Thanks for the jolly words.It's fun to see what different ideas people have with languages.However it's also fun to see the "zeitgeist" in language designs, how people have surprisingly common ideas.I know it's a very long shot for a single person to design a new language and make it a success, but since I have all the other bits necessary to make a reasonably complete system, why not try.Well I'll have to rely what the GNU worlds offers, bison is an acceptable parser genartor, and gcc could provide a fabalous backend/optimizer, however for now the simpler hybrid approach has to sufficie.I'm tired of saying how I would have done language X differently, it's time to actually try making one. I've gotten a lot of positive responses, encouraging me to move forward with it.Thats very true indeed, similar thoughts got me starting to make a language project. I could either complain for the rest of my life how C/C++/Java/Pascal each suck in their own way, or I could roll up my sleves and start doing something.
Aug 17 2001
"Axel Kittenberger" <axel dtone.org> wrote in message news:9limhk$14en$1 digitaldaemon.com...Well I'm using int8, int16, int32, uint8, uint16, uint32 and byte This names actually call things just like they are,The more I think about this the more sense it makes. More times than I care to think about, I have declared a var, say of type 'integer', whilst muttering 'int is 4 bytes' under my breath.
Sep 09 2001