brainmess.git
5 years agoInitial scripts for javascript impl of brainmess javaGoofing
Michael Welch [Tue, 13 Mar 2012 14:34:49 +0000 (09:34 -0500)] 
Initial scripts for javascript impl of brainmess

5 years agoMerge remote-tracking branch 'origin/javaGoofing' into javaGoofing
Michael Welch [Sun, 11 Mar 2012 01:34:06 +0000 (19:34 -0600)] 
Merge remote-tracking branch 'origin/javaGoofing' into javaGoofing

Conflicts:
README.md

5 years agoUpdate README with future languages
Michael Welch [Sun, 11 Mar 2012 01:26:26 +0000 (19:26 -0600)] 
Update README with future languages

5 years agoAttempt to clean up Tape.toString method by creating ListFormatter class
Michael Welch [Mon, 27 Feb 2012 18:06:10 +0000 (12:06 -0600)] 
Attempt to clean up Tape.toString method by creating ListFormatter class

5 years agoUpdate to more closely follow Java naming standards.
Michael Welch [Sun, 26 Feb 2012 15:54:24 +0000 (09:54 -0600)] 
Update to more closely follow Java naming standards.

Renamed IExecutionContext to ExecutionContext.
Use all caps for Instruction members.
Addeded some more comments.
Started on a parse method for Tape.

5 years agoAdd not toe Instruction, fix test name in InstructionTests
Michael Welch [Sun, 26 Feb 2012 15:16:16 +0000 (09:16 -0600)] 
Add not toe Instruction, fix test name in InstructionTests

5 years agoAdd comment about source of one of the scripts
Michael Welch [Sun, 26 Feb 2012 04:34:26 +0000 (22:34 -0600)] 
Add comment about source of one of the scripts

5 years agoFormat headers on README
Michael Welch [Sun, 26 Feb 2012 04:26:38 +0000 (22:26 -0600)] 
Format headers on README

5 years agoDefine IExecutionContext interface. Write some more tests
Michael Welch [Sun, 26 Feb 2012 04:21:59 +0000 (22:21 -0600)] 
Define IExecutionContext interface. Write some more tests

5 years agoUpdate README.md
Michael Welch [Sun, 26 Feb 2012 01:24:29 +0000 (19:24 -0600)] 
Update README.md

5 years agoAdd more to readme
Michael Welch [Sun, 26 Feb 2012 01:23:21 +0000 (19:23 -0600)] 
Add more to readme

5 years agoAdd some more info to README
Michael Welch [Sun, 26 Feb 2012 01:21:48 +0000 (19:21 -0600)] 
Add some more info to README

5 years agoAdd blank line at end of a haskell run
Michael Welch [Sun, 26 Feb 2012 01:21:22 +0000 (19:21 -0600)] 
Add blank line at end of a haskell run

5 years agoConsolidates scripts and programs into scripts
Michael Welch [Sun, 26 Feb 2012 01:05:22 +0000 (19:05 -0600)] 
Consolidates scripts and programs into scripts

5 years agoRename src.net to csharp
Michael Welch [Sun, 26 Feb 2012 01:02:14 +0000 (19:02 -0600)] 
Rename src.net to csharp

5 years agoMoved java source into its own folder
Michael Welch [Sun, 26 Feb 2012 01:01:32 +0000 (19:01 -0600)] 
Moved java source into its own folder

5 years agoUpdate README.md
Michael Welch [Sat, 25 Feb 2012 23:41:14 +0000 (17:41 -0600)] 
Update README.md

5 years agoMake testStream take a string and then test InputStream
Michael Welch [Wed, 29 Feb 2012 21:20:41 +0000 (13:20 -0800)] 
Make testStream take a string and then test InputStream

5 years agoContinue work on IO
Michael Welch [Tue, 28 Feb 2012 14:43:25 +0000 (06:43 -0800)] 
Continue work on IO

Renamed Stream to InputStream. Added OutputStream.

5 years agoAdded some test code for generating a stream of input
Michael Welch [Mon, 27 Feb 2012 19:39:27 +0000 (13:39 -0600)] 
Added some test code for generating a stream of input

5 years agoAdded Makefile for haskell
Michael Welch [Mon, 27 Feb 2012 19:23:53 +0000 (13:23 -0600)] 
Added Makefile for haskell

