From a0e2d74e0a73e77b1cb8ce2e686a15aa7b6108bc Mon Sep 17 00:00:00 2001 From: Carter Tazio Schonwald Date: Tue, 16 Aug 2016 15:14:40 -0400 Subject: [PATCH] getting started with mecha (which may wind up being released as Mecha or mecha-machines) --- ChangeLog.md | 5 ++++ LICENSE | 26 ++++++++++++++++ Setup.hs | 2 ++ mecha.cabal | 72 +++++++++++++++++++++++++++++++++++++++++++++ src/Mecha.hs | 3 ++ src/Mecha/Agent.hs | 2 ++ src/Mecha/Simple.hs | 2 ++ tests/Hspec.hs | 1 + 8 files changed, 113 insertions(+) create mode 100644 ChangeLog.md create mode 100644 LICENSE create mode 100644 Setup.hs create mode 100644 mecha.cabal create mode 100644 src/Mecha.hs create mode 100644 src/Mecha/Agent.hs create mode 100644 src/Mecha/Simple.hs create mode 100644 tests/Hspec.hs diff --git a/ChangeLog.md b/ChangeLog.md new file mode 100644 index 0000000..932646b --- /dev/null +++ b/ChangeLog.md @@ -0,0 +1,5 @@ +# Revision history for mecha + +## 0.1.0.0 -- YYYY-mm-dd + +* First version. Released on an unsuspecting world. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..946cab9 --- /dev/null +++ b/LICENSE @@ -0,0 +1,26 @@ +Copyright (c) 2016, Carter Tazio Schonwald +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the + distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/Setup.hs b/Setup.hs new file mode 100644 index 0000000..9a994af --- /dev/null +++ b/Setup.hs @@ -0,0 +1,2 @@ +import Distribution.Simple +main = defaultMain diff --git a/mecha.cabal b/mecha.cabal new file mode 100644 index 0000000..c4029fc --- /dev/null +++ b/mecha.cabal @@ -0,0 +1,72 @@ +-- Initial mech.cabal generated by cabal init. For further documentation, +-- see http://haskell.org/cabal/users-guide/ + +-- The name of the package. +name: mecha + +-- The package version. See the Haskell package versioning policy (PVP) +-- for standards guiding when and how versions should be incremented. +-- https://wiki.haskell.org/Package_versioning_policy +-- PVP summary: +-+------- breaking API changes +-- | | +----- non-breaking API additions +-- | | | +--- code changes with no API change +version: 0.1.0.0 + +-- A short (one-line) description of the package. +synopsis: mecha are the most complex composite machines known to humanity, lets build them well! + +-- A longer description of the package. +-- description: + +-- URL for the project homepage or repository. +homepage: http://github.com/cartazio/mecha + +-- The license under which the package is released. +license: BSD2 + +-- The file containing the license text. +license-file: LICENSE + +-- The package author(s). +author: Carter Tazio Schonwald + +-- An email address to which users can send suggestions, bug reports, and +-- patches. +maintainer: carter at wellposed dot com + +-- A copyright notice. +-- copyright: + +category: Control, Network, System, Concurrency, Data + +build-type: Simple + +-- Extra files to be distributed with the package, such as examples or a +-- README. +extra-source-files: ChangeLog.md + +-- Constraint on the version of Cabal needed to build this package. +cabal-version: >=1.10 + + +library + -- Modules exported by the library. + exposed-modules: Mecha, Mecha.Agent, Mecha.Simple + + -- Modules included in this library but not exported. + -- other-modules: + + -- LANGUAGE extensions used by modules in this package. + -- other-extensions: + + -- Other library packages from which modules are imported. + build-depends: base >=4.9 && <4.10 + ,machines + + -- Directories containing source files. + hs-source-dirs: src + + -- Base language which the package is written in. + default-language: Haskell2010 + + diff --git a/src/Mecha.hs b/src/Mecha.hs new file mode 100644 index 0000000..02cad30 --- /dev/null +++ b/src/Mecha.hs @@ -0,0 +1,3 @@ + +module Mecha where + diff --git a/src/Mecha/Agent.hs b/src/Mecha/Agent.hs new file mode 100644 index 0000000..aec2646 --- /dev/null +++ b/src/Mecha/Agent.hs @@ -0,0 +1,2 @@ + +module Mecha.Agent where diff --git a/src/Mecha/Simple.hs b/src/Mecha/Simple.hs new file mode 100644 index 0000000..6ba8b09 --- /dev/null +++ b/src/Mecha/Simple.hs @@ -0,0 +1,2 @@ + +module Mecha.Simple where diff --git a/tests/Hspec.hs b/tests/Hspec.hs new file mode 100644 index 0000000..6ca9a1f --- /dev/null +++ b/tests/Hspec.hs @@ -0,0 +1 @@ +module Main where