অ্যালান পার্লিস ত্রুটি-মুক্ত প্রোগ্রাম লেখার উপায়গুলি সম্পর্কে কী বোঝায়? [বন্ধ]


29

অ্যালান জে পের্লিসের একটি উদ্ধৃতি রয়েছে যা বলেছে:

ত্রুটি-মুক্ত প্রোগ্রাম লেখার দুটি উপায় রয়েছে; কেবল তৃতীয়টি কাজ করে।

আমি সম্প্রতি আমার বন্ধুর কাছ থেকে এই উক্তিটি শুনেছি, এবং এর পিছনে আরও গভীর অর্থ বুঝতে অক্ষম।

পার্লিস এখানে কী সম্পর্কে কথা বলছেন?


1
আপনি এই বিদ্রূপের ত্রুটিটি বুঝতে পারেন, ত্রুটিমুক্ত অ-তুচ্ছ প্রোগ্রাম লিখতে যেমন এটি সম্ভব, এটি কেবল শৃঙ্খলা নেয়।

1
এই জাতীয় প্রশ্নটি এখন আমাদের মেটা-আলোচনার সাইটে আলোচনা করা হচ্ছে ।

1
প্রস্তাবিত পাঠ: এই $ {ব্লগ} আলোচনা
মশা

উত্তর:


41

এর অর্থ সত্যই কোনও ত্রুটি-মুক্ত প্রোগ্রাম নেই। একটি ত্রুটি নিজেই ত্রুটি এড়ানো উপায় সম্পর্কে একটি গভীর উদ্ধৃতি প্যারোডি।


3
অ্যালান পার্লিস অবশ্যই শব্দ দিয়ে একটি উপায় ছিল।
ফ্রাঙ্ক শায়ারার

2
এটি "প্যারোডি" যা এই উদ্ধৃতি অর্থগুলির মধ্যে গুরুত্বপূর্ণ।
অ্যাডাম হার্ট

60

তৃতীয় কোন উপায় নেই।

ত্রুটি-মুক্ত প্রোগ্রাম লেখার কোনও উপায় নেই


37

আমি অন্য একটি উদ্ধৃতি দিয়ে উত্তর দেব ...

একটি অদ্ভুত খেলা। একমাত্র বিজয়ী পদক্ষেপ না খেলাই।

;-)


5
যুদ্ধের রেফারেন্সের জন্য +1!
জেসন

বাধ্যতামূলক xkcd লিঙ্কটি নিম্নলিখিত: xkcd.com/601
বেলনর্ন

14

অন্যান্য অনেক উত্তর ইতিমধ্যে চিহ্নিত করেছে, ত্রুটি-মুক্ত প্রোগ্রাম লেখার কোনও উপায় নেই

তবে আমি যা উল্লেখ করতে চাই তা হল উদ্ধৃতিটির সম্ভাব্য মেটা প্রকৃতি। এটি মূলত সীমার ত্রুটির বাইরে। প্রথম বিবৃতিতে, তিনি মহাবিশ্ব বা "তালিকার" সংজ্ঞা দিয়েছেন মাত্র দুটি সম্ভাবনা বা উপাদান রয়েছে। তবুও দ্বিতীয় বিবৃতিতে, তিনি একটি তৃতীয়াংশের উল্লেখ করেছেন। কোনটা অবাস্তব! অবৈধ এমনকি! একটি তৃতীয় উপাদান একটি দুটি উপাদান সীমানা দেওয়া নিজেই একটি ত্রুটি।

সত্যই গভীর যে উদ্ধৃতি এটি উল্লেখ করছে তার খুব নিখরচায়তা প্রদর্শন করতে সক্ষম।


একটি প্রোগ্রাম নির্দিষ্ট হিসাবে আচরণ করে তা প্রমাণ করার একটি উপায় আছে is এটি যেমন পারমাণবিক সুবিধার জন্য ব্যবহৃত হয় ...

1
@ থরবজর্ন রাভন অ্যান্ডারসন, নির্দিষ্ট হিসাবে এটির অর্থ এটি ত্রুটিমুক্ত নয়।
ক্যাফগীক

5

এর অর্থ হ'ল সমস্ত তুচ্ছ প্রোগ্রামগুলিতে বাগ থাকবে। এটি একটি মজাদার উপায় বলা ত্রুটিমুক্ত প্রোগ্রাম লেখার কোনও উপায় নেই।


5

