Skip to content
Browse files

Added basic build and informational files.

Preparing to push an early version up to GitHub. Now what little code
there is at least builds and there's some information in the README
file for curious people.
  • Loading branch information...
1 parent 08c4f65 commit 786fd0a7e1c130a289cd6bc1d08ea9c63033ae03 @malcolmt committed Oct 30, 2011
Showing with 127 additions and 4 deletions.
  1. +2 −1 .gitignore
  2. +30 −0 LICENSE
  3. +29 −0 README.markdown
  4. +2 −0 Setup.hs
  5. +3 −3 TODO.otl
  6. +61 −0 chess-tools.cabal
View
3 .gitignore
@@ -1,2 +1,3 @@
-html
+html/
+dist/
View
30 LICENSE
@@ -0,0 +1,30 @@
+Copyright (c)2011, Malcolm Tredinnick
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+
+ * 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.
+
+ * Neither the name of Malcolm Tredinnick nor the names of other
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+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.
View
29 README.markdown
@@ -0,0 +1,29 @@
+Chess tools library
+===================
+
+This Haskell library provides some useful data structures for working with
+chess games. It provides the framework onto which can be added things like a
+storage and analysis user interface, or a chess playing engine.
+
+There are routines for setting up a position and rapidly generating all legal
+moves in that position. This list can be used by other code to provide choices
+to a user, or in some kind of search for the best move to play.
+
+The core code is deliberately generic in order to make it applicable to more
+than just western-style chess. The same data structures should be useful for
+[Shogi](http://en.wikipedia.org/wiki/Shogi) (Japanese chess) and
+[Xiangqi](http://en.wikipedia.org/wiki/Xiangqi) (Chinese chess), as well as
+other variants.
+
+Current status
+---------------
+
+It's currently very early days for this project. Basic board structures are in
+place, but not a lot more. Developer (API) documentation exists, but
+descriptive user-focused documentation will be written once things have been
+fleshed out a little more.
+
+The *TODO.otl* file should give curious people a rough idea of where things are heading.
+
+This section will be updated as more features are implemented.
+
View
2 Setup.hs
@@ -0,0 +1,2 @@
+import Distribution.Simple
+main = defaultMain
View
6 TODO.otl
@@ -23,9 +23,9 @@
[_] take game object and convert to PGN
[_] arbitrary starting position (FEN parsing)
[_] Chess 960 games
-[_] Packaging
- [_] Setup,hs
- [_] chess-tools.cabal
+[X] Packaging
+ [X] Setup,hs
+ [X] chess-tools.cabal
[_] Maybe one day...
[_] UCI interface for western chess
[_] USI interface for shogi
View
61 chess-tools.cabal
@@ -0,0 +1,61 @@
+Name: chess-tools
+Version: 0.1.0
+Synopsis: Library for working with chess (and variants) game data.
+
+Description:
+ This library provides some useful data structures for working with chess
+ games. It provides the framework onto which can be added a storage or
+ analysis system, or a chess playing engine.
+
+ Contained in here are routines for setting up a position and rapidly
+ generating all legal moves in that position. This list can be used by other
+ code to provide choices to a user, or in some kind of search for the best
+ move to play.
+
+ The core code is deliberately generic in order to make it applicable to
+ more than just western-style chess. The same data structures should be
+ useful for Shogi (Japanese chess) and Xianqi (Chinese chess), as well as
+ other variants.
+
+Author: Malcolm Tredinnick
+Maintainer: Malcolm Tredinnick <malcolm.tredinnick@gmail.com>
+Copyright: Copyright (c) 2011, Malcolm Tredinnick
+License: BSD3
+License-file: LICENSE
+
+Stability: experimental
+Category: Game
+Build-type: Simple
+
+-- Homepage:
+-- Bug-reports:
+
+Extra-source-files: README.markdown
+ TODO.otl
+
+Cabal-version: >= 1.10
+
+-- Source-repository head
+-- Type: git
+-- Location:
+
+
+Library
+ Exposed-modules: ChessTools.Board
+ ChessTools.Board.Internal
+
+ Default-language: Haskell2010
+ Hs-Source-Dirs: src
+ GHC-Options: -Wall -Werror -O
+ Build-depends: haskell2010
+
+
+-- TODO: Wrestle this to the ground. Still a little problematic.
+
+-- Test-Suite test-chess-tools
+-- Type: detailed-1.0
+-- Test-module: Tests
+-- Hs-source-dirs: test
+-- Build-depends: haskell2010
+-- Cabal >= 1.10
+

0 comments on commit 786fd0a

Please sign in to comment.
Something went wrong with that request. Please try again.