অনেক ধরণের অপটিক্সের একটি ভ্যান লাথোভেনের উপস্থাপনা থাকে।
উদাহরণস্বরূপ, Lens
এক প্রকারের Lens s t a b
প্রতিনিধিত্ব করা যেতে পারে:
Functor f => (a -> f b) -> s -> f t
একইভাবে ক Traversal
, এর Functor
জন্য সীমাবদ্ধতা অদলবদল করে একইভাবে উপস্থাপন করা যেতে পারে Applicative
:
Applicative f => (a -> f b) -> s -> f t
মনোকল এবং অ্যারোর মতো বেশ কয়েকটি অপটিক্স ফ্রেমওয়ার্ক একটি ধরণের সংজ্ঞা দেয় Optional
।
এক চোখো চশমা এর অপটিক্স অনুক্রমের যে Optional
মধ্যবর্তী তড়কা Lens
এবংTraversal
যেমনটি আমি এটি বুঝতে পারি: যদি একটি Traversal
এর মতো হয় যা অনেক লক্ষ্যবস্তুতে শূন্যLens
হতে পারে , তবে একটি এর মতো একটির একটি লক্ষ্য থেকে শূন্য হতে পারে ।Optional
Lens
মনোোকলে, Optional
একটি ফাংশনের জুড়ি হিসাবে সংজ্ঞায়িত করা হয়:
getOrModify :: s -> Either t a
set :: (b, s) -> t
এক চোখো চশমা সোর্স কোডে মন্তব্য প্রমাণ করে যে এটি একটি প্রতিনিধিত্ব করতে সম্ভব Optional
"দুর্ব্বল যেমন PLens
এবং দুর্বল PPrism
"
Optional
ভ্যান লাথোভেন ফাংশন হিসাবে কোনও উপস্থাপন করা কি সম্ভব ?
Functor
এবংApplicative
সঙ্গেliftA2
, কিন্তু কোন বিশুদ্ধ, তারপর যে একটি অপটিক সঙ্গে সংজ্ঞায়িত হবে অনেকের কাছে এক লক্ষ্যমাত্রা? এর কি কোনও নাম আছে?