ত্রুটি-মুক্ত প্রোগ্রামগুলি লিখতে পারা সম্ভব, এমনকি অ-তুচ্ছ ঘটনাবলী এমনকি এগুলি সঠিক প্রমাণ করা। উদাহরণস্বরূপ, কোক, এপিগ্রাম বা আগদার মতো ভাষা বিবেচনা করুন যেখানে এটি করা হয়েছে।

বিরাম সমস্যা যে তার জন্য এই কাজ করা সম্ভব নয় সাধারণ প্রোগ্রাম


ইউটি অস্টিনে ডন গুডের দলে আরও পিছনে ফিরে যান এবং জিপসি যাচাইকরণ পরিবেশ নিয়ে 1970 এবং 1980 এর দশকে তাদের কাজ। তারা প্রমাণ করেছেন যে নৌ-বাহিনীকে প্রমাণিত ত্রুটি-মুক্ত বার্তা ফ্লো মডুলার সরবরাহ করে ত্রুটি-মুক্ত কোড সম্ভব ছিল। গ্রহণযোগ্যতা পরীক্ষা স্যুটটি সম্পূর্ণ আলাদা গ্রুপ দ্বারা বিকাশ করা হয়েছিল। যখন এমএফএম স্বীকৃতি পরীক্ষার স্যুটটি প্রথমবার স্বীকৃতি পরীক্ষায় দেখেছিল, তখন কোনও বিচ্যুতি, মওকুফ বা "হ্যাঁ" তবে এটি পাস হয়েছিল।
জন আর স্ট্রোহম

3

এটি আমি দেখেছি এমন একটি অল্প কথায় শার্টের কথা মনে করিয়ে দেয়: বিশ্বে 10 ধরণের লোক রয়েছে। যারা বাইনারি জানেন এবং যারা জানেন না।

এটি কখনও কখনও তালিকাগুলি 0 সূচকযুক্ত হয় এমন একটি নাটকও হতে পারে। $ var = অ্যারে ('প্রথম', 'দ্বিতীয়', 'তৃতীয়'); এবং আপনি এই তালিকাটিতে যেমন অ্যাক্সেস করতে পারেন: $ var [0] = 'প্রথম' $ বর্ণ [1] = 'দ্বিতীয়' $ বৈ [2] = 'তৃতীয়'

সুতরাং আক্ষরিক অ্যারে সূচকটি "তৃতীয়" সূচকে 2 পয়েন্ট করে।


... এবং যারা শূন্যের তালিকা অনুসারে শুরু করেন

2

এটি ইতিমধ্যে অন্য কথায় ব্যাখ্যা করা হয়েছে, তবে যতটা পরিষ্কার মনে হয় এটি হওয়া উচিত। এর সহজ অর্থ হ'ল আপনি উভয় উপায়ে চেষ্টা করবেন, তাদের ত্রুটি থাকবে এবং শেষ পর্যন্ত আপনি আপনার বাগগুলি ঠিক করে নেবেন এবং একটি ত্রুটি-মুক্ত প্রোগ্রাম পাবেন। অন্য একটি উদ্ধৃতির সাথে তুলনা করুন:

কোনও প্রোগ্রামে ত্রুটি হওয়ার একমাত্র উপায় হ'ল লেখক সেখানে রেখে। অন্য কোনও প্রক্রিয়া জানা যায়নি। প্রোগ্রামগুলি অন্যান্য বগি প্রোগ্রামগুলির সাথে বসে বসে বাগগুলি অর্জন করতে পারে না। - হার্লান মিলস

(বিকল্পভাবে, আপনি এটি পিয়েরি যেমনটি বলতে পেরেছিলেন (যা আমি মনে করি যে এটি প্রসারিত)। (তৃতীয় উপায়, যা ডোমেনে বিদ্যমান নেই, কাজ করে)) আমি যেমন বলেছিলাম, এটি আ প্রসারিত, তবে সত্য।


1

আমার বাবা যখন আমি অজুহাত দেখান তখন আমার বাবা একই কথাটি ব্যবহার করে। এই উক্তিটি এমনভাবে প্রবাহিত হয়: "একটি গল্পের 3 টি দিক রয়েছে Their তাদের দিক, আপনার পক্ষ এবং ডান / সত্য / সঠিক দিক"।

এটিকে বিকাশের সাথে প্রসঙ্গে রেখে (এবং প্রফেসর দ্বারা সফ্টওয়্যার পরীক্ষক হওয়া), আমি বলব যেহেতু কিছু কোড করার অনেক উপায় আছে তাই "কোডিংয়ের 3 টি পক্ষ রয়েছে with আপনার কোড, তাদের কোড এবং রিফ্যাক্টর কোড। "

