Changes between Version 3 and Version 4 of ExplicitTypeApplication


Ignore:
Timestamp:
Dec 15, 2011 10:15:19 AM (3 years ago)
Author:
dreixel
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ExplicitTypeApplication

    v3 v4  
    88  (C @a y z) -> .... 
    99}}} 
    10 On the right-hand side we would have the type variable `a` in scope. 
     10On the right-hand side we would have the type variable `a` in scope for use on  
     11any type signatures. 
    1112 
    12 Note how the use of the symbol `@` is (in this case) unproblematic, since we can 
     13Note how the use of the symbol `@` is (in this case) unproblematic; we can 
    1314use the fact that constructors always start with an uppercase letter to distinguish 
    1415whether the `@` refers to an "as pattern" or to a type application: 
     
    1819}}} 
    1920 
    20 Also note that this would not allow you to to pattern-match on specific types: 
    21 the only thing that we can match on are type or kind variables. 
     21Unfortunately this is not always the case; see below. 
     22 
     23Note that this proposal would not allow pattern matching on specific types: 
     24the only thing that we can match on are type or kind variables. However, it 
     25does allow for specifying what type to apply: 
     26{{{ 
     27id @Int 2 
     28}}} 
     29 
     30The idea is to provide more access to the explicit types in the core language 
     31(system [http://dreixel.net/research/pdf/ghp.pdf FC-pro]) 
     32directly from the source language syntax. 
    2233 
    2334