1. 11 May, 2000 2 commits
    • andy's avatar
      [project @ 2000-05-11 07:20:36 by andy] · 189393d1
      andy authored
      Wibble...
      
      The corrected example is as follows:
      
      myS :: (forall t t1 t2. (t -> t2 -> t1) -> (t -> t2) -> t -> t1)
      [NoDiscard] __AL 3
      myS
        = \ @ t @ t1 @ t2 f :: (t -> t2 -> t1) g :: (t -> t2) x :: t -> f x (g x)
      
      public class myS implements Code {
        public Object ENTER () {
          VM.COLLECT(3, this);
          final Object f = VM.POP();
          final Object g = VM.POP();
          final Object x = VM.POP();
          VM.PUSH(x);
          VM.PUSH(new Thunk(new myS$1(g, x)));
          return f;
        }
      }
      class myS$1 extends Code {
        final Object g;
        final Object x;
        public myS$1 (Object _g_, Object _x_) {
          g = _g_;
          x = _x_;
        }
        public Object ENTER () {
          VM.PUSH(x);
          return g;
        }
      }
      189393d1
    • andy's avatar
      [project @ 2000-05-11 07:10:11 by andy] · 53a7fa7d
      andy authored
      First attempt at at class lifter for the GHC GOO backend.
      
      This included a cleanup of the Java/GOO abstract syntax
        - Name is now a string, not a list of string
        - Type is used instead of name in some places
            (for example, with new)
        - other minor tweeks.
      
      Andy
      
      ---------
      Example for myS f g x = f x (g x)
      
      public class myS implements Code {
        public Object ENTER () {
          VM.COLLECT(3, this);
          final Object f = VM.POP();
          final Object g = VM.POP();
          final Object x = VM.POP();
          VM.PUSH(x);
          VM.PUSH(new Thunk(new Code(g, x)));
          return f;
        }
      }
      class myS$1 {
        final Object g;
        final Object x;
        public myS$1 (Object _g_, Object _x_) {
          g = _g_;
          x = _x_;
        }
        public Object ENTER () {
          VM.PUSH(x);
          return g;
        }
      }
      53a7fa7d
  2. 10 May, 2000 22 commits
  3. 09 May, 2000 13 commits
  4. 08 May, 2000 3 commits
    • panne's avatar
      [project @ 2000-05-08 17:24:10 by panne] · 65fafba5
      panne authored
      Committing the Makefile, too, might be a good idea: Removed ctypes.
      65fafba5
    • panne's avatar
      [project @ 2000-05-08 17:18:02 by panne] · 891e78b3
      panne authored
      * Changed a backslash at EOL to the word "backslash". Using cpp in
        conjunction with Haskell is a real hack...
      
      * Renamed the module Ctypes to Ctype, because CTypes is (soon) a
        module from package lang. I'm not sure if two files differing only
        in their case work under "the" OS. Just to be sure...
      891e78b3
    • simonmar's avatar
      [project @ 2000-05-08 15:57:01 by simonmar] · 03b0ad10
      simonmar authored
      Detect threads that are blocked on themselves (i.e. black holed), and
      raise NonTermination exceptions.  We only do this when the system is
      deadlocked, so as not to introduce unnecessary overhead in the normal
      case.
      03b0ad10