[Haskell] Re: Typing unification algorithm for parameterized types using GADTs?

2008-02-06 Thread oleg
Ki Yung Ahn posed a problem of first-order syntactic unification over GADTs. There posted code seem to exhibit two problems: one deals with kind equality, and the other with unification. Let's start with the latter. You have chosen to represent substitutions as functions from terms to terms. That

Re: [Haskell] Typing unification algorithm for parameterized types using GADTs?

2008-02-06 Thread Dan Licata
Hi Ki Yung, I think the problem starts even on the left of the TyA case. Let's turn on -XScopedTypeVariables and put in some type annotations: unify :: (Show v,Ord v) => Ty v k -> Ty v k -> Ty v k -> Ty v k unify (TyA (t1 :: Ty v (k2 :~> k)) (t2 :: Ty v k2)) (TyA (t1' :: Ty v (k2' :~> k))

[Haskell] ANNOUNCE: multiset 0.1

2008-02-06 Thread Twan van Laarhoven
Hello, I have just uploaded version 0.1 of the multiset library to hackage. This package provides Data.MultiSet and Data.IntMultiSet modules. A multiset or bag is like a set, but it can contain multiple copies of the same element. The library is already pretty much finished, maybe I should ha

[Haskell] Typing unification algorithm for parameterized types using GADTs?

2008-02-06 Thread Ahn, Ki Yung
I was writing a type inference algorithm for let-polymorphic type system with parametrized types. (That is, the type system as type constructors such as `Maybe'.) Things work out nicely except for one equation in the unification function. I will illustrate my problem with the definitions and exam

[Haskell] ANN: hpodder 1.1.0

2008-02-06 Thread John Goerzen
I'm pleased to announce version 1.1.0 of hpodder, the podcast downloader. Get it from http://software.complete.org/hpodder The new features in hpodder 1.1.0 include: * New support for configurable renaming of incoming episodes to standard extensions. The previous feature was hard-coded fo

Re: [Haskell] Extensible records: Static duck typing

2008-02-06 Thread Barney Hilken
2. List the possible features that “records” might mean. For example: · Anonymous records as a type. So {x::Int, y::Bool} is a type. (In Haskell as it stands, records are always associated with a named data type. · Polymorphic field access. r.x accesses a field in any

Re: [Haskell] Extensible records: Static duck typing

2008-02-06 Thread Sebastian Sylvan
On Feb 6, 2008 12:19 PM, Simon Peyton-Jones <[EMAIL PROTECTED]> wrote: >So to clarify that statement. Honestly the number one problem I have > with the current records system is that labels share the same namespace. > This makes interfacing with any C library using structs quite painful. This

RE: [Haskell] Extensible records: Static duck typing

2008-02-06 Thread Simon Peyton-Jones
So to clarify that statement. Honestly the number one problem I have with the current records system is that labels share the same namespace. This makes interfacing with any C library using structs quite painful. This is why I say that I don't really care which gets implemented. The current syst

Re: [Haskell] Extensible records: Static duck typing

2008-02-06 Thread Sebastian Sylvan
On Feb 6, 2008 11:33 AM, Simon Peyton-Jones <[EMAIL PROTECTED]> wrote: > > > This sort of disagreement means that nothing gets done. After my > experience with the wiki page, I don't believe anything will get done > until one of the core ghc developers makes some arbitrary decisions > and implemen

RE: [Haskell] Extensible records: Static duck typing

2008-02-06 Thread Simon Peyton-Jones
This sort of disagreement means that nothing gets done. After my experience with the wiki page, I don't believe anything will get done until one of the core ghc developers makes some arbitrary decisions and implements whatever they want to, which will then eventually become part of the standard by