Franck Pommereau

added Erathostene's sieve model

# Erathostenes' sieve (https://mcc.lip6.fr/pdf/Eratosthenes-form.pdf)
lang coffee
net "Erathostene sieve" :
place p number = 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
trans t n % d == 0 :
< p var = n
< p var = d
> p var = d
# Erathostenes' sieve (https://mcc.lip6.fr/pdf/Eratosthenes-form.pdf)
lang go
net "Erathostene sieve" :
place p int = 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
trans t n % d == 0 :
< p var = n
< p var = d
> p var = d
# Erathostenes' sieve (https://mcc.lip6.fr/pdf/Eratosthenes-form.pdf)
lang python
net "Erathostene sieve" :
place p int = 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
trans t n % d == 0 :
< p var = n
< p var = d
> p var = d
......@@ -30,7 +30,8 @@ class CodeGenerator (ast.CodeGenerator) :
self.write(preamble % {"timestamp" : self.timestamp(),
"package" : node.name})
self.children_visit(node.body)
self.fill(closing)
if node.name == "main" :
self.fill(closing)
def _tupledef (self, typ) :
return "_".join([""] + [_letter.sub("", self.typedef[t]) for t in typ] + [""])
def _typedef (self, typ, place) :
......