কেন এমন কোনও "সার্বজনীন" প্রোগ্রামিং ভাষা হতে পারে না যা সমস্ত উদ্দেশ্যে পরিবেশন করে? [বন্ধ]


57

সমস্ত বিদ্যমান প্রোগ্রামিং ভাষার সর্বোত্তম বৈশিষ্ট্যগুলিকে কেন একত্রিত করে সর্বজনীন প্রোগ্রামিং ভাষায় এটি ফিট করে না?


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

5
@ গ্র্যান্ডমাস্টারবি আপনি সি # ভুলে গেছেন
ড্যানিয়েল লিটল

15
আছে, একে 'সি' বলা হয়েছে
মার্টিন বেকেট

9
একটি প্রজাতি হিসাবে আমাদের একমত হওয়ার সহজাত ক্ষমতা আছে (আমাদের স্বতন্ত্রতার কারণে) তাই আমরা সর্বজনীন যা প্রয়োজন তা নিয়ে কখনই একমত হতে পারব না এবং তাই এর মধ্যে কখনই একটি থাকবে না (কমপক্ষে কোনও মানুষই তৈরি করেছেন না!)
নিম

9
একটি সর্বজনীন প্রোগ্রামিং ভাষা? আপনি বলতে চাচ্ছেন, সার্বজনীন মানব ভাষার সাথে সাদৃশ্য যে এতগুলি বছর আগে সবাই সরে গেছে?
ক্যারলেসা

উত্তর:


116

একই কারণে আপনি একটি মুরগির খোদাই করার জন্য সুইস সেনার ছুরি ব্যবহার করবেন না ...

http://upload.wikimedia.org/wikipedia/commons/thumb/4/48/My_swiss_army_knife.JPG/800px-My_swiss_army_knife.JPG

সুইস আর্মি ছুরিতে সাধারণত একটি ফলক থাকে, পাশাপাশি বিভিন্ন সরঞ্জাম যেমন স্ক্রু ড্রাইভার এবং এটি ওপেনার এবং অন্যান্য অনেকগুলি থাকতে পারে। এই সংযুক্তিগুলি একটি পিভট পয়েন্ট মেকানিজমের মাধ্যমে ছুরির হাতলের ভিতরে রাখা হয় ...

ছুরির নকশা এবং তার নমনীয়তা উভয়কে বিশ্বব্যাপী স্বীকৃতি দেয় ...


26
একই কারণে আপনি একটি টানুন দৌড়ে একটি মিনিওয়ান আনেন না। একই কারণে আপনি দ্বৈততে একটি জলের পিস্তল আনবেন না।
ক্রিস

19
@ ক্রিস যদি এটি একটি জলের পিস্তল দ্বন্ধ হয়?
মরিচা

44
মৃত্যুর লাইনে থাকা অবস্থায় আপনি একই কারণে সিসিলের সাথে কখনও যেতে পারেন না।
মরিচা

6
আপনার যদি একটি সুইস আর্মি ছুরি থাকে যা বাড়ি তৈরি করার জন্য আপনার প্রয়োজনীয় সমস্ত কাজ করে থাকে তবে তাদের কোনওটিই কি ভাল হবে?
ব্র্যাড ম্যাস

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

80

কারণ

  1. কেউই সমস্ত লিগ্যাসি কোডটি আবার লিখতে চায় না।
  2. সমস্ত উদ্দেশ্যে একমত হওয়া কঠিন
  3. একবার আপনি উদ্দেশ্যগুলির একটি বিশদ তালিকা একসাথে রাখলে আপনি এটি তৈরি করার আগে সেগুলি পরিবর্তন হয়ে যায়।
  4. নতুন উদ্দেশ্যে কোনও কারণে সম্পূর্ণ ভিন্ন ভাষা শুরু হবে।
  5. মাইক্রোসফট
  6. আপেল
  7. মুক্ত উৎস
  8. আমরা সমস্ত বাবেল মাছের সাথে কী করব?
  9. এমনকি এসকিউএল সর্বজনীন করতে পারেনি।

আপনি সংক্ষেপে থামলেন। আমি সেই হা-হা-একমাত্র-গুরুতর "শীর্ষ 10" তালিকার মধ্যে একটির প্রত্যাশা করছিলাম।
জেফ্রি হ্যান্টিন

4
প্রতিরোধের জন্য +1, কমপক্ষে আপাতত একটি "বাবেল সংরক্ষণ করুন" প্রচার চালাও। জঘন্য হিপ্পিজ
মরিচা

2
বাবেল মাছের জন্য, সুশী করুন!
Muad'Dib

1
পয়েন্ট ১ সম্পর্কিত, সমস্ত লিগ্যাসি কোডটি শেষ পর্যন্ত কোড / লাইব্রেরিতে সর্বশেষতম ফ্যাড ব্যবহার করে যাইহোক পুনরায় লিখতে হবে বা হাস্যকর পরিমাণ সমর্থন ব্যতীত কার্যকরভাবে চলতে অক্ষম হবে।
মাইকেল 4

38

আপনার প্রোগ্রামিংয়ে যা আছে তা একটি খুব বড় সমস্যার ডোমেন। এই ডোমেনটি চূড়ান্ত এবং বহু দিক থেকে রয়েছে।

এ কারণেই এম্বেড করা ফ্লাইট কন্ট্রোলার সিতে লেখা হয় এবং ওয়েবসাইটগুলি পিএইচপি, জাভা, রেলস,। নেট এবং অন্যদের হোস্টে লেখা হয়।

এম্বেড করা ফ্লাইট কন্ট্রোলারের জন্য আমার সাথে কাজ করার জন্য প্রায় 128k মেমোরি রয়েছে এবং তার উপরে যদি আমার কোডটি বিমানটি বিধ্বস্ত হয়, তবে 200 জন মারা যায় এবং আমি $ 1B ডলার মামলা করতে পারি এবং প্রত্যেককে ইঞ্জিনিয়ার পাঠাতে হয় have বিশ্বের বিমানবন্দরগুলি যে গ্রাহকদের আমার গ্রাহকদের $ 10M / দিন হারিয়েছে তা স্থির করতে বিমান ঠিক করতে। আমাকে এমন ভাষা নিয়ে কাজ করতে হবে যা খুব আঁটসাঁট এবং খুব কম চলন্ত অংশ রয়েছে যা ভুল হতে পারে।

