Full BASIC
ফুল বেসিক, কখনও কখনও স্ট্যান্ডার্ড বেসিক বা এএনএসআই বেসিক নামে পরিচিত, একটি আন্তর্জাতিক মান যা বেসিক প্রোগ্রামিং ভাষার একটি উপভাষাকে সংজ্ঞায়িত করে। এটি ইউরোপীয় ইসিএমএ-এর সাথে অংশীদারিত্বে আমেরিকান ন্যাশনাল স্ট্যান্ডার্ডস ইনস্টিটিউট (এএনএসআই) X3.60 গ্রুপ দ্বারা তৈরি করা হয়েছিল। এটি কাঠামোগত প্রোগ্রামিং, ম্যাট্রিক্স গণিত, ফাইল পরিচালনার জন্য ইনপুট/আউটপুট এবং অন্যান্য অনেক বিকল্প সহ অনেক বৈশিষ্ট্য সহ বেসিকের একটি উন্নত সংস্করণ বর্ণনা করে। এ. এন. এস. আই-এর মৌলিক মান নির্ধারণ একটি দ্বিস্তরীয় প্রক্রিয়া ছিল। প্রথমটি, 1974 সালে মিনিমাল বেসিক হিসাবে শুরু হয়েছিল, মূল ডার্টমাউথ বেসিক ভাষাটিকে স্পষ্টভাবে সংজ্ঞায়িত ও মানসম্মত করার একটি প্রচেষ্টা ছিল যাতে এটি বিভিন্ন প্ল্যাটফর্মে সঠিকভাবে প্রয়োগ করা যায়। 1977 সালের শেষের দিকে মুক্তি পাওয়ার পর, ফুল বেসিকের দিকে মনোযোগ দেওয়া হয় যা ডার্টমাউথ কলেজে আরও শক্তিশালী স্ট্রাকচার্ড বেসিকের উপর ভিত্তি করে তৈরি করা হবে। ব্যবস্থাটির জটিলতা এবং স্ট্যান্ডার্ড কমিটির সদস্যদের দ্বারা প্রচারিত অনেক সংযোজন প্রচেষ্টার অবনতি ঘটায় এবং প্রথম খসড়া মানটি 1986 সাল পর্যন্ত, চার বছর দেরিতে, প্রস্তুত ছিল না। 1986 সালের 26শে জুন মানটি ইসিএমএ-116 এবং 1987 সালের জানুয়ারিতে এএনএসআই X3.113-1987 হিসাবে অনুমোদিত হয়। এটি সম্পূর্ণরূপে উপেক্ষা করা হয়েছিল; মাইক্রো কম্পিউটার বিপ্লব ঘটেছিল যখন নির্দিষ্টকরণ নিয়ে তর্ক করা হচ্ছিল এবং 1980-এর দশকের গোড়ার দিকে মাইক্রোসফ্ট বেসিক লক্ষ লক্ষ হোম কম্পিউটারে চলছে এবং ইতিমধ্যে চলে গেছে। প্রক্রিয়াটি এগিয়ে যেতে দেখে, ডার্টমাউথের অংশগ্রহণকারীরা স্ট্যান্ডার্ডের অংশগুলির উপর ভিত্তি করে ট্রু বেসিক তৈরি করতে চলে যায়, তবে এটি খুব কমই কাজে লাগে। মাইক্রোসফ্টের মতো কার্যত মানগুলি বাজারে আধিপত্য বিস্তার করেছিল এবং মাইক্রোসফ্ট ভিজ্যুয়াল বেসিকের মতো নতুন ভাষার ভিত্তি তৈরি করেছিল যা অনুরূপ ধারণাগুলি অন্তর্ভুক্ত করেছিল। ইতিহাস ন্যূনতম মৌলিক 1964 সালে ডার্টমাউথ বেসিকের প্রবর্তন কম্পিউটার ক্ষেত্রে বেশ কয়েকটি উদীয়মান ধারণাকে একত্রিত করে, যার মধ্যে রয়েছে সময় ভাগ করে নেওয়া এবং ব্যবহারকারীর সাথে সরাসরি যোগাযোগ, যা সেই সময়ে "কথোপকথনের ইন্টারফেস" হিসাবে পরিচিত ছিল। জেনারেল ইলেকট্রিক, যিনি জিই 235 মেইনফ্রেম কম্পিউটার সরবরাহ করেছিলেন, একটি পরিষেবা ব্যুরো শুরু করার জন্য ডার্টমাউথের সিস্টেমের একটি পরিবর্তিত সংস্করণ ব্যবহার করেছিলেন যা শেষ পর্যন্ত জিইনি অনলাইন পরিষেবাতে পরিণত হয়েছিল। অন্যান্য অনেক সংস্থা, তাদের মধ্যে উল্লেখযোগ্য টাইমশেয়ার এবং কম্পিউসার্ভ, ডার্টমাউথ মডেল অনুসরণ করে দ্রুত তাদের নিজস্ব হোস্ট করা বেসিক পরিষেবাগুলি চালু করে। 1968 সালে হিউলেট-প্যাকার্ড (এইচপি) এইচপি 2000 সিরিজের মিনিকম্পিউটার চালু করে, যা একটি র্যাক-মাউন্ট সিস্টেমে পূর্ববর্তী মেইনফ্রেম সিস্টেমের একই বৈশিষ্ট্য সরবরাহ করে যা প্রায় 100,000 মার্কিন ডলারে সম্পূর্ণ আকারে কনফিগার করা যেতে পারে। তাদের এইচপি টাইম-শেয়ার্ড বেসিকের ডার্টমাউথের থেকে বেশ কিছু পার্থক্য ছিল এবং এগুলি শীঘ্রই ডেটা জেনারেলের মতো অন্যান্য ছোট বিক্রেতাদের দ্বারা অনুলিপি করা হয়েছিল। একটি হোল্ডআউট ছিল ডিজিটাল ইকুইপমেন্ট কর্পোরেশন (ডিইসি), যারা 1972 সাল পর্যন্ত তাদের নিজস্ব নকশার একটি বেসিক চালু করেনি। এই সংস্করণ, বেসিক-প্লাস এইচপি বা ডার্টমাউথ উপভাষার থেকে আলাদা ছিল। 1970-এর দশকের গোড়ার দিকে বাজারে তিনটি প্রধান উপভাষা এবং কয়েক ডজন ছোটখাটো বৈচিত্র্য ব্যবহার করা হত। 1974 সালের জানুয়ারিতে এ. এন. এস. আই-এর ছত্রছায়ায় একটি একক আদর্শ মৌলিক সংজ্ঞায়িত করার জন্য একটি নতুন গোষ্ঠী গঠিত হয়। ডার্টমাউথ দল দলের একটি মূল অংশ গঠন করে। ডার্টমাউথ স্ট্রাকচার্ড বেসিক (এস. বি. এ. এস. আই. সি) নামে পরিচিত বেসিকের একটি ব্যাপকভাবে প্রসারিত সংস্করণ নিয়ে কাজ করছিলেন যা এ. এন. এস. আই-এর ভিত্তি হয়ে ওঠে। সেই সময়ে, অন্যান্য কয়েকটি উপভাষা এর অনেক নতুন বৈশিষ্ট্যকে সমর্থন করেছিল। দলটি সিদ্ধান্ত নেয় যে এস. বি. এ. এস. আই. সি-এর উপর ভিত্তি করে একটি সম্পূর্ণ মান নিয়ে একমত হতে কিছুটা সময় লাগবে, তাই এ. এন. এস. আই-এর মৌলিক প্রচেষ্টাকে দুটি মাইলফলকে বিভক্ত করা হয়। প্রথমটি, মিনিমাল বেসিক, এমন একটি মান তৈরি করবে যাতে কেবলমাত্র সবচেয়ে মৌলিক বৈশিষ্ট্যগুলি অন্তর্ভুক্ত থাকবে যা যে কোনও বাস্তবায়নের জন্য প্রয়োজনীয় হবে। এমনকি ম্যাট্রিক্স গণিতের মতো ডার্টমাউথের দীর্ঘ-সমর্থিত বৈশিষ্ট্যগুলিও বাদ দেওয়া হবে। ন্যূনতম বেসিকের জন্য খসড়া মান 1976 সালের জানুয়ারিতে, 1977 সালের জুলাই মাসে চূড়ান্ত খসড়া প্রকাশ করা হয় এবং সেই ডিসেম্বরে এটি অনুমোদিত হয়। ডার্টমাউথ কলেজের পদার্থবিজ্ঞানী আর্থার লুয়েরম্যান, যিনি বেসিকের প্রবক্তা ছিলেন এবং এএনএসআই গ্রুপের অংশ ছিলেন, পরে বলেছিলেনঃ "এক্স3জে2-এর প্রথম কয়েক বছর 1964 সালের মূল ডার্টমাউথ বেসিকের পরিমাণের মান নির্ধারণে ব্যয় করা হয়েছিল (পশ্চাৎদৃষ্টি, কেউ কেউ 'নষ্ট' বলতে পারে)। মিনিমাল বেসিক একটি প্রকৃত ভাষার চেয়ে বেশি খেলনা ছিল। পূর্ণ মৌলিক দলটি তখন পূর্ণ মৌলিকের দিকে মনোনিবেশ করে। এই সময়ের মধ্যে মাইক্রোকম্পিউটার বিপ্লব পূর্ণপ্রবাহে ছিল এবং মাইক্রোসফ্ট বেসিক বা অনুরূপ বেসিক চালিত লক্ষ লক্ষ মেশিন বাজারে প্রবেশ করছিল। তা সত্ত্বেও, অংশগ্রহণকারীদের কেউই মাইক্রো কম্পিউটার বিক্রেতা বা সরবরাহকারী ছিলেন না। পরিবর্তে, অংশগ্রহণকারীরা আইবিএম, কন্ট্রোল ডেটা এবং জেনারেল ইলেকট্রিকের মতো মেইনফ্রেম বিক্রেতা, ডিজিটাল ইকুইপমেন্ট কর্পোরেশন (ডিইসি), ডেটা জেনারেল এবং ওয়াং ল্যাবরেটরিজ এবং থ্রিএম, আমেরিকান এক্সপ্রেস এবং কোডাকের মতো অন্যান্য খুব বড় সংস্থাগুলি থেকে যায়। প্রতিটি সদস্য তাদের নিজস্ব "অবশ্যই থাকতে হবে" বৈশিষ্ট্যগুলির তালিকা যোগ করতে শুরু করায় এই প্রচেষ্টাটি অবিলম্বে দ্বিতীয়-ব্যবস্থার প্রভাবকে ব্যর্থ করে দেয়। কেউ কেউ চেয়েছিলেন যে ভাষাটি ছোট মেশিনে চলমান শিক্ষামূলক ব্যবহারের ঐতিহ্য অব্যাহত রাখুক এবং শুধুমাত্র প্রাথমিক ফাইল সমর্থন এবং অনুরূপ বৈশিষ্ট্য সহ একটি সহজ ভাষা চায়। অন্যরা ছিলেন মেইনফ্রেম ব্যবহারকারী যারা আরও ভাল স্ট্রিং ম্যানিপুলেশন দেওয়ার সময় কোবল বা ফোরট্রানের মতো ভাষার সাথে প্রতিযোগিতা করার জন্য লোডযোগ্য মডুলার প্রোগ্রাম এবং অন্যান্য বিস্তৃত প্রোগ্রামিং বৈশিষ্ট্যগুলিকে সমর্থন করতে চেয়েছিলেন। তৃতীয় একটি গোষ্ঠী প্রাথমিকভাবে ব্যবসায়িক প্রয়োগগুলিতে আগ্রহী ছিল, বিশেষত ইউরোপীয় ব্যবহারকারীরা যেখানে বেসিক একটি প্রাথমিক ব্যবসায়িক ভাষায় পরিণত হয়েছিল, এবং তারা দাবি করেছিল যে এই ব্যবস্থায় ব্যাপক ফাইল পরিচালনা এবং দশমিক গণিত অন্তর্ভুক্ত করা হয়েছে যা বৃত্তাকার সমস্যায় ভুগছে না। বেসিকের মূল নকশাকার এবং এ. এন. এস. আই গ্রুপের সদস্য জন জি. কেমেনি এবং থমাস ই. কার্টজ এই প্রক্রিয়ার সমালোচনা করেছিলেন। 1982 সালের একটি নিবন্ধে কার্টজ লিখেছিলেন যে আপাতদৃষ্টিতে ছোট ছোট বিষয়গুলিও কীভাবে বড় বিতর্কে পরিণত হয়েছিল। তিনি উক্তির উদাহরণ ব্যবহার করেন। যখন অ্যারেগুলি প্রথম বেসিক-এ যুক্ত করা হয়েছিল, তখন তারা সূচক 1-এ শুরু হয়েছিল, যা 1,2 এবং 3 তিনটি স্লট সহ একটি অ্যারে তৈরি করেছিল। কিছু ক্ষেত্রে, একটি সূচক 0 আরও স্বাভাবিক, তাই ডার্টমাউথ কোডের পরবর্তী সংস্করণগুলিতে যোগ করা হয়েছিল যাতে একই সংজ্ঞায় চারটি স্লট থাকে, 0 থেকে 3। মিনিমালের সময়, ডিফল্ট বেস কী হওয়া উচিত তা নিয়ে ক্রমাগত বিতর্ক ছিল এবং অবশেষে 0 নির্বাচন করা হয়েছিল। পাঁচ বছর পরে, পূর্ণ প্রচেষ্টার সময়, সিদ্ধান্ত নেওয়া হয়েছিল যে অ্যারেগুলি নতুন বাক্য গঠন ব্যবহার করে যে কোনও নিম্ন সীমা সংজ্ঞায়িত করতে পারে। এটি ডিমান্ডটি সরিয়ে দেয় এবং ডিফল্টটিকে আবার 1-এ পরিবর্তন করার সিদ্ধান্ত নেওয়া হয়। প্রাথমিকভাবে, X3.60 গ্রুপটি প্রথম প্রযুক্তিগত পর্যালোচনার অনুলিপির জন্য 1982 সালের গ্রীষ্মের তারিখ লক্ষ্য করছিল, যা শরত্কালে এএনএসআই এক্স3 কমিটিতে পাঠানো হবে। এই সময়ের মধ্যে প্রস্তাবিত মানটি পাঠানো হবে এবং জনসাধারণের মতামত গ্রহণ করা হবে। চূড়ান্ত খসড়াটি সেই বছর অনুমোদনের জন্য 1983 সালে এক্স 3-এর কাছে ফেরত পাঠানো হবে। এটি বেশ আশাবাদী প্রমাণিত হয়েছিল। প্রথম খসড়াটি 1985 সালের জানুয়ারি পর্যন্ত এবং চূড়ান্ত খসড়াটি 1986 সালে 1987 সালের জানুয়ারিতে অনুমোদনের জন্য প্রকাশ করা হয়নি। এই সময়ে, মানটি এত বড় হয়ে ওঠে যে এটি শেষ পর্যন্ত একটি মূল মডিউল এবং পাঁচটি ঐচ্ছিক অ্যাড-অনেতে বিভক্ত হয়ে যায়, যার মধ্যে জটিল ফাইল পরিচালনা, রিয়েল-টাইম কম্পিউটিং সমর্থন, নির্দিষ্ট দশমিক গণিত, ঐচ্ছিক সম্পাদনা কমান্ড এবং এমনকি একটি প্ল্যাটফর্ম-স্বাধীন গ্রাফিক্স মডিউল অন্তর্ভুক্ত ছিল। জনসাধারণের মন্তব্যের সময়কালে ফলাফলটি সমালোচিত হয়েছিল। একজন পর্যালোচক উল্লেখ করেছেন যে এটি এত বড় হয়ে উঠেছে যে "ফলস্বরূপ ভাষা জটিলতায় যে কোনও বর্তমান প্রোগ্রামিং ভাষার প্রতিদ্বন্দ্বী" এবং "সমগ্র মানের সাথে সামঞ্জস্যপূর্ণ হওয়া এখন পর্যন্ত চেষ্টা করা সবচেয়ে উল্লেখযোগ্য সংকলক প্রকল্পের সাথে তুলনা করবে"। এটি বর্ণনা করে, উদাহরণস্বরূপ, কীভাবে একটি সাবরুটিন বর্ণনা করার জন্য কমপক্ষে পাঁচটি ভিন্ন উপায় রয়েছে, একটি স্ট্রিংয়ের সর্বাধিক দৈর্ঘ্য সংজ্ঞায়িত করার জন্য তিনটি এবং একটি অ্যারে সংজ্ঞায়িত করার জন্য দুটি উপায় রয়েছে। অ্যারে বাউন্ডের বিষয়টি উল্লেখ করে, এটি উল্লেখ করা হয়েছে যে কমিটি সম্মত হয়েছে যে গৃহীত সমাধানটি "অসহনীয়" এবং এটি "পরে" ঠিক করার পরিকল্পনা করেছে। কোনও প্রমাণ নেই যে অংশগ্রহণকারীদের মধ্যে কেউ প্রকৃতপক্ষে মান প্রকাশের পরে একটি সামঞ্জস্যপূর্ণ সংস্করণ তৈরি করেছিলেন এবং চলমান প্রচেষ্টার কোনও উল্লেখ অবিলম্বে অদৃশ্য হয়ে যায়। 1987 সাল থেকে, মানটির একমাত্র উল্লেখ হল যে এটি বিদ্যমান এবং ট্রু বেসিক এর কিছু বৈশিষ্ট্যকে অন্তর্ভুক্ত করেছে। উপরন্তু, লক্ষ লক্ষ মাইক্রো এই সময়ের মধ্যে এমএস-এর ডিফ্যাক্টো স্ট্যান্ডার্ডের কিছু বৈচিত্র্য চালাচ্ছে, নতুন এএনএসআই স্ট্যান্ডার্ডকে অ-মানক সমাধান হিসাবে দেখা হয়েছিল। মাইক্রো প্ল্যাটফর্মে বেসিকের মূল সাফল্যের বেশিরভাগই ছিল যে এটি মুদ্রিত সোর্স কোড থেকে প্রোগ্রামগুলি টাইপ করার অনুমতি দিয়েছিল, তবে 1980-এর দশকের মাঝামাঝি সময়ে এটি সঙ্কুচিত অ্যাপ্লিকেশন দ্বারা প্রতিস্থাপিত হয়েছিল এবং বিতরণ ব্যবস্থা হিসাবে বেসিকের প্রয়োজনীয়তা ম্লান হয়ে গিয়েছিল। বৃহত্তর ব্যবস্থার দিক থেকে, শিক্ষাদানের ভাষা হিসাবে মূল ব্যবহার ক্রমবর্ধমানভাবে পাস্কাল দ্বারা প্রতিস্থাপিত হচ্ছে, কারণ আন্তঃক্রিয়াশীলতা এবং অনলাইন সম্পাদনার মতো মৌলিক বাহ্যিক সমস্যাগুলি এখন বেশিরভাগ ব্যবস্থায় উপলব্ধ ছিল। সত্যিকারের মৌলিক মান প্রক্রিয়াটি এতটাই ধীর ছিল যে স্ট্রাকচার্ড বেসিকের লেখকও শেষ পর্যন্ত এটি ছেড়ে দিয়েছিলেন। স্টিফেন গারল্যান্ডকে উচ্চ বিদ্যালয়ের শিক্ষার্থীদের জন্য কলেজ বোর্ড পরীক্ষার একটি সিরিজ প্রস্তুত করতে বলা হয়েছিল এবং পরিবর্তে সেগুলি পাস্কাল ভাষায় লিখেছিলেন। এটি কিছুটা বিতর্কিত ছিল কারণ কমোডোর 64 এবং টিআরএস-80-এর মতো ব্যাপকভাবে ব্যবহৃত অনেক কম্পিউটারের পাস্কেলের সম্পূর্ণ বাস্তবায়ন ছিল না। লুয়েরম্যান এই প্রচেষ্টার সমালোচনা করেছিলেন, আরও সাধারণ কোর্সের পরামর্শ দিয়েছিলেন যা আরও বেশি শিক্ষার্থীর জন্য প্রযোজ্য হবে। এএনএসআই গ্রুপের ডার্টমাউথ অংশগ্রহণকারীদের কাছে এটি স্পষ্ট হয়ে ওঠে যে কোনও যুক্তিসঙ্গত সময়ের মধ্যে এই প্রচেষ্টা সম্পন্ন হওয়ার কোনও আশা নেই। তারা এই প্রচেষ্টা ছেড়ে দেয় এবং তাদের ভাষার সংস্করণটিকে ট্রু বেসিক হিসাবে বাজারে আনার জন্য একটি নতুন সংস্থা শুরু করে। সত্যিকারের বেসিক মূল মানের অনেক বৈশিষ্ট্যকে একত্রিত করেছে তবে নিজস্ব বেশ কয়েকটি পরিবর্তনও করেছে। সবচেয়ে উল্লেখযোগ্য ছিল যে লাইন নম্বরিং এখন ঐচ্ছিক ছিল। ভাষাটি ভালভাবে গৃহীত হয়নি, অনেক পর্যালোচনা পূর্ণ মৌলিক মান সম্পর্কে উত্থাপিত বৈশিষ্ট্য ব্লোট সম্পর্কে একই উদ্বেগ প্রকাশ করেছে। জেরি পোর্নেল এটিকে "পাগলামি" বলে উপহাস করেছিলেন এবং জন ডোভোরাক এটিকে "দুঃখজনক" এবং "ব্যর্থতার জন্য অভিশপ্ত" বলে প্রত্যাখ্যান করেছিলেন। বিবরণ প্রোগ্রাম সম্পাদনা বেসিকের পূর্ববর্তী সংস্করণগুলির মতো, ফুল বেসিক একটি লাইন সম্পাদক পরিবেশে কাজ করার জন্য ডিজাইন করা হয়েছিল এবং এইভাবে সম্পাদনা বা অপসারণের জন্য পৃথক বা পরিসরের লাইন নম্বরগুলি নির্দেশ করতে লাইন নম্বর ব্যবহার করে। লাইন সংখ্যা 1 থেকে 50,000 পর্যন্ত হতে পারে, মিনিমালের বিপরীতে যা ছিল 0 থেকে 9999 পর্যন্ত। এর অর্থ হল লাইন 0 ব্যবহার করে বৈধ মিনিমাল প্রোগ্রামগুলি ফুল-এ অবৈধ ছিল। যৌক্তিক লাইনগুলি কমপক্ষে 132 অক্ষর দীর্ঘ ছিল। যৌক্তিক রেখাগুলি "ধারাবাহিকতা চরিত্র", অ্যাম্পারস্যান্ড ব্যবহার করে বেশ কয়েকটি ভৌত রেখা জুড়ে প্রসারিত করা যেতে পারে। দুর্ভাগ্যবশত, অ্যাম্পারস্যান্ডকে স্ট্রিং কনক্যাটেনেশন অপারেটর হিসাবেও নির্বাচিত করা হয়েছিল, যা পার্সারকে জটিল করে তুলেছিল। অতিরিক্ত সম্পাদনা আদেশের মধ্যে এবং অন্তর্ভুক্ত ছিল, যা এই সময়ের মধ্যে নতুন মাইক্রো কম্পিউটার উপভাষায় প্রচলিত ছিল। একটি নতুন ধারণা ছিল, যা একটি নতুন ফাইলে লাইনগুলির একটি পরিসীমা অনুলিপি করে এবং সেগুলিকে মূল প্রোগ্রাম থেকে মুছে দেয়, যার ফলে সেগুলি একটি উপ-প্রোগ্রামে বের করা যায়। তারপর কমান্ড ব্যবহার করে এগুলি আহ্বান করা যেতে পারে। প্যারামিটারগুলির একটি তালিকা অনুসরণ করে একটি ঐচ্ছিকও অন্তর্ভুক্ত করা যেতে পারে, যে ক্ষেত্রে এটি প্রোগ্রামের মতো একই নামের একটি পরিবর্তনশীলের একটি মান ফেরত দেবে বলে আশা করা হয়েছিল (নীচে "স্ট্রাকচার" দেখুন)। মৌলিক কার্যকারিতা মিনিমাল বা অন্যান্য উপভাষায় পাওয়া সাধারণভাবে ব্যবহৃত অনেক কীওয়ার্ড রয়ে গেছে;,, এবং উদাহরণস্বরূপ। এই কমান্ডগুলিতে অসংখ্য ছোটখাটো পরিবর্তন করা হয়েছিল। উদাহরণস্বরূপ, সম্পাদনার সময় কীওয়ার্ডগুলি বড় বা ছোট হাতের অক্ষরে বা যে কোনও মিশ্রণে টাইপ করা যেতে পারে। অতীতে যেমন ছিল, এগুলি সাধারণত বড় হাতের অক্ষরে প্রদর্শিত হত, অন্যদিকে একটি নতুন প্রথা ছিল বহু-অক্ষরের পরিবর্তনশীল নামের জন্য সাপের কেস ব্যবহার করা। ডার্টমাউথ বেসিক ইন-লাইন মন্তব্যের জন্য বিবৃতিটি চালু করে এবং এটি অন্যান্য উপভাষায় সর্বজনীনভাবে সমর্থিত ছিল। অনেক উপভাষায় একটি সংক্ষিপ্ত রূপও যুক্ত করা হয়েছে, যা সাধারণত একক-উদ্ধৃতি ব্যবহার করে, যা মাইক্রোসফ্ট বেসিক-এ দেখা যায়। সম্পূর্ণের জন্য, তারা এই ভূমিকার জন্য বিস্ময় চিহ্নটি বেছে নিয়েছে, যদিও একক উদ্ধৃতিটি ব্যবহার না করার কোনও কারণ নেই বলে মনে হয় কারণ এটি অন্যথায় ব্যবহৃত হয় না-উদাহরণস্বরূপ স্ট্রিং একক-উদ্ধৃতি সীমানা নির্ধারণের অনুমতি দেয় না। আরও একটি বিতর্কিত পরিবর্তন ছিল যে পার্সিংকে সহজ করার জন্য এখন সমস্ত অ্যাসাইনমেন্টের জন্য কীওয়ার্ডের প্রয়োজন ছিল, যেখানে অন্য প্রতিটি উপভাষায় ঐচ্ছিক ছিল। এর মধ্যে মিনিমাল অন্তর্ভুক্ত ছিল, তাই এই শর্টকাট ব্যবহার করে যে কোনও মিনিমাল কোড ফুলের সাথে সামঞ্জস্যপূর্ণ ছিল না। মিনিমাল থেকে 23টি কীওয়ার্ড এবং 11টি ফাংশনের তুলনামূলকভাবে ছোট সেটের উপরে, মোট 176টি কীওয়ার্ড (161টি পৃথক ধারণা সংজ্ঞায়িত), 38টি গাণিতিক ফাংশন এবং 14টি স্ট্রিং ফাংশনের জন্য ফুল তার নিজস্ব কয়েক ডজন যোগ করেছে, যদি সমস্ত এক্সটেনশন অন্তর্ভুক্ত করা হয়। তিনটি কলামে সাজানো মূলশব্দগুলির একটি সহজ তালিকা স্ট্যান্ডার্ড নথিতে দুটি পৃষ্ঠা পূরণ করে। পূর্ণ এবং ন্যূনতমের মধ্যে প্রধান পার্থক্য ছিল ব্লক-ভিত্তিক কাঠামোগত প্রোগ্রামিং নির্মাণের সংযোজন। মিনিমাল এবং বেশিরভাগ বেসিক দোভাষীদের ক্ষেত্রে, প্রোগ্রামটি যৌক্তিকভাবে কোডের স্বাধীন লাইন নিয়ে গঠিত এবং যে কোনও লাইন নম্বর দিয়ে যে কোনও সময়ে কার্যকর করা শুরু করা যেতে পারে। এই নিয়মের একমাত্র ব্যতিক্রম ছিল লুপ, যেখানে ফর থেকে নেক্সট পর্যন্ত সমস্ত লাইনকে যৌক্তিকভাবে কোডের একক ব্লক হিসাবে বিবেচনা করা হত। একটি এফওআর ব্লকের মধ্যে বা বাইরে শাখা করার ফলে বিজোড় আচরণ হতে পারে, সাধারণত বাস্তবায়ন নির্ভরশীল তবে সাধারণত কিছু ধরণের ত্রুটি যেমন "পরবর্তী কোনও ত্রুটি ছাড়াই"। সম্পূর্ণরূপে, একটি FOR.NEXT ব্লকে শাখা করার অনুমতি নেই, অথবা বিবৃতিটি ব্যবহার না করে শাখা করার অনুমতি নেই। বাস্তবায়নের জন্য এই ধরনের বিবৃতিগুলি পরীক্ষা করা এবং সেগুলিকে অনুমতি না দেওয়ার কথা ছিল, উদাহরণস্বরূপ, একটি লুপে কোড এড করার ক্ষেত্রে খুঁজে বের করা। একজন দোভাষীতে এই ধরনের কোড পরীক্ষা করা কঠিন, যা সাধারণত লাইন-বাই-লাইন প্রোগ্রাম পরীক্ষা করে; প্রোগ্রামের অন্যান্য কোড থেকে একটি ব্লকে শাখা পরীক্ষা করার জন্য সাধারণত কম্পাইলারের মতো পুরো প্রোগ্রাম পার্স করার প্রয়োজন হয়। সম্পূর্ণরূপে, অতিরিক্ত ব্লক কাঠামো প্রদানের জন্য বেশ কয়েকটি বিদ্যমান কীওয়ার্ড প্রসারিত করা হয়েছিল এবং অন্যান্যগুলি যুক্ত করা হয়েছিল। উল্লেখযোগ্য ছিল মাল্টি-লাইন, যা শর্তটি পূরণ বা ব্যর্থ হলে কোডের একাধিক লাইন চালানোর অনুমতি দেয়। সিদ্ধান্ত গাছ তৈরি করতে যোগ করা হয়েছিল, যা আগে চালানোর জন্য একটি লাইন নির্বাচন করতে বা একাধিক এস ব্যবহার করে প্রয়োগ করা হত। লুপগুলি মিনিমালে যেমন ছিল তেমনই ছিল, তবে শীর্ষ পরীক্ষিত এবং নীচের পরীক্ষিত জাতগুলির সাথে একটি নতুন যুক্ত করা হয়েছিল। সমস্ত লুপগুলি এখন এবং কমান্ড ব্যবহার করে নিরাপদে প্রস্থান করা যেতে পারে। ব্লক কাঠামোর এই পরিবর্তনগুলির উপরে, পদ্ধতি, ফাংশন এবং প্রোগ্রাম ব্লকগুলি সংজ্ঞায়িত করার জন্য ফুল কীওয়ার্ডও যুক্ত করেছে। সামগ্রিকভাবে প্রোগ্রামগুলি এখন ঐচ্ছিক কীওয়ার্ডের পরে একটি প্রোগ্রামের নাম দিয়ে খোলা হয় এবং আগের মতোই এর সাথে শেষ হয়। রুটিনগুলি ব্যবহার করে এবং কল করে তৈরি করা যেতে পারে। মাল্টি-লাইন ফাংশনগুলি তৈরি করা হয়েছিল এবং একটি রিটার্ন টাইপ ঘোষণা করা হয়নি কারণ এটি নাম-স্ট্রিং ফাংশন নামগুলির অংশ ছিল যা ডলার চিহ্ন দিয়ে শেষ হয়েছিল। রিটার্ন মানটি ফাংশনের মতো একই নামে একটি পরিবর্তনশীল সেট করে সরবরাহ করা হয়েছিল, উদাহরণস্বরূপ, "ডিওআইটি" নামে একটি ফাংশনে একটি লাইন থাকবে। ফাংশনগুলি অন্যান্য ফাংশন এবং নিজেদেরকে কল করতে পারে, যার অর্থ ভাষাটি স্বাভাবিকভাবেই পুনরাবৃত্তিমূলক ছিল। ফুল কীওয়ার্ড ব্যবহার করে এক-লাইন ফাংশনের সংজ্ঞাগুলির পূর্ববর্তী শৈলীও ধরে রেখেছে, তবে "এফএন" দিয়ে শুরু করার জন্য ফাংশনের নামের প্রয়োজনীয়তা সরিয়ে দিয়েছে। উদাহরণস্বরূপ,। পূর্ববর্তী বেসিকগুলিতে সুযোগের কোনও ধারণা ছিল না এবং সমস্ত পরিবর্তনশীল বৈশ্বিক ছিল। বড় মডুলার প্রোগ্রাম নির্মাণের জন্য এটি যথেষ্ট নয়, কারণ কোডের একটি অংশ সাধারণ পরিবর্তনশীল নাম ব্যবহার করে লেখা হতে পারে এবং সেই পরিবর্তনশীলের মান পরিবর্তন করতে পারে। যেহেতু পরিবর্তনশীলটি বিশ্বব্যাপী, তাই এটি মূল কোডে ফিরে আসার সময় পরিবর্তিত মানটি ধরে রাখে। কাঠামোগত প্রোগ্রামিংয়ের একটি মূল ধারণা হল স্থানীয় পরিবর্তনশীল, যা যৌগিক প্রোগ্রামের অন্যান্য স্থানে একই নামের অন্যান্য পরিবর্তনশীল থেকে তার মানকে আলাদা রাখে। যেহেতু বেসিকের সুযোগের ধারণা ছিল না, তাই অনেক প্রোগ্রাম বিশ্বব্যাপী আচরণের উপর নির্ভর করত এবং সাবরুটিনের ভিতরে এবং বাইরে তথ্য প্রেরণের জন্য ভেরিয়েবল ব্যবহার করত। নতুন ভাষায় উভয় ধারণার অনুমতি দেওয়ার জন্য, ফুল বেসিক কীওয়ার্ড যুক্ত করেছে যা কোনও ফাংশন বা সাবরুটিনে যোগ করা যেতে পারে এবং স্থানীয় ভাষায় যে কোনও পরিবর্তনশীল তৈরি করতে পারে। যেহেতু বেসিক প্রোগ্রামগুলি সাধারণত প্রোগ্রামের সোর্স কোডের শেষে সাবরুটিন স্থাপন করে, তাই কীওয়ার্ডটি প্রদান করা ফরওয়ার্ড ঘোষণাগুলিতে যোগ করা হয়েছিল। তথ্যের ধরন এবং পরিবর্তনশীল পূর্ণ মৌলিক দীর্ঘ পরিবর্তনশীল নাম প্রবর্তন করে, অবশেষে অতীতের একক অক্ষর বা অক্ষর-অঙ্কের নামগুলি থেকে মুক্ত হয়। এটি 31টি অক্ষরে নতুন সীমা নির্ধারণ করেছে। এই পরিবর্তনের একটি ছোটখাটো নেতিবাচক দিক ছিল যে কীওয়ার্ডগুলির মধ্যে ফাঁক থাকতে হবে, যেখানে বেশিরভাগ পূর্ববর্তী সংস্করণগুলি ফাঁকগুলি বাদ দেওয়ার অনুমতি দেয়। এর কারণ ছিল একক-অক্ষরের নামের মতো একটি লাইনকে "এফ. ও. আর. এস" হিসাবে বিশ্লেষণ করা যেতে পারে, যা সম্ভবত বেসিকের দ্বি-অক্ষরের বৈচিত্র্যে পরিবর্তনশীল হতে পারে না। সম্পূর্ণরূপে, এটি টাইপ করতে হবে কারণ "এফ. ও. আর. এস" একটি বৈধ পরিবর্তনশীল নাম। পূর্ববর্তী বেসিকগুলির ক্ষেত্রে যেমন ছিল, পূর্ণ ডেটা প্রকারগুলি পরিবর্তনশীল নামের প্রত্যয় দ্বারা চিহ্নিত করা হত। মিনিমাল শুধুমাত্র সংখ্যাসূচক ভেরিয়েবল রেখে এই সমস্যা এড়াতে পেরেছিল, তবে উদাহরণস্বরূপ, পূর্ণ অন্তর্ভুক্ত স্ট্রিংও, ডলার-সাইন ব্যবহার করে চিহ্নিত করা হয়। ফ্লোটিং পয়েন্ট সিস্টেমের ডিফল্ট বাস্তবায়নের জন্য পূর্ণ মৌলিক দশমিক গণিতের প্রয়োজন হয়। যেহেতু এটি হার্ডওয়্যারে সর্বজনীনভাবে সমর্থিত ছিল না, বিশেষত মিনি এবং মাইক্রোগুলিতে, এটি আরও যোগ করেছে যা নির্দেশ করে যে সিস্টেমের ডিফল্ট ফ্লোটিং পয়েন্ট বাস্তবায়ন ব্যবহার করে গণিত করা উচিত, তা যাই হোক না কেন। এটি দিয়ে বিসিডি মোডে ফিরিয়ে আনা যেতে পারে। ইনস্টল করা থাকলে এটি ফিক্সড-পয়েন্ট গণিত বিকল্পের অতিরিক্ত। সংখ্যাসূচক এবং স্ট্রিং ভেরিয়েবল অন্যথায় অন্যান্য বেসিকের মতো কাজ করে। একটি নতুন সংযোজন ছিল ফিক্সড-পয়েন্ট গণিত এক্সটেনশন, যা ভেরিয়েবলগুলিকে নির্দিষ্ট নির্ভুলতার অনুমতি দেয়। এটি একটি তারকাচিহ্ন দ্বারা অনুসরণ করা কমান্ড ব্যবহার করে চালু করা হয়েছিল এবং উদাহরণস্বরূপ, একটি বিন্যাস নির্দিষ্টকারী সমস্ত সংখ্যাসূচক ভেরিয়েবলকে 8 অঙ্কের নির্ভুলতা এবং দুটি দশমিক স্থানে সেট করবে। এই ধরনের একটি ঘোষণা অবশ্যই বাকি প্রোগ্রামের যে কোনও গণিত কোডের আগে রাখতে হবে। উপরন্তু, যে কোনও একক পরিবর্তনশীলকে পৃথকভাবে এই ধরনের কিছু ব্যবহার করে সংজ্ঞায়িত করা যেতে পারে। বেশিরভাগ বেসিক কীওয়ার্ড ব্যবহার করে অ্যারে ভেরিয়েবলের নির্মাণকে সমর্থন করে, উদাহরণস্বরূপ, দুটি অ্যারে সংজ্ঞায়িত করে, একক-মাত্রা এ এবং দ্বি-মাত্রা (ম্যাট্রিক্স) বি। ফুল বেসিক-এ, যে কোনও অ্যারের নিম্ন সীমা সাধারণত 1 ছিল, তাই এই ক্ষেত্রে, পরিবর্তনশীল এ-এর পাঁচটি "স্লট" রয়েছে, যার সংখ্যা 1 যদিও 5। এই ঘোষণার উপরে ব্যবহার করলে সূচক 0-এ আরেকটি স্থান যোগ হবে। ফুল কীওয়ার্ড ব্যবহার করে সরাসরি নিম্ন এবং উপরের সীমা নির্দিষ্ট করার জন্য একটি নতুন সিস্টেমও যুক্ত করেছে, উদাহরণস্বরূপ, যা একটি এক-মাত্রিক 101-স্লট অ্যারে তৈরি করে। বিষয়গুলিকে আরও বিভ্রান্ত করার জন্য, অ্যারে তৈরি করতেও ব্যবহার করা যেতে পারে; শেষ উদাহরণের মতো একই মাত্রা তৈরি করা যেতে পারে। গণিত, যুক্তি এবং ম্যাট্রিক্স সমর্থিত গণিত অপারেটরদের তালিকায় মিনিমাল,,, এবং থেকে সমস্ত অন্তর্ভুক্ত ছিল। নতুন ফাংশনটি একটি পূর্ণসংখ্যা বিভাগের অবশিষ্টাংশ প্রদান করে। লজিক্যাল অপারেটরদের তালিকা প্রসারিত করা হয়েছিল, এবং মিনিমাল থেকে সরানো হয়েছিল এবং এখন পুনরায় যুক্ত করা হয়েছে, এবং তুলনামূলক অপারেটরদের বিকল্প রূপগুলি যুক্ত করা হয়েছে, এবং। প্রাথমিক অন্তর্নির্মিত ফাংশনগুলির তালিকা বেসিকের পূর্ববর্তী সংস্করণগুলির মতো রয়ে গেছে, যার মধ্যে সাধারণ উদাহরণ যেমন বা। ,,, এবং অন্তর্ভুক্ত করার জন্য ট্রিগ ফাংশনগুলি প্রসারিত করা হয়েছিল। নতুন ফাংশনটি উৎস এবং একটি প্রদত্ত X, Y বিন্দুর মধ্যবর্তী কোণটি ফিরিয়ে দেয়। বেসিক সাধারণত রেডিয়ানে কোণ গণনা করে, তবে সমস্ত প্যারামিটার এবং আউটপুটকে ডিগ্রিতে রূপান্তরিত করে এবং সিস্টেমটি এই রূপান্তরগুলিতে এবং অন্য কোথাও ব্যবহৃত ফাংশনটি প্রকাশ করে। ডার্টমাউথ বেসিক তার বিবর্তনের তুলনামূলকভাবে প্রথম দিকে ম্যাট্রিক্স অপারেশন চালু করেছিল এবং এগুলি ফুলের অংশ ছিল। এগুলি বিদ্যমান গণিত ফাংশনগুলিকে ওভারলোড করে, তাই যদি বি প্যারামিটারটি একটি অ্যারে না হয় তবে একটি অ্যারের বিষয়বস্তু ব্যবহার করে দুটি অ্যারেকে গুণ বা একটি স্কেলার দ্বারা গুণ করতে পারে। সিস্টেমটি বেশ কয়েকটি অ্যারে-অনলি ফাংশনও যোগ করে, যার মধ্যে অন্যদের মধ্যে ও, এর্ট এবং এরমিনেট অন্তর্ভুক্ত রয়েছে। ম্যাট্রিক্স গণিত যোগ করার জন্য বিদ্যমান কীওয়ার্ডগুলির পরিবর্তন প্রয়োজন যেমন এবং, যা অ্যারে প্যারামিটার পূরণ করার জন্য প্রয়োজনীয় একাধিক উপাদান আউটপুট বা ইনপুট করে। ম্যাট্রিক্সগুলি নতুন সীমানা নির্দিষ্ট করে a-এর অংশ হিসাবে পুনঃপরিমাপ করা যেতে পারে, যেমন। নতুন মাত্রাগুলিতে অবশ্যই মূলটির সমান বা তার চেয়ে ছোট উপাদান থাকতে হবে, তাই এই উদাহরণে যদি মূল সংজ্ঞাটি হয়, তবে ইনপুটটি একটি ত্রুটি সৃষ্টি করবে। স্ট্রিংস ডার্টমাউথ বেসিকের প্রাথমিক সংস্করণগুলিতে স্ট্রিং ভেরিয়েবল বা ম্যানিপুলেশন অন্তর্ভুক্ত ছিল না, একটি প্রোগ্রামের একমাত্র স্ট্রিং স্থির ছিল। 1968 সালের সংস্করণ 4, স্ট্রিং ভেরিয়েবল এবং তাদের পরিচালনা করার জন্য একটি একক পদ্ধতি যোগ করেছে, যা অক্ষরগুলির এ. এস. সি. আই. আই মান ধারণকারী একটি অ্যারে থেকে স্ট্রিংকে রূপান্তরিত করে। উদাহরণস্বরূপ, A-তে মানগুলির একটি অ্যারে তৈরি করবে, যেখানে A (0) ছিল 72, "H"-এর জন্য দশমিক ASCII মান। এটি স্ট্রিং ম্যানিপুলেশনকে মোটামুটি কঠিন করে তোলে, উদাহরণস্বরূপ, "হ্যালো, ওয়ার্ল্ড!" থেকে "হ্যালো" বের করা। ", একজনকে করতে হবেঃ 10 এ $=" হ্যালো, ওয়ার্ল্ড! " 20 ডিআইএম এ (25), বি (5) 30 পরিবর্তন এ $থেকে এ 40 ফর আই = 1 থেকে 5 50 বি (আই) = এ (আই) 60 পরবর্তী আই 70 পরিবর্তন বি থেকে বি $বেসিকের অনেক উপভাষা এই ধরনের জটিলতা এড়াতে আরও কার্যকর স্ট্রিং ম্যানিপুলেশন করার জন্য তাদের নিজস্ব পদ্ধতি যুক্ত করেছিল। ফুল বেসিকের জন্য, কমিটি এইচপি দ্বারা প্রবর্তিত ধারণার একটি বৈচিত্র্য নির্বাচন করেছে, "স্ট্রিং স্লাইসিং"। এই ধারণাটি স্ট্রিংকে অক্ষরের একটি অ্যারে হিসাবে বিবেচনা করে এবং "স্লাইস" নামে পরিচিত একটি অ্যারের মতো নির্দিষ্টকরণ ব্যবহার করে সেগুলি অ্যাক্সেস করতে পারে। "হ্যালো, ওয়ার্ল্ড" থেকে "হ্যালো" সম্পূর্ণরূপে বের করার জন্য, একজন ব্যবহার করবে। ধারণাটি এর অনুরূপ, তবে এই পদ্ধতিটি এমন ফলাফল তৈরি করে যা নিজেই স্ট্রিং, সংখ্যাসূচক মান নয়, এবং এইভাবে কেউ "হ্যালো" তৈরি করতে পারে। ফুলের পদ্ধতি এবং এইচপি-র মতো পূর্ববর্তী পদ্ধতির মধ্যে একটি উল্লেখযোগ্য পার্থক্য হল যে এটি স্লাইসিংয়ের জন্য একটি ভিন্ন সিনট্যাক্স ব্যবহার করে, যেখানে পূর্ববর্তী সিস্টেমগুলি অ্যারে সিনট্যাক্স ব্যবহার করে। উদাহরণস্বরূপ, এইচপি-তে, সমতুল্য রেখাটি হল। যেহেতু এটি অ্যারে অ্যাক্সেসের মতো একই বাক্য গঠন, তাই এইচপি (এবং অনুরূপ) সাধারণত স্ট্রিং অ্যারেগুলিকে অনুমতি দেয়নি, যেখানে এটি ফুল-এ অনুমোদিত ছিল। এই পদ্ধতিটি ডিইসি দ্বারা নির্বাচিত সমাধানের সাথে বিপরীত হওয়া উচিত, নতুন স্ট্রিং ফেরত দেয় এমন ফাংশনের ব্যবহার, এবং। পিডিপি-10-এ তাদের বেসিক লেখার সময় মাইক্রোসফ্ট এই সমাধানটি গ্রহণ করেছিল। দুটির মধ্যে রূপান্তর করা ত্রুটি প্রবণ হতে পারে, সমতুল্য সম্পাদন করতে, ফুল ব্যবহার করবে। ইনপুট/আউটপুট ফুল বেসিকের জন্য ফোকাসের আরেকটি ক্ষেত্র ছিল ইনপুট/আউটপুট (আই/ও)। ন্যূনতম বেসিকের একমাত্র আই/ও ছিল এবং কমান্ড এবং বিবৃতি এবং এটি ব্যবহার করে হার্ড-কোড ডেটা করার ক্ষমতা। প্রায় সমস্ত ব্যবহারিক উপভাষা যোগ করা হয়েছিল এবং একটি "চ্যানেল" তৈরি করা হয়েছিল যা তখন সেই নির্দিষ্ট ফাইল বা ডিভাইসকে বোঝাতে ব্যবহৃত হত। উদাহরণস্বরূপ, এখন একটি ঐচ্ছিক, তারপরে একটি স্ট্রিং, একটি কোলন এবং তারপরে ইনপুট ভেরিয়েবল অন্তর্ভুক্ত করা হয়েছে। এই সময়ের মধ্যে প্রায় সমস্ত বেসিক শব্দটি ছাড়া একটি অনুরূপ বৈশিষ্ট্য অন্তর্ভুক্ত করে এবং কোলনের পরিবর্তে বিদ্যমান মুদ্রণ বিভাজক অর্ধ-কোলন ব্যবহার করে, উদাহরণস্বরূপ এমএস বেসিক একই লাইন হবে। এর উপরে, ফুল নতুন এবং মূলশব্দগুলিও যুক্ত করেছেঃ, যা ব্যবহারকারী কিছুই প্রবেশ না করলেও 30 সেকেন্ডের পরেও কার্যকর করা অব্যাহত রাখবে এবং সম্ভবত 30 সেকেন্ডের সময়কে পরিবর্তনশীল টি-তে রাখবে। ঘড়ির অভাব থাকা সিস্টেমগুলির জন্য (যা সেই সময়ে অস্বাভাবিক ছিল না), টি সর্বদা-1 ফিরিয়ে দেবে। ইঙ্গ একইভাবে ঐচ্ছিক বিবৃতি সহ প্রসারিত হয়েছিল, যা ইতিমধ্যে বেশ কয়েকটি বাস্তবায়নে উপস্থিত হয়েছিল। সাধারণত দশমিক স্থান চিহ্নিত করতে সংখ্যা চিহ্ন, তারকাচিহ্ন এবং শতাংশ চিহ্ন ব্যবহার করে একটি বিন্যাস স্ট্রিং দ্বারা অনুসরণ করা হত। বিন্যাসের স্ট্রিংটি একটি স্ট্রিং পরিবর্তনশীলের মধ্যে স্থাপন করা যেতে পারে এবং তারপরে উল্লেখ করা যেতে পারে, অথবা একটি ধারণকারী একটি ঐচ্ছিক পৃথক লাইন লাইন নম্বর দ্বারা উল্লেখ করা যেতে পারে। প্রিন্টিং এরিয়া সেট করতে নতুন কমান্ডও যোগ করা হয়েছে, এবং। এই বিভিন্ন সেটিংসের (এবং অন্যান্য) বর্তমান মানগুলি ব্যবহার করে ফেরত দেওয়া যেতে পারে। উদাহরণস্বরূপ, এর পরে জে-কে 30-এ সেট করা হবে। এবং সহ সম্পূর্ণ সমর্থিত ফাইল অপারেশন এবং উদাহরণস্বরূপ, একটি সংখ্যা চিহ্ন সহ একটি চ্যানেল নম্বর প্রিফিক্স করা। ডেটা তারপর এবং বা এবং নতুন ব্যবহার করে লেখা যেতে পারে। অতিরিক্ত ফাইল হ্যান্ডলিং কমান্ডের মধ্যে এবং, এবং এই সমস্ত কমান্ডের অসংখ্য বিকল্প এবং মোড ছিল। এর বেশিরভাগই 1970-এর দশকের শেষের দিকে এখনও প্রচলিত বিভিন্ন ধরনের শারীরিক যন্ত্র থেকে উদ্ভূত হয়েছিল, উদাহরণস্বরূপ, চৌম্বকীয় টেপ কেবল ক্রমানুসারে অ্যাক্সেস করা যেতে পারে তাই নতুন মানটি বা ইত্যাদির জন্য বিকল্প সরবরাহ করেছিল। বিকল্পগুলির তালিকা এবং তাদের মিথস্ক্রিয়া এবং সীমাবদ্ধতা স্ট্যান্ডার্ডের অনেক পৃষ্ঠাকে অন্তর্ভুক্ত করে। উদাহরণস্বরূপ, টাইপ করা সম্ভব, কিন্তু টাইপ করা সম্ভব নয়, যা প্রয়োজন। ব্যতিক্রম হ্যান্ডলিং এবং ডিবাগিং সেই যুগের অনেক বেসিকের মতো, ফুল কমান্ড যুক্ত করেছিল যা প্রোগ্রামটি কার্যকর করার সাথে সাথে লাইন নম্বরগুলি মুদ্রণ করবে। এটি ব্যবহার করে লাইন নম্বরগুলির মুদ্রণকে অন্য ডিভাইস বা ফাইলে পুনর্নির্দেশ করতে পারে, যেখানে #3 পূর্বে খোলা চ্যানেল ছিল। এটি এবং সম্পর্কিত বিবৃতিও যোগ করেছে, যার পরেরটি ব্যতিক্রমের কারণ হবে যদি ডিবাগিং আগে চালু করা থাকত। ডিবাগিং অবস্থা একটি নির্দিষ্ট প্রোগ্রামের মধ্যে সীমাবদ্ধ ছিল, তাই এটি একটি প্রোগ্রামে চালু করা যেতে পারে এবং উদাহরণস্বরূপ, একটি উপ-প্রোগ্রামে বন্ধ করা যেতে পারে। উপরন্তু, ব্লকের উপর ভিত্তি করে সম্পূর্ণ যুক্ত সত্য ব্যতিক্রম হ্যান্ডলার। এটি ব্যবহার করার দুটি উপায় ছিল, যদি নিম্নলিখিত কোড দিয়ে শুরু হওয়া কোড ব্লকটি ব্লক হিসাবে কার্যকর করা হয় এবং এর মধ্যে যে কোনও ব্যতিক্রম এটি বিভাগে ঝাঁপিয়ে পড়ে, যা একটি কোডের মতো কাজ করে। এটি একটি পৃথক সাবরুটিনের মতো ব্লক সংজ্ঞায়িত করে ব্যবহার করা যেতে পারে যা ব্যবহার করে নাম ব্যবহার করে ডাকা হবে। কোডটি মেটা-ভেরিয়েবল ব্যবহার করে কোন ব্যতিক্রম ঘটেছে তা পরীক্ষা করতে পারে, যার কোনওটিরই প্রয়োজন ছিল না। ত্রুটি হ্যান্ডলার থেকে বেরিয়ে এসে ত্রুটির লাইনে ফিরে আসে, যদিও ব্লকের মধ্যেও ত্রুটিগুলি উপেক্ষা করার জন্য মেইনলাইন কোডের মধ্যে ব্যবহার করা যেতে পারে। প্রায় একই সময়ে ফুল ডিজাইন করা হচ্ছিল, গ্রাফিক্স কার্নেল সিস্টেম বা জিকেএস সংজ্ঞায়িত করার জন্য একটি সমান্তরাল প্রচেষ্টা চলছে। এটি সম্পূর্ণ বিকল্প মডিউলগুলির মধ্যে একটি হিসাবে দেওয়া হয়েছিল। এটি বাক্যবিন্যাসের মতো কয়েক ডজন বিশেষ কীওয়ার্ড যুক্ত করেছে যা স্ট্যান্ডার্ডের অন্যান্য মডিউলগুলির সাথে মেলেনি। উদাহরণস্বরূপ, কমান্ডটি বর্তমান ভিউপোর্টে ক্লিপিং চালু করে যাতে এর সীমানার বাইরে আঁকা আইটেমগুলি দৃশ্যমান না হয়; এটি বুলিয়ানের পরিবর্তে একটি স্ট্রিং মান নেয়। বেশ কয়েকটি সাধারণ চিত্র পরিবর্তন কমান্ড যোগ করা হয়েছিল,,, এবং। যেহেতু চিত্রগুলি প্রায়শই সাধারণ উপাদানগুলি থেকে তৈরি করা হয়, ফুল নতুন ব্লক কাঠামো যুক্ত করে, যা অন্যথায় a এর অনুরূপ এবং পরিবর্তে এর সাথে আহ্বান করা হয়। পার্থক্য হল যে একটি পিকচার ব্লকের আউটপুট ব্যবহার করে পরিবর্তনের সাথে সংশোধন করা যেতে পারে। উদাহরণস্বরূপ, যদি কেউ একটি সংজ্ঞায়িত করে যা এক ব্যাসার্ধের একটি বৃত্ত তৈরি করে, তবে একটি ছোট বৃত্ত আঁকা যেতে পারে এবং এর সাথে পাশে সরানো যেতে পারে। রিয়েল-টাইম ফুলের রিয়েল-টাইম মডিউল কীওয়ার্ডের মাধ্যমে "সমান্তরাল বিভাগ" ধারণাটি যুক্ত করেছে। এগুলি দেখতে সাব-রুটিন (এবং ছবি)-এর মতো ছিল তবে এতে বেশ কয়েকটি অতিরিক্ত কীওয়ার্ড ছিল যা তাদের আহ্বানকে নিয়ন্ত্রণ করত। উদাহরণস্বরূপ, কেউ এমন কোড সংজ্ঞায়িত করতে পারে যা একটি কোডে সাড়া দেবে এবং তারপরে কোডের অন্য কোথাও জারি করে এটি চালানোর কারণ হবে। বার্তাগুলি পোর্ট ধারণা ব্যবহার করে একাধিক হ্যান্ডলারকে আহ্বান করতে পারে। সিস্টেমটি এই ব্লক এবং বস্তুগুলিকে বাহ্যিক কোডের সাথে সংযুক্ত করার অনুমতি দেয় যা এই বার্তাগুলি তৈরি করবে। উদাহরণস্বরূপ, এমন কোড থাকতে পারে যা এমন একটি ডিভাইসে অপেক্ষা করে যা পর্যায়ক্রমে পাঠ্য আউটপুট তৈরি করে এবং তারপরে নতুন পাঠ্য উপলব্ধ হলে উপযুক্ত হ্যান্ডলারকে স্বয়ংক্রিয়ভাবে কল করা হবে। যেহেতু এই ধরনের যন্ত্র থেকে প্রকৃত তথ্য বহু-অংশের হতে থাকে, স্ট্রিং বা সংখ্যার মতো সহজ কিছু নয়, তাই রিয়েল-টাইম লাইব্রেরিতে এস সংজ্ঞায়িত করার ক্ষমতাও যুক্ত করা হয় যা পরে পারমাণবিক একক হিসাবে পড়া বা লেখা যেতে পারে। এগুলি তখন এবং কমান্ড ব্যবহার করে পড়া এবং লেখা হত, অথবা যদি ডেটা হয়, অন্যথায় অনুরূপ এবং। যদিও অনেক রিয়েল-টাইম প্রোগ্রামকে কেবল বাহ্যিক ঘটনাগুলির প্রতিক্রিয়া হিসাবে একটি সিস্টেম হিসাবে মডেল করা যেতে পারে, তবে প্রোগ্রাম নিজেই পর্যায়ক্রমে এই ইভেন্টগুলি পোস্ট করাও সাধারণ। এর জন্য, ফুল কমান্ড এবং সংশ্লিষ্ট যুক্ত করেছে যা একটি নির্দিষ্ট (কয়েক সেকেন্ড) বা (দিনের একটি নির্দিষ্ট সময়) বা একটি দেখা না হওয়া পর্যন্ত কার্যকর করা থামিয়ে দেবে। ইসিএমএ বনাম এএনএসআই ইসিএমএ এবং এএনএসআই মানগুলি যৌথভাবে তৈরি করা হয়নি তবে সমান্তরালভাবে, যদিও ওভারল্যাপিং কমিটির সদস্যতার সাথে। অন্যদিকে, বেসিকের জন্য আইএসও ওয়ার্কিং গ্রুপ তাদের নিজস্ব কোনও মান তৈরি করেনি, পরিবর্তে ইসিএমএ বা এএনএসআই মান গ্রহণের পরিকল্পনা করেছে। এএনএসআই থেকে স্বাধীনভাবে, বেসিক স্ট্যান্ডার্ডের জন্য দায়ী ইসিএমএ কমিটি এটিকে দুটি ভাগে বিভক্ত করেঃ ইসিএমএ বেসিক-1 এবং ইসিএমএ বেসিক-2। বেসিক-1-এ কিছু ফাইল ম্যানিপুলেশন সিস্টেম অন্তর্ভুক্ত ছিল কিন্তু ব্যতিক্রম পরিচালনার অভাব ছিল, যেখানে বেসিক-2 ফাইল কমান্ডের সম্পূর্ণ স্যুট, নির্দিষ্ট দশমিক গণিত এবং ব্যতিক্রম পরিচালনা ব্যবস্থা যুক্ত করেছিল। উপরন্তু, বেসিক-1-এ সমস্ত মৌলিক কীওয়ার্ড যেমন সংরক্ষিত শব্দ ছিল যা পার্সারকে সহজতর করেছিল, অন্যদিকে বেসিক-2-এ তারা এএনএসআই প্যাটার্ন অনুসরণ করেছিল এবং ব্যবহারকারী-নির্মিত সাবরুটিন এবং ফাংশনের মধ্যে ব্যবহার করা যেতে পারে। আইএসও ওয়ার্কিং গ্রুপ প্রাথমিকভাবে ইসিএমএ-র মান ব্যবহার করার পরিকল্পনা করেছিল। দুটি ভিন্ন প্রার্থী মানের সমস্যার মুখোমুখি হয়ে, 1987 সালের সেপ্টেম্বরে দুটিকে একত্রিত করে একটি একক আন্তর্জাতিক মান বিকাশের নির্দেশ দেওয়া হয়েছিল। এটি নির্দিষ্ট করে সম্পন্ন করা হয়েছিল যে উভয় মানের সম্মতি আইএসও মানের সঙ্গতি হিসাবে দাবি করা যেতে পারে। নোটস রেফারেন্স উদ্ধৃতি গ্রন্থপঞ্জি আরও পড়ার বাহ্যিক লিঙ্ক দশমিক মৌলিক-সম্পূর্ণ মৌলিক এবং এর গ্রাফিক্স মডিউলগুলির তুলনামূলকভাবে সম্পূর্ণ বাস্তবায়ন মৌলিক প্রোগ্রামিং ভাষা আমেরিকান ন্যাশনাল স্ট্যান্ডার্ডস ইনস্টিটিউট মান ইকমা মান