এ+ (প্রোগ্রামিং ভাষা)

এ+ (ইংরেজি: A+) হলো একটি উচ্চ-স্তরের, মিথস্ক্রিয় এবং ইন্টারপ্রেটেড অ্যারে প্রোগ্রামিং ভাষা। এটি মূলত গাণিতিকভাবে জটিল ক্রিয়াকলাপ এবং বিশেষ করে অর্থনৈতিক বা ফিন্যান্সিয়াল অ্যাপ্লিকেশনের জন্য ডিজাইন করা হয়েছে।

 ইতিহাস 
১৯৮৮ সালে আর্থার হুইটনি এপিএল-এর বিকল্প হিসেবে "এ" প্রোগ্রামিং ভাষা তৈরির কাজ শুরু করেন। পরবর্তীতে মর্গান স্ট্যানলির অন্যান্য ডেভেলপাররা এটিকে এ+-এ উন্নীত করেন। তারা এতে গ্রাফিক্যাল ইউজার ইন্টারফেস এবং অন্যান্য আধুনিক ফিচার যুক্ত করেন।

পরবর্তীতে আর্থার হুইটনি "কে" (কে) নামে একটি মালিকানাধীন অ্যারে ভাষা তৈরি করেন। "জে" ভাষার মতো কে ল্যাঙ্গুয়েজ থেকেও এপিএল-এর বিশেষ ক্যারেক্টার সেট বাদ দেওয়া হয়। তবে এ+ ভাষায় এপিএল-এর সিনট্যাক্স বা গঠনশৈলী ধরে রাখা হয়েছে।

 বৈশিষ্ট্য 
এ+ ভাষায় ফাংশন এবং অপারেটরের একটি বিশাল সেট রয়েছে। এর অন্যতম বৈশিষ্ট্য হলো এর গ্রাফিক্যাল ইউজার ইন্টারফেস, যা উইজেট এবং ভেরিয়েবলের মধ্যে স্বয়ংক্রিয় সিঙ্ক্রোনাইজেশন বা সংযোগ বজায় রাখে। এছাড়া এটি ইভেন্ট এবং ভেরিয়েবলের সাথে যুক্ত ফাংশনগুলোর অ্যাসিনক্রোনাস এক্সিকিউশন সমর্থন করে।

এ+ মূলত লিনাক্স সহ বিভিন্ন ইউনিক্স ভেরিয়েন্টে চলে। এটি জিএনইউ জিপিএল-এর অধীনে প্রকাশিত একটি মুক্ত ও ওপেন সোর্স সফটওয়্যার।

এপিএল ভাষার সাথে এ+ ভাষার কিছু উল্লেখযোগ্য পার্থক্য নিচে দেওয়া হলো:
 একটি এ+ ফাংশনে ৯টি পর্যন্ত আর্গুমেন্ট বা প্যারামিটার থাকতে পারে।
 এ+ কোডের স্টেটমেন্টগুলো সেমিকোলন (;) দ্বারা পৃথক করা হয়, ফলে একটি স্টেটমেন্টকে একাধিক লাইনে ভাগ করা যায়।
 কোনো ফাংশন বা অপারেটরের ফলাফল হলো সর্বশেষ এক্সিকিউট করা স্টেটমেন্টের ফলাফল।
 এ+ "ডিপেন্ডেন্সি" নামক একটি অবজেক্ট সমর্থন করে। এটি এমন একটি গ্লোবাল ভেরিয়েবল যা অন্য কোনো ভেরিয়েবলের পরিবর্তনের ওপর নির্ভর করে স্বয়ংক্রিয়ভাবে আপডেট হয়।

এ+ কোড লেখার জন্য সাধারণত এক্সইম্যাক্স এডিটর এবং এর এক্সটেনশন ব্যবহার করা হয়। যেহেতু এ+ কোডে এপিএল-এর বিশেষ চিহ্নগুলো ব্যবহার করা হয়, তাই এটি প্রদর্শনের জন্য একটি বিশেষ ফন্টের প্রয়োজন হয়, যা এ+ এর ওয়েবসাইটে 'kapl' নামে পাওয়া যায়।

 তথ্যসূত্র 

 বহিঃসংযোগ 
  (আর্কাইভ)
 এপিএল উইকিতে এ+

বিষয়শ্রেণী:এপিএল প্রোগ্রামিং ভাষা পরিবার
বিষয়শ্রেণী:অ্যারে প্রোগ্রামিং ভাষা
বিষয়শ্রেণী:ডাটা-কেন্দ্রিক প্রোগ্রামিং ভাষা
বিষয়শ্রেণী:প্রোগ্রামিং ভাষা