আমার ওয়েব অ্যাপ্লিকেশনের জন্য আমার সাথে কাজ করার জন্য বেশ কয়েকটি জিবি মেমরি রয়েছে তবে নেটওয়ার্কের গতি সীমাবদ্ধ (প্রতিদিন কম ডিগ্রি পর্যন্ত, তবে সম্ভবত এটি ওয়েবের সর্বাধিক সীমা)। আমি এমন একটি ভাষা খুঁজছি যা আমাকে এক টন বৈশিষ্ট্য দেয় এবং আউটপুট উত্পাদন করে যা যত তাড়াতাড়ি সম্ভব সংক্রমণ করা যায়। আমার সাইটটি নীচে নেমে গেলে আমি সত্যিই যত্নশীল নই, আমি সম্ভবত কয়েকটি বিক্রয় হারাব ($ 100) এবং বোমা ফাটাতে ব্যবহারের ক্ষেত্রে প্যাচ করতে হবে, কোনও বড় বিষয় নয়।

15 বছরেরও বেশি বছরের জন্য ওয়েবসাইটগুলিতে সি লেখা হয়নি (যে কোনও সিগি স্ক্রিপ্ট রয়েছে?) এবং যতদূর জানি আমি ফ্লাইট কন্ট্রোলাররা এখন সি ++ এ সন্ধান করতে শুরু করেছে, তবুও এটি খুব সীমাবদ্ধ উপায়ে রয়েছে।


3
বেশিরভাগ সাইটগুলি যা আসলে অর্থোপার্জন করে তা যদি উল্লেখযোগ্য ডাউনটাইম অনুভব করে তবে 100 ডলারেরও বেশি হারাবে। এটি জীবন-মৃত্যুর পরিস্থিতির সাথে তুলনামূলক বলে প্রস্তাব না করেই, তবে তবুও, এটি ঝুঁকিটিকে কিছুটা বাদ দিচ্ছে।
অ্যারোনআউট

3
আপনার কী ধারণা আছে ফেসবুকটি কীভাবে ফ্লেকি। তারা সম্প্রতি পোস্ট করেছে তারা প্রতি 37 মিনিটে কোড পুশ করে। তাদের সাইট ক্রমাগত কোনও না কোনও উপায়ে বিরক্ত থাকে এবং তাদের ব্যাকলগে মিলিয়ন টিকিট রয়েছে। বিষয়টি ওয়েবটির সাথে রয়েছে যে কেউ মারা যাচ্ছে না, আপনি কয়েকটি বিক্রয় "কমিয়ে" ফেলতে পারেন, তবে সব মিলিয়ে আসলে খুব বেশি ঝুঁকি নেই। আপনার সমস্যার মুখোমুখি বেশিরভাগগুলি কেবলমাত্র পুরো গ্রাহকে নয় কিছু গ্রাহককে প্রভাবিত করবে
বিল লিপার

24
  1. আপনার গ্যারেজে যান (বা আপনার পিতামাতার গ্যারেজ)।
  2. টুল বক্সটি খুলুন।
  3. আপনি যদি একাধিক সরঞ্জাম দেখতে পান তবে তা আপনার প্রশ্নের ক্ষেত্রে কীভাবে প্রযোজ্য তা নিয়ে ভাবুন।

আপনার যদি কোনও সরঞ্জামবাক্স না থাকে, বা কেবল ফাঁকা হ্যান্ডেলটিতে স্ক্রু ড্রাইভারের বিটগুলির সাথে কেবল সেই ছোট্ট হাতুড়িগুলির একটি থাকে তবে আপনার জন্য আমার খুব সহানুভূতি রয়েছে।

সিরিয়াসলি। আপনি যদি কোনও অটো শপটিতে যান তবে আপনার যান্ত্রিকের কি তার সরঞ্জামচেষ্টায় কেবল একটি একক করণীয় সব সরঞ্জাম রয়েছে? তিনি (বা তিনি) একজন পেশাদার, পেশাদার-গ্রেড সরঞ্জাম সহ বিশেষত বিভিন্ন গাড়িচালক মেরামতের কাজ সম্পাদনের জন্য ডিজাইন করা।

একইভাবে, পেশাদার সফ্টওয়্যার বিকাশকারীদের তার বাণিজ্য সম্পাদনের জন্য পর্যাপ্ত সরঞ্জামের মালিক হওয়া উচিত। আপনি যদি নিজের টুলবক্সটি খুলেন এবং কেবল ফিলিপসের স্ক্রু ড্রাইভারের জন্য [সফ্টওয়্যার সমতুল্য] দেখতে পান তবে আপনি নিজেকে পেশাদার হিসাবে বিবেচনা করতে পারবেন না।

আপনি একটি খোলা-শেষ রেঞ্চ, একটি বাক্স-শেষ রেঞ্চ, একটি র‌্যাচিট রেঞ্চ বা একটি সামঞ্জস্যযোগ্য রেঞ্চের সাহায্যে একটি বল্টু ঘুরিয়ে দিতে পারেন। এমনকি আপনি ছোট-বড় থেকে মারাত্মক ক্ষতির সাথে আচ্ছন্ন হয়ে স্লিপ-জয়েন্ট প্লাইয়ার্স দিয়ে একটি চিমটিতে একটি বল্টু ঘুরিয়ে নিতে পারেন। তবে স্লেজ হাতুড়ি দিয়ে একটি বল্টু ঘুরিয়ে দেওয়া বেশ কঠিন is


এটি "পিতামাতার গ্যারেজ" অন্তর্ভুক্ত করার জন্য। আমার কাছে গ্যারেজ নেই বলে এটি সত্যিই আরও স্পষ্ট করে তোলে।
ড্যান রোজনস্টার্ক

5
আরও ভাল উপমাটি হ'ল কোনও ভাষা কোনও স্বতন্ত্র সরঞ্জামের চেয়ে টুলবক্সের মতো।
টম হাটিন -

4
বাক্সে 20 টি বিভিন্ন সরঞ্জাম থাকতে পারে। তবে আমি বাজি ধরছি সেগুলি বর্ণনা করার জন্য আপনার কেবল একটি ভাষা প্রয়োজন।
থমাসএক্স

