aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/program/licentia/license/limitation.lux
blob: 602a4f163e6b3b4acf29201f0b3869884ede9b29 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
(.module:
  [lux #*
   [data
    ["." text
     format]]]
  [//
   ["_" term]
   [//
    ["$" document]]])

(def: #export acceptance
  (let [abilities (: (List Text)
                     (list "use"
                           "copy"
                           "distribute"
                           "modify"
                           (format "create an " _.extension
                                   " of either " _.work
                                   " or any " _.extension
                                   " created by a " _.contributor)))
        acknowledgement (format _.recipient
                                " is not required to accept " _.license
                                " since " _.recipient
                                " has not signed it")
        limitation (format "However, nothing else grants " _.recipient
                           " permission to " ($.or abilities))
        warning (format "These actions are prohibited by law if " _.recipient
                        " does not accept " _.license)
        implicit-acceptance (let [activation-condition "by performing any of these actions"
                                  acceptance (format _.recipient
                                                     " indicates that " _.recipient
                                                     " accepts " _.license)
                                  agreement (format _.recipient " agrees to be bound by all its terms and conditions")]
                              (format "Therefore, " activation-condition ", " ($.and (list acceptance agreement))))
        prohibition-due-to-non-agreement (format "If " _.recipient
                                                 " does not agree with all the terms and conditions of " _.license
                                                 ", " _.recipient " can not " ($.or abilities))
        prohibition-due-to-impossibility (format "If it is impossible for " _.recipient
                                                 " to comply with all the terms and conditions of " _.license
                                                 ", then " _.recipient
                                                 " can not " ($.or abilities))]
    ($.paragraph (list acknowledgement
                       limitation
                       warning
                       implicit-acceptance
                       prohibition-due-to-non-agreement
                       prohibition-due-to-impossibility))))

(def: #export grant
  ($.paragraph (list (format "The licenses granted in this document are the only rights granted under " _.license)
                     (format "No additional rights or licenses will be implied from the distribution or licensing of " _.work
                             " under " _.license)
                     (format "No patent license is granted by a " _.contributor
                             " for any code that the " _.contributor
                             " has removed from " _.work))))

(def: identifiers
  (List Text)
  (list "trade names"
        "trademarks"
        "service marks"
        "product names"
        "logos"))

(def: #export trademark
  ($.paragraph (list (format _.license " does not grant any permission to use the " ($.or ..identifiers)
                             " of any " _.contributor
                             "; except as required for reasonable and customary use in describing the origin of "
                             _.work))))

(def: #export secondary-licenses
  ($.paragraph (list (format "No " _.contributor
                             " makes additional grants as a result of a choice by " _.recipient
                             " to distribute " _.work
                             " under a under the terms of a " _.secondary-license))))