| author | wenzelm | 
| Fri, 08 Dec 2023 15:37:46 +0100 | |
| changeset 79207 | f991d3003ec8 | 
| parent 69597 | ff784d5a5bfb | 
| child 81642 | e77e8ef5bf9b | 
| permissions | -rw-r--r-- | 
| 59720 | 1 | (* Title: HOL/Codegenerator_Test/Code_Test_GHC.thy | 
| 58039 | 2 | Author: Andreas Lochbihler, ETH Zurich | 
| 3 | ||
| 4 | Test case for test_code on GHC | |
| 5 | *) | |
| 6 | ||
| 68155 | 7 | theory Code_Test_GHC imports "HOL-Library.Code_Test" Code_Lazy_Test begin | 
| 58039 | 8 | |
| 58414 
f945e7af0d27
drop workaround addressed by d0d3c30806b4
 Andreas Lochbihler parents: 
58348diff
changeset | 9 | test_code "(14 + 7 * -12 :: integer) = 140 div -2" in GHC | 
| 58039 | 10 | |
| 58348 
2d47c7d10b62
add target language evaluators for the value command;
 Andreas Lochbihler parents: 
58039diff
changeset | 11 | value [GHC] "14 + 7 * -12 :: integer" | 
| 58039 | 12 | |
| 69597 | 13 | test_code \<comment> \<open>Tests for the serialisation of \<^const>\<open>gcd\<close> on \<^typ>\<open>integer\<close>\<close> | 
| 61856 
4b1b85f38944
add gcd instance for integer and serialisation to target language operations
 Andreas Lochbihler parents: 
59720diff
changeset | 14 | "gcd 15 10 = (5 :: integer)" | 
| 
4b1b85f38944
add gcd instance for integer and serialisation to target language operations
 Andreas Lochbihler parents: 
59720diff
changeset | 15 | "gcd 15 (- 10) = (5 :: integer)" | 
| 
4b1b85f38944
add gcd instance for integer and serialisation to target language operations
 Andreas Lochbihler parents: 
59720diff
changeset | 16 | "gcd (- 10) 15 = (5 :: integer)" | 
| 
4b1b85f38944
add gcd instance for integer and serialisation to target language operations
 Andreas Lochbihler parents: 
59720diff
changeset | 17 | "gcd (- 10) (- 15) = (5 :: integer)" | 
| 
4b1b85f38944
add gcd instance for integer and serialisation to target language operations
 Andreas Lochbihler parents: 
59720diff
changeset | 18 | "gcd 0 (- 10) = (10 :: integer)" | 
| 
4b1b85f38944
add gcd instance for integer and serialisation to target language operations
 Andreas Lochbihler parents: 
59720diff
changeset | 19 | "gcd (- 10) 0 = (10 :: integer)" | 
| 
4b1b85f38944
add gcd instance for integer and serialisation to target language operations
 Andreas Lochbihler parents: 
59720diff
changeset | 20 | "gcd 0 0 = (0 :: integer)" | 
| 
4b1b85f38944
add gcd instance for integer and serialisation to target language operations
 Andreas Lochbihler parents: 
59720diff
changeset | 21 | in GHC | 
| 
4b1b85f38944
add gcd instance for integer and serialisation to target language operations
 Andreas Lochbihler parents: 
59720diff
changeset | 22 | |
| 68155 | 23 | test_code "stake 10 (cycle ''ab'') = ''ababababab''" in GHC | 
| 24 | ||
| 58039 | 25 | end |