2
এই দিনগুলিতে টুলবক্সটি প্রশ্নাবলীর জন্য উপলভ্য লাইব্রেরির মতো is
মাইকেল 4

18

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

উপরের ব্রেটমজহনসনের উপমাটি ব্যবহার করার জন্য , প্রতিটি প্রোগ্রামিং ল্যাঙ্গুয়েজই একটি বাক্সের অভ্যন্তরের হাতিয়ার (বা একটি সুইস আর্মি ছুরির উপর) ধারণাটি প্রত্যেকেই করছে এটি ধারণা, তবে এটি সত্যই একটি ত্রুটিযুক্ত ধারণা।

প্রোগ্রামিং ল্যাঙ্গুয়েজ যদি টুলবক্স হত?

আমি বলতে চাইছি, আপনি যদি দয়া করে ভাষা থেকে বৈশিষ্ট্যগুলি যুক্ত করতে এবং মুছে ফেলতে পারেন, এবং এতে আপনার প্রয়োজনীয় সরঞ্জামগুলির সাথে আপনার নিজস্ব সরঞ্জামবক্স থাকতে পারে - এমনকি সরঞ্জামগুলি বিভিন্ন উদ্দেশ্যে হলেও।

ধারণাটি ইতিমধ্যে আংশিকভাবে বিদ্যমান। উদাহরণস্বরূপ, নিমেরলের মতো ভাষা আপনাকে ভাষাতে সিনট্যাক্স যুক্ত করতে দেয় এবং এর মতো আপনি "এক্স ভাষা থেকে সেরা বৈশিষ্ট্য" নিতে এবং এটি নিমেরলে (বা আপনার নিজস্ব) যুক্ত করতে সক্ষম হতে পারেন। এর অর্থ এই নয় যে আপনার নিজের ম্যাক্রোগুলি সমস্ত সময় লেখার দরকার নেই - প্রতিটি ভাষা (বা দৃষ্টান্ত) একটি স্ট্যান্ডার্ড লাইব্রেরিতে ম্যাক্রোর ভিতরে সংজ্ঞায়িত করা যেতে পারে - যেমন আপনি করতে পারেন import Haskell; import Prolog;, এবং দুটি ভাষা লিখতে শুরু করলেন যেন এটি একটি অংশ ছিল তোমার ভাষা?

তাহলে প্রশ্নটি হল - আপনি একে অপরের সাথে কাজ করার জন্য বিভিন্ন ভাষা / দৃষ্টান্তগুলির বৈশিষ্ট্যগুলি কীভাবে পাবেন? যদিও আমি এর উত্তর দিতে পারছি না, নেট এবং জেভিএম এর মতো ফ্রেমওয়ার্কগুলি সমাধানের কিছু প্রস্তাব দেয় - ভাষাগুলি সংকলিত হওয়ার কারণে ভাষাগুলি কমপক্ষে আংশিকভাবে সামঞ্জস্যপূর্ণ। উদাহরণস্বরূপ আপনি সি # তে লিখিত যে কোনও কোড নিতে পারেন এবং অভিযোগ ছাড়াই এফ # থেকে এটি ব্যবহার করতে পারেন।

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

এই বাধা অপসারণের দিকে পদক্ষেপের পাথরটি হ'ল বিভিন্ন প্রকল্পের কোডগুলি (যেমন, সি # এবং এফ #) একই প্রকল্পের ভিতরে সংকলন করার অনুমতি দেয়। তত্ত্ব অনুসারে আপনি প্রতিটি ফাইল পৃথকভাবে (বা গোষ্ঠীগুলিতে - যদি তাদের আংশিক প্রকার বা বিজ্ঞপ্তি সংক্রান্ত রেফারেন্স থাকে) সংকলন করতে পারেন, এবং তারপরে একটি পৃথক ভাষার ফাইলগুলি সংকলন করুন যা ইতিমধ্যে সংকলিত (সিআইএল) অবজেক্টগুলিতে অ্যাক্সেস করতে পারে। এটি কাজ করার জন্য আপনাকে সংকলনের ক্রমটি কঠোরভাবে সংজ্ঞায়িত করতে হবে - তবে এফ # এর ক্ষেত্রে ইতিমধ্যে সংকলনের ক্রম প্রয়োজনীয়।

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


4
সমস্ত বিশ্ব পিসি নয়। এই গ্রহটির বেশিরভাগ প্রসেসরের মোট মেমরির জায়গার 64K এর চেয়ে কম বাইট রয়েছে। এই প্রসেসরগুলিতে যে ভাষাটি ব্যবহার করা যেতে পারে সেগুলি থেকে এতদূর হ্রাস করতে হবে যা এই ফোরামের বেশিরভাগ ব্যবহার করে মনে হয় যে আপনার সর্বজনীন ভাষা উন্নত সমাবেশ ভাষা হিসাবে শেষ হবে। আমি মনে করি এটি "সি" বলা হবে।
আপনি

10

কিছু ভাষার সেরা বৈশিষ্ট্যগুলি অন্যের সেরা বৈশিষ্ট্যের সাথে দ্বন্দ্ব করে।

উদাহরণস্বরূপ: টাইপ সচেতন প্রতিচ্ছবি সত্যিই দুর্দান্ত বৈশিষ্ট্য, তবে একটি স্বচ্ছভাবে টাইপ করা ভাষায় এটি খুব বেশি মূল্যবান নয়, তবে শিথিল টাইপিংও একই সাথে সত্যিকারের উপকার হতে পারে।

এমনকি একটি ভাষার মধ্যে আপনি সর্বদা একই সাথে সমস্ত ভাল বৈশিষ্ট্যগুলি ব্যবহার করতে পারবেন না কারণ তারা একে অপরের সাথে বিরোধ করে।


তবে যদি এই বৈশিষ্ট্যগুলি প্রয়োজনীয়তার সাথে সামঞ্জস্য / অক্ষম করা থাকে: উদাহরণস্বরূপ: আপনি সচেতন প্রতিচ্ছবি টাইপ করতে সক্ষম হবেন এবং শিথিলভাবে
টাইপিত

