Giter Site home page Giter Site logo

Comments (11)

iquiw avatar iquiw commented on July 20, 2024

Hi,

Since company-ghc depends on ghc-mod elisp internal, I think it is better to integrate it into ghc-mod. (it can be easily broken by ghc-mod change)

I have several concerns (rather random thoughts) though.

  • Licence. company-ghc license is GPLv3, while ghc-mod is BSD3. Since I wrote the whole code, I can change the license. But I'm not sure it is right thing for Emacs community. (My favorite is MIT...)
  • I have plan to add some other features to company-ghc, so I will update company-ghc constantly for the near future. Some of them are not related to ghc-mod.
  • It adds dependencies (company-mode, ecukes, etc.) to ghc-mod. (or they can be optional dependency?)

I'd like to hear comments on the above from ghc-mod maintainers.
Aside from the above, I am glad to do it in general.

Thanks.

from company-ghc.

DanielG avatar DanielG commented on July 20, 2024

From: Iku Iwasa [email protected]
Subject: Re: [company-ghc] Integrate company-ghc into ghc-mod (#7)
Date: Sun, 24 Aug 2014 08:07:24 -0700

Hi,

Since company-ghc depends on ghc-mod elisp internal, I think it is
better to integrate it into ghc-mod. (it can be easily broken by
ghc-mod change)

Yeah, that's one of the reasons I'd like to merge it :)

I have several concerns (rather random thoughts) though.

  • Licence. company-ghc license is GPLv3, while ghc-mod is BSD3. Since
    I wrote the whole code, I can change the license. But I'm not sure
    it is right thing for Emacs community. (My favorite is MIT...)

I for one prefer GPL3+ over ghc-mod's current license but I'm not the
original author so I just went with it. I think company-ghc's license
shouldn't be a problem though. Once we merge it the license of the
elisp bits simply becomes BSD3/GPL3+ so it's distributable only under
the GPL3+ but the pre-existing code remains BSD3 and the haskell bits
stay BSD3 likewise.

  • I have plan to add some other features to company-ghc, so I will
    update company-ghc constantly for the near future. Some of them are
    not related to ghc-mod.

You can simply fork ghc-mod and work on your changes is a branch and
send us a pull request whenever it's ready. Unless you want direct
push access to the main repo? I'm sure we can figure something out.

  • It adds dependencies (company-mode, ecukes, etc.) to ghc-mod. (or
    they can be optional dependency?)

Cask/ecukes look really cool actually I was looking for something to
test ghc-mod's elisp bits properly anyways. I think this wouldn't be a
problem. It'd be awesome if you could help us make ghc-mod work with
Cask actually :)

I'd like to hear comments on the above from ghc-mod maintainers.

I'm one of the co-maintainers. @kazu-yamamoto, the original author and
long time maintainer is on vacation ATM.

Aside from the above, I am glad to do it in general.

Awesome :)

from company-ghc.

kazu-yamamoto avatar kazu-yamamoto commented on July 20, 2024

I have several concerns (rather random thoughts) though.

  • Licence. company-ghc license is GPLv3, while ghc-mod is BSD3. Since
    I wrote the whole code, I can change the license. But I'm not sure
    it is right thing for Emacs community. (My favorite is MIT...)

I for one prefer GPL3+ over ghc-mod's current license but I'm not the
original author so I just went with it. I think company-ghc's license
shouldn't be a problem though. Once we merge it the license of the
elisp bits simply becomes BSD3/GPL3+ so it's distributable only under
the GPL3+ but the pre-existing code remains BSD3 and the haskell bits
stay BSD3 likewise.

GNU thinks BSD is compatible with GPL. So, changing license from
GHC to BSD is not a problem for GNU community. As you may know, I
have maintained Mew (http://mew.org/) for many years and its
license is BSD. I don't receive any reports about license
problems.

Note that GPL is not compatible with BSD. So, changing license
from BSD to GPL would cause problems.

from company-ghc.

DanielG avatar DanielG commented on July 20, 2024

From: Kazu Yamamoto [email protected]
Subject: Re: [company-ghc] Integrate company-ghc into ghc-mod (#7)
Date: Sun, 24 Aug 2014 09:07:38 -0700

GNU thinks BSD is compatible with GPL. So, changing license from
GHC to BSD is not a problem for GNU community.

I don't quite understand what you mean by "changing license from GHC
to BSD". Did you mean "GPL" instead of "GHC"?

As you may know, I have maintained Mew (http://mew.org/) for many
years and its license is BSD. I don't receive any reports about
license problems.

Note that GPL is not compatible with BSD. So, changing license
from BSD to GPL would cause problems.

That's not quite true. We don't have to change the license of the code
that already exists in elisp/. If we add ghc-copany.el (or whatever
we end up calling company-ghc) which is under GPL3+ to the other code
in that directory the whole of it would be distributable under GPL3+
only but the individual parts would be distributable under BSD3 ||
GPL3+ depending on which file.

Therefore there is no license compatibility problem. If anyone wants
to contribute elisp code to ghc-mod under BSD3 they can, likewise if
someone wants to contribute code under a GPLx+ that's fine as well.

I for one would like my contributions (at least those concerning
elisp/) to be covered under the GPL3+ as I don't take fancy in
others (ab)using my work for things that don't conform to the free
software philosophy.

from company-ghc.

iquiw avatar iquiw commented on July 20, 2024

About license, it is OK for me either to change it to BSD3 or to remain GPLv3.

You can simply fork ghc-mod and work on your changes is a branch and
send us a pull request whenever it's ready.

OK, it's fine.

Cask/ecukes look really cool actually I was looking for something to
test ghc-mod's elisp bits properly anyways. I think this wouldn't be a
problem. It'd be awesome if you could help us make ghc-mod work with
Cask actually :)

My Cask knowledge is very limited (just to prepare simple Cask file), but I am willing to help if any.
The limitation of Cask itself is it does not support Windows. (AFAIK. The situation might be changed though)
About ecukes, I think it is very nice tool to test features on Emacs.

from company-ghc.

kazu-yamamoto avatar kazu-yamamoto commented on July 20, 2024

Please do s/GHC/GPL/ in my comment.

from company-ghc.

kazu-yamamoto avatar kazu-yamamoto commented on July 20, 2024

That's not quite true. We don't have to change the license of the code that already exists in elisp/. If we add ghc-copany.el (or whatever we end up calling company-ghc) which is under GPL3+ to the other code in that directory the whole of it would be distributable under GPL3+ only but the individual parts would be distributable under BSD3 || GPL3+ depending on which file.

BSD license allows to distribute the code without its source code opened but GPL prohibits that. I don't think it will be a real problem for ghc-mod. But it is a common real problem of GPL.

from company-ghc.

DanielG avatar DanielG commented on July 20, 2024

Let's continue the GPL vs BSD holy wars somewhere else ;)

from company-ghc.

kazu-yamamoto avatar kazu-yamamoto commented on July 20, 2024

I can accept the situation where each file has its own license. But how to implement it? Should each file include its license in the end of the file?

from company-ghc.

kazu-yamamoto avatar kazu-yamamoto commented on July 20, 2024

@iquiw If you wish, I would give access right to the ghc-mod repository.

from company-ghc.

iquiw avatar iquiw commented on July 20, 2024

If you wish, I would give access right to the ghc-mod repository.

@kazu-yamamoto I will request it if the need comes.Thank you.

from company-ghc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.