name: s-cargot-letbind version: 0.2.4.0 synopsis: Enables let-binding and let-expansion for s-cargot defined S-expressions. description: This module allows let bindings to be introduced into the S-Expression syntax. . For example, instead of: . > (concat (if (enabled x) (+ (width x) (width y)) (width y)) > " meters") . this can be re-written with let bindings: . > (let ((wy (width y)) > (wboth (+ (width x) wy)) > (wide (if (enabled x) wboth wy)) > ) > (concat wide " meters")) . As S-expressions grow larger, let-binding can help readability for those expressions. This module provides the 'discoverLetBindings' function that will convert an S-expression into one containing let-bound variables, and the inverse function 'letExpand' which will expand let-bound variables back into the expression. homepage: https://github.com/GaloisInc/s-cargot-letbind license: ISC license-file: LICENSE author: Kevin Quick maintainer: kquick@galois.com copyright: 2018 Kevin Quick category: Data build-type: Simple cabal-version: >=1.10 tested-with: GHC == 8.8.4 GHC == 8.10.7 GHC == 9.2.7 GHC == 9.4.4 GHC == 9.6.1 extra-source-files: ChangeLog.md test/big-sample.sexp test/small-sample.sexp test/med-sample.sexp test/med2-sample.sexp source-repository head type: git location: git://github.com/GaloisInc/s-cargot-letbind.git library exposed-modules: Data.SCargot.LetBind build-depends: base >=4.9 && <5 , s-cargot >= 0.1.6.0 && <0.2 , text >=1.2 && <2.1 hs-source-dirs: src default-language: Haskell2010 ghc-options: -Wall test-suite s-cargot-printparselet default-language: Haskell2010 type: exitcode-stdio-1.0 hs-source-dirs: test main-is: SCargotPrintParseLet.hs build-depends: base >=4.9 && <5 , parsec >=3.1 && <4 , HUnit >=1.6 && <1.7 , s-cargot >= 0.1.6.0 && <0.2 , s-cargot-letbind , text >=1.2 && <2.1