2
এবং যদি আপনি চেষ্টা করতে এবং কিছু ভাষাগুলির বৈশিষ্ট্যগুলি এক ভাষাতে একত্রীকরণ করতে চান যা কিছু করতে পারে তবে আপনি বৈশিষ্ট্যগুলির বিভিন্ন সংমিশ্রণটি ব্যবহার করার বিভিন্ন উপায় থেকে প্রচুর অতিরিক্ত কাজ, বিভ্রান্তি, বাগগুলি পেয়ে যাবেন এবং আপনি এই লাইনে কোন দৃষ্টান্ত ব্যবহার করছেন তা উল্লেখ করে ব্যর্থ প্রচেষ্টা।

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

1
বিরোধী বৈশিষ্ট্যগুলির জন্য +1
ফ্র্যাঙ্ক শিয়েরার

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

7

"সমস্ত ব্যবসায়ের জ্যাক - কোনওরই মাস্টার নয়।" মনে বসন্ত.

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

সুতরাং, আপনি যে কোনও ভাষায় কার্যত যে কোনও প্রোগ্রাম লিখতে পারেন, আপনি যে সমস্যাটি সমাধানের জন্য লিখতে পারেন সেই "সেরা" প্রোগ্রাম হওয়ার গ্যারান্টি নেই।


4

এখানে. কোনটি টুল সবকিছু সেরা, কিন্তু অনেক প্রোগ্রামিং ভাষার মত কিছু টুলস পরিবেশন করা সব উদ্দেশ্যে না ভাল সব।

আপনি কাজের জন্য সেরা সরঞ্জামটি চয়ন করতে পারেন তবে প্রোগ্রামিং ল্যাঙ্গুয়েজ সমস্ত উদ্দেশ্যে ব্যবহার করতে সক্ষম এবং আপনি সেগুলি চয়ন করতে পারেন। আমি এটি সুপারিশ করি না তবে এটি সম্ভব।


4

কোনও কিছুর কারণে আমি "জেনারালাইজেশন / স্পেশালাইজেশন প্যারাডক্স" বলি যার সম্ভবত অন্য নাম আছে এবং সত্যই এটি একটি প্যারাডক্স নয়

কোনও প্রোগ্রামিং ল্যাঙ্গুয়েজ যত সাধারণীকরণ করা হয় তত বেশি কিছু কার্যকর করার জন্য আরও কোড লাগে। আপনি এর সাথে যত কম ভাষা অর্জন করতে পারবেন তত বেশি বিশেষায়িত।


2
একটি সাধারণ ভাষায় বিশেষায়িত লাইব্রেরি থাকা সম্ভব ছাড়া আমি আপনার সাথে একমত হব।
ড্যান_ওয়াটারওয়ার্থ

@ লাডান: সম্মত, তবে কেবল যদি ভাষা গ্রন্থাগার লেখকদের বৈশিষ্ট্যগুলি সরবরাহ করার দিকে মনোনিবেশ করে। আমার দুটি প্রিয় ভাষা হ'ল ডি এবং পাইথন। উভয়ই মোটামুটি সাধারণ ভাষা (বিশেষত ডি) তবে উভয়ের উভয়েরই গ্রন্থাগার লেখকদের জন্য প্রচুর বৈশিষ্ট্য রয়েছে, যাতে আপনি বিশেষায়িত স্টাফগুলি পরিচালনা করতে নিজের লাইব্রেরি তৈরি করতে পারেন। আমি মতলব এবং আর-এর মতো সুপার ডোমেন নির্দিষ্ট ভাষাগুলিকে তুচ্ছ করে দেখি
dsimcha

4

ভাষাগুলি মানুষের ভাবনার মতো করে দেয়। প্রাকৃতিক ভাষার ক্ষেত্রে এটি সত্য। একটি শিশু যদি "এক, দুই, অনেক" সংখ্যা সহ একটি ভাষা জানে তবে শিশু গণিত শেখানো ... কঠিন। (দুঃখিত, আমার লিঙ্কটি নেই) ইংরেজিতে আমরা বিভিন্ন সময় নিয়ে কথা বলি যেমন তারা স্থান - তাই সময় ভ্রমণের ধারণাটি কল্পনা করা সম্ভব। অন্য কয়েকটি ভাষায়, সময় ভ্রমণের ধারণাটি এর বক্তাদের কাছে কখনই ঘটে না

প্রোগ্রামিং ভাষার ক্ষেত্রেও এটি সত্য।

সুতরাং আমাদের যদি একটি একক প্রোগ্রামিংয়ের ভাষা থাকে তবে প্রত্যেকে সমস্ত গণনা সংক্রান্ত কাজগুলি সম্পর্কে ঠিক একই রকম চিন্তা করবে। সুতরাং আমরা বিকল্পগুলি অন্বেষণ করব না এবং কিছু করার সর্বোত্তম উপায়টি অনাবৃত থাকবে।

সার্বজনীন ভাষার কাছে আমাদের সবচেয়ে কাছের জিনিসটি সি সি অন্তর্নিহিত হার্ডওয়্যার ধারণাগুলির খুব কাছাকাছিভাবে মানচিত্র (কীভাবে আসলে হার্ডওয়্যারে জিনিসগুলি সম্পন্ন হয়) এবং প্রতিটি * ভাষায় প্রোগ্রামগুলি সি তে রূপান্তরিত হয় (দেখুন সিফ্রন্ট কীভাবে এসেম্বলারের জন্য সি সংকলক ব্যবহার করেছে) টাস্ক) সি এর সাথে সমস্যাটি মূলত যে উপরোক্ত বর্ণিত রূপান্তরগুলি কোনও সি প্রোগ্রামার দৃষ্টিকোণ থেকে বোঝায় না।

"ল্যাম্বডাস" সি-তে সর্বদা সম্ভব ছিল পুরো প্রকল্প / ফাইলের চারদিকে কোড ছড়িয়ে সহ বাক্য গঠনটি বন্ধ রয়েছে, সুতরাং এটি কোনও পছন্দসই সমাধান ছিল না। নো-ক্যাপচার / আপডেট / ইত্যাদি সংস্করণ সহ অন্য কোথাও কোনও ফাংশন সংজ্ঞায়িত করুন এবং ফাংশনটিতে একটি পয়েন্টার দিন pass ( কিউসোর্ট দেখুন ), ল্যাপডাস ব্যবহার করা কৃত মান সহ, আপনাকে যে কোডটি লিখতে হবে তার পরিমাণ ও জটিলতা অনেক বেড়ে যায় - যতক্ষণ না আমি সচেতন নূন আসলেই সি তে প্রোগ্রামিংয়ের এই পদ্ধতিটি ব্যবহার করার জন্য কোডটি লিখেছিলেন ever ল্যাম্বডাস ভাষার অংশ হিসাবে এবং মূলত সর্বত্র ব্যবহৃত হয় এমন ভাষার বিপরীতে।

