On Sun, Nov 6, 2011 at 11:33 AM, Milton Silva <milton...@gmail.com> wrote:
> On Nov 5, 12:16 pm, Dennis Haupt <d.haup...@googlemail.com> wrote: > > -----BEGIN PGP SIGNED MESSAGE----- > > Hash: SHA1 > > > > hi, > > > > i'm half done with my asteroids clone. i stumbled over a few problems > > and wanted to know how others already solved them :) > > > > i am used to "less concrete programming". i ask my tools to do the > > actual analysis and coding for me: > > * where is that used? > > Your editor does have a search fn right? > > A normal search function does not distinguish between matches in comments, docstrings, strings, variables, and function calls. A where called function in an IDE does. Slime has slime-who-calls. I don't know how good it is. There are various other slime-who functions that are just waiting for volunteers to implement in swank-clojure. > > * rename that > > again, all editors have this. > Again, they don't distinguish between the various contexts in which a matching identifier can appear (e.g. as a substring of a different identifier, or identical but in a distinct context). There are two renaming refactorings in clojure-refactoring. How good they are at renaming only the right things I do not know. > > > * show me all errors > > what do you mean? for example when I compile a file in emacs I > (normally) get the line where the error is. or do you mean runtime > errors? > IDEs for Java will show you multiple errors all at once, whereas I think environments like Slime will stop compiling once they hit an error. > > * add a parameter here > > not sure I understand this one. if you mean (defn [a]..) to (defn [a > b] ...) how do you do that without manual intervention in any language/ > editor? (just adding more args to something doesn't mean they will be > properly handled... that is our job) > > IDEs have refactorings for things like this. See Eclipse and IntelliJ. You give a default value and it changes all calls to use that. > * autocomplete this for me, i am too lazy to even remember the exact > > method name > > emacs has this(possible not out of the box) and I suspect other too. > ac-slime is pretty limited compared to intellisense systems in static languages, it doesn't know about context such as what methods can be called on what objects, other than I think it knows about static methods. Granted I'm not sure what the limits are in a dynamic language (probably whatever Smalltalk environments do). > > > * show me a list of all methods and fields starting with an "e" that > > fit in here. i know the one i want is in that list. > > emacs also has this(possible not out of the box) and again I suspect > other too. > > Nope, ac-slime doesn't know what identifiers are field names let alone where they are appropriate. Ditto with methods. > > > as elegant as clojure may be as a language, it's dragging me down to > > almost native text editing which i did more than 10 years ago when i > > wrote a game in turbo pascal. > > > > how did you solve these problem and get some tool-support? or don't > > you miss it because of something i am not aware of? > > I know IDE support isn't as good as in java but, after looking at your > There's lots of reasonable goals for Clojure environments. Being as good as Java, at least in terms of refactorings, probably isn't one, since in terms of refactoring there are probably very few languages today that are where Java was 10 years ago. That said I'm a long time user of clojure-refactoring and try to encourage people to use it every change I get. > code, yes, there is something your not aware of and that is why > clojure is giving you a hard time. > > In his code I did notice he doesn't use destructing very much. -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en