Changeset [7ed2249fe1b6063e163cc121b3289f37bfdf5969] by Douglas Creager

November 6th, 2008 @ 09:28 PM

Binding and evaluation now take place in a monad

Once we add process terms to the CSPM language, we'll need a State monad to bind and evaluate them, since we'll need to generate new, unique process names during evaluation. This patch refactors the existing binding and evaluation code to use a State monad. Right now, the state is empty, but once we introduce processes, it will contain the list of used process names.

Lighthouse: [#2] http://github.com/dcreager/hst/c...

Committed by Douglas Creager

  • M cspm/HST.cabal
  • M cspm/src/HST/CSPM/Bind.hs
  • M cspm/src/HST/CSPM/Evaluate.hs
  • M cspm/tests/HST/CSPM/Tests/Booleans.hs
  • M cspm/tests/HST/CSPM/Tests/Lambdas.hs
  • M cspm/tests/HST/CSPM/Tests/Lets.hs
  • M cspm/tests/HST/CSPM/Tests/Numbers.hs
  • M cspm/tests/HST/CSPM/Tests/Sequences.hs
  • M cspm/tests/HST/CSPM/Tests/Sets.hs
New-ticket Create new ticket

Create your profile

Help contribute to this project by taking a few moments to create your personal profile. Create your profile »

An open-source refinement checker for the CSP process algebra.