]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.scl.compiler/tests/org/simantics/scl/compiler/tests/scl/Seq.scl
Added missing parts from SVN org.simantics.root project.
[simantics/platform.git] / bundles / org.simantics.scl.compiler / tests / org / simantics / scl / compiler / tests / scl / Seq.scl
1 import "Prelude"\r
2 import "JavaBuiltin" as Java\r
3 \r
4 class Seq seq el where\r
5     myLength :: seq -> Integer\r
6     myGet :: seq -> Integer -> el\r
7 \r
8 instance (b ~ Character) => Seq String b where\r
9     myLength = Java.method "length"\r
10     myGet = Java.method "charAt"\r
11     \r
12 instance (b ~ a) => Seq [a] b where\r
13     myLength = Java.method "size"\r
14     myGet = Java.method "get"\r
15 \r
16 //main :: (Character, String)\r
17 main = (myGet "abc" 1, myGet ["a", "b", "c"] 1)\r
18 --\r
19 (b,b)