[Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread David Sorokin
Hi, Cafe!

Probably, it was asked before but I could not find an answer with help of 
Google.

I have a library which is hosted on Hackage. The library is licensed under 
BSD3. It is a very specialized library for a small target group. Now I'm going 
to relicense it and release a new version already under the dual-license: GPLv3 
and commercial. In most cases GPL will be sufficient as this is not a library 
in common sense.

Can I specify the GPL license in the .cabal file, or should I write 
OtherLicense?

I'm going to add the information about dual-licensing in the description 
section of the .cabal file, though.

Thanks,
David
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread Vo Minh Thu
2013/7/30 David Sorokin david.soro...@gmail.com:
 Hi, Cafe!

 Probably, it was asked before but I could not find an answer with help of 
 Google.

 I have a library which is hosted on Hackage. The library is licensed under 
 BSD3. It is a very specialized library for a small target group. Now I'm 
 going to relicense it and release a new version already under the 
 dual-license: GPLv3 and commercial. In most cases GPL will be sufficient as 
 this is not a library in common sense.

 Can I specify the GPL license in the .cabal file, or should I write 
 OtherLicense?

 I'm going to add the information about dual-licensing in the description 
 section of the .cabal file, though.

Although you can indeed license your software under different
licences, in the case of your question it doesn't seem to be a concern
with Hackage:

The license displayed on Hackage is the one for the corresponding
.cabal file (or at least I think it is). So you issue your new version
with the changed license, the new version is available with the new
license, the old versions are still available with the old license.
Everything is fine.

Now about the dual licensing. It seems it is again not a problem with
Hackage: you are not granting through Hackage such a commercial
license. I guess you provide it upon request (for some money). I.e.
when I download your library from Hackage, I receive it under the
terms of the BSD (or GPL) license you have chosen, not under a
commercial license that I would have to receive through other means.

Otherwise the semantic of the license field on Hackage would mean the
library is available under such and such licenses, which are not
granted to you when you download the library on Hackage. Only when you
download the package you can actually find the licensing terms (e.g.
in the LICENSE file). But this seems unlikely to me.

Cheers,
Thu

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread David Sorokin
Thanks Thu,

I agree with you. Just I don't know what to write in the license field of the 
.cabal file: GPL or OtherLicense. The both choices seem correct to me and 
misleading at the same time.

Cheers,
David

30.07.2013, в 12:53, Vo Minh Thu написал(а):

 2013/7/30 David Sorokin david.soro...@gmail.com:
 Hi, Cafe!
 
 Probably, it was asked before but I could not find an answer with help of 
 Google.
 
 I have a library which is hosted on Hackage. The library is licensed under 
 BSD3. It is a very specialized library for a small target group. Now I'm 
 going to relicense it and release a new version already under the 
 dual-license: GPLv3 and commercial. In most cases GPL will be sufficient as 
 this is not a library in common sense.
 
 Can I specify the GPL license in the .cabal file, or should I write 
 OtherLicense?
 
 I'm going to add the information about dual-licensing in the description 
 section of the .cabal file, though.
 
 Although you can indeed license your software under different
 licences, in the case of your question it doesn't seem to be a concern
 with Hackage:
 
 The license displayed on Hackage is the one for the corresponding
 .cabal file (or at least I think it is). So you issue your new version
 with the changed license, the new version is available with the new
 license, the old versions are still available with the old license.
 Everything is fine.
 
 Now about the dual licensing. It seems it is again not a problem with
 Hackage: you are not granting through Hackage such a commercial
 license. I guess you provide it upon request (for some money). I.e.
 when I download your library from Hackage, I receive it under the
 terms of the BSD (or GPL) license you have chosen, not under a
 commercial license that I would have to receive through other means.
 
 Otherwise the semantic of the license field on Hackage would mean the
 library is available under such and such licenses, which are not
 granted to you when you download the library on Hackage. Only when you
 download the package you can actually find the licensing terms (e.g.
 in the LICENSE file). But this seems unlikely to me.
 
 Cheers,
 Thu


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread Vo Minh Thu
Well, if you are willing to grant me a GPL license when I download
your package through Hackage, GPL is accurate.

Again you are not providing me with another license. Obtaining a
commercial license should be seeked through other means, perhaps by
sending you an email. I don't think Hackage should be used for making
adverts, but I think it would be ok to state in the description of the
package something along the lines of commercial licenses are
available through example.com.

2013/7/30 David Sorokin david.soro...@gmail.com:
 Thanks Thu,

 I agree with you. Just I don't know what to write in the license field of the 
 .cabal file: GPL or OtherLicense. The both choices seem correct to me and 
 misleading at the same time.

 Cheers,
 David

 30.07.2013, в 12:53, Vo Minh Thu написал(а):

 2013/7/30 David Sorokin david.soro...@gmail.com:
 Hi, Cafe!

 Probably, it was asked before but I could not find an answer with help of 
 Google.

 I have a library which is hosted on Hackage. The library is licensed under 
 BSD3. It is a very specialized library for a small target group. Now I'm 
 going to relicense it and release a new version already under the 
 dual-license: GPLv3 and commercial. In most cases GPL will be sufficient as 
 this is not a library in common sense.

 Can I specify the GPL license in the .cabal file, or should I write 
 OtherLicense?

 I'm going to add the information about dual-licensing in the description 
 section of the .cabal file, though.

 Although you can indeed license your software under different
 licences, in the case of your question it doesn't seem to be a concern
 with Hackage:

 The license displayed on Hackage is the one for the corresponding
 .cabal file (or at least I think it is). So you issue your new version
 with the changed license, the new version is available with the new
 license, the old versions are still available with the old license.
 Everything is fine.

 Now about the dual licensing. It seems it is again not a problem with
 Hackage: you are not granting through Hackage such a commercial
 license. I guess you provide it upon request (for some money). I.e.
 when I download your library from Hackage, I receive it under the
 terms of the BSD (or GPL) license you have chosen, not under a
 commercial license that I would have to receive through other means.

 Otherwise the semantic of the license field on Hackage would mean the
 library is available under such and such licenses, which are not
 granted to you when you download the library on Hackage. Only when you
 download the package you can actually find the licensing terms (e.g.
 in the LICENSE file). But this seems unlikely to me.

 Cheers,
 Thu


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread Krzysztof Skrzętnicki
Perhaps it would be best if .cabal allowed to have more than one license
listed.

Another solution would be to use custom field, for example:

License: GPL
x-Other-License: Commercial, see License-Commercial.txt

All best,
Krzysztof Skrzętnicki

On Tue, Jul 30, 2013 at 11:44 AM, David Sorokin david.soro...@gmail.comwrote:

 Thanks Thu,

 I agree with you. Just I don't know what to write in the license field of
 the .cabal file: GPL or OtherLicense. The both choices seem correct to me
 and misleading at the same time.

 Cheers,
 David

 30.07.2013, в 12:53, Vo Minh Thu написал(а):

  2013/7/30 David Sorokin david.soro...@gmail.com:
  Hi, Cafe!
 
  Probably, it was asked before but I could not find an answer with help
 of Google.
 
  I have a library which is hosted on Hackage. The library is licensed
 under BSD3. It is a very specialized library for a small target group. Now
 I'm going to relicense it and release a new version already under the
 dual-license: GPLv3 and commercial. In most cases GPL will be sufficient as
 this is not a library in common sense.
 
  Can I specify the GPL license in the .cabal file, or should I write
 OtherLicense?
 
  I'm going to add the information about dual-licensing in the
 description section of the .cabal file, though.
 
  Although you can indeed license your software under different
  licences, in the case of your question it doesn't seem to be a concern
  with Hackage:
 
  The license displayed on Hackage is the one for the corresponding
  .cabal file (or at least I think it is). So you issue your new version
  with the changed license, the new version is available with the new
  license, the old versions are still available with the old license.
  Everything is fine.
 
  Now about the dual licensing. It seems it is again not a problem with
  Hackage: you are not granting through Hackage such a commercial
  license. I guess you provide it upon request (for some money). I.e.
  when I download your library from Hackage, I receive it under the
  terms of the BSD (or GPL) license you have chosen, not under a
  commercial license that I would have to receive through other means.
 
  Otherwise the semantic of the license field on Hackage would mean the
  library is available under such and such licenses, which are not
  granted to you when you download the library on Hackage. Only when you
  download the package you can actually find the licensing terms (e.g.
  in the LICENSE file). But this seems unlikely to me.
 
  Cheers,
  Thu


 ___
 Haskell-Cafe mailing list
 Haskell-Cafe@haskell.org
 http://www.haskell.org/mailman/listinfo/haskell-cafe

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread Vo Minh Thu
Unless you want to provide multiple open source licenses, I don't see the point:

Anybody that needs a commercial license (and has some money) will
simply ask for such a commercial license when seeing that the code is
available under GPL.

Another reason it is pointless is that you will certainly not want to
list all the commercial licenses you have used/will use with different
clients (there are virtually infinite commercial licenses that you can
invent as needs arise: per seat, per core, per year, and so on
depending on the clients/projects).

I.e. you don't need to state upfront that commercial licences exist
(although I understand that you think it is better to advertise your
willingness to provide such commercial license, but a comment is
enough, the fact is that license is not provided through Hackage).

2013/7/30 Krzysztof Skrzętnicki gte...@gmail.com:
 Perhaps it would be best if .cabal allowed to have more than one license
 listed.

 Another solution would be to use custom field, for example:

 License: GPL
 x-Other-License: Commercial, see License-Commercial.txt

 All best,
 Krzysztof Skrzętnicki

 On Tue, Jul 30, 2013 at 11:44 AM, David Sorokin david.soro...@gmail.com
 wrote:

 Thanks Thu,

 I agree with you. Just I don't know what to write in the license field of
 the .cabal file: GPL or OtherLicense. The both choices seem correct to me
 and misleading at the same time.

 Cheers,
 David

 30.07.2013, в 12:53, Vo Minh Thu написал(а):

  2013/7/30 David Sorokin david.soro...@gmail.com:
  Hi, Cafe!
 
  Probably, it was asked before but I could not find an answer with help
  of Google.
 
  I have a library which is hosted on Hackage. The library is licensed
  under BSD3. It is a very specialized library for a small target group. Now
  I'm going to relicense it and release a new version already under the
  dual-license: GPLv3 and commercial. In most cases GPL will be sufficient 
  as
  this is not a library in common sense.
 
  Can I specify the GPL license in the .cabal file, or should I write
  OtherLicense?
 
  I'm going to add the information about dual-licensing in the
  description section of the .cabal file, though.
 
  Although you can indeed license your software under different
  licences, in the case of your question it doesn't seem to be a concern
  with Hackage:
 
  The license displayed on Hackage is the one for the corresponding
  .cabal file (or at least I think it is). So you issue your new version
  with the changed license, the new version is available with the new
  license, the old versions are still available with the old license.
  Everything is fine.
 
  Now about the dual licensing. It seems it is again not a problem with
  Hackage: you are not granting through Hackage such a commercial
  license. I guess you provide it upon request (for some money). I.e.
  when I download your library from Hackage, I receive it under the
  terms of the BSD (or GPL) license you have chosen, not under a
  commercial license that I would have to receive through other means.
 
  Otherwise the semantic of the license field on Hackage would mean the
  library is available under such and such licenses, which are not
  granted to you when you download the library on Hackage. Only when you
  download the package you can actually find the licensing terms (e.g.
  in the LICENSE file). But this seems unlikely to me.
 
  Cheers,
  Thu


 ___
 Haskell-Cafe mailing list
 Haskell-Cafe@haskell.org
 http://www.haskell.org/mailman/listinfo/haskell-cafe



___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread David Sorokin
I am inclined to use value OtherLicense but state in the description 
that the package is available either under GPL or a commercial license. 
The latter must be requested to me. Then there would be no required 
additional steps to use the package under GPL. Only the LICENSE file 
must be appropriate. Probably, I will need two files LICENSE and 
LICENSE-GPLv3. In the former I will have add my copyright and write in a 
simple form that the license is dual and everyone is free to use the 
library under GPLv3 (which is the main use case) according the terms 
provided in the corresponded second file.


Thanks,
David

On 30.07.2013 13:57, Vo Minh Thu wrote:

Unless you want to provide multiple open source licenses, I don't see the point:

Anybody that needs a commercial license (and has some money) will
simply ask for such a commercial license when seeing that the code is
available under GPL.

Another reason it is pointless is that you will certainly not want to
list all the commercial licenses you have used/will use with different
clients (there are virtually infinite commercial licenses that you can
invent as needs arise: per seat, per core, per year, and so on
depending on the clients/projects).

I.e. you don't need to state upfront that commercial licences exist
(although I understand that you think it is better to advertise your
willingness to provide such commercial license, but a comment is
enough, the fact is that license is not provided through Hackage).

2013/7/30 Krzysztof Skrzętnicki gte...@gmail.com:

Perhaps it would be best if .cabal allowed to have more than one license
listed.

Another solution would be to use custom field, for example:

License: GPL
x-Other-License: Commercial, see License-Commercial.txt

All best,
Krzysztof Skrzętnicki

On Tue, Jul 30, 2013 at 11:44 AM, David Sorokin david.soro...@gmail.com
wrote:

Thanks Thu,

I agree with you. Just I don't know what to write in the license field of
the .cabal file: GPL or OtherLicense. The both choices seem correct to me
and misleading at the same time.

Cheers,
David

30.07.2013, в 12:53, Vo Minh Thu написал(а):


2013/7/30 David Sorokin david.soro...@gmail.com:

Hi, Cafe!

Probably, it was asked before but I could not find an answer with help
of Google.

I have a library which is hosted on Hackage. The library is licensed
under BSD3. It is a very specialized library for a small target group. Now
I'm going to relicense it and release a new version already under the
dual-license: GPLv3 and commercial. In most cases GPL will be sufficient as
this is not a library in common sense.

Can I specify the GPL license in the .cabal file, or should I write
OtherLicense?

I'm going to add the information about dual-licensing in the
description section of the .cabal file, though.

Although you can indeed license your software under different
licences, in the case of your question it doesn't seem to be a concern
with Hackage:

The license displayed on Hackage is the one for the corresponding
.cabal file (or at least I think it is). So you issue your new version
with the changed license, the new version is available with the new
license, the old versions are still available with the old license.
Everything is fine.

Now about the dual licensing. It seems it is again not a problem with
Hackage: you are not granting through Hackage such a commercial
license. I guess you provide it upon request (for some money). I.e.
when I download your library from Hackage, I receive it under the
terms of the BSD (or GPL) license you have chosen, not under a
commercial license that I would have to receive through other means.

Otherwise the semantic of the license field on Hackage would mean the
library is available under such and such licenses, which are not
granted to you when you download the library on Hackage. Only when you
download the package you can actually find the licensing terms (e.g.
in the LICENSE file). But this seems unlikely to me.

Cheers,
Thu


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe





___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread Jan Stolarek
I'd say OtherLicense because:

  data License = GPL3

is different from

  data License = Commercial | GPL3

I hope this analogy to Haskell data types is convincing :)

Janek

- Oryginalna wiadomość -
Od: David Sorokin david.soro...@gmail.com
Do: Vo Minh Thu not...@gmail.com
DW: Haskell Cafe haskell-cafe@haskell.org
Wysłane: wtorek, 30 lipiec 2013 11:46:00
Temat: Re: [Haskell-cafe] Dual-licensing the package on Hackage

I am inclined to use value OtherLicense but state in the description 
that the package is available either under GPL or a commercial license. 
The latter must be requested to me. Then there would be no required 
additional steps to use the package under GPL. Only the LICENSE file 
must be appropriate. Probably, I will need two files LICENSE and 
LICENSE-GPLv3. In the former I will have add my copyright and write in a 
simple form that the license is dual and everyone is free to use the 
library under GPLv3 (which is the main use case) according the terms 
provided in the corresponded second file.

Thanks,
David

On 30.07.2013 13:57, Vo Minh Thu wrote:
 Unless you want to provide multiple open source licenses, I don't see the 
 point:

 Anybody that needs a commercial license (and has some money) will
 simply ask for such a commercial license when seeing that the code is
 available under GPL.

 Another reason it is pointless is that you will certainly not want to
 list all the commercial licenses you have used/will use with different
 clients (there are virtually infinite commercial licenses that you can
 invent as needs arise: per seat, per core, per year, and so on
 depending on the clients/projects).

 I.e. you don't need to state upfront that commercial licences exist
 (although I understand that you think it is better to advertise your
 willingness to provide such commercial license, but a comment is
 enough, the fact is that license is not provided through Hackage).

 2013/7/30 Krzysztof Skrzętnicki gte...@gmail.com:
 Perhaps it would be best if .cabal allowed to have more than one license
 listed.

 Another solution would be to use custom field, for example:

 License: GPL
 x-Other-License: Commercial, see License-Commercial.txt

 All best,
 Krzysztof Skrzętnicki

 On Tue, Jul 30, 2013 at 11:44 AM, David Sorokin david.soro...@gmail.com
 wrote:
 Thanks Thu,

 I agree with you. Just I don't know what to write in the license field of
 the .cabal file: GPL or OtherLicense. The both choices seem correct to me
 and misleading at the same time.

 Cheers,
 David

 30.07.2013, в 12:53, Vo Minh Thu написал(а):

 2013/7/30 David Sorokin david.soro...@gmail.com:
 Hi, Cafe!

 Probably, it was asked before but I could not find an answer with help
 of Google.

 I have a library which is hosted on Hackage. The library is licensed
 under BSD3. It is a very specialized library for a small target group. Now
 I'm going to relicense it and release a new version already under the
 dual-license: GPLv3 and commercial. In most cases GPL will be sufficient 
 as
 this is not a library in common sense.

 Can I specify the GPL license in the .cabal file, or should I write
 OtherLicense?

 I'm going to add the information about dual-licensing in the
 description section of the .cabal file, though.
 Although you can indeed license your software under different
 licences, in the case of your question it doesn't seem to be a concern
 with Hackage:

 The license displayed on Hackage is the one for the corresponding
 .cabal file (or at least I think it is). So you issue your new version
 with the changed license, the new version is available with the new
 license, the old versions are still available with the old license.
 Everything is fine.

 Now about the dual licensing. It seems it is again not a problem with
 Hackage: you are not granting through Hackage such a commercial
 license. I guess you provide it upon request (for some money). I.e.
 when I download your library from Hackage, I receive it under the
 terms of the BSD (or GPL) license you have chosen, not under a
 commercial license that I would have to receive through other means.

 Otherwise the semantic of the license field on Hackage would mean the
 library is available under such and such licenses, which are not
 granted to you when you download the library on Hackage. Only when you
 download the package you can actually find the licensing terms (e.g.
 in the LICENSE file). But this seems unlikely to me.

 Cheers,
 Thu

 ___
 Haskell-Cafe mailing list
 Haskell-Cafe@haskell.org
 http://www.haskell.org/mailman/listinfo/haskell-cafe



