Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
-- This file: -- http://angg.twu.net/AGDA/TestPublic.agda.html -- http://angg.twu.net/AGDA/TestPublic.agda -- (find-angg "AGDA/TestPublic.agda") -- Author: Eduardo Ochs <eduardoochs@gmail.com> -- Version: 20220201 -- Public domain. -- -- See: (find-angg "AGDA/find-agdatype.el") -- -- (defun a () (interactive) (find-angg "AGDA/TestPublic.agda")) module TestPublic where open import Agda.Builtin.String open import Agda.Builtin.String.Properties infixl 4 _++_ _++_ : String -> String -> String _++_ str1 str2 = primStringAppend str1 str2 module Add (i : String) where infixl 4 _+_ _+_ : String -> String -> String _+_ a b = "(" ++ a ++ " +_" ++ i ++ " " ++ b ++ ")" module Mul (i : String) where infixl 4 _*_ _*_ : String -> String -> String _*_ a b = "(" ++ a ++ " *_" ++ i ++ " " ++ b ++ ")" module Add0 = Add "0" module Add1 = Add "1" open Add "2" public open Mul "3" -- not "public" aa : String aa = "AAA" bb : String bb = "BBB" cc : String cc = aa + bb dd : String dd = aa * bb -- (find-agdanorm "aa ++ bb") -- (find-agdanorm "Add._+_ \"4\" aa bb") -- (find-agdanorm "Add0._+_ aa bb") -- (find-agdanorm "aa Add1.+ bb") -- (find-agdanorm "aa + bb") -- (find-agdanorm "_+_") -- (find-agdanorm "_*_") -- (find-agdanorm "cc") -- (find-agdanorm "dd") -- -- Note that find-agdanorm considers that the _*_ is "Not in scope"... -- See: https://lists.chalmers.se/pipermail/agda/2022/012862.html -- https://lists.chalmers.se/pipermail/agda/2022/012863.html -- Local Variables: -- coding: utf-8-unix -- End: