From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id 0DoRG8JEnV/xHAAA0tVLHw (envelope-from ) for ; Sat, 31 Oct 2020 11:04:34 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id cH3iFsJEnV/rNgAAbx9fmQ (envelope-from ) for ; Sat, 31 Oct 2020 11:04:34 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 99E6C9401BE for ; Sat, 31 Oct 2020 11:04:33 +0000 (UTC) Received: from localhost ([::1]:40830 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kYogS-0005gN-L9 for larch@yhetil.org; Sat, 31 Oct 2020 07:04:32 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:55426) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kYofq-0005gF-QP for emacs-orgmode@gnu.org; Sat, 31 Oct 2020 07:03:54 -0400 Received: from mail-ed1-f67.google.com ([209.85.208.67]:43236) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kYofn-0001QS-Br; Sat, 31 Oct 2020 07:03:54 -0400 Received: by mail-ed1-f67.google.com with SMTP id dn5so9254511edb.10; Sat, 31 Oct 2020 04:03:50 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=MmDCYMgJJZh7rYWAhk7pR6sdtWqdlZaj9SES58Xtdd8=; b=TPtToIhzgb5cmIpgF2HKEMgNc7LWFd3Omx/lDai5suClbVLTw/YCNNQI1lx7YsZN0u IQEAKviXQdoYRAqwEQ7EOdf4RWOvfKemqlFk+aYhiglOUUMNOY2Bw72hs2rtaoHbE1Sy mDQOB5FdVaxdIwXk3dR1Q26dDZ1GvWRZdu6PNmHjgZMoKtvz9CSqbqPfa8fRbanwFZW+ 1Sn9DUKZfpvw6SgPDqikqa6PmYP08JKKEXKaaTqVdYlhGpdPgiP3lb4bEg90RdvY8hJr CuyTijewduNHgQ9fmd4qvRdKIozukFamlKvMrEwJVsmYvbLppWUj0lTAYHmvgfJ0FBs0 ch6w== X-Gm-Message-State: AOAM531oo4daHr0spmye/29V/KS17FqaHWDRs2BbORCRRMQ+/w2pskJB Kwe0UmsH66oMgk+KSU/JgDTKl/FNV1itI49kKEzoI9Irj5DjrA== X-Google-Smtp-Source: ABdhPJzpw5QHtoyvLRYuG+IqckYKkFhp23W7KE6n+dJN6Ze6v3C4/mExco7tXM/TXr+AeyoRg6yWWgH3eBTq8L5ucR4= X-Received: by 2002:aa7:d858:: with SMTP id f24mr6435620eds.12.1604142229031; Sat, 31 Oct 2020 04:03:49 -0700 (PDT) MIME-Version: 1.0 References: <87tuujltsh.fsf@gnu.org> <875z6ug1c8.fsf@bzg.fr> In-Reply-To: <875z6ug1c8.fsf@bzg.fr> From: ian martins Date: Sat, 31 Oct 2020 07:03:37 -0400 Message-ID: Subject: Re: [PATCH] ob-java To: Bastien Content-Type: multipart/alternative; boundary="000000000000bb104105b2f5779b" Received-SPF: pass client-ip=209.85.208.67; envelope-from=ianxm1@gmail.com; helo=mail-ed1-f67.google.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/31 07:03:49 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.25, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Org-Mode mailing list Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Scanner: ns3122888.ip-94-23-21.eu Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=jhu.edu (policy=none); spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Spam-Score: -0.91 X-TUID: Loy8MKORha8i --000000000000bb104105b2f5779b Content-Type: text/plain; charset="UTF-8" As I was trying to decide who is the author of the ob-java docs, I realized it's not clear how you're defining authorship due to my confusion about ob-java. I can think of three ways to determine authorship: 1. the person that wrote it 2. the people who influenced the code 3. the first person to check in the filename At first I thought I wrote ob-java by rule 1. I didn't start from the old ob-java, and I replaced the entire file. The patch shows only 10 random lines of over 400 matched the original ob-java. If we don't count the lines that also match ob-template.el, there are only 5. When you said I didn't write it I thought rule 2 was the next most reasonable, so I made the authors those that wrote the code that I referenced. But after thinking about it more it can't be this. Adding languages to babel isn't documented well enough for anyone to do it without looking at an existing implementation, so going by rule 2 all languages would be authored by whoever wrote the first one, and they're not. I'm not sure but I think you'd say I wrote ob-haxe, the ob-haxe tests, the ob-java tests, and the ob-java docs, but not ob-java. These match up with rule 3. I don't think rule 3 is the one anyone would pick from the list, but maybe most would subconsciously use it as a heuristic for rule 1, since rule 1 is hard to establish. I think the change in authorship is clear for ob-java because it was replaced in one patch, usually changes are incremental. Each file is The Ship of Theseus. Even if we took the trouble to determine how much any person wrote, it is difficult to decide for oneself let alone agree on the amount of change required to establish new authorship. But rule 3 doesn't work if a file is rewritten. If Dostoevsky checks in the text of "Crime and Punishment" as book.txt, and then Dr. Seuss replaces the content with "The Cat in the Hat," we'd have to say Dostoevsky wrote "The Cat in the Hat." So I think either you didn't notice that I'd replaced the file, or you considered the lines that matched sufficient for continuity, or you're thinking about authorship in a way I haven't guessed. Could you clarify? On Wed, Oct 28, 2020 at 5:13 AM Bastien wrote: > ian martins writes: > > > But I want to follow your conventions. I will put the authors of ob-C > > and ob-python (Eric Schulte and Dan Davison) as the authors of > > ob-java and ob-haxe. The implementations are nearly the same. it > > wouldn't make sense for them to have different authors. > > Thanks for doing so! > > -- > Bastien > --000000000000bb104105b2f5779b Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
As I was trying to decide who is the author of the ob-java= docs, I realized it's not clear how you're defining authorship due= to my confusion about ob-java.=C2=A0 I can think of three ways to determin= e authorship:

1. the person that wrote it
2. the people who influ= enced the code
3. the first person to check in the filename

At fi= rst I thought I wrote ob-java by rule 1.=C2=A0 I didn't start from the = old ob-java, and I replaced the entire file.=C2=A0 The patch shows only 10 = random lines of over 400 matched the original ob-java.=C2=A0 If we don'= t count the lines that also match ob-template.el, there are only 5.

= When you said I didn't write it I thought rule 2 was the next most reas= onable, so I made the authors those that wrote the code that I referenced.= =C2=A0 But after thinking about it more it can't be this.=C2=A0 Adding = languages to babel isn't documented well enough for anyone to do it wit= hout looking at an existing implementation, so going by rule 2 all language= s would be authored by whoever wrote the first one, and they're not.
I'm not sure but I think you'd say I wrote ob-haxe, the ob-hax= e tests, the ob-java tests, and the ob-java docs, but not ob-java.=C2=A0 Th= ese match up with rule 3.=C2=A0 I don't think rule 3 is the one anyone = would pick from the list, but maybe most would subconsciously use it as a h= euristic for rule 1, since rule 1 is hard to establish.=C2=A0 I think the c= hange in authorship is clear for ob-java because it was replaced in one pat= ch, usually changes are incremental.=C2=A0 Each file is The Ship of Theseus= .=C2=A0 Even if we took the trouble to determine how much any person wrote,= it is difficult to decide for oneself let alone agree on the amount of cha= nge required to establish new authorship.

But rule 3 doesn't wor= k if a file is rewritten.=C2=A0 If Dostoevsky checks in the text of "C= rime and Punishment" as book.txt, and then Dr. Seuss replaces the cont= ent with "The Cat in the Hat," we'd have to say Dostoevsky wr= ote "The Cat in the Hat."

So I think either you didn't= notice that I'd replaced the file, or you considered the lines that ma= tched sufficient for continuity, or you're thinking about authorship in= a way I haven't guessed.=C2=A0 Could you clarify?

--000000000000bb104105b2f5779b--