DMD 1.038 and 2.022 releases

Ary Borenszweig ary at esperanto.org.ar
Sat Dec 20 12:07:05 PST 2008


Ary Borenszweig escribió:
> Lars Ivar Igesund escribió:
>> Yigal Chripun wrote:
>>
>>> Denis Koroskin wrote:
>>>> On Sat, 20 Dec 2008 20:41:23 +0300, Yigal Chripun <yigal100 at gmail.com>
>>>> wrote:
>>>>
>>>>> Denis Koroskin wrote:
>>>>>> On Mon, 15 Dec 2008 10:58:23 +0300, Bill Baxter <wbaxter at gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> For me, V1.038 compiles my code but takes a really really really 
>>>>>>> long
>>>>>>> time to do so.
>>>>>>>
>>>>>>> It now takes 1 min 20 secs for a full build, when it used to compile
>>>>>>> in 13 seconds.
>>>>>>> Forget the 60% slowdown from LDC -- this is 515% slower!
>>>>>>>
>>>>>>> (building with DSSS and tango)
>>>>>>>
>>>>>>> --bb
>>>>>>>
>>>>>> I generally make all my imports private and run a command line tool
>>>>>> that strips unnecessary imports once in a while to minimize
>>>>>> intermodular dependencies. Maybe it could help in your case, too?
>>>>> When programming in Java, Eclipse knows to handle all of this for you.
>>>>> it will suggest adding missing imports, it can remove unused imports
>>>>> and it can convert a foo.bar.* into a list of the specific modules you
>>>>> actually used in the code.
>>>>> I wish that kind of tool would be available for D. Is this
>>>>> functionality implemented in descent? if not, is it planned?
>>>>>
>>>>> I do realize that it's more difficult to do this for D than it is for
>>>>> Java, because of Conditional compilation and other issues already
>>>>> mentioned in this thread. But it would be awesome if I could just 
>>>>> write:
>>>>>
>>>>> Stdout("whatever").newline;
>>>>>
>>>>> and get a quick-fix action (Ctrl+1) to add tango.io.Stdout to the list
>>>>> of imports.
>>>>>
>>>>> --Yigal
>>>> You should watch Descent videos on youtube, it is *much* smarter that
>>>> that!
>>>>
>>>> http://www.youtube.com/user/asterite
>>> I watched the video.
>>> the functionality is that if you write: new Foo; it added automatically
>>> an import for Foo. that's very cool and all but I was asking for
>>> something more than that.
>>>
>>> for Java, Eclipse can add and manage imports for you not only when you
>>> do new Somthing() but also for functions - like recognizing that
>>> Stdout("string") needs to import tango.io.Stdout. More over, if you
>>> wrote some of the imports yourself, or edited some code and removed the
>>> only call to some function, you can ask eclipse to orginize your imports
>>> and it'll remove unneeded imports and expand Java's Foo.* kind of import
>>> to a list of the actual modules the code needs.
>>>
>>> Descent is a great project and I want to thank all the developers
>>> involved in this great undertaking. All I'm saying is that it would be
>>> nice to also have an "organize imports" function in Descent.
>>
>> And you know for certain that it doesn't have this?
>>
> 
> Yigal is right, Descent doesn't have that kind of functionality.
> 
> As I mentioned before, you'd need to try every possible 
> conditional-compilation setup combination to see which are the unused 
> imports.

Also: templates are not resolved until their instantiation, so that's a 
harder problem.


More information about the Digitalmars-d-announce mailing list