Jump to content

Talk:Ian Jackson: Difference between revisions

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia
Content deleted Content added
SineBot (talk | contribs)
m Signing comment by 86.178.183.167 - "→‎Summary: Authorship"
Ijackson (talk | contribs)
"porting"
Line 32: Line 32:


[[User:Ijackson|Ijackson]] ([[User talk:Ijackson|talk]]) 13:09, 1 October 2012 (UTC)
[[User:Ijackson|Ijackson]] ([[User talk:Ijackson|talk]]) 13:09, 1 October 2012 (UTC)

I see the page currently says something about me having "ported" dpkg from Perl to C. This is not an accurate statement. The program needed to be rewritten and at the same time it was convenient to change the implementation language.

Wikipedia's page [[Porting]] explains that porting has the purpose of allowing a program to be run in a different environment; I agree with that use of the term. The environment of the Perl and C versions of dpkg - the Debian GNU/Linux system - was the same in both cases.

As I have written above, the C version was a rewrite. It was certainly not a line-by-line or even function-by-function translation. The statement that it was "based on" the Perl version (as you see in the dpkg AUTHORS file) is fair although of course very vague. It was "based on" the Perl version in the sense that it used most of the same data formats and performed roughly the same functions although with significant differences eg in ordering of operations.

[[User:Ijackson|Ijackson]] ([[User talk:Ijackson|talk]]) 14:20, 2 October 2012 (UTC)


=== Summary ===
=== Summary ===

Revision as of 14:20, 2 October 2012


Untitled

I am no longer the chairman of the Debian TC. That post is now held by Bdale Garbee. I'm still a member of the TC. -iwj

dpkg Authorship

Authorship history, redux

The C version was not a simple translation from Perl to C. The C version contains a great deal of functionality which was missing or broken in the Perl script. The perl script was only ever intended to be a stopgap. In particular, the Perl script just used "tar" to unpack the filesystem archive whereas the C program used an existing miniature tarfile reader library (from Bruce Perens IIRC) to handle each file individually in the correct manner. Another aspect is that the majority of the code in dpkg is error handling of one kind or another; the Perl script didn't really take much care over the consequences of errors.

There were IIRC two script versions of dpkg; the first one I inherited from Ian Murdock but may well have had other contributors. If I remember I rewrote the first script to make a better stopgap. The second rewrite was the one which involved rewriting the whole thing in C. It involved significant new design decisions including the current sequencing of filesystem actions and package scripts, and it involved documenting those design decisions in what was then called the dpkg Programmers' Manual.

The source package dpkg contains both the program dpkg, and the utilities for manipulating source packages. Those utilities I did not entirely rewrite, although during my maintainership I did make substantial changes and introduced new utilities.

The above is true to the best of my knowledge but it's been many years. If someone wants to verify the facts independently the right way would probably be to dig out relevant ancient versions of the source and to compare the Perl and C versions.

Ijackson (talk) 13:09, 1 October 2012 (UTC)[reply]

I see the page currently says something about me having "ported" dpkg from Perl to C. This is not an accurate statement. The program needed to be rewritten and at the same time it was convenient to change the implementation language.

Wikipedia's page Porting explains that porting has the purpose of allowing a program to be run in a different environment; I agree with that use of the term. The environment of the Perl and C versions of dpkg - the Debian GNU/Linux system - was the same in both cases.

As I have written above, the C version was a rewrite. It was certainly not a line-by-line or even function-by-function translation. The statement that it was "based on" the Perl version (as you see in the dpkg AUTHORS file) is fair although of course very vague. It was "based on" the Perl version in the sense that it used most of the same data formats and performed roughly the same functions although with significant differences eg in ordering of operations.

Ijackson (talk) 14:20, 2 October 2012 (UTC)[reply]

Summary

The discussion is about the authorship of dpkg. dpkg as it stands is a C program with well over 100 contributors.

The anonymous user at 86.176.68.157 claims that the transition from its Perl predecessor to a C program (which was done by the subject of this article) was merely "porting" from one language to another, analogous to translating a novel. I’m not aware of any reference having been provided for this view.

The other view is that the C version was a substantially new program with a much greater feature set. This view is supported by dpkg's own AUTHORS file, which lists the subject of this article as its original author, and describes it as "based on" the Perl version - not merely translated or ported from it.

Ewx (talk) 08:13, 26 September 2012 (UTC)[reply]

I have removed a claim by 86.* that IWJ lied in the AUTHORS file about the authorship, under WP:BLP: it is potentially libellous. Marnanel (talk) 13:44, 1 October 2012 (UTC)[reply]
No claim that he lied, merely that what was put was not factually correct. I have reverted back to the facts, and added the additional information that as well as the port, he added significant new functions, as he himself admits above. — Preceding unsigned comment added by 86.178.183.167 (talk) 12:45, 2 October 2012 (UTC)[reply]

Prior Discussion

He also didn't write dpkg - He ported it from Perl to C. The real authors are detailed on the dpkg wiki page.
Translation of a software program from one language to another is no more authorship than translating Harry Potter to Latin would be. — Preceding unsigned comment added by 86.176.68.157 (talk) 16:25, 17 September 2012 (UTC)[reply]
For the benefit of anyone confused by the above bizarre claim and the recent vandalism, it’s spillover from a usenet argument which the anonymous contributor has decided to bring to wikipedia. Ewx (talk) 08:09, 18 September 2012 (UTC)[reply]
No argument involved. Wikipedia itself tells us that dpkg was written by someone else. — Preceding unsigned comment added by 86.178.183.167 (talk) 18:39, 25 September 2012 (UTC)[reply]

Older Discussion

chiark does not host MindTerm. I just provided a copy of the source as required by the GPL. Also, I have quit nCipher and as of 23.8.2005 I work for Canonical. -iwj