From: Brian Hurt <bhurt@janestcapital.com>
To: Mattias Waldau <mattias.waldau@abc.se>
Cc: caml-list@yquem.inria.fr
Subject: Re: [Caml-list] How to refactor a large Ocaml program
Date: Thu, 14 Dec 2006 08:47:58 -0500 [thread overview]
Message-ID: <4581560E.6020109@janestcapital.com> (raw)
In-Reply-To: <458106BD.7060103@abc.se>
Mattias Waldau wrote:
> Yes, editing and compiling until it works is a way to refactor, and I
> used that method before. However, this only works if you know what you
> are doing. In many cases you realize the change you made was stupid
> and you have to roll back, i.e. undo or revert using CVS.
I prefer subversion, but basically, yes. Ignoring for the moment that
"always use version control" and "commit early, commit often" are good
advice no matter what programming language or tool set you are using,
undoing changes works much the same way- the compiler will catch the
places you haven't switched back yet. In fact, it's not unusual for me
to start making a change, update a bunch of places but not all, decide
that isn't what I wanted to do after all, and partially undo the first
change to make the second change. So now I have some places in the code
that haven't been changed at all, some places which have been changed
once and now need to be changed again, and some places that have been
changed twice and don't need to be changed. Compile them all, let Ocaml
sort things out.
There may be an advantage to having an advanced refactoring tool, my
point is that I really doubt the advantage will be the night and day
difference it is in other languages.
Brian
next prev parent reply other threads:[~2006-12-14 13:48 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-13 12:37 Mattias Waldau
2006-12-13 13:09 ` [Caml-list] " Pietro Abate
2006-12-13 13:46 ` Jon Harrop
2006-12-13 13:53 ` skaller
2006-12-13 13:57 ` Richard Jones
2006-12-13 14:00 ` Yann Coscoy
2006-12-13 14:09 ` Jon Harrop
2006-12-13 14:31 ` Yann Coscoy
2006-12-13 14:42 ` Mattias Engdegård
2006-12-13 16:48 ` Gerd Stolpmann
2006-12-13 17:08 ` Jon Harrop
2006-12-13 13:51 ` Jim Miller
[not found] ` <45800CD5.8050401@janestcapital.com>
2006-12-14 8:09 ` Mattias Waldau
2006-12-14 11:59 ` Bruno De Fraine
2006-12-14 13:47 ` Brian Hurt [this message]
2006-12-15 15:33 ` Florian Hars
2006-12-16 10:14 ` Remi Vanicat
2006-12-16 13:53 ` Christian Stork
2006-12-18 19:37 ` Florian Hars
2006-12-15 5:07 ` Jacques Garrigue
2006-12-15 7:49 ` Mattias Waldau
2006-12-15 12:36 ` Jan Rehders
2006-12-15 13:11 ` skaller
2006-12-14 8:21 ` Mattias Waldau
2006-12-15 17:23 ` malc
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4581560E.6020109@janestcapital.com \
--to=bhurt@janestcapital.com \
--cc=caml-list@yquem.inria.fr \
--cc=mattias.waldau@abc.se \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox