From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=AWL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id E3121BC37 for ; Thu, 3 Sep 2009 05:14:58 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ak4BANnRnkrLOwFrkWdsb2JhbACbPAEBAQEJCwoHEwTAAoQbBQ X-IronPort-AV: E=Sophos;i="4.44,322,1249250400"; d="scan'208";a="45881038" Received: from outbound.icp-qv1-irony-out2.iinet.net.au ([203.59.1.107]) by mail4-smtp-sop.national.inria.fr with ESMTP; 03 Sep 2009 05:14:57 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAN7QnkrLzuai/2dsb2JhbADcAYQbBQ X-IronPort-AV: E=Sophos;i="4.44,322,1249228800"; d="scan'208";a="558619788" Received: from unknown (HELO hendrix.mega-nerd.net) ([203.206.230.162]) by outbound.icp-qv1-irony-out2.iinet.net.au with ESMTP; 03 Sep 2009 11:14:54 +0800 Received: from hendrix.mnn (hendrix.mnn [192.168.200.99]) by hendrix.mega-nerd.net (Postfix) with SMTP id CB432106FD9 for ; Thu, 3 Sep 2009 13:14:53 +1000 (EST) Date: Thu, 3 Sep 2009 13:14:53 +1000 From: Erik de Castro Lopo To: caml-list@inria.fr Subject: Re: [Caml-list] Ocaml clone detector Message-Id: <20090903131453.59a2d2e7.mle+ocaml@mega-nerd.com> In-Reply-To: <4A9F2264.7000909@mcmaster.ca> References: <20090903111944.6479d156.mle+ocaml@mega-nerd.com> <4A9F2264.7000909@mcmaster.ca> Reply-To: caml-list@inria.fr Organization: Erik Conspiracy Secret Labs X-Mailer: Sylpheed 2.6.0 (GTK+ 2.16.1; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam: no; 0.00; ocaml:01 ocaml:01 abstraction:01 chunks:01 cheers:01 wrote:01 wrote:01 caml-list:01 seems:03 jacques:03 languages:03 programming:03 erik:04 erik:04 explanation:06 Jacques Carette wrote: > Erik de Castro Lopo wrote: > > Maybe it would help if you explained what a "clone detector" > > is. > > > A "clone" is software-engineering speak for "duplicated code". Exactly > what qualifies as 'duplicated code' and how to efficiently find such > (without too many false positives nor false negatives) is still fairly > active research. This is a huge issue in languages without decent > abstraction features, and less so otherwise (or so it seems). Thanks for the explanation. I can think of two situations where such a clone detector may be useful; for finding similar chunks of code so that they may be refactored for software QA management and for detecting plaguarism in student programming assignments. I suspect that these two kinds of clone detectors would actually be quite different. Cheers, Erik -- ---------------------------------------------------------------------- Erik de Castro Lopo http://www.mega-nerd.com/