সি এবং সি ++ এর মধ্যে প্রধান পার্থক্য হ'ল আপনি কীভাবে আপনার জন্য জিনিসগুলির যত্ন নিতে সি ++ কে বলতে পারেন ; তবে আপনি আর দেখতে পাচ্ছেন না, কেবলমাত্র একক লাইন কোড থেকে, আপনি এটির চেয়ে কতটা জিজ্ঞাসা করছেন। উত্তরটি হয়ে যায়: এটি নির্ভর করে (এই সমস্ত কোডের উপর)।

কিছু প্রোগ্রামিং ল্যাঙ্গুয়েজ সুনির্দিষ্ট কাজের জন্য দুর্দান্ত, তবে যেখানে বিশ্বজুড়ে বেশিরভাগ বর্তমান প্রোগ্রামগুলি সেই ভাষায় প্রোগ্রাম করা থাকলে তা বোঝা যায় না। অর্থাত্ যদি ভাষাটি সেই প্রোগ্রামটি শুরু করার জন্য প্রয়োগ করা যায়, যা দেওয়া হয়নি।


2
"অন্য কয়েকটি ভাষায়, সময় ভ্রমণের ধারণাটি এর বক্তাদের কাছে কখনও ঘটেনি।" হদফ ঘ. সাপির – হুরফ হাইপোথিসিসটি কোনওভাবেই এর দৃ strong় আকারে বিশেষভাবে গ্রহণযোগ্য নয়।
মুহাম্মদ আলকারৌরি

4

ইউনিভার্সাল ল্যাঙ্গুয়েজ থাকার প্রযুক্তিগত যোগ্যতার অসম্ভবতা? এটাই মোটামুটি বাজে কথা। আপনি পারেএকটি সার্বজনীন ভাষা রয়েছে যা সমস্ত ঘাঁটিগুলিকে আচ্ছাদন করে। সমস্যাটি বেশিরভাগ ক্ষেত্রেই historicalতিহাসিক: বিভিন্ন জিনিস বিভিন্ন জিনিস করার জন্য বিভিন্ন ভাষায় উদ্ভাবিত হয়েছিল এবং বিভিন্ন সম্প্রদায়ের মধ্যে এটি ব্যবহার করা হয়েছিল। তাদের অনেকেই আটকে গেছেন। সেই পছন্দগুলিতে যুক্ত করুন (vi! ইম্যাক্স! অপেক্ষা করুন, আমি জাভা বুঝিয়েছি! সি #, ওয়েট আমি মাইক্রোসফ্ট, ওপেন সোর্স, ইত্যাদি ইত্যাদি ইত্যাদি) এবং historicalতিহাসিক দুর্ঘটনার সাধারণ এম্বেডিং ... একটি ক্ষুদ্র দেশে প্রাকৃতিক ভাষাগুলি দেখুন কিছু ইউরোপীয় দেশগুলির মতো গণ এই বিষয়টি কতটা ক্রেজি হয়ে উঠতে পারে তা দেখতে। কিছু শহরগুলির নিজস্ব গর্ব এবং আনন্দ থাকে, একটি ছোট্ট উপভাষা যা কেবল তারা বলে। নেশনস এবং প্রোগ্রামিং সম্প্রদায়গুলি এর চেয়ে আলাদা নয়, না প্রোগ্রামিং সম্প্রদায়গুলি আরও যুক্তিযুক্ত। তারা যদি থাকত তবে আমরা সকলেই ইউনিভার্সাল কিছু 'কিছু কিছু'তে এস্পারেন্টো এবং প্রোগ্রামটি বলতাম ...


1
সমস্যাটি তার চেয়ে গভীরতর। আপনি যত বেশি অপশন উপলব্ধ করবেন, সেই ভাষাতে জিনিসগুলি যেভাবে কাজ করবে তার জন্য আরও স্পষ্ট করে নির্দিষ্ট করতে হবে। সমস্যাগুলি আরও সুস্পষ্ট হয়ে ওঠে, যদি জা # কে সি # এর সাথে তুলনা করার পরিবর্তে আপনি জাভাকে প্রোলোগের সাথে তুলনা করেন। উভয় বৈশিষ্ট্যকে এক ভাষায় ধারণ করা যৌগিক ভাষার বাক্য গঠনকে জটিল করে তোলে। আরও যুক্তিসঙ্গত পছন্দ হ'ল সিন্ট্যাক্সকে সর্বনিম্নে হ্রাস করা এবং কোনও বৈশিষ্ট্যকে একটি রূপক গ্রন্থাগার হিসাবে প্রয়োগ করার অনুমতি দেওয়া। এটি মূলত লিস্পের মতোই, যদিও এটি বেশ কয়েকটি কাজের জন্য পর্যাপ্ত স্তর নয়।
স্টিভ 314

4

"সমস্ত বৈশিষ্ট্যের সংমিশ্রণ" একটি আরও ভাল ভাষা তৈরি করবে এটি ভাবতে ভুল হয়।

আপনার ফুলে যাওয়া, জটিল, অপঠনযোগ্য গোলযোগের সাথে শেষ হওয়ার সম্ভাবনা বেশি।

ভাল ভাষার ডিজাইনের জন্য পছন্দ এবং ট্রেড-অফ করা প্রয়োজন। যুক্তিযুক্তভাবে সেরা / সর্বাধিক বিপ্লবী / সর্বাধিক সফল ভাষাগুলি হ'ল নতুন কিছু যুক্ত করার পরিবর্তে কিছু বের করে আনে এবং আরও ভাল বিকল্প সরবরাহ করে eg

  • স্ট্রাকচার্ড প্রোগ্রামিং ল্যাঙ্গুয়েজগুলি (সি, পাস্কাল) - "গোটো" বের করে, পদ্ধতি এবং কাঠামোগত লুপগুলি প্রতিস্থাপন করে etc.
  • জাভা - "ম্যানুয়াল মেমরি ম্যানেজমেন্ট" নেয়, জিসি / পরিচালিত মেমরির সাথে প্রতিস্থাপন করে
  • হাস্কেল / ক্লোজার - "অনিয়ন্ত্রিত পরিবর্তনীয় স্থিতি" গ্রহণ করে
  • লিস্প - সর্বাধিক "ভাষার বাক্য গঠন" গ্রহণ করে, এস-এক্সপ্রেশনগুলির নমনীয় হোমোসাইকোনিক গাছের সাথে প্রতিস্থাপন করে

দ্য লাস্ট প্রোগ্রামিং ল্যাঙ্গুয়েজ - আঙ্কেল বব মার্টিনের এই শীর্ষে একটি দুর্দান্ত আলোচনা আছে


"স্ট্রাকচার্ড প্রোগ্রামিং ল্যাঙ্গুয়েজ (সি, পাস্কাল) -" গোটো "বের করে, পদ্ধতি এবং স্ট্রাকচার্ড লুপ ইত্যাদির পরিবর্তে" - দুঃখিত, আপনি সেখানে ভুল করেছেন: সি আছে goto। তবে উত্তরটি আমার পছন্দ হয়েছে। সি-এর মূল কাজটি হ'ল আপনাকে মেমোরিতে ঠিক কোথায় এবং কোন সময়ে কোন রেজিস্টারে থাকে তার ঠিক যত্ন নিতে না দেওয়া এবং এটি প্রোগ্রামের কাউন্টারটি লুকিয়ে রাখে (এটি যে ঠিক ঠিক ঠিক ঠিক ঠিক ঠিক তার ঠিক বসে আছে ঠিক তে পদক্ষেপে আপনি এটিকে সরাতে পারেন) একটি গোটো সহ নির্ভুলতার প্রায় একটি সমাবেশ স্তরে)।
Wyatt8740

0

এমন কোনও সরঞ্জাম নেই যেখানে সমস্ত সেরা বৈশিষ্ট্য রয়েছে। উদাহরণস্বরূপ, জাভাস্ক্রিপ্ট এবং স্কিমের একটি দুর্দান্ত বৈশিষ্ট্য হ'ল সেগুলি ছোট, তাই আপনি যদি বৈশিষ্ট্যগুলি প্যাকিং শুরু করেন তবে আপনি ইতিমধ্যে এটি হারিয়ে ফেলেছেন।

তবুও কোবরা অন্য ভাষা থেকে সমস্ত দুর্দান্ত বৈশিষ্ট্য রাখার দিক থেকে প্রতিশ্রুতিবদ্ধ দেখায়। :-)


