diff --git a/examples/t10.java b/examples/example1.txt similarity index 73% rename from examples/t10.java rename to examples/example1.txt index 4171cd26b8fad0d75d89944218d89fae67859889..bc82f1d8dad5dbc687c9d3736e4e2ccc390bbd4b 100644 --- a/examples/t10.java +++ b/examples/example1.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Point { int x; int y; diff --git a/examples/t13c.java b/examples/example10.txt similarity index 89% rename from examples/t13c.java rename to examples/example10.txt index a5bcd53a71ec1f3f6e162ccd1bca016c6b26841b..20cf4d100ba79cda1697e9cc75527ac2123c1716 100644 --- a/examples/t13c.java +++ b/examples/example10.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Exe { int f(int a, int b) { int res = a; diff --git a/examples/t13d.java b/examples/example11.txt similarity index 92% rename from examples/t13d.java rename to examples/example11.txt index 9ca8ff7650f25c01e9ff6619fca4c79f758ec567..d17d0bbec70209d6d1298de7de5285799bf9423c 100644 --- a/examples/t13d.java +++ b/examples/example11.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class BList { boolean value; BList tail; diff --git a/examples/t14.java b/examples/example12.txt similarity index 87% rename from examples/t14.java rename to examples/example12.txt index 3908c568ad247f6d0cd0189ceb7ffe461647a6bd..d29073a1b28a9bd1b1c63a28152efcdaac88057a 100644 --- a/examples/t14.java +++ b/examples/example12.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Point1D { int x; diff --git a/examples/t15.java b/examples/example13.txt similarity index 93% rename from examples/t15.java rename to examples/example13.txt index 915f51613e6ed2fefa5d8d20f5673abb4a08449a..ab65054eb7a0d22f28ccfc9badf2a2167a6460a8 100644 --- a/examples/t15.java +++ b/examples/example13.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class List { int data; List next; diff --git a/examples/t15b.java b/examples/example14.txt similarity index 92% rename from examples/t15b.java rename to examples/example14.txt index 6e0c53b40c0da88d7880190b99482db7ea0f9662..db21f21e2515168fb8e4e1fa0ba6e6d7e3fda2c5 100644 --- a/examples/t15b.java +++ b/examples/example14.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class List { int data; List next; @@ -45,9 +47,6 @@ class UList extends List { return res; } - //public List getNext() { - // return new List(0, null); - //} } class UselessList extends List { diff --git a/examples/t15c.java b/examples/example15.txt similarity index 88% rename from examples/t15c.java rename to examples/example15.txt index cf679f41066537390bd3d927e565b949e86561a7..2dec0b849f86fa6d40125a161e99216ee9cb2c00 100644 --- a/examples/t15c.java +++ b/examples/example15.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class List { int data; List next; @@ -73,7 +75,8 @@ class Exe { if(l.getData() > 0) { while (true) {} } - //the sum block types in 1, and it's result is 0 thus it cannot be used inside a conditional + //the sum block types in 1, and it's result is 0 thus it cannot be used inside a conditional. + //This would break the control flow discipline. if(l.sum() > 0) {} } } \ No newline at end of file diff --git a/examples/t16.java b/examples/example16.txt similarity index 75% rename from examples/t16.java rename to examples/example16.txt index f669206d9ebfe76901a6393467284eb50ab0b3d1..0c13432d95ae36868aef898120fdd21eec0bd677 100644 --- a/examples/t16.java +++ b/examples/example16.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Exe { void add(int a, int b) throws Exception { a = a + b; diff --git a/examples/t17.java b/examples/example17.txt similarity index 85% rename from examples/t17.java rename to examples/example17.txt index b83defc24e321cf906c8c24a7774b2c18a08d303..9ec291fbabce26688d680e3a2e280c6148d80faa 100644 --- a/examples/t17.java +++ b/examples/example17.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Node { Node left; Node right; diff --git a/examples/t18.java b/examples/example18.txt similarity index 68% rename from examples/t18.java rename to examples/example18.txt index c489275384b49b5454f28b28debc44e9f302d38d..7be0db7c8804ab003ccbd0a4817ec1dc0085b585 100644 --- a/examples/t18.java +++ b/examples/example18.txt @@ -11,7 +11,9 @@ class Exe { x = x - 1; y = y + 1; } - + //The #declass tag implements declassification mechanism. + //Below a variable y of tier 0 is declassified to tier 1 + //Hence it can be used in a while loop again. #declass y; x; diff --git a/examples/t10b.java b/examples/example2.txt similarity index 78% rename from examples/t10b.java rename to examples/example2.txt index ab43d5c9abec77fcf267917180d3458dd4446ba7..09febbce307b95219c2aaf11449b269e2f4bffc9 100644 --- a/examples/t10b.java +++ b/examples/example2.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Point { int x; int y; @@ -13,8 +15,6 @@ class Point { public Point(int x, int y) { this.x = x; this.y = y; - -// this.getX(); } } diff --git a/examples/t10c.java b/examples/example3.txt similarity index 75% rename from examples/t10c.java rename to examples/example3.txt index 85660043c8a2f7a89f909dd8bd38b12ba6c88cfc..86156122a07177e3eda6ed2011219cfceada5f88 100644 --- a/examples/t10c.java +++ b/examples/example3.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Exe { int max(int a, int b) { int<0> res = b; diff --git a/examples/t10d.java b/examples/example4.txt similarity index 73% rename from examples/t10d.java rename to examples/example4.txt index 5264627fa0de2f73f94366112e73a11d3a448094..25dc24e30754ec45bb4aacae406ef35e51c31dbb 100644 --- a/examples/t10d.java +++ b/examples/example4.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Exe { int x; diff --git a/examples/t10e.java b/examples/example5.txt similarity index 70% rename from examples/t10e.java rename to examples/example5.txt index 8b3e0ce08a99bce442b5ba8266d935de0adb7a68..92ddee9c8637d7adbc9a508d4e7346b21e65755b 100644 --- a/examples/t10e.java +++ b/examples/example5.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Exe { int sum(int i) { diff --git a/examples/t11.java b/examples/example6.txt similarity index 93% rename from examples/t11.java rename to examples/example6.txt index 234849b841575196fbe197747c18617ca1312f08..acd940162a1b13a6fb0870f2303cae87422f0213 100644 --- a/examples/t11.java +++ b/examples/example6.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Exe { int max(int a, int b) { int<0> res = b; diff --git a/examples/t12.java b/examples/example7.txt similarity index 90% rename from examples/t12.java rename to examples/example7.txt index 2676c545d12fe13613dee4d55a4b283709bd349e..b6571f21a339bc5c9197c20830329c1dfd3fd9fd 100644 --- a/examples/t12.java +++ b/examples/example7.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Ring { boolean data; Ring next; diff --git a/examples/t13.java b/examples/example8.txt similarity index 96% rename from examples/t13.java rename to examples/example8.txt index fbc21e92922cd54e7b7e04ff614b3f0d35f90227..c5999f5b15f0e02ddaa7f085fcb6d14b63b92d81 100644 --- a/examples/t13.java +++ b/examples/example8.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class BList { boolean value; BList tail; diff --git a/examples/t13b.java b/examples/example9.txt similarity index 86% rename from examples/t13b.java rename to examples/example9.txt index 59b938da3e31e749544c944fc491179cf5331102..b447f865d5ad004584e90014f14657afefbf5f01 100644 --- a/examples/t13b.java +++ b/examples/example9.txt @@ -1,3 +1,5 @@ +//Tiers can be forced by the programmer using the syntax "type<tier> var;", e.g. "int<0> x;". + class Exe { int sum(int i) { int res = i;