5 years agoAdd input/output tests for execute
Michael Welch [Mon, 27 Feb 2012 19:17:25 +0000 (13:17 -0600)] 
Add input/output tests for execute

Change var name from io to out

5 years agoAttempt to clean up Tape.toString method by creating ListFormatter class
Michael Welch [Mon, 27 Feb 2012 18:06:10 +0000 (12:06 -0600)] 
Attempt to clean up Tape.toString method by creating ListFormatter class

5 years agoUpdate to more closely follow Java naming standards.
Michael Welch [Sun, 26 Feb 2012 15:54:24 +0000 (09:54 -0600)] 
Update to more closely follow Java naming standards.

Renamed IExecutionContext to ExecutionContext.
Use all caps for Instruction members.
Addeded some more comments.
Started on a parse method for Tape.

5 years agoMerge branch 'master' of github.com:michaelgwelch/brainmess
Michael Welch [Sun, 26 Feb 2012 15:16:27 +0000 (09:16 -0600)] 
Merge branch 'master' of github.com:michaelgwelch/brainmess

5 years agoAdd not toe Instruction, fix test name in InstructionTests
Michael Welch [Sun, 26 Feb 2012 15:16:16 +0000 (09:16 -0600)] 
Add not toe Instruction, fix test name in InstructionTests

5 years agoAdd comment about source of one of the scripts
Michael Welch [Sun, 26 Feb 2012 04:34:26 +0000 (22:34 -0600)] 
Add comment about source of one of the scripts

5 years agoFormat headers on README
Michael Welch [Sun, 26 Feb 2012 04:26:38 +0000 (22:26 -0600)] 
Format headers on README

5 years agoMerge branch 'master' of github.com:michaelgwelch/brainmess
Michael Welch [Sun, 26 Feb 2012 04:22:22 +0000 (22:22 -0600)] 
Merge branch 'master' of github.com:michaelgwelch/brainmess

5 years agoDefine IExecutionContext interface. Write some more tests
Michael Welch [Sun, 26 Feb 2012 04:21:59 +0000 (22:21 -0600)] 
Define IExecutionContext interface. Write some more tests

5 years agoUpdate README.md
Michael Welch [Sun, 26 Feb 2012 01:24:29 +0000 (19:24 -0600)] 
Update README.md

5 years agoAdd more to readme
Michael Welch [Sun, 26 Feb 2012 01:23:21 +0000 (19:23 -0600)] 
Add more to readme

5 years agoAdd some more info to README
Michael Welch [Sun, 26 Feb 2012 01:21:48 +0000 (19:21 -0600)] 
Add some more info to README

5 years agoAdd blank line at end of a haskell run
Michael Welch [Sun, 26 Feb 2012 01:21:22 +0000 (19:21 -0600)] 
Add blank line at end of a haskell run

5 years agoConsolidates scripts and programs into scripts
Michael Welch [Sun, 26 Feb 2012 01:05:22 +0000 (19:05 -0600)] 
Consolidates scripts and programs into scripts

5 years agoRename src.net to csharp
Michael Welch [Sun, 26 Feb 2012 01:02:14 +0000 (19:02 -0600)] 
Rename src.net to csharp

5 years agoMoved java source into its own folder
Michael Welch [Sun, 26 Feb 2012 01:01:32 +0000 (19:01 -0600)] 
Moved java source into its own folder

5 years agoPlaying around with displaying tape
Michael Welch [Sat, 25 Feb 2012 23:43:23 +0000 (17:43 -0600)] 
Playing around with displaying tape
as infinite

This was to be used with program as well, but that is finite
need to consider it further

5 years agoUpdate README.md
Michael Welch [Sat, 25 Feb 2012 23:41:14 +0000 (17:41 -0600)] 
Update README.md

5 years agoAdded readme
Michael Welch [Sat, 25 Feb 2012 23:21:10 +0000 (17:21 -0600)] 
Added readme

5 years agoCheck file exists and can be opened before continuing with run
Michael Welch [Sat, 25 Feb 2012 22:33:07 +0000 (16:33 -0600)] 
Check file exists and can be opened before continuing with run

5 years agoCheck argument counter in main
Michael Welch [Sat, 25 Feb 2012 22:29:42 +0000 (16:29 -0600)] 
Check argument counter in main

