CspCASL_Keywords.hs revision f909337bf7012aca169c0b56b89efbd4a310f8da
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett{- |
8267b99c0d7a187abe6f87ad50530dc08f5d1cdcAndy GimblettModule : $Id$
e071fb22ea9923a2a4ff41184d80ca46b55ee932Till MossakowskiDescription : CspCASL keywords to be used for parsing and printing
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettCopyright : (c) Andy Gimblett and Swansea University 2006
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettLicense : similar to LGPL, see HetCATS/LICENSE.txt or LIZENZ.txt
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettMaintainer : a.m.gimblett@swan.ac.uk
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettStability : provisional
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettPortability : portable
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettString constants for CspCASL keywords to be used for parsing and
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettprinting.
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-}
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettmodule CspCASL.CspCASL_Keywords where
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettimport Common.Token (casl_reserved_words)
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
f909337bf7012aca169c0b56b89efbd4a310f8daAndy Gimblett-- | Keywords identifying beginning of channel declaration part.
f909337bf7012aca169c0b56b89efbd4a310f8daAndy GimblettchannelS, channelsS :: String
f909337bf7012aca169c0b56b89efbd4a310f8daAndy GimblettchannelS = "channel"
f909337bf7012aca169c0b56b89efbd4a310f8daAndy GimblettchannelsS = "channels"
f909337bf7012aca169c0b56b89efbd4a310f8daAndy Gimblett
04ceed96d1528b939f2e592d0656290d81d1c045Andy Gimblett-- | Keyword identifying beginning of process equation part.
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettprocessS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettprocessS = "process"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | interleaving parallel operator
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettinterleavingS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettinterleavingS = "|||"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | synchronous parallel operator
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettsynchronousS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettsynchronousS = "||"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Open generalised parallel
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettgeneral_parallel_openS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettgeneral_parallel_openS = "[|"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Close generalised parallel
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettgeneral_parallel_closeS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettgeneral_parallel_closeS = "|]"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Open alpabetised parallel
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettalpha_parallel_openS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettalpha_parallel_openS = "["
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Separator in alpabetised parallel
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettalpha_parallel_sepS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettalpha_parallel_sepS = "||"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Close alpabetised parallel
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettalpha_parallel_closeS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettalpha_parallel_closeS = "]"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | External choice
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettexternal_choiceS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettexternal_choiceS = "[]"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Internal choice
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettinternal_choiceS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettinternal_choiceS = "|~|"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Prefix processes
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettprefixS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettprefixS = "->"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | External prefix opener
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettexternal_prefixS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettexternal_prefixS = "[]"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Internal prefix opener
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettinternal_prefixS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettinternal_prefixS = "|~|"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Hiding
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimbletthidingS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimbletthidingS = "\\"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Open a renaming
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettrenaming_openS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettrenaming_openS = "[["
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Close a renaming
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettrenaming_closeS :: String
29ac9ecacf0983a565b89f133ff2bdf2ac02b0c4Andy Gimblettrenaming_closeS = "]]"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | "RUN" primitive process
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettrunS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettrunS = "RUN"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | "CHAOS" primitive process
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettchaosS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettchaosS = "CHAOS"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | "div" primitive process
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettdivS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettdivS = "div"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | "SKIP" primitive process
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettskipS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettskipS = "SKIP"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | "STOP" primitive process
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettstopS :: String
020cdb5dad6b871aba61136a0e1567c00426de87Andy GimblettstopS = "STOP"
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett-- | Reserved keywords specific to CSP-CASL.
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettcsp_casl_keywords :: [String]
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblettcsp_casl_keywords = casl_reserved_words ++
f909337bf7012aca169c0b56b89efbd4a310f8daAndy Gimblett [ channelS,
f909337bf7012aca169c0b56b89efbd4a310f8daAndy Gimblett channelsS,
f909337bf7012aca169c0b56b89efbd4a310f8daAndy Gimblett processS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett interleavingS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett synchronousS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett general_parallel_openS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett general_parallel_closeS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett alpha_parallel_openS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett alpha_parallel_sepS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett alpha_parallel_closeS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett external_choiceS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett internal_choiceS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett prefixS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett external_prefixS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett internal_prefixS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett hidingS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett renaming_openS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett renaming_closeS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett runS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett chaosS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett divS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett skipS,
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett stopS
020cdb5dad6b871aba61136a0e1567c00426de87Andy Gimblett ]