Nathan Faubion

Results 48 issues of Nathan Faubion

On a few occasions I would have liked to expand to different things when used in a statement position versus an expressions position. One simple use case is macros that...

type: feature

Reference: https://github.com/pure-c/purec/issues/34#issuecomment-497961729 Exposing `Char` as UTF-16 code units is problematic for backends that need to use something _other_ than UTF-16 as the underlying representation. Would it be better if `Char`...

## Description ST ref inlining is not a robust transformation when interleaved with transformers or other comparable transformations. ## To Reproduce Per @mikesol ```purescript module Main where import Prelude import...

type: bug

When GHC gives you an unknown name error, it will tell you the inferred type. We could do something similar in name desugaring where instead of immediately throwing an error,...

error-message

## Description STRefs should inline into local mutable variables. ## To Reproduce Use an STRef, and observe the generated code. ## Expected behavior STRefs are never inlined.

type: bug
affects-v0.14.0

## Description ```purescript module Main where import Prelude data Poly = Poly (forall a. a -> a) type PolyR = { id :: forall a. a -> a } test1...

type: bug
typechecker

For example `a -> b` gets desugared to `TypeApp (TypeApp (TypeConstructor Prim.Function) a) b` where the inserted applications should map to original source spans instead of `NullSourceSpan`.

new contributor
error-message

## Description Using a rank-n kind in a top-level kind signature fails to check in the data declaration. ## To Reproduce ```purescript data F :: (forall k. k -> Type)...

type: bug

Currently the loader works by discovering dependencies as it loads them. If the server sent all transitive dependencies in the response, we could more efficiently load resources since we know...

It would be useful to support a configurable level of heuristics, such that a user could tune down inlining (prioritizing bundle size). Architecturally, this means that we would need to...