5 years agoInclude stdlib.h in main module to avoid malloc error
Michael Welch [Sat, 25 Feb 2012 21:57:49 +0000 (15:57 -0600)] 
Include stdlib.h in main module to avoid malloc error

5 years agoMerge branch 'csrc'
Michael Welch [Sat, 25 Feb 2012 21:15:40 +0000 (15:15 -0600)] 
Merge branch 'csrc'

5 years agoDelete garbage from main. Use GString to read in entire contents
Michael Welch [Sat, 25 Feb 2012 21:15:16 +0000 (15:15 -0600)] 
Delete garbage from main. Use GString to read in entire contents

5 years agoCompleted a rough but working C source version of brainmess
Michael Welch [Sat, 25 Feb 2012 20:55:34 +0000 (14:55 -0600)] 
Completed a rough but working C source version of brainmess

5 years agoStart C version. Create tape module
Michael Welch [Sat, 25 Feb 2012 17:48:37 +0000 (11:48 -0600)] 
Start C version. Create tape module

5 years agoExtract method LinkedListNode.GetNodeAtIndex out of Tape.LoadState
Michael Welch [Thu, 23 Feb 2012 19:51:03 +0000 (13:51 -0600)] 
Extract method LinkedListNode.GetNodeAtIndex out of Tape.LoadState

Did the extract method. This simplified LoadState. Added unit tests for the new method.

5 years agoAdd tests for LinkedListNode.IndexOf
Michael Welch [Tue, 21 Feb 2012 21:24:31 +0000 (15:24 -0600)] 
Add tests for LinkedListNode.IndexOf

5 years agoMerge branch 'master' of gitproxy:michaelgwelch/brainmess
Michael Welch [Tue, 21 Feb 2012 21:03:12 +0000 (15:03 -0600)] 
Merge branch 'master' of gitproxy:michaelgwelch/brainmess

5 years agoRemove Tape.GetState method. Add Equals method. Fix unit tests
Michael Welch [Tue, 21 Feb 2012 21:03:01 +0000 (15:03 -0600)] 
Remove Tape.GetState method. Add Equals method. Fix unit tests

5 years agoAdd IndexOf extension method for LinkedListNode<T>
Michael Welch [Tue, 21 Feb 2012 21:02:02 +0000 (15:02 -0600)] 
Add IndexOf extension method for LinkedListNode<T>

5 years agoMerge remote-tracking branch 'originssh/master'
Michael Welch [Tue, 21 Feb 2012 01:06:21 +0000 (19:06 -0600)] 
Merge remote-tracking branch 'originssh/master'

5 years agoRevert back to derived show for Tape
Michael Welch [Tue, 21 Feb 2012 01:05:48 +0000 (19:05 -0600)] 
Revert back to derived show for Tape

5 years agoFix unit test documentation and warnings
Michael Welch [Mon, 20 Feb 2012 15:34:17 +0000 (09:34 -0600)] 
Fix unit test documentation and warnings

5 years agoAdd documenation to jumpable
Michael Welch [Mon, 20 Feb 2012 15:25:59 +0000 (09:25 -0600)] 
Add documenation to jumpable

5 years agoRenamed Prog to Jumpable
Michael Welch [Mon, 20 Feb 2012 15:23:21 +0000 (09:23 -0600)] 
Renamed Prog to Jumpable

5 years agoUse guard conditions on '[' and ']' rather than conditional
Michael Welch [Mon, 20 Feb 2012 13:44:34 +0000 (07:44 -0600)] 
Use guard conditions on '[' and ']' rather than conditional

5 years agoRefactor execute out of Program module
Michael Welch [Mon, 20 Feb 2012 03:49:09 +0000 (21:49 -0600)] 
Refactor execute out of Program module

5 years agoRewrote tape tests with HUnit
Michael Welch [Mon, 20 Feb 2012 02:44:20 +0000 (20:44 -0600)] 
Rewrote tape tests with HUnit

5 years agoAdd haddock documentation to tape
Michael Welch [Mon, 20 Feb 2012 01:10:03 +0000 (19:10 -0600)] 
Add haddock documentation to tape

5 years agoAdd show method for Tape and check index on createTape
Michael Welch [Sun, 19 Feb 2012 23:37:31 +0000 (17:37 -0600)] 
Add show method for Tape and check index on createTape

