From e715e592237b979f3cfffdd9f4d167222454b88f Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Thu, 30 Jun 2016 20:20:26 +0200 Subject: A,B,C-stacks --- BStack.dcl | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 BStack.dcl (limited to 'BStack.dcl') diff --git a/BStack.dcl b/BStack.dcl new file mode 100644 index 0000000..4f5bbfa --- /dev/null +++ b/BStack.dcl @@ -0,0 +1,30 @@ +definition module ABC.BStack + +:: Basic = Int Int + | Bool Bool + +:: BSrc :== Int +:: BDst :== Int +:: BStack (:== [Basic]) + +bs_copy :: BSrc BStack -> BStack +bs_get :: BSrc BStack -> Basic +bs_getB :: BSrc BStack -> Bool +bs_getI :: BSrc BStack -> Int +bs_init :: BStack +bs_popn :: NrArgs BStack -> BStack +bs_push :: Dynamic BStack -> BStack +bs_pushB :: Bool BStack -> BStack +bs_pushI :: Int BStack -> BStack +bs_update :: BDst Dynamic BStack -> BStack +bs_addI :: BStack -> BStack +bs_decI :: BStack -> BStack +bs_incI :: BStack -> BStack +bs_eqB :: BStack -> BStack +bs_eqI :: BStack -> BStack +bs_eqBi :: Bool BSrc BStack -> BStack +bs_eqIi :: Int BSrc BStack -> BStack +bs_gtI :: BStack -> BStack +bs_ltI :: BStack -> BStack +bs_mulI :: BStack -> BStack +bs_subI :: BStack -> BStack -- cgit v1.2.3