Licensing of Haskell code
D. Tweed
tweed@compsci.bristol.ac.uk
Fri, 23 May 2003 12:54:41 +0100 (BST)
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