packages/hoopl.git
9 years agoadd an FAQ file
Norman Ramsey [Fri, 14 May 2010 14:59:33 +0000 (10:59 -0400)] 
add an FAQ file

9 years agostop building the supplement for the submission to POPL 2010
Norman Ramsey [Fri, 14 May 2010 14:59:01 +0000 (10:59 -0400)] 
stop building the supplement for the submission to POPL 2010

9 years agoNote that clients, too may want to write functions polymorphic in the node representation
Norman Ramsey [Fri, 14 May 2010 14:58:37 +0000 (10:58 -0400)] 
Note that clients, too may want to write functions polymorphic in the node representation
(per conversaion with slpj)

9 years agoCleaned up combinator examples for the paper.
Norman Ramsey [Wed, 12 May 2010 21:35:54 +0000 (17:35 -0400)] 
Cleaned up combinator examples for the paper.

9 years agomore uniform label checking in graph splicing
Norman Ramsey [Wed, 12 May 2010 21:04:35 +0000 (17:04 -0400)] 
more uniform label checking in graph splicing

9 years agoextract thenFwdRewrite from code for paper
Norman Ramsey [Wed, 12 May 2010 21:04:24 +0000 (17:04 -0400)] 
extract thenFwdRewrite from code for paper

9 years agofix bug in code example in paper
Norman Ramsey [Wed, 12 May 2010 21:03:58 +0000 (17:03 -0400)] 
fix bug in code example in paper

9 years agoConstant-propagation figure is now extracted automatically from John's code; some...
Norman Ramsey [Wed, 12 May 2010 19:00:00 +0000 (15:00 -0400)] 
Constant-propagation figure is now extracted automatically from John's code; some names are saner

In particular

  suffix '3' for functions expecting or working with a triple
  no suffix for function expecting or working with higher-rank
     polymorphism (which is now explained in the paper as
     the default interface for clients).

9 years agomove the historical record out of Dataflow.hs and into HISTORY
Norman Ramsey [Wed, 12 May 2010 17:38:45 +0000 (13:38 -0400)] 
move the historical record out of Dataflow.hs and into HISTORY

9 years agoclarify common usage for client transfer functions.
Norman Ramsey [Wed, 12 May 2010 17:38:25 +0000 (13:38 -0400)] 
clarify common usage for client transfer functions.

9 years agoworking on making constant propagation more readable for the paper
Norman Ramsey [Wed, 12 May 2010 16:41:11 +0000 (12:41 -0400)] 
working on making constant propagation more readable for the paper

9 years agostart in on a more mnemonic naming scheme for combinators
Norman Ramsey [Wed, 12 May 2010 16:40:18 +0000 (12:40 -0400)] 
start in on a more mnemonic naming scheme for combinators

Suffix 3 if the client is providing a triple
Suffix Poly if the client is providing a single polymorphic function

(perhaps suffix Poly should be dropped?)

9 years agonoted grotesque code discovered while working on the paper
Norman Ramsey [Mon, 10 May 2010 17:42:20 +0000 (13:42 -0400)] 
noted grotesque code discovered while working on the paper

9 years agowork on the paper
Norman Ramsey [Mon, 10 May 2010 17:42:03 +0000 (13:42 -0400)] 
work on the paper

9 years agodetect a couple of places where duplicate labels might occur
Norman Ramsey [Mon, 10 May 2010 16:17:19 +0000 (12:17 -0400)] 
detect a couple of places where duplicate labels might occur

9 years agoMerge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight
Norman Ramsey [Fri, 7 May 2010 19:04:43 +0000 (15:04 -0400)] 
Merge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight

Conflicts:

testing/Ast2ir.hs
testing/ConstProp.hs
testing/Live.hs
testing/OptSupport.hs
testing/Simplify.hs

9 years agoadd comments to constant propagation
Norman Ramsey [Fri, 7 May 2010 16:21:17 +0000 (12:21 -0400)] 
add comments to constant propagation

9 years agoupdate northeastern notes
Norman Ramsey [Fri, 7 May 2010 16:21:04 +0000 (12:21 -0400)] 
update northeastern notes

9 years agostart to update paper to reflect 3.8
Norman Ramsey [Fri, 7 May 2010 16:20:45 +0000 (12:20 -0400)] 
start to update paper to reflect 3.8

