Iris rejects Extend function instance with invalid kind
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 52/100
調査の方向性
Reproduce the disagreement using spago.yaml and src/Main.purs, first running spago build and the Node command, then iris build --quiet --color never. Investigate Iris's handling of the Extend expression at src/Main.purs:9 and the resulting CannotUnify diagnostics. Done means Iris compiles this reproduction without errors, matching purs's successful result.
索引モデルが issue の本文から書いたものです。
説明
With purs 0.15.15, Iris 0.1.1, Spago 1.0.3 and Node 22.16.0, create these two files in a fresh directory:
spago.yaml:
package:
name: extend-function-repro
dependencies:
- control
- effect
- console
workspace:
packageSet:
registry: 81.1.0
src/Main.purs:
module Main where
import Prelude
import Control.Extend as Extend
import Effect (Effect)
import Effect.Console (log)
main :: Effect Unit
main = log (show (Extend.extend (\f -> f "B") (\s -> s <> "!") "A"))
Run from that directory with spago, purs and iris on PATH:
spago build
node -e 'import("./output/Main/index.js").then(m => m.main())'
iris build --quiet --color never
Observed: spago build succeeds with zero errors and purs's output prints "AB!". Iris exits with status 1, reporting two CannotUnify errors at src/Main.purs:9 (Cannot unify 'Type' with '?[invalid kind]'), followed by NoInstanceFound: Show ?[invalid function application] and compilation failed. The latter diagnostic may be cascading; the internal cause is not established. This is a compile disagreement, not a runtime mismatch.
The expression uses the Semigroup String => Extend ((->) String) instance from control 6.0.0: evaluating the extended function at "A" asks the input function for "B", yielding "AB!". The resolved registry dependencies are control 6.0.0, prelude 6.0.2, newtype 5.0.0, safe-coerce 2.0.0, unsafe-coerce 6.0.0, effect 4.0.0 and console 6.1.0. The generated spago.lock for this two-file reproduction has SHA-256 c54a52bb0a07f41b163cc3f844ae27449ff19980919fecb92c72243264918f26.
- 主要言語
- Rust
- スター
- 117
- フォーク
- 11
- 平均マージ
- 4時間 22分
- マージ済み PR(30日)
- 126
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
purefunctor/purescript-iris のほかの issue
-
bug language-server
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
purefunctor/purescript-iris#552 ·
メンテナーはふだん 1 日以内に返信
-
bug language-server
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
purefunctor/purescript-iris#551 ·
メンテナーはふだん 1 日以内に返信
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
purefunctor/purescript-iris#613 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 58/100
purefunctor/purescript-iris#610 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
purefunctor/purescript-iris#560 ·
メンテナーはふだん 1 日以内に返信
purefunctor/purescript-iris の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
software-challenge/player_rust#22 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
foundry-rs/foundry#17175 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
メンテナーはふだん 1 日以内に返信
-
state:triage-needed
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
github/copilot-sdk#2793 ·
メンテナーはふだん 1 日以内に返信