5 years agoSimplify tape module and control exports
Michael Welch [Sun, 19 Feb 2012 22:45:27 +0000 (16:45 -0600)] 
Simplify tape module and control exports

5 years agoAdd some documentation to program and control exports
Michael Welch [Sun, 19 Feb 2012 22:45:12 +0000 (16:45 -0600)] 
Add some documentation to program and control exports

5 years agoConvert Program to use Seq Char
Michael Welch [Sun, 19 Feb 2012 22:02:48 +0000 (16:02 -0600)] 
Convert Program to use Seq Char

5 years agoConvert from using [Int] to Seq Int for the tape.
Michael Welch [Sun, 19 Feb 2012 04:47:28 +0000 (22:47 -0600)] 
Convert from using [Int] to Seq Int for the tape.

5 years agoInitial working version of Haskell Brainmess.
Michael Welch [Sun, 19 Feb 2012 04:35:21 +0000 (22:35 -0600)] 
Initial working version of Haskell Brainmess.

5 years agoHaskell version compiles, but doesn't work.
Michael Welch [Sat, 18 Feb 2012 21:04:18 +0000 (15:04 -0600)] 
Haskell version compiles, but doesn't work.

5 years agoMerge branch 'master' of github.com:michaelgwelch/brainmess
Michael Welch [Sat, 18 Feb 2012 16:43:16 +0000 (10:43 -0600)] 
Merge branch 'master' of github.com:michaelgwelch/brainmess

5 years agoMerge branch 'haskellChanges'
Michael Welch [Sat, 18 Feb 2012 16:43:05 +0000 (10:43 -0600)] 
Merge branch 'haskellChanges'

5 years agoTrivial test change
Michael Welch [Sat, 18 Feb 2012 16:42:24 +0000 (10:42 -0600)] 
Trivial test change

5 years agoMerge pull request #1 from michaelgwelch/haskellChanges
Michael Welch [Sat, 18 Feb 2012 16:41:02 +0000 (08:41 -0800)] 
Merge pull request #1 from michaelgwelch/haskellChanges

Stash away some minor changes

5 years agoStash away some minor changes
Michael Welch [Sat, 18 Feb 2012 16:31:37 +0000 (10:31 -0600)] 
Stash away some minor changes

5 years agoInline the private FindMatch method
Michael Welch [Fri, 17 Feb 2012 16:40:07 +0000 (10:40 -0600)] 
Inline the private FindMatch method

5 years agoWrite initial Main method to read path from command line
Michael Welch [Fri, 17 Feb 2012 03:32:44 +0000 (21:32 -0600)] 
Write initial Main method to read path from command line

5 years agoFix double.bm
Michael Welch [Fri, 17 Feb 2012 03:32:08 +0000 (21:32 -0600)] 
Fix double.bm

5 years agoRename Welch.Brainmess.String to Welch.Brainmess.StringExtensions
Michael Welch [Thu, 16 Feb 2012 23:48:15 +0000 (17:48 -0600)] 
Rename Welch.Brainmess.String to Welch.Brainmess.StringExtensions

5 years agoCheck for null on LinkedListNode extension methods.
Michael Welch [Thu, 16 Feb 2012 23:46:32 +0000 (17:46 -0600)] 
Check for null on LinkedListNode extension methods.

5 years agoRename IProgramStream to IProgram because of code analysis
Michael Welch [Thu, 16 Feb 2012 23:41:07 +0000 (17:41 -0600)] 
Rename IProgramStream to IProgram because of code analysis
Not supposed to use word Stream in class name unless inheriting from Stream.

5 years agoDon't let program be null in full constructor of Interpreter.
Michael Welch [Thu, 16 Feb 2012 23:31:20 +0000 (17:31 -0600)] 
Don't let program be null in full constructor of Interpreter.

5 years agoMark BrainmessCore as CLS compliant
Michael Welch [Thu, 16 Feb 2012 23:26:17 +0000 (17:26 -0600)] 
Mark BrainmessCore as CLS compliant

5 years agoSuppress code analysis warning about readonly on Instructions (which are immutable)
Michael Welch [Thu, 16 Feb 2012 23:26:00 +0000 (17:26 -0600)] 
Suppress code analysis warning about readonly on Instructions (which are immutable)

5 years agoAdd custom dictionary so code analysis doesn't complain about Brainmess
Michael Welch [Thu, 16 Feb 2012 23:18:06 +0000 (17:18 -0600)] 
Add custom dictionary so code analysis doesn't complain about Brainmess

5 years agoGet 100% code coverage on Interpreter (lost it in a recent refactoring)
Michael Welch [Thu, 16 Feb 2012 23:06:55 +0000 (17:06 -0600)] 
Get 100% code coverage on Interpreter (lost it in a recent refactoring)

5 years agoMisc
Michael Welch [Thu, 16 Feb 2012 04:05:22 +0000 (22:05 -0600)] 
Misc

5 years agoAdd default constructor to fix Microsoft Code Analysis warning regarding default...
Michael Welch [Thu, 16 Feb 2012 04:05:07 +0000 (22:05 -0600)] 
Add default constructor to fix Microsoft Code Analysis warning regarding default value.

5 years agoFix typo in TestAndJumpForward
Michael Welch [Thu, 16 Feb 2012 04:04:34 +0000 (22:04 -0600)] 
Fix typo in TestAndJumpForward

5 years agoCleanup
Michael Welch [Thu, 16 Feb 2012 03:35:47 +0000 (21:35 -0600)] 
Cleanup
Interpreter - Documentation and make all parameters to constructor optional.
ProgramStream - Fetch now skips over no op instructions unless it's at EndOfProgram
String - Refactor to remove duplication. Now there is only one instance of algorithm. (Not two mirror copies)

5 years agoDocument IProgramStream
Michael Welch [Thu, 16 Feb 2012 02:44:58 +0000 (20:44 -0600)] 
Document IProgramStream

5 years agoDocument Instruciton
Michael Welch [Thu, 16 Feb 2012 02:43:40 +0000 (20:43 -0600)] 
Document Instruciton

5 years agoFinish 100% code coverage with unit tests.
Michael Welch [Thu, 16 Feb 2012 02:34:03 +0000 (20:34 -0600)] 
Finish 100% code coverage with unit tests.

5 years agoContinue to refine unit tests.
Michael Welch [Thu, 16 Feb 2012 00:23:16 +0000 (18:23 -0600)] 
Continue to refine unit tests.

5 years agoRefine proof
Michael Welch [Thu, 16 Feb 2012 00:22:56 +0000 (18:22 -0600)] 
Refine proof

5 years agoAdd Moq dll
Michael Welch [Thu, 16 Feb 2012 00:22:37 +0000 (18:22 -0600)] 
Add Moq dll

5 years agoUpdate ProgramStream to use extension method.
Michael Welch [Wed, 15 Feb 2012 15:30:09 +0000 (09:30 -0600)] 
Update ProgramStream to use extension method.

5 years agoUpdate ProgramStream to use extension method.
Michael Welch [Wed, 15 Feb 2012 15:29:11 +0000 (09:29 -0600)] 
Update ProgramStream to use extension method.

5 years agoRename Brackets to String and make FindMatch an extension method.
Michael Welch [Wed, 15 Feb 2012 15:27:58 +0000 (09:27 -0600)] 
Rename Brackets to String and make FindMatch an extension method.

5 years agoFix documentation of Tape and change some names.
Michael Welch [Wed, 15 Feb 2012 15:27:42 +0000 (09:27 -0600)] 
Fix documentation of Tape and change some names.

5 years agoAdd definition of matching brackets to proof.
Michael Welch [Wed, 15 Feb 2012 15:26:51 +0000 (09:26 -0600)] 
Add definition of matching brackets to proof.

5 years agoAdd LoadState and GetState to Tape and remove Wrap
Michael Welch [Wed, 15 Feb 2012 03:26:52 +0000 (21:26 -0600)] 
Add LoadState and GetState to Tape and remove Wrap

The idea here is that we don't want to expose our internals
except thru the use of the GetState method which in effect clones
our state without exposing any of our internal implementaiton details.

Load state allows us to create a new Tape in a prearrange non-default
state.

The use of these two methods allows us to unit test methods like
MoveForward and MoveBackward (and all the others) without having
to resort to side effects. We can call MoveForward on a tape in a known
state, call GetState and confirm that the position changed.

Unit tests updated to pass. Need to write more unit tests to get
100% code coverage on Tape class.