আমি উভয় ব্যবহারের কারণ বিশ্বাস করি শূন্য এবং নাল যে সাবেক প্রাথমিকভাবে একটি বিশেষ্য, এবং পরবর্তীটি প্রাথমিকভাবে একটি বিশেষণ (আমি চেক করা হয় ওয়েবে এবং আমার কাগজ dictionnary মধ্যে: আমেরিকান হেরিটেজ 1992)।
অর্থ এবং ইতিহাস সম্পর্কে, এনআইএল হ'ল ল্যাটিন "নিহিল" থেকে সংকোচনের অর্থ যার অর্থ "কিছুই নয়"।
আমার জানা মতে, নামের ব্যবহার nil
মতে, নাল পয়েন্টারটি বোঝাতে প্রোগ্রামিং ভাষা লিস্প (1958) এর সাথে চালু হয়েছিল ।
একটি নাল পয়েন্টার হল একটি পয়েন্টার মান যা কিছুই নির্দেশ করতে পারে বলে মনে করা হয়, এবং এইভাবে অবহেলা করা উচিত নয়। বেশিরভাগ ক্ষেত্রে, পয়েন্টারগুলি কেবল মেমরি ঠিকানা are যে কোনও চলক (যেমন, কোনও অবস্থান) যা এই জাতীয় পয়েন্টার ধারণ করার উদ্দেশ্যে করা হয়েছে সেটিতে সর্বদা বিটের কিছু কনফিগারেশন থাকবে এবং এ জাতীয় কোনও কনফিগারেশন একটি মেমরি ঠিকানা হিসাবে পড়তে পারে। সুতরাং প্রায়শই এটি nil
ঘটে থাকে যে মানটি এমন কোনও মেমরির জায়গার ঠিকানা হবে যা প্রোগ্রামটির জন্য নিষিদ্ধ, সুতরাং প্রোগ্রামটি কিছুটা ব্যর্থতার কারণ হতে পারে (সম্ভবত বাধাগ্রস্ত হয়) যদি প্রোগ্রামটি অবজ্ঞানের চেষ্টা করে nil
যা কেবল একটি ত্রুটি হতে পারে।
স্পষ্টভাবে পয়েন্টার ব্যবহার করে ভাষাগুলিতে এই ভূমিকাটিটি ادا করার জন্য একটি অনন্য পূর্বনির্ধারিত স্ট্যান্ডার্ড মান থাকা অত্যাবশ্যক, যেহেতু পয়েন্টারটি অন্তত কিছু স্মৃতি অবস্থানের দিকে নির্দেশ করছে কিনা তা পরীক্ষা করতে সক্ষম হওয়া জরুরী। সাধারণত, লিস্পে, তালিকার উপাদানগুলির সাথে "গাড়ী" পয়েন্টার যুক্ত "কনস" জোড়াগুলির উত্তরসূরি হিসাবে একটি তালিকা তৈরি করা হয়েছিল এবং পরের জোড়টিতে একটি "সিডিআর" পয়েন্টার ছিল। তালিকার শেষ জুটিতে দ্বিতীয় পয়েন্টারটি ছিল nil
।
এটি খালি তালিকা হিসাবে তালিকার পুনরাবৃত্ত সংজ্ঞাটির সাথে মিলে যায় বা তালিকার সাথে তাল মিলিয়ে একটি তালিকা উপাদান থাকে। সুতরাং কোনও উপাদান ছাড়াই একটি তালিকা প্রতিনিধিত্ব করেnil
। এই খালি তালিকাটি তালিকার একচেটিয়া পরিচয় হিসাবে দেখা যায়।
যেহেতু তালিকাগুলি সেটগুলি উপস্থাপন করতে ব্যবহার করা যায়, খালি সেটটি সে ক্ষেত্রেও প্রতিনিধিত্ব করতে পারে nil
।
এইভাবে nil
historতিহাসিকভাবে একটি বিশেষ পয়েন্টার মান ছিল, তবে তালিকাগুলি বা সেটগুলির মতো অন্যান্য বিমূর্ত ডোমেনের জন্য একটি বিশেষ পরিচয় মান হিসাবে বোঝা গেল।
সমান পয়েন্টার nil
একটি নাল পয়েন্টার ছিল, নাল একটি সংযোজন (যেমন একটি বিশেষ্য) এর চেয়ে বিশেষণ হওয়া।
বিশেষণ এবং বিশেষ্য উভয় শব্দের সমন্বিত ব্যবহার অন্যান্য অনুশীলনের সাথে বেশ সামঞ্জস্যপূর্ণ। কোয়ালিফায়ার নাল প্রায়শই বীজগণিত কাঠামোর শূন্যের জন্য ব্যবহৃত হয়, যেমন একটি মনোয়েডের পরিচয়: নাল উপাদান । তালিকাগুলি একটি মনোয়েড গঠন করে , যেখানে মান শূন্য হয়। সেটগুলির ক্ষেত্রেও এটি একই রকম (যদিও তারা আরও অনেক বৈশিষ্ট্য সহ বীজগণিত গঠন করে)। কেউ একইভাবে বলে যে একটি পূর্ণসংখ্যা শূন্য হলে নাল হয়।
প্রোগ্রামিং ভাষার ভাষার লেখক এবং আইডিসিএনক্র্যাসির উপর নির্ভর করে এই শব্দগুলির ব্যবহারের ক্ষেত্রে অন্যরা যেমন প্রচলিত হয় না তেমন অনেকগুলি।
উপরোক্ত ব্যাখ্যা হিসাবে দুটি প্রধান অভিব্যক্তি হ'ল
একটি স্ট্যান্ডার্ড "অপরিজ্ঞাত মান" হিসাবে, আসলে কোনও ব্যবহারযোগ্য মানের অনুপস্থিতি উপস্থাপন করে।
কিছু ডোমেন পরিচয় মান হিসাবে
এটি দেখায় যে এনআইএল হ'ল "এমন একটি মান যা " মানের অনুপস্থিতি "উপস্থাপন করে , যেমন গিলস স্বীকৃত উত্তরে করেছিলেন । এটি ভাষা এবং এর ব্যবহারের উপর নির্ভর করে। প্রোগ্রামিং ভাষা পাতার মর্মর সম্ভবত 55 বছর আগে প্রোগ্রামিং পরিভাষা মধ্যে Nil পরিচয় করিয়ে দেন। এলআইএসপি- NIL
তে খালি তালিকা, এবং সমানভাবে লক্ষ্য করা যায় ()
যে খালি তালিকার প্রাকৃতিক উপস্থাপনা।এটি কোনও মানের অনুপস্থিতি উপস্থাপন করে না। এটি কখনও কখনও মূল্যবোধ হারিয়ে যাওয়ার জন্য স্থানধারক হিসাবে ব্যবহৃত হয়, যদিও খালি তালিকাটি একটি মান হিসাবে এটি প্রায়শই নিখুঁতভাবে এড়ানো যায়। প্রোগ্রামার দ্বারা নির্বাচিত যে কোনও স্বেচ্ছাচারিত বস্তুর কাঠামোর কোনও গায়েবি মানের জন্য কী বোঝায় এটি গ্রহণযোগ্য মানগুলির সাথে বিভ্রান্ত হতে পারে না।
দুটি ধারণাটি বরং পৃথক, যদিও আমরা উপরে দেখিয়েছি যে তারা সম্পর্কিত হতে পারে। এই শব্দগুলির প্রত্যেকটির ব্যবহারগুলি একটি অভিব্যক্তির প্রতি বা অন্যটির দিকে আরও বেশি কেন্দ্রীভূত কিনা তা দেখার জন্য গিলিস'সনওয়ার দ্বারা অঙ্কিত পরিভাষাগুলির ব্যবহারের একটি মোড বিশদ শৈলীর ব্যবস্থা আকর্ষণীয় হতে পারে।
নামগুলি কোনও প্রদত্ত প্রসঙ্গে যার অর্থ বক্তব্য সংজ্ঞায়িত করছে তার অর্থের চেয়ে আরও বেশি কিছু নয় def কিছু ব্যবহার আরও সাধারণ, আরও প্রাকৃতিক, বা আরও সামঞ্জস্যপূর্ণ, তবে সর্বদা সংজ্ঞাগুলি পরীক্ষা করা উচিত এবং প্রতিটি প্রসঙ্গে কী অর্থ বোঝানো হয়েছিল তা নিশ্চিত করা উচিত। এবং একটিকে সর্বদা স্বাদ বা ধারাবাহিকতার সাথে পরিভাষাটি বেছে নেওয়া উচিত বলে আশা করা উচিত নয়।
NULL
(সি সামঞ্জস্যের জন্য) এবং উভয়ই রয়েছেnil
; কল করার পদ্ধতিগুলিnil
কোনও অপ-অপশন। জাভাস্ক্রিপ্টের উভয়ই রয়েছেnull
(মানটি কিছুই উপস্থাপন করে না) এবংundefined
(মানটি সেটও করা হয় না)।