প্রকল্প সম্পর্কে

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 এক্সপ্রেশন, লিস্ট কনস (::) এবং পাইপ অপারেটর (|>) ব্যবহৃত হয়।