9 years agoExporing Body and Block representation to GHC.
Milan Straka [Wed, 5 May 2010 18:53:18 +0000 (19:53 +0100)] 
Exporing Body and Block representation to GHC.

This is _shortterm_ only.

When converting the GHC code to use Hoopl, various folds
and maps over Graphs and Blocks are necessary. We are
touching Body(..) and Block(..) strictly in one module only
and after the conversion is done, reasonable set of these
methods will go back to Hoopl.

9 years agoRewrites return the possible rewrite in the monad.
Milan Straka [Tue, 4 May 2010 19:16:11 +0000 (20:16 +0100)] 
Rewrites return the possible rewrite in the monad.

As suggested by Simon PJ, instead of

    newtype FwdRewrite m n f
      = FwdRewrites { getFRewrites ::
                        ( n C O -> f -> Maybe (FwdRes m n f C O)
                        , n O O -> f -> Maybe (FwdRes m n f O O)
                        , n O C -> f -> Maybe (FwdRes m n f O C)
                        ) }
    data FwdRes m n f e x = FwdRes (m (Graph n e x)) (FwdRewrite m n f)

we now have

    newtype FwdRewrite m n f
      = FwdRewrites { getFRewrites ::
                        ( n C O -> f -> m (FwdRes m n f C O)
                        , n O O -> f -> m (FwdRes m n f O O)
                        , n O C -> f -> m (FwdRes m n f O C)
                         ) }
    data FwdRes m n f e x = FwdRes (Graph n e x) (FwdRewrite m n f)
                          | NoFwdRes

which allows to consult the monad before deciding whether to perform
a rewrite.

The type of withFuel changed to accommodate this.

9 years agoadded cabal entry for DList module (oops)
Norman Ramsey [Tue, 4 May 2010 15:24:15 +0000 (11:24 -0400)] 
added cabal entry for DList module (oops)

9 years agotrying to migrate reusable from functinos from testing client into Hoopl itself
Norman Ramsey [Tue, 4 May 2010 15:23:54 +0000 (11:23 -0400)] 
trying to migrate reusable from functinos from testing client into Hoopl itself

9 years agoconvert testing directory to use the new monad story
Norman Ramsey [Tue, 4 May 2010 15:23:19 +0000 (11:23 -0400)] 
convert testing directory to use the new monad story

9 years agoignore .hc files in testing directory
Norman Ramsey [Tue, 4 May 2010 15:22:23 +0000 (11:22 -0400)] 
ignore .hc files in testing directory

9 years agoExported ability to create new join functions (not just new lattices) from Pointed.hs
Norman Ramsey [Tue, 4 May 2010 15:21:35 +0000 (11:21 -0400)] 
Exported ability to create new join functions (not just new lattices) from Pointed.hs

9 years agoExtended Dominators module with auxiliary function 'immediateDominators'
Norman Ramsey [Tue, 4 May 2010 15:21:00 +0000 (11:21 -0400)] 
Extended Dominators module with auxiliary function 'immediateDominators'

9 years agoDominator algorithm without a newtype (for demonstration purposes)
Norman Ramsey [Tue, 4 May 2010 15:20:30 +0000 (11:20 -0400)] 
Dominator algorithm without a newtype (for demonstration purposes)

9 years agoRename methods of IsSet and IsMap.
Milan Straka [Mon, 3 May 2010 18:44:08 +0000 (19:44 +0100)] 
Rename methods of IsSet and IsMap.

Use prefix instead of suffix, ie. setUnion, setElems etc.
Also we have now
  type ElemOf set
and
  type KeyOf map

9 years agoMaking AGraph not depending on the monad type.
Milan Straka [Mon, 3 May 2010 17:01:58 +0000 (18:01 +0100)] 
Making AGraph not depending on the monad type.

The AGraph is now
  newtype AGraph n e x =
    A { graphOfAGraph :: forall m. UniqueMonad m =>
                         m (Graph n e x)
      }

Types of some functions (addBlocks, mkIfThenElse, mkWhileDo, ...)
got nicer.

The FwdRes and BwdRes now contain the replacement Graph in
a monad, instead of carrying an AGraph.

9 years agoTemporarily exporting getFuel and setFuel for GHC.
Milan Straka [Mon, 3 May 2010 16:56:51 +0000 (17:56 +0100)] 
Temporarily exporting getFuel and setFuel for GHC.

It should become exported for all clients in the future.

9 years agoRename HooplMonad to UniqueMonad.
Milan Straka [Mon, 3 May 2010 16:01:03 +0000 (17:01 +0100)] 
Rename HooplMonad to UniqueMonad.

It is more descriptive name and also consistent with FuelMonad.

9 years agoRenamed getLabel to freshLabel.
Milan Straka [Sun, 2 May 2010 17:25:00 +0000 (18:25 +0100)] 
Renamed getLabel to freshLabel.

That seems consistent with freshUnique.

9 years agoAbstracting collections of Uniques and Labels.
Milan Straka [Sun, 2 May 2010 17:13:21 +0000 (18:13 +0100)] 
Abstracting collections of Uniques and Labels.

Sets and Maps of Uniques and Labels are instances of classes
IsSet and IsMap defined in Compiler.Hoopl.Collections.
Also the representation of Labels has changed.

9 years agoMerge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight
Joao Dias [Fri, 30 Apr 2010 21:38:31 +0000 (17:38 -0400)] 
Merge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight

9 years agoUpdated testing client to provide and use monad.
Joao Dias [Fri, 30 Apr 2010 21:38:19 +0000 (17:38 -0400)] 
Updated testing client to provide and use monad.

9 years agoMerge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight
Norman Ramsey [Fri, 30 Apr 2010 21:10:23 +0000 (17:10 -0400)] 
Merge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight

Conflicts:

src/Compiler/Hoopl/XUtil.hs

conflicts on export list

9 years agoCompiler.Hoopl.Pointed can no longer be imported by name.
Norman Ramsey [Fri, 30 Apr 2010 21:09:13 +0000 (17:09 -0400)] 
Compiler.Hoopl.Pointed can no longer be imported by name.

9 years agoIn the new regime, Dominator now exports a FwdPass good in any monad.
Norman Ramsey [Fri, 30 Apr 2010 21:08:50 +0000 (17:08 -0400)] 
In the new regime, Dominator now exports a FwdPass good in any monad.

9 years agowork around bug in Haddock (no doco for GADT constructors)
Norman Ramsey [Fri, 30 Apr 2010 21:08:15 +0000 (17:08 -0400)] 
work around bug in Haddock (no doco for GADT constructors)

9 years agofix broken pattern match (missing cases)
Norman Ramsey [Fri, 30 Apr 2010 21:07:58 +0000 (17:07 -0400)] 
fix broken pattern match (missing cases)

9 years agoprovide convenience functions for analyzing graphs open at the entry.
Norman Ramsey [Fri, 30 Apr 2010 21:07:41 +0000 (17:07 -0400)] 
provide convenience functions for analyzing graphs open at the entry.

9 years agosignpost internal-only identifiers loud and clear
Norman Ramsey [Fri, 30 Apr 2010 21:07:20 +0000 (17:07 -0400)] 
signpost internal-only identifiers loud and clear

9 years agoexport SimpleFuelMonad for simple clients' use
Norman Ramsey [Fri, 30 Apr 2010 21:06:48 +0000 (17:06 -0400)] 
export SimpleFuelMonad for simple clients' use

9 years agoALWAYS warn of incomplete pattern matches.
Norman Ramsey [Fri, 30 Apr 2010 21:06:15 +0000 (17:06 -0400)] 
ALWAYS warn of incomplete pattern matches.

9 years agochange where Unique is exported (for saner Haddock documentation)
Norman Ramsey [Fri, 30 Apr 2010 21:05:34 +0000 (17:05 -0400)] 
change where Unique is exported (for saner Haddock documentation)

9 years agoMerge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight
Joao Dias [Fri, 30 Apr 2010 20:46:37 +0000 (16:46 -0400)] 
Merge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight

9 years agoAdapting test client to abstract body.
Joao Dias [Fri, 30 Apr 2010 20:46:14 +0000 (16:46 -0400)] 
Adapting test client to abstract body.

Lacking freshLabel, the code is still broken, but now I can fix it by adding a monad after pulling the latest changes.

9 years agoAdded function to lookup a block in a graph.
Joao Dias [Fri, 30 Apr 2010 20:45:17 +0000 (16:45 -0400)] 
Added function to lookup a block in a graph.
New type defined for return value b/c we might get back different types of blocks depending on the graph's shape.

9 years agoComment for EitherCO type.
Joao Dias [Fri, 30 Apr 2010 20:44:25 +0000 (16:44 -0400)] 
Comment for EitherCO type.

9 years agoExporting Body type (but not constructors).
Joao Dias [Fri, 30 Apr 2010 20:44:14 +0000 (16:44 -0400)] 
Exporting Body type (but not constructors).

9 years agocomments
Norman Ramsey [Fri, 30 Apr 2010 19:39:53 +0000 (15:39 -0400)] 
comments

9 years agoAdded some technology by which clients could create instances of HooplMonad.
Norman Ramsey [Fri, 30 Apr 2010 19:39:12 +0000 (15:39 -0400)] 
Added some technology by which clients could create instances of HooplMonad.

9 years agoMerge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight
Norman Ramsey [Fri, 30 Apr 2010 19:29:44 +0000 (15:29 -0400)] 
Merge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight

Conflicts:

src/Compiler/Hoopl/Dataflow.hs
src/Compiler/Hoopl/Fuel.hs
src/Compiler/Hoopl/MkGraph.hs
src/hoopl.cabal

expunged 'allUniques'; need to provide a simple instance of HooplMonad.

9 years agothe Great Monad Generalization. An extra type parameter (for the client's monad)...
Norman Ramsey [Fri, 30 Apr 2010 19:03:49 +0000 (15:03 -0400)] 
the Great Monad Generalization. An extra type parameter (for the client's monad) emerges everywhere.

9 years agoMake body abstract for library clients.
Joao Dias [Fri, 30 Apr 2010 18:59:52 +0000 (14:59 -0400)] 
Make body abstract for library clients.

9 years agoBody of graph converted to a map
Joao Dias [Fri, 30 Apr 2010 18:03:51 +0000 (14:03 -0400)] 
Body of graph converted to a map

9 years agoFirst part of Uniques and Labels.
Milan Straka [Fri, 30 Apr 2010 09:47:04 +0000 (10:47 +0100)] 
First part of Uniques and Labels.

Adding Unique module, changing FuelMonad to work with Unique,
withFresh works with both Unique and Label.

The representation of Label and the Maps and Sets will change
shortly.

9 years agotried to fix Haddock errors; gave up as hopeless.
Norman Ramsey [Thu, 29 Apr 2010 23:06:42 +0000 (19:06 -0400)] 
tried to fix Haddock errors; gave up as hopeless.

9 years agoMerge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight
Norman Ramsey [Thu, 29 Apr 2010 23:01:43 +0000 (19:01 -0400)] 
Merge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight

9 years agoFold code for the forward case, nested.
Norman Ramsey [Thu, 29 Apr 2010 23:01:29 +0000 (19:01 -0400)] 
Fold code for the forward case, nested.

A bit ugly---not as nice as I would like!

9 years agoMerge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight
Joao Dias [Thu, 29 Apr 2010 22:10:16 +0000 (18:10 -0400)] 
Merge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight

9 years agoUpdating testing client to match the many recent changes.
Joao Dias [Thu, 29 Apr 2010 22:09:58 +0000 (18:09 -0400)] 
Updating testing client to match the many recent changes.
Not quite done, but I have to run for the evening.

9 years agoAdded block-folding functions. Code for backward and forward is almost identical...
Joao Dias [Thu, 29 Apr 2010 22:09:22 +0000 (18:09 -0400)] 
Added block-folding functions. Code for backward and forward is almost identical, but type is not; not sure how to achieve better code sharing there....

9 years agoAdded EitherCO type family to Hoopl. Maybe it should be a GADT instead?
Joao Dias [Thu, 29 Apr 2010 22:08:46 +0000 (18:08 -0400)] 
Added EitherCO type family to Hoopl. Maybe it should be a GADT instead?

9 years agoadded Haddock documentation
Norman Ramsey [Thu, 29 Apr 2010 21:57:53 +0000 (17:57 -0400)] 
added Haddock documentation

9 years agohid block constructors
Norman Ramsey [Thu, 29 Apr 2010 21:57:41 +0000 (17:57 -0400)] 
hid block constructors

9 years agoadded mkfile in src/Compiler
Norman Ramsey [Thu, 29 Apr 2010 21:48:26 +0000 (17:48 -0400)] 
added mkfile in src/Compiler

9 years agorenamed { DataflowNest -> Dataflow, Dataflow -> OldDataflow }
Norman Ramsey [Thu, 29 Apr 2010 21:48:18 +0000 (17:48 -0400)] 
renamed { DataflowNest -> Dataflow, Dataflow -> OldDataflow }

9 years agorefactored backward data flow. No testing.
Norman Ramsey [Thu, 29 Apr 2010 21:43:47 +0000 (17:43 -0400)] 
refactored backward data flow.  No testing.

9 years agoMissing a useful type in the combinator interface.
Joao Dias [Thu, 29 Apr 2010 20:52:01 +0000 (16:52 -0400)] 
Missing a useful type in the combinator interface.

Added fold fwd and bwd across blocks.

9 years agoAdded product combinators for forward and backward analyses.
Joao Dias [Thu, 29 Apr 2010 20:24:30 +0000 (16:24 -0400)] 
Added product combinators for forward and backward analyses.

9 years agoRefactored the entry plumbing again. Results consistent but less concise.
Norman Ramsey [Thu, 29 Apr 2010 00:27:46 +0000 (20:27 -0400)] 
Refactored the entry plumbing again.  Results consistent but less concise.

Type signatures for nested functions are not too thrilling...

9 years agoignore
Norman Ramsey [Wed, 28 Apr 2010 22:33:41 +0000 (18:33 -0400)] 
ignore

9 years agoRefactored story about entry points to use more static typing (fwd only)
Norman Ramsey [Wed, 28 Apr 2010 22:33:35 +0000 (18:33 -0400)] 
Refactored story about entry points to use more static typing (fwd only)

9 years agoType variable for facts should be called 'f' not 'a'.
Norman Ramsey [Wed, 28 Apr 2010 22:32:44 +0000 (18:32 -0400)] 
Type variable for facts should be called 'f' not 'a'.

9 years agoAdded commutative diagram.
Norman Ramsey [Wed, 28 Apr 2010 22:32:26 +0000 (18:32 -0400)] 
Added commutative diagram.

9 years agoadded results of dominator analysis.
Norman Ramsey [Wed, 28 Apr 2010 22:32:06 +0000 (18:32 -0400)] 
added results of dominator analysis.

9 years agoAdded a somewhat misnamed four-page introduction to Hoopl.
Norman Ramsey [Wed, 28 Apr 2010 03:17:00 +0000 (23:17 -0400)] 
Added a somewhat misnamed four-page introduction to Hoopl.

9 years agoAdded MaybeC type (although it is not yet used anywhere)
Norman Ramsey [Tue, 27 Apr 2010 23:50:01 +0000 (19:50 -0400)] 
Added MaybeC type (although it is not yet used anywhere)

9 years agoSwitched to DataflowNest; reordered Haddock docs (nothing tested)
Norman Ramsey [Tue, 27 Apr 2010 23:49:26 +0000 (19:49 -0400)] 
Switched to DataflowNest; reordered Haddock docs (nothing tested)

Migrated backwards code to nested source.

9 years agoRefactoring forward analyses to eliminate type synonyms and move alternative interfac...
Norman Ramsey [Tue, 27 Apr 2010 19:30:12 +0000 (15:30 -0400)] 
Refactoring forward analyses to eliminate type synonyms and move alternative interfaces to XUtil.hs

9 years agoAdded dataflow module DataflowNest with nested functions---it's a thing of beauty.
Norman Ramsey [Tue, 27 Apr 2010 00:28:07 +0000 (20:28 -0400)] 
Added dataflow module DataflowNest with nested functions---it's a thing of beauty.

9 years agoMerge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight
Norman Ramsey [Mon, 26 Apr 2010 20:58:04 +0000 (16:58 -0400)] 
Merge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight

9 years agoadded notes on an evening's hacking
Norman Ramsey [Mon, 26 Apr 2010 20:57:54 +0000 (16:57 -0400)] 
added notes on an evening's hacking

9 years agoSatisfying the type checker; generic liveness now compiles
Joao Dias [Mon, 26 Apr 2010 20:46:41 +0000 (16:46 -0400)] 
Satisfying the type checker; generic liveness now compiles

9 years agoGeneralized the types of 'ar[fb]Cat', and simplified 'ar[fb]Graph' aggressively
Norman Ramsey [Sat, 24 Apr 2010 04:08:06 +0000 (00:08 -0400)] 
Generalized the types of 'ar[fb]Cat', and simplified 'ar[fb]Graph' aggressively

Simplifications include:

  - All monadic do notation is eliminated---everything is
    done with arfCat and arbCat

  - No facts are mentioned---everything is done through composition
    of fact transformers.

9 years agoIntroduced type synonyms ARFX, ARFX', ARBX, ARBX'; functions arfx & arbx
Norman Ramsey [Sat, 24 Apr 2010 04:04:43 +0000 (00:04 -0400)] 
Introduced type synonyms ARFX, ARFX', ARBX, ARBX'; functions arfx & arbx

These "extended" names describe fact transformers
that take 'Fact e f' as input or produce 'Fact e f'
as output, just as ARF, ARF', ARB, and ARB' describe
transformers that deal only in a single fact.

They are used two ways:

  - To describe the ar[fb]Graph
  - To lift ar[fb]Block from ARF to ARFX

The new functions 'arfx' and 'arbx' do the lifting,
and they are also a handy place to hang John's
'joinInFacts' function.

9 years agoDataflow analysis using fold style instead of concatMap style.
Norman Ramsey [Sat, 24 Apr 2010 03:08:40 +0000 (23:08 -0400)] 
Dataflow analysis using fold style instead of concatMap style.

9 years agoFirst cut at generic liveness analysis (does not build).
Norman Ramsey [Fri, 23 Apr 2010 23:35:12 +0000 (19:35 -0400)] 
First cut at generic liveness analysis (does not build).

I cannot get this code to type check; it keeps insisting
that each use of a value of type 'VarSet n' use a *different* 'n',
even though there are scoped type variables trying to constrain
these values.

9 years agoAdded utility functions 'distributedFactBwd' and 'successorFacts' to help backward...
Norman Ramsey [Fri, 23 Apr 2010 23:33:15 +0000 (19:33 -0400)] 
Added utility functions 'distributedFactBwd' and 'successorFacts' to help backward analyses

9 years agoUse 'WithTop' synonym where appropriate in Pointed.hs
Norman Ramsey [Fri, 23 Apr 2010 23:32:23 +0000 (19:32 -0400)] 
Use 'WithTop' synonym where appropriate in Pointed.hs

9 years agotidied combinators
Norman Ramsey [Fri, 23 Apr 2010 23:30:58 +0000 (19:30 -0400)] 
tidied combinators

9 years agoCleanup on combinators.
Joao Dias [Fri, 23 Apr 2010 22:00:13 +0000 (18:00 -0400)] 
Cleanup on combinators.

Part of productFwd implemented.

9 years agoCleaned up the observers for rewrites and transfers.
Joao Dias [Fri, 23 Apr 2010 21:59:40 +0000 (17:59 -0400)] 
Cleaned up the observers for rewrites and transfers.

9 years agoAdded map functions on factBases.
Joao Dias [Fri, 23 Apr 2010 21:59:23 +0000 (17:59 -0400)] 
Added map functions on factBases.

9 years agoexperimenting with terser Dataflow and Combinators
Norman Ramsey [Fri, 23 Apr 2010 21:00:24 +0000 (17:00 -0400)] 
experimenting with terser Dataflow and Combinators

9 years agopull out and expose fold function over blocks
Norman Ramsey [Fri, 23 Apr 2010 20:35:41 +0000 (16:35 -0400)] 
pull out and expose fold function over blocks

9 years agoUsed some liberal type synonyms to make type signatures a little easier to read.
Norman Ramsey [Fri, 23 Apr 2010 20:35:26 +0000 (16:35 -0400)] 
Used some liberal type synonyms to make type signatures a little easier to read.

9 years agoMerge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight
Joao Dias [Fri, 23 Apr 2010 20:00:09 +0000 (16:00 -0400)] 
Merge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight