@effekt-lang/effekt 0.24.0 → 0.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/effekt +0 -0
- package/libraries/common/array.effekt +66 -8
- package/libraries/common/buffer.effekt +32 -33
- package/libraries/common/bytearray.effekt +40 -8
- package/libraries/common/queue.effekt +62 -62
- package/libraries/common/ref.effekt +62 -9
- package/libraries/common/stringbuffer.effekt +1 -1
- package/libraries/js/effekt_runtime.js +72 -69
- package/libraries/llvm/main.c +0 -2
- package/libraries/llvm/rts.ll +2 -30
- package/licenses/eclipse public license, version 2.0 - epl-2.0.html +23 -23
- package/licenses/mit license - mit-license.html +51 -31
- package/licenses/the bsd license - bsd-license.html +50 -32
- package/licenses/the mit license - mit.html +51 -31
- package/package.json +1 -1
- package/libraries/llvm/array.c +0 -57
- package/libraries/llvm/ref.c +0 -47
|
@@ -1,69 +1,79 @@
|
|
|
1
|
-
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
|
|
1
|
+
// Complexity of state:
|
|
2
|
+
//
|
|
3
|
+
// get: O(1)
|
|
4
|
+
// set: O(1)
|
|
5
|
+
// capture: O(1)
|
|
6
|
+
// restore: O(|write operations since capture|)
|
|
7
|
+
const Mem = null
|
|
8
|
+
|
|
9
|
+
function Arena() {
|
|
10
|
+
const s = {
|
|
11
|
+
root: { value: Mem },
|
|
12
|
+
generation: 0,
|
|
13
|
+
fresh: (v) => {
|
|
14
|
+
const r = {
|
|
15
|
+
value: v,
|
|
16
|
+
generation: s.generation,
|
|
17
|
+
store: s,
|
|
18
|
+
set: (v) => {
|
|
19
|
+
const s = r.store
|
|
20
|
+
const r_gen = r.generation
|
|
21
|
+
const s_gen = s.generation
|
|
22
|
+
|
|
23
|
+
if (r_gen == s_gen) {
|
|
24
|
+
r.value = v;
|
|
25
|
+
} else {
|
|
26
|
+
const root = { value: Mem }
|
|
27
|
+
// update store
|
|
28
|
+
s.root.value = { ref: r, value: r.value, generation: r_gen, root: root }
|
|
29
|
+
s.root = root
|
|
30
|
+
r.value = v
|
|
31
|
+
r.generation = s_gen
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
return r
|
|
36
|
+
},
|
|
37
|
+
// not implemented
|
|
38
|
+
newRegion: () => s
|
|
39
|
+
};
|
|
40
|
+
return s
|
|
14
41
|
}
|
|
15
42
|
|
|
16
|
-
|
|
17
|
-
|
|
43
|
+
function snapshot(s) {
|
|
44
|
+
const snap = { store: s, root: s.root, generation: s.generation }
|
|
45
|
+
s.generation = s.generation + 1
|
|
46
|
+
return snap
|
|
18
47
|
}
|
|
19
48
|
|
|
20
|
-
function
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
// this doesn't work yet, since Arena.backup doesn't return a thunk
|
|
34
|
-
region.push(nested) //new WeakRef(nested))
|
|
35
|
-
return nested;
|
|
36
|
-
},
|
|
37
|
-
backup: function() {
|
|
38
|
-
const _backup = []
|
|
39
|
-
let nextIndex = 0;
|
|
40
|
-
for (const ref of region) {
|
|
41
|
-
const cell = ref //.deref()
|
|
42
|
-
// only backup live cells
|
|
43
|
-
if (cell) {
|
|
44
|
-
_backup[nextIndex] = cell.backup()
|
|
45
|
-
nextIndex++
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
function restore() {
|
|
49
|
-
const region = []
|
|
50
|
-
let nextIndex = 0;
|
|
51
|
-
for (const restoreCell of _backup) {
|
|
52
|
-
region[nextIndex] = restoreCell() // new WeakRef(restoreCell())
|
|
53
|
-
nextIndex++
|
|
54
|
-
}
|
|
55
|
-
return Arena(region)
|
|
56
|
-
}
|
|
57
|
-
return restore;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
49
|
+
function reroot(n) {
|
|
50
|
+
if (n.value === Mem) return;
|
|
51
|
+
|
|
52
|
+
const diff = n.value
|
|
53
|
+
const r = diff.ref
|
|
54
|
+
const v = diff.value
|
|
55
|
+
const g = diff.generation
|
|
56
|
+
const n2 = diff.root
|
|
57
|
+
reroot(n2)
|
|
58
|
+
n.value = Mem
|
|
59
|
+
n2.value = { ref: r, value: r.value, generation: r.generation, root: n}
|
|
60
|
+
r.value = v
|
|
61
|
+
r.generation = g
|
|
60
62
|
}
|
|
61
63
|
|
|
64
|
+
function restore(store, snap) {
|
|
65
|
+
// linear in the number of modifications...
|
|
66
|
+
reroot(snap.root)
|
|
67
|
+
store.root = snap.root
|
|
68
|
+
store.generation = snap.generation + 1
|
|
69
|
+
}
|
|
62
70
|
|
|
71
|
+
// Common Runtime
|
|
72
|
+
// --------------
|
|
63
73
|
let _prompt = 1;
|
|
64
74
|
|
|
65
75
|
const TOPLEVEL_K = (x, ks) => { throw { computationIsDone: true, result: x } }
|
|
66
|
-
const TOPLEVEL_KS = { prompt: 0, arena: Arena(
|
|
76
|
+
const TOPLEVEL_KS = { prompt: 0, arena: Arena(), rest: null }
|
|
67
77
|
|
|
68
78
|
function THUNK(f) {
|
|
69
79
|
f.thunk = true
|
|
@@ -80,9 +90,6 @@ function CAPTURE(body) {
|
|
|
80
90
|
|
|
81
91
|
const RETURN = (x, ks) => ks.rest.stack(x, ks.rest)
|
|
82
92
|
|
|
83
|
-
// const r = ks.arena.newRegion(); body
|
|
84
|
-
// const x = r.alloc(init); body
|
|
85
|
-
|
|
86
93
|
// HANDLE(ks, ks, (p, ks, k) => { STMT })
|
|
87
94
|
function RESET(prog, ks, k) {
|
|
88
95
|
const prompt = _prompt++;
|
|
@@ -90,13 +97,6 @@ function RESET(prog, ks, k) {
|
|
|
90
97
|
return prog(prompt, { prompt, arena: Arena([]), rest }, RETURN)
|
|
91
98
|
}
|
|
92
99
|
|
|
93
|
-
function DEALLOC(ks) {
|
|
94
|
-
const arena = ks.arena
|
|
95
|
-
if (!!arena) {
|
|
96
|
-
arena.length = arena.length - 1
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
|
|
100
100
|
function SHIFT(p, body, ks, k) {
|
|
101
101
|
|
|
102
102
|
// TODO avoid constructing this object
|
|
@@ -104,13 +104,15 @@ function SHIFT(p, body, ks, k) {
|
|
|
104
104
|
let cont = null
|
|
105
105
|
|
|
106
106
|
while (!!meta && meta.prompt !== p) {
|
|
107
|
-
|
|
107
|
+
let store = meta.arena
|
|
108
|
+
cont = { stack: meta.stack, prompt: meta.prompt, arena: store, backup: snapshot(store), rest: cont }
|
|
108
109
|
meta = meta.rest
|
|
109
110
|
}
|
|
110
111
|
if (!meta) { throw `Prompt not found ${p}` }
|
|
111
112
|
|
|
112
113
|
// package the prompt itself
|
|
113
|
-
|
|
114
|
+
let store = meta.arena
|
|
115
|
+
cont = { stack: meta.stack, prompt: meta.prompt, arena: store, backup: snapshot(store), rest: cont }
|
|
114
116
|
meta = meta.rest
|
|
115
117
|
|
|
116
118
|
const k1 = meta.stack
|
|
@@ -123,7 +125,8 @@ function RESUME(cont, c, ks, k) {
|
|
|
123
125
|
let meta = { stack: k, prompt: ks.prompt, arena: ks.arena, rest: ks.rest }
|
|
124
126
|
let toRewind = cont
|
|
125
127
|
while (!!toRewind) {
|
|
126
|
-
|
|
128
|
+
restore(toRewind.arena, toRewind.backup)
|
|
129
|
+
meta = { stack: toRewind.stack, prompt: toRewind.prompt, arena: toRewind.arena, rest: meta }
|
|
127
130
|
toRewind = toRewind.rest
|
|
128
131
|
}
|
|
129
132
|
|
package/libraries/llvm/main.c
CHANGED
package/libraries/llvm/rts.ll
CHANGED
|
@@ -678,14 +678,7 @@ define private void @freeStack(%StackPointer %stackPointer) alwaysinline {
|
|
|
678
678
|
; RTS initialization
|
|
679
679
|
|
|
680
680
|
define private tailcc void @topLevel(%Pos %val, %Stack %stack) {
|
|
681
|
-
|
|
682
|
-
; rest holds global variables
|
|
683
|
-
call void @resume_Pos(%Stack %rest, %Pos %val)
|
|
684
|
-
ret void
|
|
685
|
-
}
|
|
686
|
-
|
|
687
|
-
define private tailcc void @globalsReturn(%Pos %val, %Stack %stack) {
|
|
688
|
-
%rest = call %Stack @underflowStack(%Stack %stack)
|
|
681
|
+
call %Stack @underflowStack(%Stack %stack)
|
|
689
682
|
ret void
|
|
690
683
|
}
|
|
691
684
|
|
|
@@ -699,29 +692,8 @@ define private void @topLevelEraser(%Environment %environment) {
|
|
|
699
692
|
ret void
|
|
700
693
|
}
|
|
701
694
|
|
|
702
|
-
@global = private global { i64, %Stack } { i64 0, %Stack null }
|
|
703
|
-
|
|
704
695
|
define private %Stack @withEmptyStack() {
|
|
705
|
-
%
|
|
706
|
-
|
|
707
|
-
%globalsStackPointer_pointer = getelementptr %StackValue, %Stack %globals, i64 0, i32 1
|
|
708
|
-
%globalsStackPointer = load %StackPointer, ptr %globalsStackPointer_pointer, !alias.scope !11, !noalias !21
|
|
709
|
-
|
|
710
|
-
%returnAddressPointer.0 = getelementptr %FrameHeader, %StackPointer %globalsStackPointer, i64 0, i32 0
|
|
711
|
-
%sharerPointer.0 = getelementptr %FrameHeader, %StackPointer %globalsStackPointer, i64 0, i32 1
|
|
712
|
-
%eraserPointer.0 = getelementptr %FrameHeader, %StackPointer %globalsStackPointer, i64 0, i32 2
|
|
713
|
-
|
|
714
|
-
store ptr @globalsReturn, ptr %returnAddressPointer.0, !alias.scope !12, !noalias !22
|
|
715
|
-
store ptr @topLevelSharer, ptr %sharerPointer.0, !alias.scope !12, !noalias !22
|
|
716
|
-
store ptr @topLevelEraser, ptr %eraserPointer.0, !alias.scope !12, !noalias !22
|
|
717
|
-
|
|
718
|
-
%globalsStackPointer_2 = getelementptr %FrameHeader, %StackPointer %globalsStackPointer, i64 1
|
|
719
|
-
store %StackPointer %globalsStackPointer_2, ptr %globalsStackPointer_pointer, !alias.scope !11, !noalias !21
|
|
720
|
-
|
|
721
|
-
%stack = call %Stack @reset(%Stack %globals)
|
|
722
|
-
|
|
723
|
-
%globalStack = getelementptr %PromptValue, %Prompt @global, i64 0, i32 1
|
|
724
|
-
store %Stack %stack, ptr %globalStack, !alias.scope !13, !noalias !23
|
|
696
|
+
%stack = call %Stack @reset(%Stack null)
|
|
725
697
|
|
|
726
698
|
%stackStackPointer = getelementptr %StackValue, %Stack %stack, i64 0, i32 1
|
|
727
699
|
%stackPointer = load %StackPointer, ptr %stackStackPointer, !alias.scope !11, !noalias !21
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
<!doctype html><html lang=en><head><meta charset=utf-8><meta http-equiv=
|
|
1
|
+
<!doctype html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><title>Eclipse Public License 2.0 (EPL) | The Eclipse Foundation</title>
|
|
2
|
+
<meta property="og:title" content="Eclipse Public License 2.0 (EPL) | The Eclipse Foundation"><meta name=twitter:title content="Eclipse Public License 2.0 (EPL) | The Eclipse Foundation"><meta name=description content="The Eclipse Foundation provides our global community of individuals and organisations with a mature, scalable, and business-friendly environment for open source …"><meta property="og:description" content="The Eclipse Foundation provides our global community of individuals and organisations with a mature, scalable, and business-friendly environment for open source …"><meta name=twitter:description content="The Eclipse Foundation provides our global community of individuals and organisations with a mature, scalable, and business-friendly environment for open source …"><meta name=author content="Wayne Beaton"><link href=/favicon.ico rel=icon type=image/x-icon><meta property="og:image" content="https://www.eclipse.org/images/logos/eclipse-foundation-400x400.png"><meta name=twitter:image content="https://www.eclipse.org/images/logos/eclipse-foundation-400x400.png"><meta name=twitter:card content="summary"><meta name=twitter:site content="@eclipsefdn"><meta name=twitter:creator content="@eclipsefdn"><meta property="og:url" content="https://www.eclipse.org/legal/epl-2.0/"><meta property="og:type" content="website"><meta property="og:site_name" content="Eclipse Foundation"><meta name=keywords content="epl,epl-2.0,legal,foundation,eclipse,eclipse public license,license,licenses"><meta name=generator content="Hugo 0.144.2"><link rel=canonical href=https://www.eclipse.org/legal/epl-2.0/><link rel=alternate href=/legal/epl-2.0/index.xml type=application/rss+xml title><link rel=stylesheet href="/public/css/styles.css?v=1744568130"><script>(function(e,t,n,s,o){e[s]=e[s]||[],e[s].push({"gtm.start":(new Date).getTime(),event:"gtm.js"});var a=t.getElementsByTagName(n)[0],i=t.createElement(n),r=s!="dataLayer"?"&l="+s:"";i.async=!0,i.src="https://www.googletagmanager.com/gtm.js?id="+o+r,a.parentNode.insertBefore(i,a)})(window,document,"script","dataLayer","GTM-5WLCZXC")</script><script>var tableClasses="table"</script><link href="https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap" rel=stylesheet type=text/css></head><body><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5WLCZXC" height=0 width=0 style=display:none;visibility:hidden></iframe></noscript><a class=sr-only href=#content>Skip to main content</a><header class="header-wrapper header-wrapper" id=header><div class=header-toolbar><div class=container><div class=header-toolbar-row><div class="toolbar-btn toolbar-search-btn dropdown"><button class=dropdown-toggle id=toolbar-search type=button data-toggle=dropdown tabindex=0 aria-label=Search>
|
|
2
3
|
<i class="fa fa-search fa-lg" aria-role=none></i></button><div class="toolbar-search-bar-wrapper dropdown-menu dropdown-menu-right" aria-labelledby=toolbar-search><form action=https://www.eclipse.org/home/search method=get><div class=search-bar><input class=search-bar-input name=q placeholder=Search>
|
|
3
4
|
<button>
|
|
4
5
|
<i class="fa fa-search" type=submit></i></button></div></form></div></div><div class="toolbar-btn toolbar-user-menu-btn dropdown"><button class=dropdown-toggle id=toolbar-user-menu type=button data-toggle=dropdown tabindex=0 aria-label="User Menu">
|
|
@@ -11,38 +12,38 @@ Supporters</button></li><li class=navbar-nav-links-item><button class="nav-link-
|
|
|
11
12
|
Collaborations</button></li><li class=navbar-nav-links-item><button class="nav-link-js btn-link link-unstyled" type=button aria-expanded=true data-menu-target=resources-menu>
|
|
12
13
|
Resources</button></li><li class=navbar-nav-links-item><button class="nav-link-js btn-link link-unstyled" type=button aria-expanded=true data-menu-target=the-foundation-menu>
|
|
13
14
|
The Foundation</button></li></ul></nav><div class=header-navbar-end><a class="header-navbar-end-download-btn btn btn-primary" href=/downloads/ id=download-now-top-nav-20250207><i class=fa aria-hidden=true></i>
|
|
14
|
-
Download
|
|
15
|
-
|
|
15
|
+
Download
|
|
16
|
+
</a><button class=mobile-menu-btn aria-label="Toggle mobile navigation menu" aria-expanded=false>
|
|
16
17
|
<i class="fa fa-bars fa-xl"></i></button></div></div></div></div><nav class="mobile-menu hidden" aria-expanded=false><ul><li class=mobile-menu-dropdown><a class="mobile-menu-item mobile-menu-dropdown-toggle" data-target=projects-menu><span>Projects</span>
|
|
17
18
|
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu hidden" id=projects-menu><li class=mobile-menu-dropdown><a data-target=projects-technologies-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>Technologies</span>
|
|
18
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=projects-technologies-sub-menu><li><a class=mobile-menu-item href
|
|
19
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=projects-projects-sub-menu><li><a class=mobile-menu-item href=https://projects.eclipse.org/>Project Finder</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/projects/project_activity.php>Project Activity</a></li><li><a class=mobile-menu-item href
|
|
19
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=projects-technologies-sub-menu><li><a class=mobile-menu-item href=https://www.eclipse.org/topics/ide/>Developer Tools & IDEs</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/topics/cloud-native/>Cloud Native</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/topics/edge-and-iot/>Edge & IoT</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/topics/automotive-and-mobility/>Automotive & Mobility</a></li></ul></div></li><li class=mobile-menu-dropdown><a data-target=projects-projects-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>Projects</span>
|
|
20
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=projects-projects-sub-menu><li><a class=mobile-menu-item href=https://projects.eclipse.org/>Project Finder</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/projects/project_activity.php>Project Activity</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/projects/resources/>Project Resources</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/specifications/>Specifications</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/contribute/>Contribute</a></li></ul></div></li></ul></div></li><li class=mobile-menu-dropdown><a class="mobile-menu-item mobile-menu-dropdown-toggle" data-target=supporters-menu><span>Supporters</span>
|
|
20
21
|
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu hidden" id=supporters-menu><li class=mobile-menu-dropdown><a data-target=supporters-membership-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>Membership</span>
|
|
21
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=supporters-membership-sub-menu><li><a class=mobile-menu-item href
|
|
22
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=supporters-sponsorship-sub-menu><li><a class=mobile-menu-item href
|
|
22
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=supporters-membership-sub-menu><li><a class=mobile-menu-item href=https://www.eclipse.org/membership/explore-membership/>Our Members</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/membership/>Member Benefits</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/membership/#tab-levels>Membership Levels & Fees</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/membership/#tab-membership>Membership Application</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/membership/#tab-resources>Member Resources</a></li><li><a class=mobile-menu-item href=https://membership.eclipse.org/portal>Member Portal</a></li></ul></div></li><li class=mobile-menu-dropdown><a data-target=supporters-sponsorship-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>Sponsorship</span>
|
|
23
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=supporters-sponsorship-sub-menu><li><a class=mobile-menu-item href=https://www.eclipse.org/sponsor/>Sponsor</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/sponsor/collaboration/>Sponsor a Collaboration</a></li></ul></div></li></ul></div></li><li class=mobile-menu-dropdown><a class="mobile-menu-item mobile-menu-dropdown-toggle" data-target=collaborations-menu><span>Collaborations</span>
|
|
23
24
|
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu hidden" id=collaborations-menu><li class=mobile-menu-dropdown><a data-target=collaborations-industry-collaborations-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>Industry Collaborations</span>
|
|
24
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=collaborations-industry-collaborations-sub-menu><li><a class=mobile-menu-item href
|
|
25
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=collaborations-research-collaborations-sub-menu><li><a class=mobile-menu-item href
|
|
25
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=collaborations-industry-collaborations-sub-menu><li><a class=mobile-menu-item href=https://www.eclipse.org/collaborations/>About Industry Collaborations</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/org/workinggroups/explore.php>Current Collaborations</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/org/workinggroups/about.php>About Working Groups</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/collaborations/interest-groups/>About Interest Groups</a></li></ul></div></li><li class=mobile-menu-dropdown><a data-target=collaborations-research-collaborations-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>Research Collaborations</span>
|
|
26
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=collaborations-research-collaborations-sub-menu><li><a class=mobile-menu-item href=https://www.eclipse.org/research/>Research @ Eclipse</a></li></ul></div></li></ul></div></li><li class=mobile-menu-dropdown><a class="mobile-menu-item mobile-menu-dropdown-toggle" data-target=resources-menu><span>Resources</span>
|
|
26
27
|
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu hidden" id=resources-menu><li class=mobile-menu-dropdown><a data-target=resources-open-source-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>Open Source for Business</span>
|
|
27
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=resources-open-source-sub-menu><li><a class=mobile-menu-item href
|
|
28
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=resources-happening-sub-menu><li><a class=mobile-menu-item href=https://newsroom.eclipse.org/>News</a></li><li><a class=mobile-menu-item href=https://events.eclipse.org/>Events</a></li><li><a class=mobile-menu-item href
|
|
29
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=resources-developer-sub-menu><li><a class=mobile-menu-item href=https://eclipse.org/forums/>Forum</a></li><li><a class=mobile-menu-item href=https://accounts.eclipse.org/mailing-list>Mailing Lists</a></li><li><a class=mobile-menu-item href
|
|
28
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=resources-open-source-sub-menu><li><a class=mobile-menu-item href=https://www.eclipse.org/org/value/>Business Value of Open Source</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/os4biz/ospo/>Open Source Program Offices</a></li></ul></div></li><li class=mobile-menu-dropdown><a data-target=resources-happening-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>What's Happening</span>
|
|
29
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=resources-happening-sub-menu><li><a class=mobile-menu-item href=https://newsroom.eclipse.org/>News</a></li><li><a class=mobile-menu-item href=https://events.eclipse.org/>Events</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/community/eclipse_newsletter/>Newsletter</a></li><li><a class=mobile-menu-item href=https://newsroom.eclipse.org/news/press-releases>Press Releases</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/org/foundation/eclipseawards/>Awards & Recognition</a></li></ul></div></li><li class=mobile-menu-dropdown><a data-target=resources-developer-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>Developer Resources</span>
|
|
30
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=resources-developer-sub-menu><li><a class=mobile-menu-item href=https://eclipse.org/forums/>Forum</a></li><li><a class=mobile-menu-item href=https://accounts.eclipse.org/mailing-list>Mailing Lists</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/blogs-and-videos/>Blogs & Videos</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/resources/marketplaces/>Marketplaces</a></li></ul></div></li></ul></div></li><li class=mobile-menu-dropdown><a class="mobile-menu-item mobile-menu-dropdown-toggle" data-target=the-foundation-menu><span>The Foundation</span>
|
|
30
31
|
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu hidden" id=the-foundation-menu><li class=mobile-menu-dropdown><a data-target=the-foundation-about-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>About</span>
|
|
31
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=the-foundation-about-sub-menu><li><a class=mobile-menu-item href
|
|
32
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=the-foundation-legal-sub-menu><li><a class=mobile-menu-item href
|
|
33
|
-
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=the-foundation-more-sub-menu><li><a class=mobile-menu-item href=https://newsroom.eclipse.org/news/press-releases>Press Releases</a></li><li><a class=mobile-menu-item href
|
|
32
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=the-foundation-about-sub-menu><li><a class=mobile-menu-item href=https://www.eclipse.org/org/>About the Eclipse Foundation</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/org/governance/>Board & Governance</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/org/foundation/staff.php>Staff</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/org/services/>Services</a></li></ul></div></li><li class=mobile-menu-dropdown><a data-target=the-foundation-legal-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>Legal</span>
|
|
33
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=the-foundation-legal-sub-menu><li><a class=mobile-menu-item href=https://www.eclipse.org/legal/>Legal Policies</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/legal/privacy/>Privacy Policy</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/legal/terms-of-use/>Terms of Use</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/legal/compliance/>Compliance</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/legal/epl-2.0/>Eclipse Public License</a></li></ul></div></li><li class=mobile-menu-dropdown><a data-target=the-foundation-more-sub-menu class="mobile-menu-item mobile-menu-dropdown-toggle" aria-expanded=false><span>More</span>
|
|
34
|
+
<i class="fa fa-chevron-down" aria-hidden=true></i></a><div class=mobile-menu-sub-menu-wrapper><ul class="mobile-menu-sub-menu mobile-menu-links-menu hidden" id=the-foundation-more-sub-menu><li><a class=mobile-menu-item href=https://newsroom.eclipse.org/news/press-releases>Press Releases</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/careers/>Careers</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/org/artwork/>Logos & Artwork</a></li><li><a class=mobile-menu-item href=https://www.eclipse.org/org/foundation/contact.php>Contact Us</a></li></ul></div></li></ul></div></li></ul></nav><div class=eclipsefdn-mega-menu><div class="mega-menu-submenu container hidden" data-menu-id=projects-menu><div class=mega-menu-submenu-featured-story><p class=mega-menu-submenu-featured-story-heading>Projects</p><p class=mega-menu-submenu-featured-story-text>The Eclipse Foundation is home to the Eclipse IDE, Jakarta EE, and
|
|
34
35
|
hundreds of open source projects, including runtimes, tools,
|
|
35
36
|
specifications, and frameworks for cloud and edge applications, IoT, AI,
|
|
36
|
-
automotive, systems engineering, open processor designs, and many others.</p></div><div class=mega-menu-submenu-links-section><div class=mega-menu-submenu-links><p class=menu-heading>Technologies</p><ul><li><a href
|
|
37
|
+
automotive, systems engineering, open processor designs, and many others.</p></div><div class=mega-menu-submenu-links-section><div class=mega-menu-submenu-links><p class=menu-heading>Technologies</p><ul><li><a href=https://www.eclipse.org/topics/ide/>Developer Tools & IDEs</a></li><li><a href=https://www.eclipse.org/topics/cloud-native/>Cloud Native</a></li><li><a href=https://www.eclipse.org/topics/edge-and-iot/>Edge & IoT</a></li><li><a href=https://www.eclipse.org/topics/automotive-and-mobility/>Automotive & Mobility</a></li></ul></div><div class=mega-menu-submenu-links><p class=menu-heading>Projects</p><ul><li><a href=https://projects.eclipse.org/>Project Finder</a></li><li><a href=https://www.eclipse.org/projects/project_activity.php>Project Activity</a></li><li><a href=https://www.eclipse.org/projects/resources/>Project Resources</a></li><li><a href=https://www.eclipse.org/specifications/>Specifications</a></li><li><a href=https://www.eclipse.org/contribute/>Contribute</a></li></ul></div></div><div class=mega-menu-submenu-ad-wrapper><div class="eclipsefdn-mega-menu-promo-content mega-menu-promo-content" data-ad-format=ads_square data-ad-publish-to=eclipse_org_home></div></div></div><div class="mega-menu-submenu container hidden" data-menu-id=supporters-menu><div class=mega-menu-submenu-featured-story><p class=mega-menu-submenu-featured-story-heading>Supporters</p><p class=mega-menu-submenu-featured-story-text>The Eclipse Foundation is an international non-profit association
|
|
37
38
|
supported by our members, including industry leaders who value open
|
|
38
|
-
source as a key enabler for their business strategies.</p></div><div class=mega-menu-submenu-links-section><div class=mega-menu-submenu-links><p class=menu-heading>Membership</p><ul><li><a href
|
|
39
|
+
source as a key enabler for their business strategies.</p></div><div class=mega-menu-submenu-links-section><div class=mega-menu-submenu-links><p class=menu-heading>Membership</p><ul><li><a href=https://www.eclipse.org/membership/explore-membership/>Our Members</a></li><li><a href=https://www.eclipse.org/membership/>Member Benefits</a></li><li><a href=https://www.eclipse.org/membership/#tab-levels>Membership Levels & Fees</a></li><li><a href=https://www.eclipse.org/membership/#tab-membership>Membership Application</a></li><li><a href=https://www.eclipse.org/membership/#tab-resources>Member Resources</a></li><li><a href=https://membership.eclipse.org/portal>Member Portal</a></li></ul></div><div class=mega-menu-submenu-links><p class=menu-heading>Sponsorship</p><ul><li><a href=https://www.eclipse.org/sponsor/>Sponsor</a></li><li><a href=https://www.eclipse.org/sponsor/collaboration/>Sponsor a Collaboration</a></li></ul></div></div><div class=mega-menu-submenu-ad-wrapper><div class="eclipsefdn-mega-menu-promo-content mega-menu-promo-content" data-ad-format=ads_square data-ad-publish-to=eclipse_org_home></div></div></div><div class="mega-menu-submenu container hidden" data-menu-id=collaborations-menu><div class=mega-menu-submenu-featured-story><p class=mega-menu-submenu-featured-story-heading>Collaborations</p><p class=mega-menu-submenu-featured-story-text>Whether you intend on contributing to Eclipse technologies that are
|
|
39
40
|
important to your product strategy, or simply want to explore a specific
|
|
40
41
|
innovation area with like-minded organisations, the Eclipse Foundation is
|
|
41
|
-
the open source home for industry collaboration.</p></div><div class=mega-menu-submenu-links-section><div class=mega-menu-submenu-links><p class=menu-heading>Industry Collaborations</p><ul><li><a href
|
|
42
|
+
the open source home for industry collaboration.</p></div><div class=mega-menu-submenu-links-section><div class=mega-menu-submenu-links><p class=menu-heading>Industry Collaborations</p><ul><li><a href=https://www.eclipse.org/collaborations/>About Industry Collaborations</a></li><li><a href=https://www.eclipse.org/org/workinggroups/explore.php>Current Collaborations</a></li><li><a href=https://www.eclipse.org/org/workinggroups/about.php>About Working Groups</a></li><li><a href=https://www.eclipse.org/collaborations/interest-groups/>About Interest Groups</a></li></ul></div><div class=mega-menu-submenu-links><p class=menu-heading>Research Collaborations</p><ul><li><a href=https://www.eclipse.org/research/>Research @ Eclipse</a></li></ul></div></div><div class=mega-menu-submenu-ad-wrapper><div class="eclipsefdn-mega-menu-promo-content mega-menu-promo-content" data-ad-format=ads_square data-ad-publish-to=eclipse_org_home></div></div></div><div class="mega-menu-submenu container hidden" data-menu-id=resources-menu><div class=mega-menu-submenu-featured-story><p class=mega-menu-submenu-featured-story-heading>Resources</p><p class=mega-menu-submenu-featured-story-text>The Eclipse community consists of individual developers and organisations
|
|
42
43
|
spanning many industries. Stay up to date on our open source community
|
|
43
|
-
and find resources to support your journey.</p></div><div class=mega-menu-submenu-links-section><div class=mega-menu-submenu-links><p class=menu-heading>Open Source for Business</p><ul><li><a href
|
|
44
|
+
and find resources to support your journey.</p></div><div class=mega-menu-submenu-links-section><div class=mega-menu-submenu-links><p class=menu-heading>Open Source for Business</p><ul><li><a href=https://www.eclipse.org/org/value/>Business Value of Open Source</a></li><li><a href=https://www.eclipse.org/os4biz/ospo/>Open Source Program Offices</a></li></ul></div><div class=mega-menu-submenu-links><p class=menu-heading>What's Happening</p><ul><li><a href=https://newsroom.eclipse.org/>News</a></li><li><a href=https://events.eclipse.org/>Events</a></li><li><a href=https://www.eclipse.org/community/eclipse_newsletter/>Newsletter</a></li><li><a href=https://newsroom.eclipse.org/news/press-releases>Press Releases</a></li><li><a href=https://www.eclipse.org/org/foundation/eclipseawards/>Awards & Recognition</a></li></ul></div><div class=mega-menu-submenu-links><p class=menu-heading>Developer Resources</p><ul><li><a href=https://eclipse.org/forums/>Forum</a></li><li><a href=https://accounts.eclipse.org/mailing-list>Mailing Lists</a></li><li><a href=https://www.eclipse.org/blogs-and-videos/>Blogs & Videos</a></li><li><a href=https://www.eclipse.org/resources/marketplaces/>Marketplaces</a></li></ul></div></div><div class=mega-menu-submenu-ad-wrapper><div class="eclipsefdn-mega-menu-promo-content mega-menu-promo-content" data-ad-format=ads_square data-ad-publish-to=eclipse_org_home></div></div></div><div class="mega-menu-submenu container hidden" data-menu-id=the-foundation-menu><div class=mega-menu-submenu-featured-story><p class=mega-menu-submenu-featured-story-heading>The Foundation</p><p class=mega-menu-submenu-featured-story-text>The Eclipse Foundation provides our global community of individuals and
|
|
44
45
|
organisations with a mature, scalable, and vendor-neutral environment for
|
|
45
|
-
open source software collaboration and innovation.</p></div><div class=mega-menu-submenu-links-section><div class=mega-menu-submenu-links><p class=menu-heading>About</p><ul><li><a href
|
|
46
|
+
open source software collaboration and innovation.</p></div><div class=mega-menu-submenu-links-section><div class=mega-menu-submenu-links><p class=menu-heading>About</p><ul><li><a href=https://www.eclipse.org/org/>About the Eclipse Foundation</a></li><li><a href=https://www.eclipse.org/org/governance/>Board & Governance</a></li><li><a href=https://www.eclipse.org/org/foundation/staff.php>Staff</a></li><li><a href=https://www.eclipse.org/org/services/>Services</a></li></ul></div><div class=mega-menu-submenu-links><p class=menu-heading>Legal</p><ul><li><a href=https://www.eclipse.org/legal/>Legal Policies</a></li><li><a href=https://www.eclipse.org/legal/privacy/>Privacy Policy</a></li><li><a href=https://www.eclipse.org/legal/terms-of-use/>Terms of Use</a></li><li><a href=https://www.eclipse.org/legal/compliance/>Compliance</a></li><li><a href=https://www.eclipse.org/legal/epl-2.0/>Eclipse Public License</a></li></ul></div><div class=mega-menu-submenu-links><p class=menu-heading>More</p><ul><li><a href=https://newsroom.eclipse.org/news/press-releases>Press Releases</a></li><li><a href=https://www.eclipse.org/careers/>Careers</a></li><li><a href=https://www.eclipse.org/org/artwork/>Logos & Artwork</a></li><li><a href=https://www.eclipse.org/org/foundation/contact.php>Contact Us</a></li></ul></div></div><div class=mega-menu-submenu-ad-wrapper><div class="eclipsefdn-mega-menu-promo-content mega-menu-promo-content" data-ad-format=ads_square data-ad-publish-to=eclipse_org_home></div></div></div></div></header><main><div class="container padding-bottom-30"><div class=row><div class=col-md-18><div class="default-breadcrumbs hidden-print" id=breadcrumb><div><div class=row><div class=col-sm-24><ol aria-label=Breadcrumb class=breadcrumb><li><a href=https://www.eclipse.org/>Home</a></li><li><a href=https://www.eclipse.org/legal/>Eclipse Foundation Legal Resources</a></li><li class=active aria-current=page><a href=https://www.eclipse.org/legal/epl-2.0/>Eclipse Public License 2.0 (EPL)</a></li></ol></div></div></div></div><div id=content></div><script async src=/public/js/generate-body-content.js type=text/javascript></script></div><div class="col-md-6 padding-bottom-30"><aside class=main-sidebar-default-margin id=main-sidebar><ul class=ul-left-nav id=leftnav role=tablist aria-multiselectable=true><li class="main-sidebar-main-item main-sidebar-item-indented separator"><a class="main-sidebar-heading link-unstyled" href=/legal>Legal</a></li><li class="main-sidebar-item main-sidebar-item-indented"><li class="main-sidebar-item main-sidebar-item-indented"><a class=link-unstyled role=button data-toggle=collapse href=#legal-eca aria-expanded=false aria-controls=legal-eca><span>ECA</span>
|
|
46
47
|
<i class="main-sidebar-item-icon fa fa-chevron-down" aria-hidden=true></i></a><div class=collapse id=legal-eca><ul class="main-sidebar-item-submenu list-unstyled"><li class=submenu-item><a class=link-unstyled href=/legal/eca target=_self>About</a></li><li class=submenu-item><a class=link-unstyled href=https://accounts.eclipse.org/user/eca target=_self>Sign</a></li><li class=submenu-item><a class=link-unstyled href=https://accounts.eclipse.org/user/eca target=_self>Validation Tool</a></li></ul></div></li></li><li class="main-sidebar-item main-sidebar-item-indented"><li class="main-sidebar-item main-sidebar-item-indented"><a class=link-unstyled role=button data-toggle=collapse href=#legal-epl-20 aria-expanded=false aria-controls=legal-epl-20><span>EPL-2.0</span>
|
|
47
48
|
<i class="main-sidebar-item-icon fa fa-chevron-down" aria-hidden=true></i></a><div class=collapse id=legal-epl-20><ul class="main-sidebar-item-submenu list-unstyled"><li class=submenu-item><a class=link-unstyled href=/legal/epl-2.0/ target=_self>About</a></li><li class=submenu-item><a class=link-unstyled href=/org/documents/epl-2.0/EPL-2.0.html target=_self>Plain HTML</a></li><li class=submenu-item><a class=link-unstyled href=/org/documents/epl-2.0/EPL-2.0.txt target=_self>Plain Text</a></li><li class=submenu-item><a class=link-unstyled href=/org/documents/epl-2.0/EPL-2.0.pdf target=_self>PDF</a></li><li class=submenu-item><a class=link-unstyled href=/legal/epl-2.0/faq/ target=_self>FAQ</a></li></ul></div></li></li><li class="main-sidebar-item main-sidebar-item-indented"><li class="main-sidebar-item main-sidebar-item-indented"><a class=link-unstyled role=button data-toggle=collapse href=#legal-epl-10 aria-expanded=false aria-controls=legal-epl-10><span>EPL-1.0</span>
|
|
48
49
|
<i class="main-sidebar-item-icon fa fa-chevron-down" aria-hidden=true></i></a><div class=collapse id=legal-epl-10><ul class="main-sidebar-item-submenu list-unstyled"><li class=submenu-item><a class=link-unstyled href=/org/documents/epl-v10.php target=_self>About</a></li><li class=submenu-item><a class=link-unstyled href=/org/documents/epl-v10.html target=_self>Plain HTML</a></li><li class=submenu-item><a class=link-unstyled href=/org/documents/epl-1.0/EPL-1.0.txt target=_self>Plain Text</a></li><li class=submenu-item><a class=link-unstyled href=/legal/epl/faq target=_self>FAQ</a></li></ul></div></li></li><li class="main-sidebar-item main-sidebar-item-indented"><li class="main-sidebar-item main-sidebar-item-indented"><a class=link-unstyled role=button data-toggle=collapse href=#legal-licenses aria-expanded=false aria-controls=legal-licenses><span>Licenses</span>
|
|
@@ -57,7 +58,6 @@ open source software collaboration and innovation.</p></div><div class=mega-menu
|
|
|
57
58
|
<i class="fa-brands fa-youtube fa-stack-1x fa-inverse" aria-hidden=true></i>
|
|
58
59
|
<span class=sr-only>Youtube account</span></span></a></li><li><a class=link-unstyled href=https://www.linkedin.com/company/eclipse-foundation title="Linkedin account"><span class=fa-stack><i class="fa-solid fa-circle fa-stack-2x" aria-hidden=true></i>
|
|
59
60
|
<i class="fa-brands fa-linkedin-in fa-stack-1x fa-inverse" aria-hidden=true></i>
|
|
60
|
-
<span class=sr-only>Linkedin account</span></span></a></li></ul></div></div><div class="footer-sections row equal-height-md font-bold"><div class=col-md-15><div class=row><section id=footer-eclipse-foundation class="footer-section col-sm-8"><div class=menu-heading>Eclipse Foundation</div><ul class=nav><li><a href=https://www.eclipse.org/org/>About</a></li><li><a href=https://projects.eclipse.org/>Projects</a></li><li><a href=https://www.eclipse.org/collaborations/>Collaborations</a></li><li><a href=https://www.eclipse.org/membership/>Membership</a></li><li><a href=https://www.eclipse.org/sponsor/>Sponsor</a></li></ul></section><section id=footer-legal class="footer-section col-sm-8"><div class=menu-heading>Legal</div><ul class=nav><li><a href=https://www.eclipse.org/legal/privacy/>Privacy Policy</a></li><li><a href=https://www.eclipse.org/legal/terms-of-use/>Terms of Use</a></li><li><a href=https://www.eclipse.org/legal/compliance/>Compliance</a></li><li><a href=https://www.eclipse.org/org/documents/Community_Code_of_Conduct.php>Code of Conduct</a></li><li><a href=https://www.eclipse.org/legal/>Legal Resources</a></li><li><a class=toolbar-manage-cookies href=# onclick=event.preventDefault()>Manage Cookies</a></li></ul></section><section id=footer-more class="footer-section col-sm-8"><div class=menu-heading>More</div><ul class=nav><li><a href=https://www.eclipse.org/security/>Report a Vulnerability</a></li><li><a href=https://status.eclipse.org/>Service Status</a></li><li><a href=https://www.eclipse.org/org/foundation/contact.php>Contact Us</a></li><li><a href=https://www.eclipse.org/projects/support/>Support</a></li></ul></section></div></div><div id=footer-end class="footer-section col-md-8 col-md-offset-1 col-sm-24"><div class=footer-end-newsletter><form id=mc-embedded-subscribe-form action="https://eclipse.us6.list-manage.com/subscribe/post?u=eaf9e1f06f194eadc66788a85&id=e7538485cd&f_id=00f9c2e1f0" method=post novalidate target=_blank><label class=footer-end-newsletter-label for=email>Subscribe to our Newsletter</label><div class=footer-end-newsletter-input-wrapper><input class=footer-end-newsletter-input type=email id=email name=EMAIL autocomplete=email placeholder="Enter your email address">
|
|
61
|
+
<span class=sr-only>Linkedin account</span></span></a></li></ul></div></div><div class="footer-sections row equal-height-md font-bold"><div class=col-md-15><div class=row><section id=footer-eclipse-foundation class="footer-section col-sm-8"><div class=menu-heading>Eclipse Foundation</div><ul class=nav><li><a href=https://www.eclipse.org/org/>About</a></li><li><a href=https://projects.eclipse.org/>Projects</a></li><li><a href=https://www.eclipse.org/collaborations/>Collaborations</a></li><li><a href=https://www.eclipse.org/membership/>Membership</a></li><li><a href=https://www.eclipse.org/sponsor/>Sponsor</a></li></ul></section><section id=footer-legal class="footer-section col-sm-8"><div class=menu-heading>Legal</div><ul class=nav><li><a href=https://www.eclipse.org/legal/privacy/>Privacy Policy</a></li><li><a href=https://www.eclipse.org/legal/terms-of-use/>Terms of Use</a></li><li><a href=https://www.eclipse.org/legal/compliance/>Compliance</a></li><li><a href=https://www.eclipse.org/org/documents/Community_Code_of_Conduct.php>Code of Conduct</a></li><li><a href=https://www.eclipse.org/legal/>Legal Resources</a></li><li><a class=toolbar-manage-cookies href=# onclick=event.preventDefault()>Manage Cookies</a></li></ul></section><section id=footer-more class="footer-section col-sm-8"><div class=menu-heading>More</div><ul class=nav><li><a href=https://www.eclipse.org/security/>Report a Vulnerability</a></li><li><a href=https://status.eclipse.org/>Service Status</a></li><li><a href=https://www.eclipse.org/org/foundation/contact.php>Contact Us</a></li><li><a href=https://www.eclipse.org/projects/support/>Support</a></li></ul></section></div></div><div id=footer-end class="footer-section col-md-8 col-md-offset-1 col-sm-24"><div class=footer-end-newsletter><form id=mc-embedded-subscribe-form action="https://eclipse.us6.list-manage.com/subscribe/post?u=eaf9e1f06f194eadc66788a85&id=e7538485cd&f_id=00f9c2e1f0" method=post novalidate target=_blank><label class=footer-end-newsletter-label for=email>Subscribe to our Newsletter</label><div class=footer-end-newsletter-input-wrapper><input class=footer-end-newsletter-input type=email id=email name=EMAIL autocomplete=email placeholder="Enter your email address">
|
|
61
62
|
<button class="footer-end-newsletter-submit btn btn-link" id=mc-embedded-subscribe type=submit name=subscribe>
|
|
62
|
-
<i class="fa fa-solid fa-envelope fa-lg" aria-hidden=true></i></button></div></form></div></div></div><div class="col-sm-24 margin-top-20"><div class=row><div id=copyright class=col-md-16><p id=copyright-text>Copyright © Eclipse Foundation AISBL. All Rights Reserved.</p></div></div></div><a href=# class=scrollup>Back to the top</a></div></footer><div id=footer-js><script src="/public/js/main.js?v1.0?v=
|
|
63
|
-
<script>(function(){})(jQuery,document)</script></div></body></html>
|
|
63
|
+
<i class="fa fa-solid fa-envelope fa-lg" aria-hidden=true></i></button></div></form></div></div></div><div class="col-sm-24 margin-top-20"><div class=row><div id=copyright class=col-md-16><p id=copyright-text>Copyright © Eclipse Foundation AISBL. All Rights Reserved.</p></div></div></div><a href=# class=scrollup>Back to the top</a></div></footer><div id=footer-js><script src="/public/js/main.js?v1.0?v=1744568130"></script><script>(function(){})(jQuery,document)</script></div></body></html>
|