0

কারণ আপনি যদি এ জাতীয় ভাষা তৈরি করেন তবে এটি আর একটি নতুন ভাষা হবে। আপনি একটি বড় ফ্যান বেস পেতে পারেন, তবে অন্যান্য সমস্ত ভাষা এখনও বিদ্যমান থাকবে।

সি এখনও বিদ্যমান আছে যদিও অনেক নতুন ভাষা উদ্ভাবিত হয়েছিল তখন থেকে

আপনি বলতে পারেন অজগর এমন একটি সর্বজনীন ভাষা, তবে তারপরেও রুবি রয়েছে।

অনেকগুলি ভাষা থাকার কারণ হ'ল অনেক প্রোগ্রামার রয়েছে এবং তাদের মধ্যে কিছু নতুন ভাষা তৈরি করতে পছন্দ করে।

যে কোনও একক সার্বজনীন ভাষা নেই যার প্রতি প্রত্যেকে সম্মত হয় তা হ'ল কোনও কারুকর্ম হিসাবে প্রোগ্রামিং কোনও সংস্থা কর্তৃক নির্ধারিত হয় না যা সমস্ত সিদ্ধান্ত নেয়। প্রত্যেকে যা চায় তা করতে স্বাধীন to

সেটা একটা ভাল জিনিস.


আমি আরও যুক্তি দিয়ে বলব যে এটি ভাল বা খারাপ নয় বরং এটি একটি শৈল্পিক প্রমাণ যে সফ্টওয়্যার ইঞ্জিনিয়ারিং এমনকি একশো বছরেরও পুরানো নয় এবং অস্তিত্বের অন্যান্য সকল প্রকৃতির সাথে তুলনামূলকভাবে অপরিপক্ক।
মাইকেল 4

0

