caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
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


  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;
as well as URLs for NNTP newsgroup(s).