|
|
Label: ♦english
♦miscellaneous
|
[238] Thoughts about Dao and its development |
Comment |
Nightwalker
created at Sunday, 2010-05-23, 13:34:24
Nightwalker
modified at Sunday, 2010-05-23, 13:38:32
1 Replies, 945 Hits
Eventually, I've decided to present some of my thoughts about Dao. Some remarks, proposals and questions. I am really interested in growth and improvement of Dao VM, so in this way I'm trying to participate in that process at least a little.
As a language Dao has impressive capabilities combined with convenience, which already made it remarkable (on my opinion). But as a virtual machine it still needs serious improvements. For instance, concerning error diagnostics. Currently even some trivial syntax errors in Dao code may lead to unpredictable results. More serious ones may require significant efforts to find and fix them (by the way, latest DVM still crashes when it encounters division by zero). Now it is the main reason for me to think twice if I am to choose, for example, between C++ and Dao to carry out some task. Enhancing DVM's error diagnostics capabilities and increasing its reliability would make Dao much more attractive.
Besides, is it possible to change the way Dao script is compiled by VM? The fact that some sort of dynamic, runtime compilation is performed makes it difficult to check all the code at once (or some class's code, for example) in order to find possible compile-time errors. Some way to do such a thing would be of great help.
Also, some language features look unfinished. Here are few examples. For-in loop is not able to change content of a list containing atomic (non-reference) elements. Moreover, why does array cannot be used in such loop? It is possible to create a variable of pair type, but I found no way to access it's content. Compound operator like += can be successfully used with array slices like arr[0:arr.size() - 1] , but not with arr[] , which should be the same (actually, in latter case += is equivalent to =). Certainly, the things I just mentioned aren't of great importance for programming in Dao, but it may cause some confusion when the feature supposed to work apparently doesn't work.
All I wrote here is not a criticism but simply my vision of Dao at the current moment. I hope these remarks will be of some use. Nevertheless, Dao project is quite an interesting and promising thing at all.
Comments
fu commented at Monday, 2010-05-24, 06:00:57
These problems you mentioned need definitely to be worked out. Besides fixing those specific problems (such as division by zero, iteration over array, element modification in for-in loop etc.), I will put more efforts on improving support for error diagnosis, and finish some of those unfinished implementations. No worry that your remarks would be seen as criticism, it's clear that your remarks are intended for the good of this language, so they are always appreciated.
|
| | | 1 | 2 | 3 |
4 | 5 | 6 |
7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 |
fu: ...
I forgot to say something about the plan for the whole new year in my previous reply. Well, besides w ... (Jan.19,01:40)
fu: ...
Happy new dragon year (which will start from this sunday)!
Actually, it was a busy month (I wish th ... (Jan.18,22:46)
|