আমি মনে করি এটি কারণ কারণ প্রোগ্রামার / বিকাশকারীরা একবার পণ্য স্থিতিশীল হয়ে উঠলে প্রায়শই দেরি হয়ে যায় তবে বেশিরভাগ সময় রিফ্যাক্টর এমন কিছু উন্নতি করতে হয় যা আপনি এবং বন্ধু প্রথমদিকে এত ভাল করেন নি।

আশাকরি এটা সাহায্য করবে.


1

আমি মনে করি, প্রযুক্তিগতভাবে বলতে গেলে, আপনি একটি ত্রুটি মুক্ত অ-তুচ্ছ প্রোগ্রাম লিখতে পারেন, তবে হ্যালটিং সমস্যার কারণে এটি অসম্ভব প্রমাণ করে যে এটি ত্রুটি মুক্ত। সুতরাং, একজনকে এই ধারণার অধীনে কাজ করতে হবে যে সমস্ত প্রোগ্রামগুলিতে বাগ রয়েছে তাই অন্যথায় প্রমাণ করা অসম্ভব।

http://en.wikipedia.org/wiki/Halting_problem

আপডেট: আপনি প্রমাণ করতে পারেন কোনও নির্দিষ্ট অ্যালগরিদম সঠিক উত্তরগুলি ফিরিয়ে দেবে, তবে এটি সম্পূর্ণ সঠিক প্রমাণ করার মতো জিনিস নয়। http://en.wikedia.org/wiki/Cor درستness_( কম্পিউটার_সায়েন্স )

যাইহোক, আমার বক্তব্যটি হ'ল উদ্ধৃতিটি এই উল্লেখ করছে যে কোনও একটি অবশ্যই ধরে নিতে পারে যে কোনও প্রোগ্রামে সর্বদা বাগ থাকে এবং কেন তা কেন তা ব্যাখ্যা করার চেষ্টা করা উচিত। http://en.wikipedia.org/wiki/Software_bug#Bug_management


1
যেমন টনি মরিস বলেছিলেন, কোনও নির্দিষ্ট প্রোগ্রামটি সঠিক কিনা তা প্রমাণ করা সম্ভব । এমন কোনও প্রোগ্রাম লেখা সম্ভব নয় যা সাধারণভাবে প্রমাণ করতে পারে যে কোনও প্রোগ্রাম যা সঠিক, সঠিক।
ম্যাক্স স্ট্রিনি

-1

অতিরিক্ত অন্তর্দৃষ্টি হিসাবে, "দুটি উপায়" টনি হোয়ের এই উক্তিটির একটি উল্লেখ হতে পারে :

একটি সফ্টওয়্যার ডিজাইন তৈরির দুটি উপায় রয়েছে: একটি উপায় হ'ল এটিকে এত সহজ করা যে স্পষ্টতই কোনও ঘাটতি নেই এবং অন্য উপায়টি এটিকে এত জটিল করে তোলা হয়েছে যে কোনও স্পষ্ট ঘাটতি নেই। প্রথম পদ্ধতি অনেক বেশী কঠিন। এটি প্রকৃতির জটিল ঘটনাগুলিকে আচ্ছন্ন করে দেওয়া সাধারণ শারীরিক আইন আবিষ্কারের মতো একই দক্ষতা, নিষ্ঠা, অন্তর্দৃষ্টি এবং এমনকি অনুপ্রেরণারও দাবি করে।

এটি সম্পর্কে একটু ধ্যান করুন এবং আপনি দেখতে পাচ্ছেন যে তিনি একই কথা বলছেন: আপনার সফ্টওয়্যারটি যদি ক্ষুদ্র হয় তবে এটিতে বাগ রয়েছে (তবে এটি যথেষ্ট জটিল হয় এবং সেগুলি সুস্পষ্ট বাগগুলি হবে না )।


এই প্রশ্নের উত্তর দিতে না জিজ্ঞাসা
মশা

@ জাগ্রত আমি কীভাবে তা দেখতে পাচ্ছি না - এটি দ্বিতীয় অনুচ্ছেদে ঠিক আছে। সম্ভবত শব্দটি পরিষ্কার ছিল না, তবে যখন আমি "একই কথা বলছি" বলছিলাম তখন আমি "অ্যালান পার্লিসের মতো একই কথা বলা" বলতে চাইছিলাম। অর্থাত, পার্লিসের উদ্ধৃতিটি সম্ভবত হোয়েরের একটি হাস্যকর প্যারোডি।
ডোভাল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.