উদাহরণ: Lisp, Haskell, এবং Scala
Lisp, Haskell, এবং Scala তিনটি জনপ্রিয় ফাংশনাল প্রোগ্রামিং ভাষা, প্রতিটির নিজস্ব বৈশিষ্ট্য এবং সুবিধা রয়েছে। নিচে এই ভাষাগুলির কিছু মৌলিক উদাহরণ এবং তাদের বৈশিষ্ট্যগুলি তুলে ধরা হলো।
১. Lisp
বর্ণনা: Lisp হল একটি প্রাচীন এবং জনপ্রিয় ফাংশনাল প্রোগ্রামিং ভাষা, যা মূলত লজিকাল প্রোগ্রামিং এবং প্রাকৃতিতত্ত্বের জন্য ব্যবহৃত হয়। Lisp এর মৌলিক গঠন হল অ্যাটম এবং লিস্ট।
উদাহরণ:
; একটি ফাংশন যা ফ্যাক্টরিয়াল নির্ধারণ করে
(defun factorial (n)
(if (<= n 1)
1
(* n (factorial (1- n)))))
; ব্যবহার
(print (factorial 5)) ; ফলাফল: 120
২. Haskell
বর্ণনা: Haskell একটি উচ্চ স্তরের ফাংশনাল প্রোগ্রামিং ভাষা, যা শক্তিশালী টাইপ সিস্টেম এবং lazy evaluation সমর্থন করে। এটি টার্মিনাল প্রোগ্রামিংয়ের জন্য একটি জনপ্রিয় পছন্দ।
উদাহরণ:
-- একটি ফাংশন যা ফ্যাক্টরিয়াল নির্ধারণ করে
factorial :: Int -> Int
factorial 0 = 1
factorial n = n * factorial (n - 1)
-- ব্যবহার
main :: IO ()
main = do
print (factorial 5) -- ফলাফল: 120
৩. Scala
বর্ণনা: Scala একটি আধুনিক ফাংশনাল এবং অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং ভাষা, যা Java Virtual Machine (JVM) এর ওপর চলে। এটি OOP এবং FP এর সুবিধা একত্রিত করে।
উদাহরণ:
object Main {
// একটি ফাংশন যা ফ্যাক্টরিয়াল নির্ধারণ করে
def factorial(n: Int): Int = {
if (n <= 1) 1
else n * factorial(n - 1)
}
// ব্যবহার
def main(args: Array[String]): Unit = {
println(factorial(5)) // ফলাফল: 120
}
}
তুলনা
| বৈশিষ্ট্য | Lisp | Haskell | Scala |
|---|---|---|---|
| স্টাইল | ফাংশনাল এবং লজিকাল | ফাংশনাল | ফাংশনাল এবং অবজেক্ট-ওরিয়েন্টেড |
| টাইপ সিস্টেম | ডাইনামিক | স্ট্যাটিক | স্ট্যাটিক |
| ডেটা স্ট্রাকচার | লিস্ট এবং অ্যাটম | লিস্ট, টুপল, এবং রেকর্ড | লিস্ট, টুপল, এবং রেকর্ড |
| এক্সপ্রেশন | S-এক্সপ্রেশন | কার্যকরী এক্সপ্রেশন | কার্যকরী এবং অবজেক্ট-ভিত্তিক এক্সপ্রেশন |
| ব্যবহার | AI এবং NLP | গবেষণা এবং একাডেমিয়া | এন্টারপ্রাইজ এবং স্কেলেবিলিটি |
উপসংহার
Lisp, Haskell, এবং Scala প্রতিটি ফাংশনাল প্রোগ্রামিংয়ের বিভিন্ন দিককে প্রতিফলিত করে। Lisp একটি প্রাচীন ভাষা হলেও, Haskell উচ্চ স্তরের ফাংশনাল প্রোগ্রামিংয়ের জন্য ডিজাইন করা হয়েছে, এবং Scala অবজেক্ট-ওরিয়েন্টেড এবং ফাংশনাল প্রোগ্রামিংয়ের মধ্যে একটি সেতুবন্ধন তৈরি করে।
Read more