___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread Vo Minh Thu
Again I haven't seen a reason to do what you propose: virtually every
single GPL library author would gladly accept money for their work to
be used in a closed source setting, no need to use OtherLicense to
reach that effect.

On the other hand, you will stop people interested in open source to
look further into your project if they see OtherLicense instead of a
well-known open-source license.

2013/7/30 David Sorokin david.soro...@gmail.com:
 I am inclined to use value OtherLicense but state in the description that
 the package is available either under GPL or a commercial license. The
 latter must be requested to me. Then there would be no required additional
 steps to use the package under GPL. Only the LICENSE file must be
 appropriate. Probably, I will need two files LICENSE and LICENSE-GPLv3. In
 the former I will have add my copyright and write in a simple form that the
 license is dual and everyone is free to use the library under GPLv3 (which
 is the main use case) according the terms provided in the corresponded
 second file.

 Thanks,
 David


 On 30.07.2013 13:57, Vo Minh Thu wrote:

 Unless you want to provide multiple open source licenses, I don't see the
 point:

 Anybody that needs a commercial license (and has some money) will
 simply ask for such a commercial license when seeing that the code is
 available under GPL.

 Another reason it is pointless is that you will certainly not want to
 list all the commercial licenses you have used/will use with different
 clients (there are virtually infinite commercial licenses that you can
 invent as needs arise: per seat, per core, per year, and so on
 depending on the clients/projects).

 I.e. you don't need to state upfront that commercial licences exist
 (although I understand that you think it is better to advertise your
 willingness to provide such commercial license, but a comment is
 enough, the fact is that license is not provided through Hackage).

 2013/7/30 Krzysztof Skrzętnicki gte...@gmail.com:

 Perhaps it would be best if .cabal allowed to have more than one license
 listed.

 Another solution would be to use custom field, for example:

 License: GPL
 x-Other-License: Commercial, see License-Commercial.txt

 All best,
 Krzysztof Skrzętnicki

 On Tue, Jul 30, 2013 at 11:44 AM, David Sorokin david.soro...@gmail.com
 wrote:

 Thanks Thu,

 I agree with you. Just I don't know what to write in the license field
 of
 the .cabal file: GPL or OtherLicense. The both choices seem correct to
 me
 and misleading at the same time.

 Cheers,
 David

 30.07.2013, в 12:53, Vo Minh Thu написал(а):

 2013/7/30 David Sorokin david.soro...@gmail.com:

 Hi, Cafe!

 Probably, it was asked before but I could not find an answer with help
 of Google.

 I have a library which is hosted on Hackage. The library is licensed
 under BSD3. It is a very specialized library for a small target group.
 Now
 I'm going to relicense it and release a new version already under the
 dual-license: GPLv3 and commercial. In most cases GPL will be
 sufficient as
 this is not a library in common sense.

 Can I specify the GPL license in the .cabal file, or should I write
 OtherLicense?

 I'm going to add the information about dual-licensing in the
 description section of the .cabal file, though.

 Although you can indeed license your software under different
 licences, in the case of your question it doesn't seem to be a concern
 with Hackage:

 The license displayed on Hackage is the one for the corresponding
 .cabal file (or at least I think it is). So you issue your new version
 with the changed license, the new version is available with the new
 license, the old versions are still available with the old license.
 Everything is fine.

 Now about the dual licensing. It seems it is again not a problem with
 Hackage: you are not granting through Hackage such a commercial
 license. I guess you provide it upon request (for some money). I.e.
 when I download your library from Hackage, I receive it under the
 terms of the BSD (or GPL) license you have chosen, not under a
 commercial license that I would have to receive through other means.

 Otherwise the semantic of the license field on Hackage would mean the
 library is available under such and such licenses, which are not
 granted to you when you download the library on Hackage. Only when you
 download the package you can actually find the licensing terms (e.g.
 in the LICENSE file). But this seems unlikely to me.

 Cheers,
 Thu


 ___
 Haskell-Cafe mailing list
 Haskell-Cafe@haskell.org
 http://www.haskell.org/mailman/listinfo/haskell-cafe




