Hello,
I am sending this on behalf of Nikki Vazou, who is organizing this
year's HIW---she is looking for a volunteer to represent Haskell' on a
panel, but the haskell-prime list is restricted to only members.
Details are in her message below.
If you are interested, please respond directly to
One potential difference between the two is that the current behavior
allows the `Main` module to import `main` from another module, while the
new behavior would fail in that case.
For example, a file that has only a single line:
import SomeOtherModule(main)
This still seems like a fairly
That seems fairly reasonable to me.
-Iavor
On Tue, May 16, 2017 at 7:18 AM, Joachim Breitner
wrote:
> Hi,
>
> a very small proposal to be considered for Haskell':
>
> Currently, the report states
>
> An abbreviated form of module, consisting only of the module
Actually, I just tried to make an example of this, and GHC does not seem to
export `f`, just as the report says. So I'd say GHC is behaving correctly,
both with the exports and the warning.
On Fri, May 12, 2017 at 10:39 AM, Iavor Diatchki <iavor.diatc...@gmail.com>
wrote:
&
Hello,
actually, the bug here is that `f` is exported, as omitting the export list
is not equivalent to writing `module A` in the export list.
This is explicitly stated in Section 5.2 of the Haskell report:
"If the export list is omitted, all values, types and classes defined in
the module are
Komendantskaya University of Dundee
Henrik NilssonUniversity of Nottingham
Iavor Diatchki (chair)Galois
J. Garrett Morris University of Edinburgh
Joachim Breitner University of Pennsylvania
Juriaan Hage Utrecht University
Lennart AugustssonFacebook
Hello,
these two instances really should be rejected as they violate the FD of the
class: we can derive `TypeEq a a True` using the first instance and `TypeEq
a a False` using the second one. Unfortunately, the check that we are
using to validate FDs when `UndecidableInstances` is on, is not
Hi,
the initial plan was that `GHC.TypeLits` should provide just the basic
functionality, and later other libraries would be build to provide more
convenient functions for specific applications. I don't know of any such
convenience libraries, so at present, people just import `GHC.TypeLits`
Komendantskaya University of Dundee
Henrik NilssonUniversity of Nottingham
Iavor Diatchki (chair)Galois
J. Garrett Morris University of Edinburgh
Joachim Breitner University of Pennsylvania
Juriaan Hage Utrecht University
Lennart Augustsson
will
give
the program committee a chance to provide feedback and help draw out the key
ideas.
Program Committee
=
Adam Gundry Well-Typed
Ekaterina Komendantskaya University of Dundee
Henrik NilssonUniversity of Nottingham
Iavor Diatchki (chair)Galois
Hi, I think Herbert added me to the correct group, thanks!
On Tue, Oct 18, 2016 at 10:24 AM, David Luposchainsky via Haskell-prime <
haskell-prime@haskell.org> wrote:
> On 12.10.2016 19:09, Iavor Diatchki wrote:
> > could someone with access fix it, maybe David
>
> I’m j
Hello,
I was just trying to update the `Haskel 2020` project as it is not in sync
with the actual pull-requests, bit I can't see a way to do it. Am I
missing something, or do I simply not have the required permissions?
If this is indeed a permissions issue, could someone with access fix it
Hello,
it seems that there isn't much controversy over the TupleSections propsal,
so I'd like to move the we accept it for the next language standard.
Does anyone have any objections?
-Iavor
___
Haskell-prime mailing list
Haskell-prime@haskell.org
Hello,
Now that we've started with a few proposal, I am realizing that I have no
idea how to proceed from here. In particular:
1. How would I request I proposal to be rejected
2. How would I request that a proposal be accepted
Ideas?
-Iavor
___
-prime <
haskell-prime@haskell.org> wrote:
> On 04.10.2016 01:27, Iavor Diatchki wrote:
> > During our Haskell Prime lunch meeting at ICFP, I promised to create a
> detailed
> > step-by-step guide for creating Haskell Prime proposals on GitHub. The
> > instr
Hello,
During our Haskell Prime lunch meeting at ICFP, I promised to create a
detailed step-by-step guide for creating Haskell Prime proposals on
GitHub. The instructions are now available here:
https://github.com/yav/rfcs/blob/instructions/step-by-step-instructions.md
Please have a look and
Hello,
I just got back to the US, and have started uploading videos in earnest.
Hopefully, I'll get to the Haskell Symposium pretty soon, and the whole
discussion was recorded so that everyone can listen to it. I started
taking notes at the beginning of the discussion, but then got distracted,
Hello,
when you parse the CSV fully, you end up creating a lot of small bytestring
objects, and each of these adds some overhead. The vectors themselves add
up some additional overhead. All of this adds up when you have as many
fields as you do. An alternative would be to use a different
Hello Ben,
I posted this when you originally asked for feed-back, but perhaps it
got buried among the rest of the e-mails.
I think the proposal sounds fairly reasonable, but it is hard to say how
well it will work in practice until we try it, and we should be ready to
change it if needs be.
Hello Manuel,
this is exactly the change that is being discussed: currently a `case`
expression is not considered to be atomic (`aexp`), which is why it can't
appear in a record update without parens.
The proposed change, as I understand it, is to make `case` (and `do`) into
atomic expressions
Hello,
I think this sounds fairly reasonable, but it is hard to say how well it
will work in practice until we try it.
Some clarifying questions on the intended process:
1. After submitting the initial merge request, is the person making the
proposal to wait for any kind of acknowledgment,
Hello,
while we are voting here, I kind of like this proposal, so +1 for me.
I understand that some of the examples look strange to Haskell old-timers
but, as Joachim points out, the behavior is very consistent. Besides, the
"Less Obvious Examples" were selected so that they are, well, less
On Sat, May 7, 2016 at 1:44 AM, Jon Fairbairn
wrote:
>
>
> The one this violates is “never make language design decisions
> to work around deficiencies in tools” The problem is that diff
> does its work in ignorance of the syntax and consequently
> produces poor
I disagree that we should be standardizing language features that have not
been implemented.
I think having an implementation is important because:
1. the act of implementing a feature forces you to work out details that
you may not have thought of ahead of time. For example, for a small
Hello,
what is the state with the semantic specification of GADTs? I am wondering
if they fit in the usual CPO-style semantics for Haskell, or do we need
some more exotic mathematical structure to give semantics to the language.
-Iavor
On Sun, May 8, 2016 at 8:36 AM, Carter Schonwald
I think that biographical profiling is quite nice! I wouldn't say that it
is *more* useful than other modes of profiling, but it is certainly
complementary, and helps give you an idea of what's going on.
So I'd very much vote for fixing it rather than removing it.
-Iavor
On Fri, May 6, 2016 at
Hello,
I think it'd be great to get started by specifying a few simple extensions,
such as the ones Lennart listed. Even though they are very well
understood, and we have text about them in the GHC manual, we'd still have
to think of how to integrate their descriptions with the rest of the
Hi,
that's an interesting example. To me this looks like a bug in GHC,
although the issue is certainly a bit subtle.
The reason I think it is a bug is that, if we name all the type functions
in the signature and apply improvements using the fact that we are working
with functions, then we get:
Hello,
actually type-level integers are easier to work with than type-level
naturals (e.g., one can cancel things by subtracting at will). I agree
that ideally we want to have both integers and naturals (probably as
separate kinds). I just don't know what notation to use to distinguish the
. Unfortunately I'm not sure we can easily unflatten *some*
constraints, given the way unflattening will work in the new
getInertUnsolved. One option might be for tcPluginSolve to be called in
both places, with a boolean parameter.
Cheers,
Adam
On 18/10/14 23:33, Iavor Diatchki wrote:
Hello
constraint; these are removed from the inert set, and re-added as
insoluable.
Happy hacking,
-Iavor
On Fri, Oct 17, 2014 at 3:36 PM, Iavor Diatchki iavor.diatc...@gmail.com
wrote:
Hello,
On Thu, Oct 16, 2014 at 3:58 AM, Adam Gundry a...@well-typed.com wrote:
One problem I've run
Hello,
On Thu, Oct 16, 2014 at 3:58 AM, Adam Gundry a...@well-typed.com wrote:
One problem I've run into is transforming the flattened CFunEqCans into
unflattened form (so the flatten-skolems don't get in the way of
AG-unification). Do you know if there is an easy way to do this, or do I
wrote:
yay :)
On Mon, Oct 6, 2014 at 2:42 PM, Iavor Diatchki iavor.diatc...@gmail.com
wrote:
Hi Adam,
I am back from vacation, and I think I should have some time to try to
implement something along these lines.
Cheers,
-Iavor
On Fri, Sep 12, 2014 at 9:41 AM, Adam Gundry a...@well
Hi Adam,
I am back from vacation, and I think I should have some time to try to
implement something along these lines.
Cheers,
-Iavor
On Fri, Sep 12, 2014 at 9:41 AM, Adam Gundry a...@well-typed.com wrote:
Hi folks,
Those of you at HIW last week might have been subjected to my lightning
Hello,
I am pleased to announce a new version of `graphmod`---a program that helps
you visualize the import dependencies between the modules in your Haskell
programs.
The new feature in version 1.2.4 is support for pruning the dependency
graph, which is enabled with the flag -p or --prune-edges.
Hello,
What semantics are you using for recursive modules? As far as I see, if
you take a least fixed point semantics (e.g. as described in A Formal
Specification for the Haskell 98 Module System,
http://yav.github.io/publications/modules98.pdf ) this program is incorrect
as the module does not
Hello,
this is clearly a bug in GHC: where `B` and `C` are imported, there should
have been an error, saying that there is a duplicate instance of `Foo Int`.
If there is no ticket for this already, could you please add one?
-Iavor
On Mon, Aug 11, 2014 at 12:35 PM, Dan Doel
Hello,
Such a pragma sounds useful, and is very much like the fails instance
from the Instance chains paper. You may also be interested in ticket
#9334 (https://ghc.haskell.org/trac/ghc/ticket/9334), which proposes an
alternative to overlapping instances, and I just updated it to point to
#7775.
Hello,
I have no strong feelings about what words we use, but I wanted to point
out that while we are thinking of names, we may want to consider 3 (and not
just 2). Currently we have:
* OVERLAPPING: This instances may overlap existing instances
* OVERLAPPABLE: This instance may be
Hi Henning,
I see two separate issues that show in what you describe, so it might be
useful to discuss them separately:
1. The first issue is figuring out that `n + 1` is always at least 1. As
others have mentioned, GHC currently only does proofs by evaluation,
which is why it gets stuck here.
Hello,
My preference would be for the following design:
1. The default datatypes for roles are Nominal, but programmers can add
annotations to relax this.
2. Generlized newtype deriving works as follows: we can coerce a
dictionary for `C R` into `C T`, as long as we can coerce the types of all
Hello,
I talked to Simon PJ about this at ICFP, and the use case that I'm
interested in is the one where we infer an `Applicative` constraint instead
of `Monad` for things of the form:
do { x1 - e1; x2 - e2; ...; pure (f x1 x2 ...) }
as long as the `xs` do not appear in the `es`. I am
Hello,
I think that the simple type nats solver (branch type-nats-simple) is
pretty much ready for merging with HEAD. Should I go ahead and merge it in?
-Iavor
On Thu, Sep 12, 2013 at 1:18 PM, Austin Seipp aus...@well-typed.com wrote:
I think this can definitely be clarified. I'll update
Hello Austin,
On Sun, Sep 8, 2013 at 4:27 PM, Austin Seipp ase...@pobox.com wrote:
* Iavor Diatchki and SPJ are working together on the type-nats-simple
branch. I believe this will hopefully land in time. Iavor, SPJ - can
you comment here?
I think we are on track to get this done on time
Hi guys,
Yep, we know about this and, I believe, the plan is to add custom rules to
the constraint solver to solve `Typable n` constraints (where n is a
number or symbol). Just for the record, the other design choice was to
add instance `Typeable (n :: Symbol)`, but that conflicted with some
Hello,
Galois is hiring! We're looking for researchers, principal investigators,
and software engineers, including those with expertise in functional
programming, formal methods, computer security, control systems,
informatics, or networking.
For more information, take a look at
/27 Iavor Diatchki iavor.diatc...@gmail.com
Hello,
Galois is hiring! We're looking for researchers, principal
investigators, and software engineers, including those with expertise in
functional programming, formal methods, computer security, control systems,
informatics, or networking
Hello,
Galois is hiring! We're looking for researchers, principal investigators,
and software engineers, including those with expertise in functional
programming, formal methods, computer security, control systems,
informatics, or networking.
For more information, take a look at
/27 Iavor Diatchki iavor.diatc...@gmail.com
Hello,
Galois is hiring! We're looking for researchers, principal
investigators, and software engineers, including those with expertise in
functional programming, formal methods, computer security, control systems,
informatics, or networking
Hello,
I think that if we want something along those lines, we should consider a
more general construct that allows declarations to scope over other
declarations (like SML's `local` construct). It would be quite arbitrary
to restrict this only to instances.
-Iavor
On Mon, Apr 29, 2013 at
Hi,
This does not appear to be related to ImplicitParameters, rather
`MonoLocalBinds` is not working as expected.
Here is an example without implicit parameters that compiles just fine, but
would be rejected if `p` was monomorphic:
{-# LANGUAGE NoMonomorphismRestriction, MonoLocalBinds #-}
notation was
something like x := 2).
Perhaps we should revisit it, it seems much simpler than the rather
surprising behavior of `MonoLocalBinds`.
-Iavor
On Thu, Mar 28, 2013 at 4:39 PM, Iavor Diatchki iavor.diatc...@gmail.comwrote:
Hi,
This does not appear to be related to ImplicitParameters
Hello,
I think that there are a lot of useful features that are in HEAD that would
be useful to a wider audience than GHC devs, so a release before October
would certainly be useful. I don't think it is that important if it is
called 7.7.1 or 7.8.1 but I think that it needs to be a fixed
Hello,
I haven't merged the type-nats branch with GHC master recently, so some of
the libraries probably moved forward, which could be the source of the
problem. I'll make sure to fix it over the next couple of days.
-Iavor
On Mon, Feb 25, 2013 at 6:39 AM, Takayuki Muranushi
Hello Martin,
the change that you propose seems to already be in json-0.7. Perhaps you
just need to 'cabal update' and install the most recent version?
About your other question: I have not used CouchDB but a common mistake is
to mix up strings and bytes. Perhaps the `getDoc` function does
Hello,
I was just doing some work with Template Haskell and I noticed that the AST
does not have support for record puns and wild-cards. I know that these
could be desugared into ordinary record patterns but I think that it would
be more convenient for users (and also more consistent with the
Hello,
(sorry for the repost, I forgot to add a subject.)
I was just doing some work with Template Haskell and I noticed that the AST
does not have support for record puns and wild-cards. I know that these
could be desugared into ordinary record patterns but I think that it would
be more
Hello,
I think that it'd be really useful to be able to just declare a `kind`
without having to promote a datatype.
When we discussed this last time (summarized by the link Pedro sent, I
think) it came up that it might be nice to also
have kind synonyms, which would be analogous to type
Hello,
The general functionality for this seems useful, but we should be careful
exactly what types we allow in the 'newtype wrap/unwrap' declarations. For
example, would we allow something like this:
newtype wrap cvt :: f a - f (Dual a)
If we just worry about what's in scope, then it should
Hello Conal,
The issue with your example is that it is ambiguous, so GHC can't figure
out how to instantiate the use of `foo`. It might be easier to see why
this is if you write it in this form:
foo :: (F a ~ b) = b
foo = ...
Now, we can see that only `b` appears on the RHS of the `=`, so
Hello,
On Sun, Jan 13, 2013 at 12:05 PM, Conal Elliott co...@conal.net wrote:
so there is really no way for GHC to figure out what is the intended value
for `a`.
Indeed. Though I wonder: does the type-checker really need to find a
binding for `a` in this case, i.e., given the equation
Hello Conal,
The issue with your example is that it is ambiguous, so GHC can't figure
out how to instantiate the use of `foo`. It might be easier to see why
this is if you write it in this form:
foo :: (F a ~ b) = b
foo = ...
Now, we can see that only `b` appears on the RHS of the `=`, so
Hello,
On Sun, Jan 13, 2013 at 12:05 PM, Conal Elliott co...@conal.net wrote:
so there is really no way for GHC to figure out what is the intended value
for `a`.
Indeed. Though I wonder: does the type-checker really need to find a
binding for `a` in this case, i.e., given the equation
Hi,
I think that this is a neat idea that should be explored more! GHC's
parser has a bunch of awkward duplication to handle attaching documentation
to types, and it'd be cool if we could replace it with an actual language
construct.
Happy holidays!
-Iavor
On Wed, Dec 26, 2012 at 3:27 AM,
Hello Conal,
GHC implementation of functional dependencies is incomplete: it will use
functional dependencies during type inference (i.e., to determine the
values of free type variables), but it will not use them in proofs, which
is what is needed in examples like the one you posted. The reason
Hello Conal,
GHC implementation of functional dependencies is incomplete: it will use
functional dependencies during type inference (i.e., to determine the
values of free type variables), but it will not use them in proofs, which
is what is needed in examples like the one you posted. The reason
Hello,
I also sometimes wish that GHC developer discussions happened in a single
place, separate from the commits and ticket lists (at present they are
sometimes on ghc-users and sometimes on cvs-ghc). For what it's worth, I
don't follow the commit and build-bot messages closely, instead I use
Hi,
the curl binding certainly needs some love---if anyone has the time to fix
it up and maintain it, help would be most appreciated. There is a repo for
it over here: https://github.com/GaloisInc/curl which is the most up-to
date version I know of, but since the last commit there seems to be
with other stuff, so we really need
someone who's using the library to help.
Thanks!
-Iavor
On Mon, Nov 12, 2012 at 2:06 PM, Iustin Pop iu...@k1024.org wrote:
On Mon, Nov 12, 2012 at 10:57:25PM +0100, Iustin Pop wrote:
On Mon, Nov 12, 2012 at 01:48:23PM -0800, Iavor Diatchki wrote:
Hi
Hello,
While working on GHC sometimes I find it useful to dump the values of
intermediate expressions, perhaps in the middle of pure code, using a
combination of `trace` and `ppr`. The issue is that `ppr` returns an
`SDoc`, and to turn an `SDoc` into a `String`, I need some `DynFlags`.
There
Hello Arie,
One way to achieve the additional static checking is to use values of type
`Sing (n :: Nat)` in the places where you've used `Integer` (and
parameterize data structures by the `n`). If the code is fully polymorphic
in the `n`, then you can use it with values whose types as not
Hello,
I think that getting a certificate is a good idea. I think this could
probably be arranged by the haskell.org committee, which even has a budget
for things like that, I believe. I'm cc-ing Jason, who's on the committee
and might have more input on what's the best way to proceed.
Thanks
Hello Paul,
If you don't want to use the class system, you could write `repeat` with a
type like this:
repeat :: Proxy n - a - Vector n a
(`Proxy` is the singleton family 'data Proxy n = Proxy`).
You can't really do it with a function of type `a - Vector n a` because
there is no way for
Hello,
Sorry, I made a mistake, the version of 'repeat :: Proxy n - a - Vector n
a' won't work either, as Andres noticed, because `Proxy` still won't give
you information about how many times to repeat.
You'd have to use a structured singleton family, where the values are
linked to the types:
that.
·Iavor mutters about sketchiness, but I’m not sure what that
means specifically.
·I’m not sure how, it at all, it affects Richard’s singletons
paper
Simon
*From:* Iavor Diatchki [mailto:diatc...@galois.com]
*Sent:* 12 October 2012 21:11
*To:* Richard Eisenberg
Hello,
I am pleased to announce the availability of monadLib-3.7.1 on Hackage.
MonadLib is a library intended to help programmers to quickly and easily
construct various monads. The library has support for a wide range of
effects: threading state, read-only variables, collecting output,
Hello,
I am pleased to announce the availability of monadLib-3.7.1 on Hackage.
MonadLib is a library intended to help programmers to quickly and easily
construct various monads. The library has support for a wide range of
effects: threading state, read-only variables, collecting output,
? Ian said
that it is somewhere in the nightly build logs but I don't where to look.
-Iavor
On Thu, Sep 20, 2012 at 7:20 AM, Simon Marlow marlo...@gmail.com wrote:
On 19/09/2012 02:15, Iavor Diatchki wrote:
exactly what git's submodule machinery does, so it seems pointless
Hello,
On Tue, Sep 18, 2012 at 12:10 AM, Simon Peyton-Jones
simo...@microsoft.comwrote:
The technically-straightforward thing to do is to add kind application,
but that's a bit complicated notationally.
http://hackage.haskell.org/trac/ghc/wiki/ExplicitTypeApplication Does
anyone have any
Hello,
I was just trying to build the GHC-7.6 branch from source and the build
failed with type-errors, because the libraries used by GHC have moved on
since the release, and sync all just gets the most recent version.
Is there a fingerprint somewhere so that I can checkout the libraries in
a
Hello,
On Tue, Sep 18, 2012 at 1:25 PM, Ian Lynagh i...@well-typed.com wrote:
Why do you want to build 7.6 but not 7.6.1, OOI?
I was trying to build a different branch which is a fork of 7.6---I
wanted to play around with the profiling suite described in the Core
Diving talk from the Haskell
Hello,
I think that it would be a mistake to have two pragmas with incompatible
behaviors: for example, we would not be able to write modules that use
Conal's libraries and, say, the type nats I've been working on.
If the main issue is the notation for arrows, has anoyone played with what
can be
Hello,
the functions on type literals on the master branch are not yet
implemented. If you want to play around with these kinds of things,
please use the type-nats branch (please note that this is a development
branch so things may occasionally break!).
In the first example, GHC is saying that
Hello,
this happens because head probably closes the file descriptor after 3
lines, and then the Haskell program tries to write to a closed handle
(i.e., it's stdout is not there anymore). The best thing to do depends on
the program. One fairly simple option would be to handle the exception, and
Hello,
I also completely agree with Bryan's point which is why I usually don't add
upper bounds on the dependencies of the packages that I maintain---I find
that the large majority of updates to libraries tend to be backward
compatible, so being optimistic seems like a good idea.
By the way,
Hello,
I am late to the discussion and this is not entirely on topic, for which I
apologize, but I like the multi-branch case syntax someone mentioned
earlier:
Writing:
case
| p1 - e1
| p2 - e2
| ...
desugars to:
case () of
_ | p1 - e2
| p2 - e2
| ...
-Iavor
PS: I
Hi Paolo,
I agree that this would be useful. In fact, a couple of years ago I
implemented this in GHC, but after some discussion folks were not convinced
that it's a good idea. I don't remember the details but as far as I recall
we agreed to disagree :-) The e-mail thread is over here:
class constraint holds.
-Iavor
On Wed, May 30, 2012 at 11:14 PM, Etienne Laurin etie...@atnnn.com wrote:
2012/5/31 Iavor Diatchki iavor.diatc...@gmail.com:
Hello,
the notion of a functional dependency is well established, and it was
used
well before it was introduced to Haskell
Hello,
On Wed, Jul 7, 2010 at 2:14 PM, Simon Peyton-Jones simo...@microsoft.comwrote:
We can’t permit overlap for type families because it is *unsound *to do
so (ie you can break “well typed programs don’t go wrong”). But if it’s
unsound for type families, it would not be surprising if it
Hello,
the notion of a functional dependency is well established, and it was used
well before it was introduced to Haskell (for example, take a look at
http://en.wikipedia.org/wiki/Functional_dependency). So I'd be weary to
redefine it lightly.
Note that placing a functional dependency
Hi,
It is quite likely that the error that you are getting with approach 2 is
because when you are constructing the `Combinator` value, there is not
enough type information to figure out how to solve the constraint (and it
sounds like this happens because there is not enough type information to
Hello,
The context in your example serves an important purpose: it records the
fact that the behavior of the function may differ depending on which type
it is instantiated with. This is quite different from ordinary
polymorphic functions, such as `const` for example, which work in exactly
the
, Iavor Diatchki
iavor.diatc...@gmail.com wrote:
Hello,
I am also not an expert but I got curious and did a bit of Wikipedia
reading. Based on what I understood, here are two (related) questions
that it might be nice to clarify in a future version of the report:
1. What is the alphabet used
Hello,
I am also not an expert but I got curious and did a bit of Wikipedia
reading. Based on what I understood, here are two (related) questions
that it might be nice to clarify in a future version of the report:
1. What is the alphabet used by the grammar in the Haskell report? My
Hello,
On Mon, Feb 20, 2012 at 7:03 PM, Johan Tibell johan.tib...@gmail.comwrote:
Looks really nice.
Thanks!
The hovering behavior is nice, but I'd like to see
the legend as well. It makes it quicker when you want to get a quick
overview of what types there are, as the eye can travel
Hello,
On Mon, Feb 20, 2012 at 7:03 PM, Johan Tibell johan.tib...@gmail.comwrote:
Looks really nice.
Thanks!
The hovering behavior is nice, but I'd like to see
the legend as well. It makes it quicker when you want to get a quick
overview of what types there are, as the eye can travel
Hello,
On Mon, Feb 13, 2012 at 5:32 PM, Edward Kmett ekm...@gmail.com wrote:
There are fewer combinators from commonly used classes for working with
the left argument of a bifunctor, however.
I think that the bifunctor part of Bas's version is a bit of a red herring.
What I like about it is
Hello,
I like Bas's variation on the design (except, perhaps, for the name
Tagged ;) It captures exactly what we are trying to do: the
dictionary for Typeable becomes simply the run-time representation of
the type. Coincidentally, this is exactly the same as what I am using
to link value level
Hello,
On Wed, Jan 25, 2012 at 7:21 AM, Thijs Alkemade thijsalkem...@gmail.com wrote:
Also, we have a confusing problem when type checking a module. Above,
we showed the result of :t map __ __ in ghci. However, if we put f
= map __ __ in a module, we get:
tcRnModule: [(f.hs:1:9-10,
Hello,
My preference would be to change the behavior of the TypeOperator
flag. Here is my reasoning:
* Having two operators with slightly different meanings would be
very confusing, not just for beginners but for everyone.
* The two behaviors are not compatible in the sense that they can't
1 - 100 of 345 matches
Mail list logo