এখন পর্যন্ত যা কিছু লেখা হয়েছে তা দিয়ে অনেক নতুন যুক্তি যুক্ত করা শক্ত, তবে আমি কয়েকটিতে ফেলব।

  • বিবর্তন: এটি কেবল জৈবিক সিস্টেমই নয় যেগুলি চালু করা হয়, পরিবর্তিত হয় এবং সংস্থানসমূহের জন্য বেঁচে থাকার জন্য সবচেয়ে উপযুক্ত প্রতিযোগিতা এবং তাদের নিজস্ব কল করার জন্য একটি কুলুঙ্গি হয়। প্রতিযোগিতাটি ভাল এবং জিনিসগুলি এগিয়ে দেয়।

  • পরিপক্কতা: আমরা সম্ভবত এক শতাব্দীরও কম সময়ের জন্য কম্পিউটারের ভাষা তৈরি করে চলেছি। আমরা এখনও উত্তরটি পেতে পারি না কারণ আমরা এখনও সমস্ত প্রশ্ন জানি না।

  • পৃথক জেনেসিস: এটির জন্য সঠিক শব্দটি নিশ্চিত নয়, তবে বিশ্বে তাদের অনেকগুলি লেখার ব্যবস্থা যা বহু ভৌগলিক অঞ্চলে শুরু হয়েছিল। কুনিফর্ম সম্পর্কে চিন্তা করুন যা মাটির ট্যাবলেটগুলিতে খোদাই করার দাবি দ্বারা আংশিকভাবে নির্ধারিত হয়েছিল। সংস্কৃত, গ্রিক, হিব্রু, রোমান, আরবি বর্ণমালা সম্পর্কে চিন্তা করুন। হায়ারোগ্লিফিক্স, 6000+ চিহ্ন সহ সুন্দর রচনার চীনা পদ্ধতি যা বহু পূর্ব এশিয়ার দেশগুলিতে ভাগ করা হয়। সিরিলিক, কাটাকানা এবং হিরিগানার মতো ফোনেটিক ভিত্তিতে আরও আধুনিক মিশ্র বর্ণমালাগুলির কথা ভাবেন। আমি ভাষাতত্ত্ববিদ নই তাই ভুলগুলি খুব কঠোরভাবে শিখাবেন না, তবে বিশ্বব্যাপী সংস্কৃতিগুলিকে যখন কোনও কিছুর প্রয়োজন হবে তখন তারা এটিকে তৈরি করে এবং প্রয়োজনীয়তার বাইরে এটিকে নিজের করে তুলবে। কম্পিউটার ভাষা যখন তখন প্রচুর বিশ্বব্যাপী যোগাযোগ ছিল এবং ইম্পেরিয়াল এবং মেট্রিক সিস্টেমের মতো হয়েছিল, শক্তিশালী ধারণা নেতৃত্ব সঙ্গে জায়গা থেকে এসেছেন। তবে প্রোগ্রামিং ল্যাঙ্গুয়েজ বিভিন্ন ধরণের সংস্কৃতিকে পরিবেশন করে (যার মধ্যে কয়েকটি কর্পোরেট সংস্কৃতি), তাই তারা তাদের তৈরি প্রতিচ্ছবিগুলি প্রতিবিম্বিত করে। কম্পিউটারের ভাষাগুলি তাদের সাংস্কৃতিক লিগ্যাসি নিয়ে আসে যা তাদের নকশা এবং ব্যবহারকে আকার দেয়। ওএস কার্নেল সংস্কৃতিতে, সি এবং সি ++ খুব শীঘ্রই জাভা (বা অন্য উপায়ে) -এর জন্য হ্রাস পাওয়ার সম্ভাবনা নেই কারণ তারা স্থানীয় কোড তৈরি, হার্ডওয়্যার বিমূর্ত স্তর তৈরির জন্য হার্ডওয়ারের সাথে ঘনিষ্ঠ / দক্ষ সংযোগের অনুমতি দেয় এবং একটি বিশাল আকারের ইনস্টলড থাকে।

  • ডিজাইনের নকশা: প্রোগ্রামিং ভাষা বিভিন্ন সাংগঠনিক দৃষ্টান্ত ব্যবহার করে using সিওবিএল এবং অ্যাডা ছিল এমন কমিটিগুলি থেকে যেগুলি ডিওডির অংশ ছিল যেগুলির অনেকগুলি শ্রেণিবিন্যাস ছিল। আমি যদি সঠিকভাবে সি, সি ++, জাভা মনে করি এবং সম্ভবত আরও অনেকেই এক বা অল্প সংখ্যক ডিজাইনার থেকে এসেছিল। ফ্রেড ব্রুকস তার গবেষণাপত্রের দর্শনীয় ভিত্তিক দৃষ্টিভঙ্গি, ডিজাইনের নকশা (http://www.youtube.com/watch?v=pC-DlX-PaF4) কমিটির ফলাফলের তুলনা করে। আমরা যদি আজ সার্বজনীন প্রোগ্রামিং ভাষার সংজ্ঞা দেওয়ার জন্য কোনও দা ভিঞ্চি বা কোনও কমিটি বাছাই করতে বসে থাকি, তবে আমরা কি জানব যে কে বা কোন পদ্ধতিতে এটির নকশা করা উচিত?


0

এই সমস্ত বিষয়ে কিছুটা ভিন্নতর হতাশ:

একটি ভাষা কি? হাস্যকরভাবে সরল হওয়ার জন্য এটি শব্দভান্ডার, বাক্য গঠন এবং শব্দার্থক শব্দ।

আপনি প্রোগ্রামিং ভাষার সাথে প্রথম জিনিসটি কী করেন?
আপনি জিনিসগুলি সংজ্ঞায়িত করেন - শ্রেণি, পরিবর্তনশীল, পদ্ধতি - আপনি শব্দভাণ্ডার এবং শব্দার্থবিজ্ঞান প্রসারিত করেন।

কেন? সুতরাং এখন আপনি এতে জিনিস বলতে পারেন যা আপনি আগে বলতে পারেন না।
এটি পছন্দ করুন বা না করুন, আপনি একটি নতুন বিশেষ-উদ্দেশ্যে ভাষা তৈরি করেছেন।

আইএমএইচও, একটি সাধারণ-উদ্দেশ্যমূলক ভাষায় সন্ধান করার জিনিসটি যদি বিশেষ-উদ্দেশ্যমূলক ভাষাগুলি তৈরি করা সহজ করে।


0

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

  • ভাষার বৈশিষ্ট্যগুলির জন্য, "সেরা" বিষয়গত বা কমপক্ষে (অন্তর্বর্তী) তর্কযোগ্য।
  • কিছু বৈশিষ্ট্য সুসংগত নয়; অন্য ভাষার ভাল বৈশিষ্ট্যের সাথে একত্রিত হলে এক ভাষার ভাল বৈশিষ্ট্য ফুঁসে উঠতে পারে।
  • আমরা এখনও নতুন বৈশিষ্ট্য নিয়ে এসেছি না।

সংক্ষেপে, ভাষার নকশা এর চেয়ে শক্ত এবং জটিল complicated যদিও আপনি স্ক্যালাকে একবার দেখে নিতে পারেন ।


-2

ভিজ্যুয়াল ব্যাচ কাস্টমাইজযোগ্য প্রোগ্রামিং ভাষার একটি প্রচেষ্টা। নীচের লিঙ্কটি দেখায় যে কীভাবে এই প্রোগ্রামিং ইন্টারফেসটি ইউনিভার্সাল প্রোগ্রামিং ভাষার প্রয়োজন অনুসারে অভিযোজিত হতে পারে।

http://sourceforge.net/apps/phpbb/visualbatch/viewtopic.php?f=4&t=4


-2

একটি সর্বজনীন প্রোগ্রামিং ভাষা আছে। একে "মেশিন ল্যাঙ্গুয়েজ" বলা হয় এবং অন্য যে কোনও কম্পিউটার ভাষার সমস্ত কিছুই চূড়ান্তভাবে মেশিন ল্যাঙ্গুয়েজ হিসাবে কার্যকর করা হয়।

এটা কিসের মতো দেখতে? 0-9 এবং এএফ এর একটি স্ট্রিং।

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


6
যন্ত্রের ভাষা সর্বজনীন নয়; এমনকি বন্ধ না। প্রতিটি মেশিনের নিজস্ব ভাষা রয়েছে।
হ্যাসেন

3
এছাড়াও, এটি 0-9 এবং AF এর স্ট্রিং নয়। এটি 1 এবং 0 এর।
ডেভিড কনরাড

@ হাসান @ ডেভিডকে @ অ্যান্ডির মতো পরামর্শ দেওয়া কি যুক্তিসঙ্গত নয় যে প্রতিটি ভাষা একটি দৃষ্টিকোণ থেকে একটি ডোমেন-নির্দিষ্ট ভাষা অন্য ভাষায় নির্মিত?
আরমান্ড

আমি 0-9 এবং এএফ বলেছিলাম কারণ কিপঞ্চ মেশিনে মাল্টি-পাঞ্চ কোডগুলি ব্যবহার করতে আপনাকে জানতে হবে। এটি একবারে কত বড় অংশের উপর নির্ভর করে আপনি সংখ্যা হিসাবে নিলে এটি 0-1 বা 0-15 বা 0-255 বলে মনে হয়। এবং হ্যানসেন ঠিক বলেছেন; মেশিনের প্রতিটি টিওয়াইপি এর নিজস্ব ভাষা থাকে। প্রায় সমস্ত পিসির আজ 80386 কোড গ্রহণ করে; এমনকি আমার ফোনও! তবে আইপ্যাড আসবে না।
অ্যান্ডি ক্যানফিল্ড

@ হাসেনজ এবং বিভিন্ন বৈশিষ্ট্যের সাথে। 6502 প্রোগ্রামিংয়ের জন্য প্রয়োজনীয় মানসিকতাটি একটি x86 প্রোগ্রামিং থেকে আলাদা এবং পরিবর্তে একটি RISC চিপ থেকে পৃথক। সার্বজনীন থেকে খুব দূরে।

-2

শুধু কারণ,

ইউনিভার্সাল কম্পিউটার নেই।

ইউনিভার্সাল প্ল্যাটফর্ম নয়।

ইউনিভার্সাল প্রোগ্রামার নয়।

এমনকি একটি ইউনিভার্সাল ক্লায়েন্টও নয়।

: P: P

সুতরাং সহজভাবে আমাদের জন্য আলাদা আলাদা আলাদা আলাদা আলাদা দরকার হয় need ;)