___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread David Sorokin

This is already another question what license to use :)

On 30.07.2013 14:56, Vo Minh Thu wrote:

Again I haven't seen a reason to do what you propose: virtually every
single GPL library author would gladly accept money for their work to
be used in a closed source setting, no need to use OtherLicense to
reach that effect.

On the other hand, you will stop people interested in open source to
look further into your project if they see OtherLicense instead of a
well-known open-source license.

2013/7/30 David Sorokin david.soro...@gmail.com:

I am inclined to use value OtherLicense but state in the description that
the package is available either under GPL or a commercial license. The
latter must be requested to me. Then there would be no required additional
steps to use the package under GPL. Only the LICENSE file must be
appropriate. Probably, I will need two files LICENSE and LICENSE-GPLv3. In
the former I will have add my copyright and write in a simple form that the
license is dual and everyone is free to use the library under GPLv3 (which
is the main use case) according the terms provided in the corresponded
second file.

Thanks,
David


On 30.07.2013 13:57, Vo Minh Thu wrote:

Unless you want to provide multiple open source licenses, I don't see the
point:

Anybody that needs a commercial license (and has some money) will
simply ask for such a commercial license when seeing that the code is
available under GPL.

Another reason it is pointless is that you will certainly not want to
list all the commercial licenses you have used/will use with different
clients (there are virtually infinite commercial licenses that you can
invent as needs arise: per seat, per core, per year, and so on
depending on the clients/projects).

I.e. you don't need to state upfront that commercial licences exist
(although I understand that you think it is better to advertise your
willingness to provide such commercial license, but a comment is
enough, the fact is that license is not provided through Hackage).

2013/7/30 Krzysztof Skrzętnicki gte...@gmail.com:

Perhaps it would be best if .cabal allowed to have more than one license
listed.

Another solution would be to use custom field, for example:

License: GPL
x-Other-License: Commercial, see License-Commercial.txt

All best,
Krzysztof Skrzętnicki

On Tue, Jul 30, 2013 at 11:44 AM, David Sorokin david.soro...@gmail.com
wrote:

Thanks Thu,

I agree with you. Just I don't know what to write in the license field
of
the .cabal file: GPL or OtherLicense. The both choices seem correct to
me
and misleading at the same time.

Cheers,
David

30.07.2013, в 12:53, Vo Minh Thu написал(а):


2013/7/30 David Sorokin david.soro...@gmail.com:

Hi, Cafe!

Probably, it was asked before but I could not find an answer with help
of Google.

I have a library which is hosted on Hackage. The library is licensed
under BSD3. It is a very specialized library for a small target group.
Now
I'm going to relicense it and release a new version already under the
dual-license: GPLv3 and commercial. In most cases GPL will be
sufficient as
this is not a library in common sense.

Can I specify the GPL license in the .cabal file, or should I write
OtherLicense?

I'm going to add the information about dual-licensing in the
description section of the .cabal file, though.

Although you can indeed license your software under different
licences, in the case of your question it doesn't seem to be a concern
with Hackage:

The license displayed on Hackage is the one for the corresponding
.cabal file (or at least I think it is). So you issue your new version
with the changed license, the new version is available with the new
license, the old versions are still available with the old license.
Everything is fine.

Now about the dual licensing. It seems it is again not a problem with
Hackage: you are not granting through Hackage such a commercial
license. I guess you provide it upon request (for some money). I.e.
when I download your library from Hackage, I receive it under the
terms of the BSD (or GPL) license you have chosen, not under a
commercial license that I would have to receive through other means.

Otherwise the semantic of the license field on Hackage would mean the
library is available under such and such licenses, which are not
granted to you when you download the library on Hackage. Only when you
download the package you can actually find the licensing terms (e.g.
in the LICENSE file). But this seems unlikely to me.

Cheers,
Thu


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe





___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread Vo Minh Thu
No. If I provide a library to you stating you can use it under the
term of the GPL3, this does not prevent me from providing it to
someone else under a different license (provided I have the rights to
do so, for instance because I am the copyright owner).

So as far as you're concerned (and this is the case with Hackage in
this dicussion), the library is provided under the terms of the GPL.
There is no point saying but if you pay me I can provide it under
some other terms.

2013/7/30 Jan Stolarek jan.stola...@p.lodz.pl:
 I'd say OtherLicense because:

   data License = GPL3

 is different from

   data License = Commercial | GPL3

 I hope this analogy to Haskell data types is convincing :)

 Janek

 - Oryginalna wiadomość -
 Od: David Sorokin david.soro...@gmail.com
 Do: Vo Minh Thu not...@gmail.com
 DW: Haskell Cafe haskell-cafe@haskell.org
 Wysłane: wtorek, 30 lipiec 2013 11:46:00
 Temat: Re: [Haskell-cafe] Dual-licensing the package on Hackage

 I am inclined to use value OtherLicense but state in the description
 that the package is available either under GPL or a commercial license.
 The latter must be requested to me. Then there would be no required
 additional steps to use the package under GPL. Only the LICENSE file
 must be appropriate. Probably, I will need two files LICENSE and
 LICENSE-GPLv3. In the former I will have add my copyright and write in a
 simple form that the license is dual and everyone is free to use the
 library under GPLv3 (which is the main use case) according the terms
 provided in the corresponded second file.

 Thanks,
 David

 On 30.07.2013 13:57, Vo Minh Thu wrote:
 Unless you want to provide multiple open source licenses, I don't see the 
 point:

 Anybody that needs a commercial license (and has some money) will
 simply ask for such a commercial license when seeing that the code is
 available under GPL.

 Another reason it is pointless is that you will certainly not want to
 list all the commercial licenses you have used/will use with different
 clients (there are virtually infinite commercial licenses that you can
 invent as needs arise: per seat, per core, per year, and so on
 depending on the clients/projects).

 I.e. you don't need to state upfront that commercial licences exist
 (although I understand that you think it is better to advertise your
 willingness to provide such commercial license, but a comment is
 enough, the fact is that license is not provided through Hackage).

 2013/7/30 Krzysztof Skrzętnicki gte...@gmail.com:
 Perhaps it would be best if .cabal allowed to have more than one license
 listed.

 Another solution would be to use custom field, for example:

 License: GPL
 x-Other-License: Commercial, see License-Commercial.txt

 All best,
 Krzysztof Skrzętnicki

 On Tue, Jul 30, 2013 at 11:44 AM, David Sorokin david.soro...@gmail.com
 wrote:
 Thanks Thu,

 I agree with you. Just I don't know what to write in the license field of
 the .cabal file: GPL or OtherLicense. The both choices seem correct to me
 and misleading at the same time.

 Cheers,
 David

 30.07.2013, в 12:53, Vo Minh Thu написал(а):

 2013/7/30 David Sorokin david.soro...@gmail.com:
 Hi, Cafe!

 Probably, it was asked before but I could not find an answer with help
 of Google.

 I have a library which is hosted on Hackage. The library is licensed
 under BSD3. It is a very specialized library for a small target group. 
 Now
 I'm going to relicense it and release a new version already under the
 dual-license: GPLv3 and commercial. In most cases GPL will be sufficient 
 as
 this is not a library in common sense.

 Can I specify the GPL license in the .cabal file, or should I write
 OtherLicense?

 I'm going to add the information about dual-licensing in the
 description section of the .cabal file, though.
 Although you can indeed license your software under different
 licences, in the case of your question it doesn't seem to be a concern
 with Hackage:

 The license displayed on Hackage is the one for the corresponding
 .cabal file (or at least I think it is). So you issue your new version
 with the changed license, the new version is available with the new
 license, the old versions are still available with the old license.
 Everything is fine.

 Now about the dual licensing. It seems it is again not a problem with
 Hackage: you are not granting through Hackage such a commercial
 license. I guess you provide it upon request (for some money). I.e.
 when I download your library from Hackage, I receive it under the
 terms of the BSD (or GPL) license you have chosen, not under a
 commercial license that I would have to receive through other means.

 Otherwise the semantic of the license field on Hackage would mean the
 library is available under such and such licenses, which are not
 granted to you when you download the library on Hackage. Only when you
 download the package you can actually find the licensing terms (e.g.
 in the LICENSE file). But this seems unlikely to me.

 

Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread Vo Minh Thu
Sorry but I was not discussing which license to use. It seems I cannot
get my point across...

2013/7/30 David Sorokin david.soro...@gmail.com:
 This is already another question what license to use :)


 On 30.07.2013 14:56, Vo Minh Thu wrote:

 Again I haven't seen a reason to do what you propose: virtually every
 single GPL library author would gladly accept money for their work to
 be used in a closed source setting, no need to use OtherLicense to
 reach that effect.

 On the other hand, you will stop people interested in open source to
 look further into your project if they see OtherLicense instead of a
 well-known open-source license.

 2013/7/30 David Sorokin david.soro...@gmail.com:

 I am inclined to use value OtherLicense but state in the description that
 the package is available either under GPL or a commercial license. The
 latter must be requested to me. Then there would be no required
 additional
 steps to use the package under GPL. Only the LICENSE file must be
 appropriate. Probably, I will need two files LICENSE and LICENSE-GPLv3.
 In
 the former I will have add my copyright and write in a simple form that
 the
 license is dual and everyone is free to use the library under GPLv3
 (which
 is the main use case) according the terms provided in the corresponded
 second file.

 Thanks,
 David


 On 30.07.2013 13:57, Vo Minh Thu wrote:

 Unless you want to provide multiple open source licenses, I don't see
 the
 point:

 Anybody that needs a commercial license (and has some money) will
 simply ask for such a commercial license when seeing that the code is
 available under GPL.

 Another reason it is pointless is that you will certainly not want to
 list all the commercial licenses you have used/will use with different
 clients (there are virtually infinite commercial licenses that you can
 invent as needs arise: per seat, per core, per year, and so on
 depending on the clients/projects).

 I.e. you don't need to state upfront that commercial licences exist
 (although I understand that you think it is better to advertise your
 willingness to provide such commercial license, but a comment is
 enough, the fact is that license is not provided through Hackage).

 2013/7/30 Krzysztof Skrzętnicki gte...@gmail.com:

 Perhaps it would be best if .cabal allowed to have more than one
 license
 listed.

 Another solution would be to use custom field, for example:

 License: GPL
 x-Other-License: Commercial, see License-Commercial.txt

 All best,
 Krzysztof Skrzętnicki

 On Tue, Jul 30, 2013 at 11:44 AM, David Sorokin
 david.soro...@gmail.com
 wrote:

 Thanks Thu,

 I agree with you. Just I don't know what to write in the license field
 of
 the .cabal file: GPL or OtherLicense. The both choices seem correct to
 me
 and misleading at the same time.

 Cheers,
 David

 30.07.2013, в 12:53, Vo Minh Thu написал(а):

 2013/7/30 David Sorokin david.soro...@gmail.com:

 Hi, Cafe!

 Probably, it was asked before but I could not find an answer with
 help
 of Google.

 I have a library which is hosted on Hackage. The library is licensed
 under BSD3. It is a very specialized library for a small target
 group.
 Now
 I'm going to relicense it and release a new version already under
 the
 dual-license: GPLv3 and commercial. In most cases GPL will be
 sufficient as
 this is not a library in common sense.

 Can I specify the GPL license in the .cabal file, or should I write
 OtherLicense?

 I'm going to add the information about dual-licensing in the
 description section of the .cabal file, though.

 Although you can indeed license your software under different
 licences, in the case of your question it doesn't seem to be a
 concern
 with Hackage:

 The license displayed on Hackage is the one for the corresponding
 .cabal file (or at least I think it is). So you issue your new
 version
 with the changed license, the new version is available with the new
 license, the old versions are still available with the old license.
 Everything is fine.

 Now about the dual licensing. It seems it is again not a problem with
 Hackage: you are not granting through Hackage such a commercial
 license. I guess you provide it upon request (for some money). I.e.
 when I download your library from Hackage, I receive it under the
 terms of the BSD (or GPL) license you have chosen, not under a
 commercial license that I would have to receive through other means.

 Otherwise the semantic of the license field on Hackage would mean the
 library is available under such and such licenses, which are not
 granted to you when you download the library on Hackage. Only when
 you
 download the package you can actually find the licensing terms (e.g.
 in the LICENSE file). But this seems unlikely to me.

 Cheers,
 Thu


 ___
 Haskell-Cafe mailing list
 Haskell-Cafe@haskell.org
 http://www.haskell.org/mailman/listinfo/haskell-cafe




