Quantcast

what is "type piracy"?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

what is "type piracy"?

Tamas Papp
What does the term "type piracy" mean?

The term shows up in julia-related discussions, mostly on
Github. Googling for it leads back these discussions, and a lot of
unrelated stuff about copyright and/or typefaces.

(Apologies if the term is well-known, I am an economist, not a computer
scientist).
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: what is "type piracy"?

Spencer Russell-4
As far as I know "type piracy" is not a widespread term in CS, but has
popped up in the Julia community.

Basically it refers to violations of the Julia guideline that a package
shouldn't define methods of functions it doesn't own on types it doesn't
own.

For example, if package A exports a function `foo`, and package B
defines a type `Bar`, package C shouldn't define `foo(x::Bar)`. It's in
some ways stealing functionality that other packages should be
responsible for, and from a user's perspective it can be confusing if
`using C` changes behavior that's associated with completely different
packages.

-s

On Thu, Nov 3, 2016, at 11:44 AM, Tamas Papp wrote:
> What does the term "type piracy" mean?
>
> The term shows up in julia-related discussions, mostly on
> Github. Googling for it leads back these discussions, and a lot of
> unrelated stuff about copyright and/or typefaces.
>
> (Apologies if the term is well-known, I am an economist, not a computer
> scientist).
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: what is "type piracy"?

Mike Innes
Another way to look at this is, redefining a module shouldn't result in method redefinition warnings.

On Thursday, 3 November 2016 17:24:28 UTC, Spencer Russell wrote:
As far as I know "type piracy" is not a widespread term in CS, but has
popped up in the Julia community.

Basically it refers to violations of the Julia guideline that a package
shouldn't define methods of functions it doesn't own on types it doesn't
own.

For example, if package A exports a function `foo`, and package B
defines a type `Bar`, package C shouldn't define `foo(x::Bar)`. It's in
some ways stealing functionality that other packages should be
responsible for, and from a user's perspective it can be confusing if
`using C` changes behavior that's associated with completely different
packages.

-s

On Thu, Nov 3, 2016, at 11:44 AM, Tamas Papp wrote:
> What does the term "type piracy" mean?
>
> The term shows up in julia-related discussions, mostly on
> Github. Googling for it leads back these discussions, and a lot of
> unrelated stuff about copyright and/or typefaces.
>
> (Apologies if the term is well-known, I am an economist, not a computer
> scientist).
Loading...