Descent 0.5 released
Kris
foo at bar.com
Sun Feb 3 21:03:24 PST 2008
Awesome project ... nice work you guys :)
"Ary Borenszweig" <ary at esperanto.org.ar> wrote in message
news:fo63qt$8a2$1 at digitalmars.com...
> The Descent plugin for Eclipse provides an IDE for writing, launching and
> debugging code in D.
>
> Explanations on how to get it from within Eclipse are here:
>
> http://www.dsource.org/projects/descent
>
> The new features for this release are:
> - Full autocompletion, which also writes the imports for you. No need to
> remember where that class or function you are looking for is located. Just
> start writing the name of it, press ctrl+space, select the suggestion, and
> the import is added at the top of the module automatically (no need to
> critic Tango anymore :-P). External variables does not participate in
> import-adding, because there are *so* many public ones...
> - Go to definition. It even works for opCall and magic array functions.
> :-)
> - Semantic highlighting: you can choose to color aliases, typdefs,
> classes, structs, interfaces, unions, templates, local variables,
> functions and function calls, etc., with different colors.
> - Showing of semantic errors. By default, some semantic errors are shown,
> like undefined identifiers or unresolved types. You can turn this off, or
> you can enable full semantic error reporting (but it will probably lie in
> some cases, that's why the default is "some"). It is recommended to turn
> this off for existing big projects, as it may cause more trouble than
> help.
> - Compile-time evaluation of functions and other properties: hovering
> over an element while holding ctrl+shift shows it's compile-time value.
> You can use this for built-in properties like init, min, max, sizeof,
> alignof, stringof, mangleof, length, constants, enum values and function
> calls (try writing a factorial function, then invoke it with a constant
> value somewhere in the code, and ctrl+shift+hover over the call). If the
> result of the evaluation is a string, and it is likely a declaration, it
> will have syntax highlighting and will be formatted according to your
> formatter preferences. This is useful for seeing the string passed to a
> mixin.
> - Graying out of inactive code: shows in gray code that is not reachable
> because of debug or version levels/identifiers and static ifs that
> evaluate to false.
> - Improved occurrences finder: selecting a token highlights all other
> tokens with the same semantic meaning. Then, pressing ctrl+2, r, allows
> you to rename all those occurrences. Very useful for renaming local
> variables, functions and types.
> - Declaration view: shows the source of the element under the cursor.
>
> For current users: after you update the plugin, go to Windows ->
> Preferences, D -> Compiler, and change any setting. It will ask you to
> rebuild everything. You'll need to do this since I've changed the format
> of the indexes for searching stuff. Otherwise you'll get errors, or some
> things won't work.
>
> And now, my personal comments about the current specification of D about
> developing an IDE for it:
> - Difficulty to suggest autocompletion for getters, and in particular
> setters. There's nothing in the language that says "this function is meant
> to be used as a setter". So currently, if you autocomplete a method that
> looks like a setter, you will get something like this: "var.member =
> |foo|", where you can start overwriting |foo|. While testing Descent, I
> found more setters that "procedures", and thus this decision.
> - Public imports are bad, bad, anyway you see it: they polute the global
> namespace, they make compilation slower (and also an IDE slower), they
> make finding the definition of a symbol harder (well, if you don't use an
> IDE). So if you use import foo.all, forget about getting good performance
> in Descent. Anyway, you won't need to use that, because Descent writes the
> imports for you.
>
> Finally, as always with such an ambitious project, we need help! We're
> looking for testers, documentation writers, translators, and most of all
> developers. If you're interested in helping out, check out this page,
> which summarizes what we're looking for:
>
> http://www.dsource.org/projects/descent/wiki/Development
>
> Any suggestion, critic or bug report is welcome. You can use:
> - the forums: http://www.dsource.org/forums/viewforum.php?f=107
> - trac: http://www.dsource.org/projects/descent/report?action=new
More information about the Digitalmars-d-announce
mailing list