___
Haskell-Cafe mailing list

Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread Daniel F
I second this.

Also, I would like to point out that the product you get from Hackage
(the source code) will be licensed under the GPL. Nobody can get the
commercial version of the product from Hackage, as one has to contact
you (the owner) directly or in some other manner.

I guess that is what Thu is trying to say.

On Tue, Jul 30, 2013 at 3:03 PM, Vo Minh Thu not...@gmail.com wrote:
 No. If I provide a library to you stating you can use it under the
 term of the GPL3, this does not prevent me from providing it to
 someone else under a different license (provided I have the rights to
 do so, for instance because I am the copyright owner).

 So as far as you're concerned (and this is the case with Hackage in
 this dicussion), the library is provided under the terms of the GPL.
 There is no point saying but if you pay me I can provide it under
 some other terms.

 2013/7/30 Jan Stolarek jan.stola...@p.lodz.pl:
 I'd say OtherLicense because:

   data License = GPL3

 is different from

   data License = Commercial | GPL3

 I hope this analogy to Haskell data types is convincing :)

 Janek

 - Oryginalna wiadomość -
 Od: David Sorokin david.soro...@gmail.com
 Do: Vo Minh Thu not...@gmail.com
 DW: Haskell Cafe haskell-cafe@haskell.org
 Wysłane: wtorek, 30 lipiec 2013 11:46:00
 Temat: Re: [Haskell-cafe] Dual-licensing the package on Hackage

 I am inclined to use value OtherLicense but state in the description
 that the package is available either under GPL or a commercial license.
 The latter must be requested to me. Then there would be no required
 additional steps to use the package under GPL. Only the LICENSE file
 must be appropriate. Probably, I will need two files LICENSE and
 LICENSE-GPLv3. In the former I will have add my copyright and write in a
 simple form that the license is dual and everyone is free to use the
 library under GPLv3 (which is the main use case) according the terms
 provided in the corresponded second file.

 Thanks,
 David

 On 30.07.2013 13:57, Vo Minh Thu wrote:
 Unless you want to provide multiple open source licenses, I don't see the 
 point:

 Anybody that needs a commercial license (and has some money) will
 simply ask for such a commercial license when seeing that the code is
 available under GPL.

 Another reason it is pointless is that you will certainly not want to
 list all the commercial licenses you have used/will use with different
 clients (there are virtually infinite commercial licenses that you can
 invent as needs arise: per seat, per core, per year, and so on
 depending on the clients/projects).

 I.e. you don't need to state upfront that commercial licences exist
 (although I understand that you think it is better to advertise your
 willingness to provide such commercial license, but a comment is
 enough, the fact is that license is not provided through Hackage).

 2013/7/30 Krzysztof Skrzętnicki gte...@gmail.com:
 Perhaps it would be best if .cabal allowed to have more than one license
 listed.

 Another solution would be to use custom field, for example:

 License: GPL
 x-Other-License: Commercial, see License-Commercial.txt

 All best,
 Krzysztof Skrzętnicki

 On Tue, Jul 30, 2013 at 11:44 AM, David Sorokin david.soro...@gmail.com
 wrote:
 Thanks Thu,

 I agree with you. Just I don't know what to write in the license field of
 the .cabal file: GPL or OtherLicense. The both choices seem correct to me
 and misleading at the same time.

 Cheers,
 David

 30.07.2013, в 12:53, Vo Minh Thu написал(а):

 2013/7/30 David Sorokin david.soro...@gmail.com:
 Hi, Cafe!

 Probably, it was asked before but I could not find an answer with help
 of Google.

 I have a library which is hosted on Hackage. The library is licensed
 under BSD3. It is a very specialized library for a small target group. 
 Now
 I'm going to relicense it and release a new version already under the
 dual-license: GPLv3 and commercial. In most cases GPL will be 
 sufficient as
 this is not a library in common sense.

 Can I specify the GPL license in the .cabal file, or should I write
 OtherLicense?

 I'm going to add the information about dual-licensing in the
 description section of the .cabal file, though.
 Although you can indeed license your software under different
 licences, in the case of your question it doesn't seem to be a concern
 with Hackage:

 The license displayed on Hackage is the one for the corresponding
 .cabal file (or at least I think it is). So you issue your new version
 with the changed license, the new version is available with the new
 license, the old versions are still available with the old license.
 Everything is fine.

 Now about the dual licensing. It seems it is again not a problem with
 Hackage: you are not granting through Hackage such a commercial
 license. I guess you provide it upon request (for some money). I.e.
 when I download your library from Hackage, I receive it under the
 terms of the BSD (or GPL) license you have chosen, not under a
 commercial 

[Haskell-cafe] ForeignPtr and Garbage Collection

2013-07-30 Thread satvik chauhan
Hi Cafe,

Is it guaranteed that the value of `ForeignPtr` will not be changed (for
example due to compaction etc) by haskell garbage collector until it goes
out of scope and finalizer is run.

-Satvik
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Dual-licensing the package on Hackage

2013-07-30 Thread David Thomas
One question is how much of a discovery/indexing role Hackage plays.  There
can be a tremendous difference in ease of obtaining a commercial license,
and a restriction for things I can use in a proprietary project, once I
pay enough seems like a legitimate use case.

