Ashley Yakely writes:
OK, this may not be immediately practical, but... as contracts, would it be possible to express licenses in a Haskell-like language? Didn't Simon PJ do some kind of work on this? There seem to be interesting covariant/contravariant properties here, for instance, if I require you to allow A to anyone who does B, then that is satisfied if you allow more than A to anyone who does less than B.
I think that's a great idea. I've often thought that there ought to be a formal system for reasoning about source code licenses, at least so there would be a way to unambiguously decide when one license is "compatible" with another, and what precisely are the obligations on a programmer when distributing a work consisting of code licensed in two different ways. An DSL for licenses would be even better, since you'd presumably be able to interrogate the system to determine the properties of license combinations. Cheers, Simon
On Fri, 23 May 2003, Simon Marlow wrote:
An DSL for licenses would be even better, since you'd presumably be able to interrogate the system to determine the properties of license combinations.
As a (sometimes ungrammatical) first cut, how about
>>>>>>>>>>>>>>>>>>>> data Licences = GPL | BSD | MIT | MPL | OSI | Aladdin deriving Show
hoursWorkPerLicence = 5::Int -- adjust to local conditions operation `canBeDoneUnder` licences = "Consult a lawyer acquainted with the " ++disp licences++" licences to see if "++operation ++" is permissible on a combined work. Should take approximately " ++show ((length licences)*hoursWorkPerLicence)++" billable hours." where disp [x]=" and "++(show x) disp (x:xs)=" "++(show x)++","++(disp xs) <<<<<<<<<<<<<<<<<<<<<<<<<< Sorry, I couldn't resist this :-) (although I do have doubts that the human licence analysis required to write the DSL description of the licence can be done on the licences independently and the then results `intersected' to get judgements on the licence combination, rather than needing to human analyse the licence combination as a whole.) ___cheers,_dave_________________________________________________________ www.cs.bris.ac.uk/~tweed/ | `It's no good going home to practise email:tweed@cs.bris.ac.uk | a Special Outdoor Song which Has To Be work tel:(0117) 954-5250 | Sung In The Snow' -- Winnie the Pooh
participants (2)
-
D. Tweed -
Simon Marlow