Atoms এবং Lists এর ধারণা

LISP এর সিনট্যাক্স এবং বেসিক ধারণা (LISP Syntax and Basic Concepts) - লিস্প (LISP) - Computer Programming

330

LISP (LISt Processing) একটি শক্তিশালী প্রোগ্রামিং ভাষা, যার মধ্যে Atoms এবং Lists প্রধান ডাটা স্ট্রাকচার হিসেবে ব্যবহৃত হয়। LISP ভাষার মৌলিক ধারণাগুলোর মধ্যে এগুলি অন্যতম। এখানে Atoms এবং Lists এর ধারণা এবং তাদের ব্যবহারের ওপর আলোচনা করা হলো।


১. Atoms:

Atom হল LISP এর মৌলিক ইউনিট বা উপাদান। এটি একটি একক অবজেক্ট, যা কোনো একক মান ধারণ করে। Atoms সাধারণত দুটি ক্যাটাগরিতে ভাগ করা যায়:

  • সিম্বল (Symbols): LISP এর সবচেয়ে সাধারণ Atom হল সিম্বল, যেমন ভেরিয়েবল নাম। উদাহরণস্বরূপ, x, y, sum ইত্যাদি। সিম্বলগুলি একটি ভেরিয়েবল বা ফাংশন প্রতিনিধিত্ব করতে পারে।
  • লিটারেল ভ্যালু (Literal Values): এটিতে সংখ্যামূলক মান (যেমন ১, ৩.১৪), স্ট্রিং (যেমন "Hello"), বা অন্যান্য মৌলিক ডাটা টাইপ থাকে।

উদাহরণ:

(setq x 10)  ; x একটি সিম্বল (এটি একটি ভেরিয়েবল)
(setq y 3.14)  ; y একটি অ্যাটম, যেটি একটি ফ্লোট মান

এখানে, x এবং y হল অ্যাটম, যেখানে x একটি সিম্বল এবং y একটি ফ্লোট মান ধারণ করে।

২. Lists:

LISP এর অন্যতম শক্তিশালী ডাটা স্ট্রাকচার হল List। একটি List হল অ্যাটমগুলির একটি সিকোয়েন্স বা সিরিজ, যেগুলি প্যারেন্টেসিসের মধ্যে থাকে। তালিকা LISP এ ডাটা প্রক্রিয়াকরণের প্রধান মাধ্যম হিসেবে ব্যবহৃত হয়।

লিস্টে অ্যাটম অথবা অন্য লিস্ট থাকতে পারে। লিস্টের প্রথম উপাদান (প্রথম এলিমেন্ট) সাধারণত কার (car) এবং পরবর্তী উপাদানগুলো সিডিআর (cdr) এর মাধ্যমে এক্সেস করা হয়।

উদাহরণ:

(setq mylist '(1 2 3 4))  ; একটি সিম্পল লিস্ট

এখানে, (1 2 3 4) একটি লিস্ট, যার মধ্যে অ্যাটমগুলো (যেমন ১, ২, ৩, ৪) অন্তর্ভুক্ত।

লিস্টের বিভিন্ন কার্যকারিতা:

  • car: একটি লিস্টের প্রথম উপাদান বা এলিমেন্ট প্রদান করে।
  • cdr: একটি লিস্টের বাকি উপাদান (প্রথম উপাদান বাদে) প্রদান করে।

উদাহরণ:

(setq mylist '(1 2 3 4))

(car mylist)  ; আউটপুট: 1

(cdr mylist)  ; আউটপুট: (2 3 4)

এখানে car প্রথম উপাদান 1 প্রদান করে এবং cdr বাকি উপাদান (2 3 4) প্রদান করে।

লিস্টের মধ্যে লিস্ট:

LISP এ একটি লিস্টের মধ্যে অন্য একটি লিস্টও থাকতে পারে। যেমন:

(setq nested-list '((1 2) (3 4) (5 6)))

এখানে, nested-list একটি লিস্ট যার মধ্যে তিনটি উপ-লিস্ট রয়েছে: (1 2), (3 4), এবং (5 6)


Atoms এবং Lists এর মধ্যে পার্থক্য:

বৈশিষ্ট্যAtomsLists
সংজ্ঞাএকক উপাদান বা মৌলিক ডাটা টাইপএকাধিক উপাদানের (অ্যাটম বা লিস্ট) সংগ্রহ
উদাহরণ5, x, "hello"(1 2 3), (a b c)
রিপ্রেজেন্টেশনসাধারণত একক মান ধারণ করেএকাধিক মান বা উপাদান ধারণ করে
বিবিধতাএকক ভ্যালু বা সিম্বল হিসেবে ব্যবহার হয়প্যারেন্টেসিসের মধ্যে একাধিক উপাদান
ব্যবহারভেরিয়েবল নাম বা প্রাথমিক মান হিসেবেডাটা স্ট্রাকচার বা লজিক্যাল এক্সপ্রেশন তৈরি করতে

সারসংক্ষেপ:

Atoms হল LISP এর মৌলিক ডাটা ইউনিট যা একক মান ধারণ করে, এবং Lists হল একাধিক অ্যাটম বা লিস্টের সমষ্টি। LISP ভাষায় Lists একটি অত্যন্ত গুরুত্বপূর্ণ ডাটা স্ট্রাকচার, যা কোডের কার্যক্রম সংগঠিত করতে ব্যবহৃত হয়। Atoms এবং Lists এর মিশ্রণ LISP ভাষায় শক্তিশালী এবং নমনীয় প্রোগ্রামিং টুল তৈরি করে।

Content added By
Promotion

Are you sure to start over?

Loading...