Skip to content

Commit

Permalink
Moved Phrase to utils (#1470)
Browse files Browse the repository at this point in the history
* Moved phrase to utils

* Added utils imports in data

* Added utils imports in docLang

* Added utils imports in GlassBR, SWHS, and NoPCM

* Added utils imports in rest of examples

* Improved implementation of Phrase
  • Loading branch information
samm82 authored and JacquesCarette committed Jun 5, 2019
1 parent 9c03aca commit a75925c
Show file tree
Hide file tree
Showing 29 changed files with 86 additions and 81 deletions.
3 changes: 2 additions & 1 deletion code/drasil-data/Data/Drasil/Concepts/Computation.hs
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
module Data.Drasil.Concepts.Computation where

import Language.Drasil
import Utils.Drasil

import Data.Drasil.Concepts.Documentation (datum, input_, literacy, output_,
quantity, type_, value, variable)
import Data.Drasil.Concepts.Math (parameter)
import Data.Drasil.Phrase (compoundNC, compoundNCPlPh, compoundNCPlPl)
import Data.Drasil.IdeaDicts

algorithm :: ConceptChunk
Expand Down
3 changes: 1 addition & 2 deletions code/drasil-data/Data/Drasil/Concepts/Documentation.hs
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
module Data.Drasil.Concepts.Documentation where

import Language.Drasil hiding (organization, year)
import Utils.Drasil

import Data.Drasil.Concepts.Math (graph)
import Data.Drasil.Phrase (andRT, and_, and_', ofA, of_, of_', of__, theCustom,
ofN_, compoundNC, compoundNC', compoundNCP1)
import Data.Drasil.IdeaDicts (dataDefn, documentc, genDefn, inModel, softEng, thModel)

import Control.Lens ((^.))
Expand Down
3 changes: 2 additions & 1 deletion code/drasil-data/Data/Drasil/Concepts/Education.hs
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
module Data.Drasil.Concepts.Education where

import Language.Drasil hiding (year)
import Utils.Drasil

import Data.Drasil.Concepts.Documentation as Doc (first, physics, second_, year)
import Data.Drasil.Concepts.PhysicalProperties (solid)
import Data.Drasil.Phrase (compoundNC)

educon :: [NamedChunk]
educon = [calculus, civil, degree_, engineering, structural, mechanics,
Expand Down
5 changes: 3 additions & 2 deletions code/drasil-data/Data/Drasil/Concepts/Math.hs
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
module Data.Drasil.Concepts.Math where

import Language.Drasil hiding (number)
import Control.Lens ((^.))
import Data.Drasil.IdeaDicts
import Utils.Drasil

import Control.Lens ((^.))

import Data.Drasil.Phrase(of_)
mathcon :: [ConceptChunk]
mathcon = [angle, area, calculation, diameter, equation, euclidN, euclidSpace, gradient,
graph, law, matrix, norm, normal, normalV, number, orient, parameter, perp,
Expand Down
3 changes: 2 additions & 1 deletion code/drasil-data/Data/Drasil/Concepts/PhysicalProperties.hs
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
module Data.Drasil.Concepts.PhysicalProperties where

import Language.Drasil
import Utils.Drasil

import Data.Drasil.Concepts.Documentation (material_, property)
import Data.Drasil.Phrase (compoundNC)

physicalcon :: [ConceptChunk]
physicalcon = [gaseous, liquid, solid, ctrOfMass, density, specWeight, mass,
Expand Down
5 changes: 1 addition & 4 deletions code/drasil-data/Data/Drasil/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
--------------------------------------------------
### Summary of Folder Structure and File Contents
Last updated: July 25, 2018
Last updated: June 3, 2019
--------------------------------------------------

**Concepts**
Expand All @@ -24,9 +24,6 @@ Constraints.hs
People.hs
- Contains author names for our examples

Phrase.hs
- Contains functions for building `Noun Phrase`s

README.md
- This file

Expand Down
6 changes: 4 additions & 2 deletions code/drasil-data/Data/Drasil/Software/Products.hs
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
module Data.Drasil.Software.Products where
import Language.Drasil (CI, NamedChunk, cn', commonIdeaWithDict, nc, pn')
import Data.Drasil.Phrase (compoundNC)

import Language.Drasil
import Utils.Drasil

import Data.Drasil.Concepts.Documentation (game, video, open, source)
import Data.Drasil.Concepts.Computation (computer)
import Data.Drasil.Concepts.Software (program)
Expand Down
1 change: 0 additions & 1 deletion code/drasil-data/drasil-data.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ library
Data.Drasil.Constraints
Data.Drasil.SentenceStructures
Data.Drasil.SI_Units
Data.Drasil.Phrase
Data.Drasil.Utils
Data.Drasil.Concepts.Computation
Data.Drasil.Concepts.Documentation
Expand Down
3 changes: 2 additions & 1 deletion code/drasil-docLang/Drasil/DocLang/SRS.hs
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ module Drasil.DocLang.SRS
--May want to combine SRS-specific functions into this file as well (ie. OrganizationOfSRS) to make it more Recipe-like.

import Language.Drasil
import Utils.Drasil

import qualified Data.Drasil.Concepts.Documentation as Doc (appendix, assumption,
charOfIR, client, customer, consVals, datumConstraint, functionalRequirement,
generalSystemDescription, goalStmt, indPRCase, introduction, likelyChg,
Expand All @@ -23,7 +25,6 @@ import qualified Data.Drasil.Concepts.Documentation as Doc (appendix, assumption
stakeholder, sysCont, systemConstraint, termAndDef, terminology, traceyMandG,
tOfSymb, userCharacteristic)
import qualified Data.Drasil.IdeaDicts as Doc (dataDefn, genDefn, inModel, thModel)
import Data.Drasil.Phrase (for'', the')

-- Local function to keep things looking clean, not exported.
forTT :: (NamedIdea c, NamedIdea d) => c -> d -> Sentence
Expand Down
2 changes: 1 addition & 1 deletion code/drasil-docLang/Drasil/Sections/Stakeholders.hs
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ module Drasil.Sections.Stakeholders

import Language.Drasil
import Utils.Drasil

import qualified Drasil.DocLang.SRS as SRS
import Data.Drasil.Concepts.Documentation (section_, stakeholder, interest, product_, client,
customer, endUser)
import Data.Drasil.Phrase (the)

stakehldrGeneral :: (Idea a) => a -> Sentence -> Section
stakehldrGeneral kWord clientDetails = SRS.stakeholder [stakeholderIntro] subs
Expand Down
1 change: 0 additions & 1 deletion code/drasil-example/Drasil/GamePhysics/Body.hs
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ import Data.Drasil.Concepts.Education (frstYr, highSchoolCalculus,
highSchoolPhysics, educon)
import Data.Drasil.Concepts.Software (physLib, softwarecon)
import Data.Drasil.People (alex, luthfi)
import Data.Drasil.Phrase (for')
import Data.Drasil.SentenceStructures (showingCxnBw)
import Data.Drasil.SI_Units (metre, kilogram, second, newton, radian,
derived, fundamentals, joule)
Expand Down
1 change: 0 additions & 1 deletion code/drasil-example/Drasil/GlassBR/Body.hs
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,6 @@ import Data.Drasil.Software.Products (sciCompS)

import Data.Drasil.Citations (koothoor2013, smithLai2005)
import Data.Drasil.People (mCampidelli, nikitha, spencerSmith)
import Data.Drasil.Phrase (for'', the)
import Data.Drasil.SI_Units (kilogram, metre, newton, pascal, second, fundamentals,
derived)
import Data.Drasil.SentenceStructures (showingCxnBw, tAndDOnly, tAndDWAcc,
Expand Down
2 changes: 1 addition & 1 deletion code/drasil-example/Drasil/GlassBR/Concepts.hs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
module Drasil.GlassBR.Concepts where --whole file is used

import Language.Drasil
import Utils.Drasil

import Data.Drasil.Concepts.Documentation (assumption, goalStmt, likelyChg,
notApp, physSyst, response, requirement, srs, type_, typUnc, unlikelyChg)
import Data.Drasil.Phrase (compoundNC)
import Data.Drasil.IdeaDicts

{--}
Expand Down
1 change: 0 additions & 1 deletion code/drasil-example/Drasil/GlassBR/Figures.hs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import Utils.Drasil
import Data.Drasil.Concepts.Documentation (assumption, item, physicalSystem,
requirement, section_, sysCont, traceyMatrix)

import Data.Drasil.Phrase (the)
import Data.Drasil.SentenceStructures (showingCxnBw)

import Drasil.GlassBR.Concepts (aR, stdOffDist)
Expand Down
1 change: 0 additions & 1 deletion code/drasil-example/Drasil/GlassBR/Unitals.hs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ import Control.Lens ((^.))
import Prelude hiding (log)

import Data.Drasil.Constraints (gtZeroConstr)
import Data.Drasil.Phrase (compoundNC)
import Data.Drasil.SentenceStructures (displayConstrntsAsSet)
import Data.Drasil.SI_Units (kilogram, metre, millimetre, pascal, second)

Expand Down
2 changes: 1 addition & 1 deletion code/drasil-example/Drasil/HGHC/HGHC.hs
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,14 @@ import Database.Drasil (Block, ChunkDB, SystemInformation(SI), cdb,
collectUnits, rdb, refdb, _authors, _concepts, _constants, _constraints,
_datadefs, _definitions, _defSequence, _inputs, _kind, _outputs, _quants,
_sys, _sysinfodb, _usedinfodb)
import Utils.Drasil

import Drasil.HGHC.HeatTransfer (fp, hghc, dataDefs, htInputs, htOutputs,
nuclearPhys, symbols)

import Data.Drasil.SI_Units (siUnits, fundamentals, derived, degree)
import Data.Drasil.People (spencerSmith)
import Data.Drasil.Concepts.Documentation (srs, doccon, doccon')
import Data.Drasil.Phrase (for)

thisCode :: CodeSpec
thisCode = codeSpec thisSI []
Expand Down
2 changes: 0 additions & 2 deletions code/drasil-example/Drasil/NoPCM/Body.hs
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,6 @@ import Data.Drasil.Quantities.Math (gradient, pi_, surface, uNormalVect)
import Data.Drasil.Quantities.PhysicalProperties (vol, mass, density)
import Data.Drasil.Quantities.Physics (time, energy, physicscon)


import Data.Drasil.Phrase (for)
import Data.Drasil.SentenceStructures (showingCxnBw)
import Data.Drasil.Software.Products (compPro, prodtcon)
import Data.Drasil.SI_Units (metre, kilogram, second, centigrade, joule, watt,
Expand Down
2 changes: 1 addition & 1 deletion code/drasil-example/Drasil/Projectile/Body.hs
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import Database.Drasil (Block, ChunkDB, RefbyMap, ReferenceDB, SystemInformation
TraceMap, cdb, generateRefbyMap, rdb, refdb, _authors, _concepts, _constants,
_constraints, _datadefs, _definitions, _defSequence, _inputs, _kind, _outputs,
_quants, _sys, _sysinfodb, _usedinfodb)
import Utils.Drasil

import Theory.Drasil (DataDefinition, GenDefn, InstanceModel, TheoryModel)

Expand All @@ -15,7 +16,6 @@ import Data.Drasil.Concepts.Documentation as Doc (srs)

import Data.Drasil.IdeaDicts (physics)
import Data.Drasil.People (samCrawford)
import Data.Drasil.Phrase (for'')

import qualified Data.Map as Map

Expand Down
1 change: 0 additions & 1 deletion code/drasil-example/Drasil/SSP/Body.hs
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ import Data.Drasil.Theories.Physics (physicsTMs)

import Data.Drasil.People (brooks, henryFrankis)
import Data.Drasil.Citations (koothoor2013, smithLai2005)
import Data.Drasil.Phrase (for)
import Data.Drasil.SI_Units (degree, metre, newton, pascal, kilogram, second, derived, fundamentals)
import Data.Drasil.Utils (bulletFlat, bulletNested, enumSimple, noRefsLT)

Expand Down
4 changes: 1 addition & 3 deletions code/drasil-example/Drasil/SSP/Defs.hs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
module Drasil.SSP.Defs where --export all of this file

import Language.Drasil
import Data.Drasil.IdeaDicts
import Utils.Drasil

import Data.Drasil.Concepts.Documentation (analysis, assumption, goalStmt,
Expand All @@ -11,9 +12,6 @@ import Data.Drasil.Concepts.Physics (twoD, threeD, force, stress)
import Data.Drasil.Concepts.PhysicalProperties (dimension, len)
import Data.Drasil.Concepts.SolidMechanics (mobShear, normForce, nrmStrss,shearRes)

import Data.Drasil.Phrase(of_'', compoundNC)
import Data.Drasil.IdeaDicts

----Acronyms-----
acronyms :: [CI]
acronyms = [twoD, threeD, assumption, dataDefn, genDefn, goalStmt, inModel, likelyChg,
Expand Down
1 change: 0 additions & 1 deletion code/drasil-example/Drasil/SWHS/Body.hs
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,6 @@ import Data.Drasil.Quantities.Physics (energy, time, physicscon)
import Data.Drasil.Quantities.Thermodynamics (heatCapSpec, latentHeat, temp)

import Data.Drasil.People (brooks, spencerSmith, thulasi)
import Data.Drasil.Phrase (for)
import Data.Drasil.SentenceStructures (showingCxnBw)
import Data.Drasil.SI_Units (metre, kilogram, second, centigrade, joule, watt,
fundamentals, derived, m_2, m_3)
Expand Down
5 changes: 3 additions & 2 deletions code/drasil-example/Drasil/SWHS/Concepts.hs
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
module Drasil.SWHS.Concepts where --all of this file is exported

import Language.Drasil
import Control.Lens ((^.))

import Language.Drasil
import Utils.Drasil

import Data.Drasil.Concepts.Documentation (assumption, goalStmt,
likelyChg, physSyst, requirement, srs, typUnc, unlikelyChg)
import Data.Drasil.Concepts.Math (ode, parameter)
import Data.Drasil.Phrase (with)
import Data.Drasil.IdeaDicts (dataDefn, genDefn, inModel, materialEng, thModel)

con :: [ConceptChunk]
Expand Down
2 changes: 1 addition & 1 deletion code/drasil-example/Drasil/SWHS/Unitals.hs
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ module Drasil.SWHS.Unitals where -- all of this file is exported
import Language.Drasil
import Language.Drasil.ShortHands
import Theory.Drasil (mkQuantDef)
import Utils.Drasil

import Data.Drasil.Concepts.Documentation (simulation)
import Data.Drasil.Constraints (gtZeroConstr)
import Data.Drasil.Phrase (of_)
import Data.Drasil.Quantities.Math (gradient, pi_, surArea, surface, uNormalVect)
import Data.Drasil.Quantities.PhysicalProperties (mass, density, vol)
import Data.Drasil.Quantities.Physics (time)
Expand Down
4 changes: 1 addition & 3 deletions code/drasil-example/Drasil/Template/Body.hs
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,13 @@ import Database.Drasil (Block, ChunkDB, RefbyMap, ReferenceDB, SystemInformation
TraceMap, cdb, generateRefbyMap, rdb, refdb, _authors, _concepts, _constants,
_constraints, _datadefs, _definitions, _defSequence, _inputs, _kind, _outputs,
_quants, _sys, _sysinfodb, _usedinfodb)

import Theory.Drasil (DataDefinition, GenDefn, InstanceModel, TheoryModel)
import Utils.Drasil

import Drasil.DocLang (DocDesc, generateTraceMap, generateTraceMap', mkDoc)

import Data.Drasil.Concepts.Documentation as Doc (srs)

import Data.Drasil.Phrase (for'')

import qualified Data.Map as Map

srsDoc :: Document
Expand Down
9 changes: 6 additions & 3 deletions code/drasil-example/drasil-example.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ executable tiny
drasil-printers >= 0.1.8,
drasil-gen >= 0.1.3,
drasil-docLang >= 0.1.24,
drasil-theory >= 0.1.0
drasil-theory >= 0.1.0,
drasil-utils >= 0.1.0
default-language: Haskell2010
ghc-options: -Wall -O2 -Wredundant-constraints

Expand Down Expand Up @@ -249,7 +250,8 @@ executable projectile
drasil-printers >= 0.1.8,
drasil-gen >= 0.1.3,
drasil-docLang >= 0.1.24,
drasil-theory >= 0.1.0
drasil-theory >= 0.1.0,
drasil-utils >= 0.1.0
default-language: Haskell2010
ghc-options: -Wall -Wredundant-constraints

Expand All @@ -273,7 +275,8 @@ executable template
drasil-printers >= 0.1.8,
drasil-gen >= 0.1.3,
drasil-docLang >= 0.1.24,
drasil-theory >= 0.1.0
drasil-theory >= 0.1.0,
drasil-utils >= 0.1.0
default-language: Haskell2010
ghc-options: -Wall -Wredundant-constraints

Expand Down
13 changes: 9 additions & 4 deletions code/drasil-utils/Utils/Drasil.hs
Original file line number Diff line number Diff line change
@@ -1,15 +1,20 @@
module Utils.Drasil (
-- Sentence
andIts, andThe, isExpctdToHv, isThe, ofGiv, ofGiv', ofThe, ofThe', sOf, sOr,
sVersus, sAnd, sAre, sIn, sIs, toThe,
-- Fold
EnumType(..), WrapType(..), SepType(..), FoldType(..), foldConstraints, -- FIXME: foldConstraints shouldn't be exported when drasil-utils is finished
foldlEnumList, foldlList, foldlSP, foldlSP_, foldlSPCol, foldlSent,
foldlSent_,foldlSentCol, foldlsC
foldlSent_,foldlSentCol, foldlsC,
-- Phrase
and_, and_', andRT, compoundNC, compoundNC', compoundNC'', compoundNC''',
compoundNCP1, compoundNCPlPh, compoundNCPlPl, for, for', for'', of_, of_',
of_'', of__, ofA, ofN_, the, the', theCustom, with,
-- Sentence
andIts, andThe, isExpctdToHv, isThe, ofGiv, ofGiv', ofThe, ofThe', sOf, sOr,
sVersus, sAnd, sAre, sIn, sIs, toThe
) where

import Utils.Drasil.Fold (EnumType(..), WrapType(..), SepType(..),
FoldType(..), foldConstraints, foldlEnumList, foldlList, foldlSP,
foldlSP_, foldlSPCol, foldlSent, foldlSent_, foldlSentCol, foldlsC)
import Utils.Drasil.Phrase
import Utils.Drasil.Sentence (andIts, andThe, isExpctdToHv, isThe, ofGiv,
ofGiv', ofThe, ofThe', sOf, sOr, sVersus, sAnd, sAre, sIn, sIs, toThe)
Loading

0 comments on commit a75925c

Please sign in to comment.