প্রকল্প সম্পর্কে
YALCE / YLC (Yet Another Live-Coding Environment) হলো একটি ফাংশনাল প্রোগ্রামিং ভাষা, যা অডিও সিন্থেসিস ও OpenGL গ্রাফিক্সের জন্য লাইব্রেরিসহ আসে। প্রকল্পটি তার লক্ষ্য হিসেবে ছোট, সরল ও পারফরম্যান্ট হওয়া, ন্যূনতম ফিচার সেট এবং নির্বিঘ্ন C ইন্টারঅপারেবিলিটি উল্লেখ করেছে।
প্রকল্পটি যে মূল ফিচারগুলো তালিকাভুক্ত করেছে:
- OCaml-সদৃশ সিনট্যাক্স ও ফার্স্ট-ক্লাস ফাংশনসহ ফাংশনাল প্রোগ্রামিং
- পলিমরফিজমসহ Hindley-Milner টাইপ সিস্টেমের মাধ্যমে টাইপ ইনফারেন্স
- নেটিভ টার্গেটে LLVM JIT কম্পাইলেশন
- ইটারেটিভ ডেভেলপমেন্ট ও লাইভ কোডিংয়ের জন্য একটি ইন্টারঅ্যাকটিভ REPL
- অ্যালজেব্রাইক ডেটা টাইপসহ প্যাটার্ন ম্যাচিং
- জেনারেটর ও অ্যাসিঙ্ক ইটারেশনের জন্য কোরুটিন
ইনস্টলেশনের অপশনগুলোর মধ্যে রয়েছে macOS-এর জন্য একটি Homebrew ফর্মুলা (brew install crawdaddie/yalce/yalce) অথবা সোর্স থেকে বিল্ড করা: রিপোজিটরি ক্লোন করুন, ./setup.sh চালান, make চালান, তারপর বিল্ট ylc বাইনারিটিকে আপনার PATH-এ থাকা একটি ডিরেক্টরিতে সিমলিংক করুন। ডকুমেন্টেশন গেটিং স্টার্টেড, কোর কনসেপ্ট, উদাহরণ এবং একটি ভাষা রেফারেন্সে সাজানো।
README-এর উদাহরণগুলোতে প্যাটার্ন ম্যাচিং দিয়ে বাস্তবায়িত Fibonacci, লিস্ট রিভার্সাল ও লিস্ট ম্যাপিং হেল্পার লেখার জন্য ব্যবহৃত ফার্স্ট-ক্লাস ফাংশন, এবং একটি ম্যাপ করা লিস্টকে প্রত্যাশিত ফলাফলের সঙ্গে তুলনা করা একটি ছোট মডিউল-ভিত্তিক টেস্ট দেখানো হয়েছে। সিনট্যাক্সে let বাইন্ডিং, fn ল্যাম্বডা, | শাখাসহ match এক্সপ্রেশন, লিস্ট কনস (::) এবং পাইপ অপারেটর (|>) ব্যবহৃত হয়।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.