-2

এখানে বেশিরভাগ উত্তর প্রতিটি সমস্যার জন্য সেরা সরঞ্জামটি ব্যবহারের দিকে মনোনিবেশ করে। আমি বিশ্বাস করি না যে এটি যথেষ্ট যথেষ্ট কারণ।

আপনি যদি বড় সংস্থাগুলির দিকে নজর দেন তবে সাধারণত সংস্থাগুলি একটি একক (বা একটি অল্প সংখ্যক) ভাষা এবং প্রযুক্তি ব্যবহার করার ঝোঁক রাখে, এমনকি যদি কোনও নির্দিষ্ট প্রকল্পের জন্য আরও ভাল কোন ভাষা থাকে।

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


1
আমি 4 টিরও কম ভাষা ব্যবহার করে কোনও শালীন কর্পোরেট প্রকল্প দেখিনি। এবং আমি অযোগ্য সরঞ্জাম নির্বাচন করে সেই "সুবিধা" কোনওটিতে বিশ্বাস করি না। এটা কখনও কাজ করে না।
এসকে-লজিক

-3

আমি মনে করি সমস্ত "কারণ আপনি একটি পেন্সিল দিয়ে মূর্তিগুলি খোদাই করেন না" উত্তরগুলি বিন্দুটি অনুপস্থিত।

কে এখানে, প্রতিটি নতুন প্রকল্পের আগে সত্যই একটি ভাষা নির্বাচন করে?

সত্য হল, আমরা মাত্র কয়েক প্রোগ্রামিং ভাষার প্রয়োজন, এবং প্রোগ্রামিং বিশ্বের যে পথ বন্ধ ভাল হবে মানুষ তৈরীর উপর ফোকাস করবে স্ক্রিপ্টিং ভাষা ভাল পরিবর্তে উদাহরণস্বরূপ পাইথন / রুবি / Perl / younameit জুড়ে ছড়িয়ে ছিটিয়ে হচ্ছে।

সি # উইন্ডোজে / এর জন্য প্রোগ্রাম করা হয় (ঠিক আছে, এখানে মোনো আছে, প্রতিদিন যে কেউ প্রতিদিন মনো অ্যাপের অধীনে সি # চালায়?) এবং এটি ব্যবহারকারীদের উইন্ডোজ 7/8 কিনে তোলে এবং এটি মাইক্রোসফ্টের জন্য অর্থ উপার্জন করে।
অন্যান্য সংস্থাগুলিও এটি করে, তারপরে ওপেন সোর্স আরও ভাল জানে, তারপরে মিস্টার জিনিয়াসও ... এবং আমরা প্রচুর চেহারা-সমান ভাষা পেয়েছি, এটি কেবল মানবতার স্ব-কেন্দ্রিক প্রকৃতি।


সম্মত - আমাদের বেশিরভাগ ক্ষেত্রে কেবলমাত্র একটি উচ্চ স্তরের "নিরাপদ" ভাষা, একটি নিম্ন স্তরের "অনিরাপদ" সিস্টেম প্রোগ্রামিং ভাষা, সমস্ত সমাবেশ ভাষা (সিপিইউতে একটি, তারা অনিবার্য তবে গোপনীয়), এবং কিছু বিশেষ উদ্দেশ্য (ডোমেন নির্দিষ্ট) প্রয়োজন ভাষা (যেমন এসকিউএল)। আসল সমস্যাটি হ'ল যে কারও পক্ষে কোনও ভাষা "অবজ্ঞাত" ঘোষণা করা অসম্ভব (ভাষা ডিজাইনার যখন এটি করার চেষ্টা করেও - যেমন পাইথন 2 বনাম পাইথন 3)) প্রতি বছর আরও নতুন ভাষা এবং কোনও পুরানো ভাষাগুলি বাতিল করা হয়নি মানে শেষ পর্যন্ত তাদের ব্যবহারের জন্য প্রোগ্রামারগুলির চেয়ে বেশি ভাষা ব্যবহৃত হবে। ;-)
ব্রেন্ডন

-5

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


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