It also has some bearing on ease of contributing changes upstream - a
project that is dual licensed will probably want well-documented transfer
of ownership; a gpl only project may not.  That said, I am less sure that
Hackage needs to be the place to call that out.
On Jul 30, 2013 2:51 AM, Vo Minh Thu not...@gmail.com wrote:

 Well, if you are willing to grant me a GPL license when I download
 your package through Hackage, GPL is accurate.

 Again you are not providing me with another license. Obtaining a
 commercial license should be seeked through other means, perhaps by
 sending you an email. I don't think Hackage should be used for making
 adverts, but I think it would be ok to state in the description of the
 package something along the lines of commercial licenses are
 available through example.com.

 2013/7/30 David Sorokin david.soro...@gmail.com:
  Thanks Thu,
 
  I agree with you. Just I don't know what to write in the license field
 of the .cabal file: GPL or OtherLicense. The both choices seem correct to
 me and misleading at the same time.
 
  Cheers,
  David
 
  30.07.2013, в 12:53, Vo Minh Thu написал(а):
 
  2013/7/30 David Sorokin david.soro...@gmail.com:
  Hi, Cafe!
 
  Probably, it was asked before but I could not find an answer with help
 of Google.
 
  I have a library which is hosted on Hackage. The library is licensed
 under BSD3. It is a very specialized library for a small target group. Now
 I'm going to relicense it and release a new version already under the
 dual-license: GPLv3 and commercial. In most cases GPL will be sufficient as
 this is not a library in common sense.
 
  Can I specify the GPL license in the .cabal file, or should I write
 OtherLicense?
 
  I'm going to add the information about dual-licensing in the
 description section of the .cabal file, though.
 
  Although you can indeed license your software under different
  licences, in the case of your question it doesn't seem to be a concern
  with Hackage:
 
  The license displayed on Hackage is the one for the corresponding
  .cabal file (or at least I think it is). So you issue your new version
  with the changed license, the new version is available with the new
  license, the old versions are still available with the old license.
  Everything is fine.
 
  Now about the dual licensing. It seems it is again not a problem with
  Hackage: you are not granting through Hackage such a commercial
  license. I guess you provide it upon request (for some money). I.e.
  when I download your library from Hackage, I receive it under the
  terms of the BSD (or GPL) license you have chosen, not under a
  commercial license that I would have to receive through other means.
 
  Otherwise the semantic of the license field on Hackage would mean the
  library is available under such and such licenses, which are not
  granted to you when you download the library on Hackage. Only when you
  download the package you can actually find the licensing terms (e.g.
  in the LICENSE file). But this seems unlikely to me.
 
  Cheers,
  Thu
 

 ___
 Haskell-Cafe mailing list
 Haskell-Cafe@haskell.org
 http://www.haskell.org/mailman/listinfo/haskell-cafe

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Call for talks: Haskell Implementors Workshop 2013, Sept 22, Boston

2013-07-30 Thread Ryan Newton
Please pass on this announcement!  The deadline is in two weeks.*
*
*
*
* Call for Talks*
   ACM SIGPLAN Haskell Implementors' Workshop

http://haskell.org/haskellwiki/HaskellImplementorsWorkshop/2013
Boston, USA, September 22th, 2013
The workshop will be held in conjunction with ICFP 2013
http://www.icfpconference.org/icfp2013/

*Important dates*

Proposal Deadline:  *13th August2013 (by midnight, any timezone)*
Notification:   27th August2013
Workshop:   22th September 2013

The Haskell Implementors' Workshop is to be held alongside ICFP 2013
this year in Boston. There will be no proceedings; it is an informal
gathering of people involved in the design and development of Haskell
implementations, tools, libraries, and supporting infrastructure.

This relatively new workshop reflects the growth of the user community:
there is a clear need for a well-supported tool chain for the
development, distribution, deployment, and configuration of Haskell
software. The aim is for this workshop to give the people involved with
building the infrastructure behind this ecosystem an opportunity to bat
around ideas, share experiences, and ask for feedback from fellow
experts.

We intend the workshop to have an informal and interactive feel, with a
flexible timetable and plenty of room for ad-hoc discussion, demos, and
impromptu short talks.


Scope and target audience
-

It is important to distinguish the Haskell Implementors' Workshop from
the Haskell Symposium which is also co-located with ICFP 2013. The
Haskell Symposium is for the publication of Haskell-related research. In
contrast, the Haskell Implementors' Workshop will have no proceedings --
although we will aim to make talk videos, slides and presented data
available with the consent of the speakers.

In the Haskell Implementors' Workshop, we hope to study the underlying
technology. We want to bring together anyone interested in the
nitty-gritty details behind turning plain-text source code into a
deployed product. Having said that, members of the wider Haskell
community are more than welcome to attend the workshop -- we need your
feedback to keep the Haskell ecosystem thriving.

The scope covers any of the following topics. There may be some topics
that people feel we've missed, so by all means submit a proposal even if
it doesn't fit exactly into one of these buckets:

  * Compilation techniques
  * Language features and extensions
  * Type system implementation
  * Concurrency and parallelism: language design and implementation
  * Performance, optimisation and benchmarking
  * Virtual machines and run-time systems
  * Libraries and tools for development or deployment


Talks
-

At this stage we would like to invite proposals from potential speakers
for a relatively short talk. We are aiming for 20 minute talks with 10
minutes for questions and changeovers. We want to hear from people
writing compilers, tools, or libraries, people with cool ideas for
directions in which we should take the platform, proposals for new
features to be implemented, and half-baked crazy ideas. Please submit a
talk title and abstract of no more than 200 words.

Submissions should be made via EasyChair.  The website is:
  https://www.easychair.org/conferences/?conf=hiw2013

If you don't have an account you can create one here:
  https://www.easychair.org/account/signup.cgi

Because the submission is an abstract only, please click the abstract
only button when you make your submission.  There is no need to
attach a separate file.

We will also have a lightning talks session which will be organised on
the day. These talks will be 2-10 minutes, depending on available time.
Suggested topics for lightning talks are to present a single idea, a
work-in-progress project, a problem to intrigue and perplex Haskell
implementors, or simply to ask for feedback and collaborators.


Organisers
--

  * Ryan Newton(Indiana University)
  * Neal Glew  (Intel Labs)
  * Edward Yang(Stanford University)
  * Thomas Schilling   (University of Kent)
  * Geoffrey Mainland  (Drexel University)
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] ForeignPtr and Garbage Collection

2013-07-30 Thread Matt Cox
The pointer held in a ForeignPtr is not managed at all by the GC. The
ForeignPtr itself is a GC'd object and runs a finalizer (a function
receiving a pointer) with the value it holds when it is destroyed.

For example, if you allocate a C resource in one foreign call and then
store its value in a foreign pointer, that externally allocated memory it
points to is outside the management of the GC.

Matt


On Tue, Jul 30, 2013 at 9:50 AM, satvik chauhan mystic.sat...@gmail.comwrote:

 Hi Cafe,

 Is it guaranteed that the value of `ForeignPtr` will not be changed (for
 example due to compaction etc) by haskell garbage collector until it goes
 out of scope and finalizer is run.

 -Satvik

 ___
 Haskell-Cafe mailing list
 Haskell-Cafe@haskell.org
 http://www.haskell.org/mailman/listinfo/haskell-cafe


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] ANN: Angel 0.4.4

