Commits on Nov 25, 2011
  1. Create a new branch for strictness analysis

    gverburg committed Nov 25, 2011
Commits on Nov 24, 2011
Commits on Nov 21, 2011
  1. Ubuntu 11.10 64bit gcc internal compiler stupidity (sorry folks), unp…

    …redictable bug which disappears when observing with printf, fixed with type change of counter to int. Don't ask any why please as I do not know the why...
    atzedijkstra committed Nov 21, 2011
Commits on Nov 18, 2011
Commits on Nov 4, 2011
  1. fixed broken install of generated .ag AST files corresponding to inst…

    …alled HS level package of the compiler
    atzedijkstra committed Nov 4, 2011
Commits on Nov 1, 2011
  1. hcar

    atzedijkstra committed Nov 1, 2011
Commits on Sep 22, 2011
Commits on Sep 14, 2011
  1. Removing trailing newline

    norm2782 committed Sep 14, 2011
Commits on Sep 13, 2011
  1. Removal of external libraries from repo (Boehm GC, GMP) and still lin…

    …gering dependencies (Boehm GC).
    Warning: make clean && ./configure
    atzedijkstra committed Sep 13, 2011
Commits on Sep 6, 2011
  1. Work on frontend stuff for fusion, in variant 93:

    - Propagation of the necessary info uptil Core, where the info is made available in map, separate from the AST.
    Example, in which 'fuse f' is intended to switch on fusion for the
    function 'f', 'convert g,h' signals a build/unbuild pair (this is likely
    to change depending on how implementation further proceeds):
    {-# LANGUAGE Fusion #-}
    {-# LANGUAGE NoGenericDeriving #-}
    module Fuse1 where
    f x = x
    fuse f
    data X a = X a
    data Y a = Y a
    h :: X a -> Y a
    h (X a) = Y a
    g :: Y a -> X a
    g (Y a) = X a
    convert g, h
    main = return ()
    atzedijkstra committed Sep 6, 2011
Commits on Aug 31, 2011
  1. Work on frontend stuff for fusion, for now, as variant 93:

    - Pragma 'LANGUAGE Fusion' for turning on the syntax
    - fuse notation, but this is likely to change anyway, so doc is omitted here
    WARNING: make clean, ./configure etc
    atzedijkstra committed Aug 31, 2011
Commits on Aug 25, 2011
  1. Made UHC compileable with GHC 7.2. That was a time consuming process

    but somebody had to do it...
    Various source files were importing
    hierarchical modules (System.IO, Data.Maybe, Data.Char, etc.) and
    depricated non-hierarchical modules (IO, Maybe, Char, etc.) inconsistently.
    I've replaced each the non-hierarchical import with a sequence of
    hierarchical imports.
    As a consequence, the dependency on the haskell98 package is not
    needed anymore. Rerun autoconf, configure and make clean to ensure
    that the generated cabal files do not include this dependency
    anymore. This will force you to use the hierarchical modules.
    Also, the sources can now be build with GHC 7.2 for which at the
    moment the haskell98 package is unavailable.
    amiddelk committed Aug 25, 2011
Commits on Aug 11, 2011
  1. Commented out some types of local attributes that

    are no longer correct.
    Atze does not notice that some of the type sigantures
    have become incorrect with respect to code changes
    because signatures for
    local attributes are not a requirement anymore
    (for a while now) and the code generation with case
    statements doesn't (always) put the type signatures in
    the source code since this would require the use of
    the pattern signatures extension.
    amiddelk committed Aug 11, 2011
Commits on Jul 21, 2011
  1. Fix type error ruler2

    Avoid generating infinite trees in substitutions
    jbransen committed Jul 21, 2011
  2. Change Haskell module headers to AG module headers

    Let shuffle generate AG module headers by default
    jbransen committed Jul 21, 2011
Commits on Jul 15, 2011
  1. Work on inclusion of types in Core. Toplevel types are generated, nested

    inside lambda-expressions not. Types still also contain predicates
    instead of their corresponding witness type.
    atzedijkstra committed Jul 15, 2011
Commits on Jul 12, 2011
  1. Work on inclusion of types in Core. The design is now such that top

    level types are propagated into Core, and at some stage erased &
    extracted. This info is then made available globally via .hi files and
    can be queried. This allows Core types to reflect better the generated
    code, e.g. type synonyms are erased, or when additional transformations
    on Core might be required. Initial transformations must be careful with
    maintaining consistency between types and code, later transformations
    can ignore types and thus introduce inconsistencies.
    This commit provides a first implementation in progress, for plain
    simple definitions, and only tested as such.
    TODO: proper generation of types for classes, instances, datatype field
    extraction, generics, etc etc
    atzedijkstra committed Jul 12, 2011
Commits on May 10, 2011
  1. - Reorganization of variant numbering. Most notable change is the mod…

    …ule system now introduced at variant 50, previously 20.
    - Work on improving error messages for class predicate related errors, in particular providing more traceback info (unfinished).
    - Builds with current Haskell platform (in particular ghc 7.0.3)
    WARNING: make clean, re- ./configure
    atzedijkstra committed May 10, 2011
Commits on Apr 21, 2011
  1. quick fix for ghc7

    atzedijkstra committed Apr 21, 2011
Commits on Apr 1, 2011
  1. - Reorganization of variant numbering. Most notable change is the mod…

    …ule system now introduced at variant 50, previously 20.
    atzedijkstra committed Apr 1, 2011
Commits on Mar 18, 2011
  1. temporary fix for debugging variant 99 which requires more type abstr…

    …action for type derivation tree generation, which would require more global changes but is currently not used
    atzedijkstra committed Mar 18, 2011
  2. - Work on abstraction over substitution mechanism (continuation of a …

    …previous code cleanup, partially done).
    atzedijkstra committed Mar 18, 2011
Commits on Mar 10, 2011
Commits on Feb 22, 2011
  1. Cleanup:

    - refactorization of Substitutable class (for updating variables (i.e.
    type variables) in structures) into 2 smaller classes for separately
    dealing with updates and extracting free variables. This makes the
    classes simpler, thus avoiding complications with functional
    dependencies, allowing better reuse, and allowing more flexibility in
    the implementation of variable mappings.
    - removal of redundant variant of the above, specifically there for CHR
    (Constraint Handling Rules), with the now abandoned idea of being able
    to extract the CHR part as a separate library. Can still be done, but
    now would require the above mechanism also to be extracted.
    atzedijkstra committed Feb 22, 2011
Commits on Jan 20, 2011
  1. fix for jscript backend bug where internal generation triggered by us…

    …e of parenthesis cause incorrect code generation
    atzedijkstra committed Jan 20, 2011
Commits on Dec 23, 2010
Commits on Dec 17, 2010
  1. - fix for erroneous Javascript generation of body of modules, causing…

    … some browsers to fail on this (also) faulty code.
    atzedijkstra committed Dec 17, 2010
Commits on Dec 15, 2010
  1. - Fix of jscript backend fieldnames with non-Javascript names, now co…

    …rrectly adapted
    - Work (unfinished) on completion of FFI for jscript backend
    atzedijkstra committed Dec 15, 2010
Commits on Dec 4, 2010
  1. - Fix of incorrect lexical scanning of operator --> (was interpreted …

    …as comment)
    - Fix of record construction related type error (rather silly swap of arguments to subsumption)
    atzedijkstra committed Dec 4, 2010
Commits on Dec 3, 2010
  1. - Added Core transformation to reorder global definitions to 'def bef…

    …ore use', required for subsequent strictness analysis. This is similar to frontend binding analysis.
    - Strictness info propagates through .hi file between modules.
    - Work on use of strictness analysis for optimization.
    - Fix for error in error reporting for type synonym expansion, introduced some time ago with change there.
    atzedijkstra committed Dec 3, 2010
  2. Improve HTML output

    norm2782 committed Dec 3, 2010