Hacktoberfest 2026:維護者為十月標記出來的 issue,仍然開放、適合新手。 瀏覽 Hacktoberfest issue

Add `Identity` monad

未關閉
#469 4 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

還沒有人認領這個 Issue。

評估

難度
5/5
預估耗時
一週以上
新手友好度
30/100
Issue 類型
功能
描述清晰度
需要釐清
活躍度
停滯
技術堆疊
python

研究方向

該 issue 沒有指定檔案或測試;先找出現有的 Maybe 實作,以及 kinded values 所使用的 monad 抽象。比較它們支援的操作和型別慣例,然後定義一個保留每個被包裝值(包括 None)的 Identity 怎樣才算「完成」。

由索引模型根據 Issue 內容生成。

描述

enhancement

We need this to wrap regular values into a monad.
This might be required when you have a function like this:

@kinded
def do_something(c: KindN[V, E, D], f: Callable[[V], N]) -> KindN[N, E, D]: ...

And you want to call it with just a plain value, like 1.
Then, you wrap it into Identity(1) and pass into do_something with no problems.

Maybe does not fit for several reasons:

  1. It does not support all possible methods, like rescue
  2. It treats None differently, we should be able to wrap Identity(None) as is
主要語言
Python
星號
4.4k
分支
154
平均合併
3 小時 5 分鐘
30 天內合併 PR
22

貢獻指南

開啟貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

dry-python/returns 的其他 Issue

查看 dry-python/returns 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。