2013-07-30 Thread Michael Xavier
I'm pleased to announce the release of Angel 0.4.4.

angel is a daemon that runs and monitors other processes. It is similar to
djb's daemontools or the Ruby project god. It's goals are to keep a set of
services running, and to facilitate the easy configuration and restart of
those services.

New in 0.4.4

* Add env option to config to specify environment variables.
* Inject ANGEL_PROCESS_NUMBER environment variable into processes started
with count. This is intended for the purpose of logging, port enumeration,
etc.

Homepage: https://github.com/michaelxavier/angel
HackageDB: http://hackage.haskell.org/package/angel
-- 
Michael Xavier
http://www.michaelxavier.net
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Haddock GSOC project progress

2013-07-30 Thread Mateusz Kowalczyk
Greetings cafe,

As some of you might know, I'm hacking on Haddock as part of Google
Summer of Code. I was recently advised to create a blog and document
some of what I have been doing recently. You can find the blog at [1] if
you're interested. The first post goes over the work from the last month
or so. Future posts should be shorter and on more specific topics.
There's an overview of what has happened/changed/will change at the
bottom of the post if you're short on time.

Thanks.

[1] - http://fuuzetsu.co.uk/blog

-- 
Mateusz K.


0x2ADA9A97.asc
Description: application/pgp-keys
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] ANNOUNCE: hdbi-1.0.0 and hdbi-postgresql-1.0.0

2013-07-30 Thread Alexey Uimanov
Hello, haskellers. This is the first release of HDBI (Haskell Database
Independent interface). It is the fork of HDBC.
HDBI has some improvements in design, it also has better testing and
performance (mainly because of using Text instead of String anywhere).
HDBI designed to be more flexible and correct database interface.

You can find out more information in the documentation.
http://hackage.haskell.org/package/hdbi
http://hackage.haskell.org/package/hdbi-postgresql

I am planning to implement MySql and Sqlite drivers as well

https://github.com/s9gf4ult/hdbi
https://github.com/s9gf4ult/hdbi-postgresql
Issues and pull requests are welcome, as well as collaboration.
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] ANNOUNCE: hdbi-1.0.0 and hdbi-postgresql-1.0.0

2013-07-30 Thread Bardur Arantsson
On 2013-07-31 05:45, Alexey Uimanov wrote:
 Hello, haskellers. This is the first release of HDBI (Haskell Database
 Independent interface). It is the fork of HDBC.
 HDBI has some improvements in design, it also has better testing and
 performance (mainly because of using Text instead of String anywhere).
 HDBI designed to be more flexible and correct database interface.
 
 You can find out more information in the documentation.
 http://hackage.haskell.org/package/hdbi
 http://hackage.haskell.org/package/hdbi-postgresql
 
 I am planning to implement MySql and Sqlite drivers as well
 
 https://github.com/s9gf4ult/hdbi
 https://github.com/s9gf4ult/hdbi-postgresql
 Issues and pull requests are welcome, as well as collaboration.
 

Looks interesting.

Just a couple of comments from skimming the documentation. Apologies, if
these are already addressed -- didn't see any mention of it from my
read-through.

Regard parameterized SQL: It might be worth using named parameters (e.g.
:foo and :bar or something like that) rather than ? as
placeholders in SQL/prepared SQL. This will make it slightly more
flexible if you need to provide different SQL strings for different
databases, but want to reuse the code which does the actual running of
the SQL. It's also more flexible if you need to repeat parameters -- the
latter is typical with PostgreSQL if you want to emulate
update-or-insert in a single SQL statement.

Regarding migrations: If you haven't already, please have a look at
Liquibase (http://www.liquibase.org/documentation/index.html) before
attempting to implement migrations. The most important attributes of
Liquibase are:

  a) migrations are *manually* specified deltas as opposed to deltas
 automatically derived from two snapshots of the database. Anything
 based on automatically getting from snapshot A to snapshot B *will*
 break or do undesirable/unpredictable things to data at some point.
  b) It deliberately does NOT provide migrations in a Turing Complete
 language -- IME, if you need TC migrations on a routine basis
 you're already in deep trouble and need to think more about what
 you're doing (at a process or engineering level). If you
 *really* need to, you *can* extend it do custom migrations via
 code, but the barrier to entry is sufficiently high that you'll
 rarely be tempted unless you *really* need it and the migration
 step is likely to be reusable.
  c) the concept of contexts (see the documentation) which allows
 you to vary the migrations across different environments as
 needed. (This is definitely open to abuse, but when you need it
 you *really* need it, IME.)
  d) It can also generate full SQL for changes-about-to-be-applied
 so that you can audit and/or apply them manually -- some devops
 teams need this, others may not care. A minor but important
 detail is that the generated SQL includes all the metadata for
 tracking the application of the migrations themselves.

Liquibase is the only system *I've* ever seen that is even close to
doing migrations the Right Way According To Me(TM). (I've used it since
the 1.x days using the XML format and still haven't come across anything
that can really compete.) Liquibase certainly has flaws(*), but one
should think *really* hard about whether there isn't some existing
migrations system which is good enough before foisting yet another
migrations system on the world since it's highly likely to be at least
as flawed as all the existing systems in one way or another.

(Of course, being implemented in Java, there is one aspect of Liquibase
which is annoying if using it for Haskell projects: It's not very
convenient to auto-apply all migrations at startup time without some
sort of run-this-executable-script-before-running-the-main-program
hack. That, and you need a Java Runtime Environment installed.)

Anyway, just throwing that out there...

Regards,

/b

(*) Sub-par internal consistency checking across combinations of
contexts for changelog files being one of them. There also the fact that
it was until recently XML-based and that the the new syntaxes all have
their own problems. Maybe a Haskell DSL could lead to some real
improvements here...



___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Haddock GSOC project progress

2013-07-30 Thread Roman Cheplyaka
Hi Mateusz,

This looks great — I'm especially excited about List entries no longer
have to be separated by empty lines!

However, the decision to use Attoparsec (instead of Parsec, say) strikes
me as a bit odd, as it wasn't intended for parsing source code. In
particular, I'm concerned with error messages this parser would produce.

Roman

* Mateusz Kowalczyk fuuze...@fuuzetsu.co.uk [2013-07-30 23:35:45+0100]
 Greetings cafe,
 
 As some of you might know, I'm hacking on Haddock as part of Google
 Summer of Code. I was recently advised to create a blog and document
 some of what I have been doing recently. You can find the blog at [1] if
 you're interested. The first post goes over the work from the last month
 or so. Future posts should be shorter and on more specific topics.
 There's an overview of what has happened/changed/will change at the
 bottom of the post if you're short on time.
 
 Thanks.
 
 [1] - http://fuuzetsu.co.uk/blog

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe