আমি কীভাবে বলতে পারি যে প্রোগ্রামিং ভাষা অন্য ভাষার সাথে সংকলন করে?


22

আমি ইংরাজিতে কীভাবে বলতে পারি, প্রোগ্রামিংয়ের ভাষাটি অন্যান্য প্রোগ্রামিং ভাষায় সংকলন করা যায়?

উদাহরণ হ্যাক্স হতে পারে । ওয়েবসাইটে ভাষাটি "মাল্টিপ্লাটফর্ম" হিসাবে প্রকাশিত হয়েছে:

মাল্টিপ্লাটফর্ম: হ্যাক্সকে তার জনপ্রিয় সংকলন - জাভাস্ক্রিপ্ট, ফ্ল্যাশ, নেকোভিএম, পিএইচপি, সি ++, সি # এবং জাভা (শীঘ্রই) সহ সমস্ত জনপ্রিয় প্রোগ্রামিং প্ল্যাটফর্মগুলিতে সংকলন করা যেতে পারে soon

তবে মাল্টিপ্লাটফর্মটিকে হার্ডওয়্যার বা সফ্টওয়্যার প্ল্যাটফর্ম (উইন, ম্যাক, লিনাক্স) হিসাবে ভুল বোঝা যায়।

তাহলে এই ক্ষমতাটি বর্ণনা করে সবচেয়ে উপযুক্ত শব্দটি কী?


3
আমি "সংকলন" মুছে ফেলব এবং সহজভাবে বলব যে এই প্রোগ্রামিং ভাষাটি কিছু দোভাষী ব্যবহারের মাধ্যমে অন্যটিতে রূপান্তরিত হতে পারে।
নীল

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

4
@ টেরেসকো কীভাবে? আমি আপনাকে দেখতে পেলাম যে একমাত্র উপায় আপনি সংকলনের অত্যধিক নিয়ন্ত্রণমূলক এবং অকেজো সংজ্ঞা (যা আউটপুটটিকে মেশিন কোডে সীমাবদ্ধ করে) ব্যবহার করছেন।

18
@ নীল: এক ভাষায় রচিত একটি প্রোগ্রামকে অন্য ভাষায় রূপান্তর করা ব্যাখ্যা নয় । আসলে এটি সংকলনের সংজ্ঞা
Jörg ডব্লু মিটাগ

2
@ নীল, সংকলন, সংজ্ঞা অনুসারে, একটি ভাষা থেকে অন্য ভাষায় রূপান্তর। এবং "রূপান্তর" ততক্ষণে "সংকলন" হিসাবে অস্পষ্ট এবং তীব্র শোনায়, যতক্ষণ না আপনার পাঠক শব্দটির পুনর্লিখন এবং এ জাতীয় বিষয়ে দক্ষতা অর্জন করেন না। সুতরাং আমি "টার্গেটিং" শব্দটি ব্যবহার করার পরামর্শ দেব, যেমন, "হ্যাক্স জাভাস্ক্রিপ্ট, ফ্ল্যাশ, যাই হোক না কেন, এবং এ জাতীয় লক্ষ্যবস্তু করছে"।
এসকে-যুক্তি

উত্তর:


41

সাধারণ শব্দটি হ'ল "ট্রান্সকোম্পিলেশন" - একটি সাধারণ শব্দ নয়, তবে প্রযুক্তিগতভাবে এটি সঠিক। এটি কেবলমাত্র ট্রেন্ডি নতুন স্ক্রিপ্টিং ভাষার জন্য নয় (কফি স্ক্রিপ্ট -> জাভাস্ক্রিপ্ট); প্রথম সি ++ সংকলক প্রকৃতপক্ষে সি তে ট্রান্সকোম্পিলার ছিল to


2
"ট্রান্সপ্লাইলস" এর মতো "

4
আমি এই শব্দটি এর আগে কখনও শুনিনি, কয়েক দশক ধরে মাঠে রয়েছি। মাইন্ডস এর উত্সের দিকে ইঙ্গিত করছে (প্রথম কাগজের লিঙ্কটি যেখানে এটি প্রদর্শিত হবে সেরা হবে)?
এসকে-যুক্তি

উইকিপিডিয়া থেকে : "একটি উত্স থেকে উত্স সংকলক [যেমন।" ট্রান্সক্যাম্পিলার "," ট্রান্সপোর্টার "] প্রোগ্রামিং ভাষার মধ্যে অনুবাদ করে যা প্রায় বিমূর্ততার একই স্তরে পরিচালিত হয়, যখন একটি traditionalতিহ্যবাহী সংকলক উচ্চ স্তরের প্রোগ্রামিং ভাষা থেকে নিম্নে অনুবাদ করে স্তর প্রোগ্রামিং ভাষা। "
l0b0

4
@ l0b0, উইকিপিডিয়া শব্দটি উদ্ভব মন্তব্য করে না, এবং এটা স্পষ্টভাবে একটি হতে অনুমিত হয় না মূল উৎস।
এসকে-লজিক

3
... গুগলে "ট্রান্সকোম্পিলেশন" অনুসন্ধান করা কোনও সম্পর্কিত ফলাফল দেয় না ...
বাকুরিউ

27

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

মাল্টিপ্লাটফর্ম: হ্যাক্সকে তার দ্রুত সংকলক - জাভাস্ক্রিপ্ট, ফ্ল্যাশ, নেকোভিএম, পিএইচপি, সি ++, সি # এবং জাভা (শীঘ্রই) সহ সমস্ত জনপ্রিয় প্রোগ্রামিং ভাষায় সংকলন করা যেতে পারে

(এছাড়াও, আমি মেরিয়াম-ওয়েবস্টারকে এড়িয়ে যাচ্ছি, কারণ তারা বোকা কারণ তারা আমার সাথে একমত নয় ... হুঁ মিম)


10

সম্ভবত এটি https://english.stackexchange.com/ এর জন্য একটি প্রশ্ন তবে আমি বলব যে সংকলনের প্রক্রিয়াটি অন্য একটি উচ্চ স্তরের ভাষার সাথে সংকলন অন্তর্ভুক্ত এবং কেবল মেশিন কোডের দিকে সংকলিত সংকলকগুলির মধ্যে সীমাবদ্ধ নয়।

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

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

আমি "হ্যাক্স" বিবৃতিটি এমনভাবে পড়তে পারি যাতে স্ট্যান্ডার্ড লাইব্রেরি এবং অনুরূপ জিনিস অন্তর্ভুক্ত থাকে। উদাহরণস্বরূপ, এই ক্ষেত্রে প্লাটফর্মটি "ভাষা" এর সুপারস্টেট হতে পারে এবং আপনি এটিকে "সফটওয়্যার ডেভলপমেন্ট প্ল্যাটফর্ম" ইত্যাদি বলে আলাদা করতে পারেন etc.


4
আমার মনে হয় আপনি ইংলিশ.স্ট্যাকেক্সচেঞ্জ ডট কম?
সুমন

3

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


2

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

হ্যাক্স হ'ল উত্স থেকে উত্স সংকলক, কারণ এটি উদাহরণ হিসাবে উচ্চ স্তরের ভাষাটিকে নিম্ন স্তরের এক হিসাবে রূপান্তর করে না। এটি আপনার বহু-প্ল্যাটফর্মের অস্পষ্টতার জন্য সরাসরি সমস্যার সমাধান করবে বলে মনে হয় না তবে দুর্ভাগ্যক্রমে আমি মনে করি না যে এই দুটি জিনিসের মধ্যে পার্থক্যগত ব্যবহারের উপায় আছে - এপিআইগুলি এমন একধরণের ভাষা যা সাধারণভাবে ব্যাখ্যা, পুনরায় সংকলন করা যায় etc.


1

প্রথম জিনিস: এই বৈশিষ্ট্যের জন্য ইতিমধ্যে উপযুক্ত শব্দ আছে কিনা তা আমি জানি না don't

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

অবশ্যই ভাষা অস্পষ্ট, কারণ এটি বোঝা যে উত্স কোড যে কোনও বাস্তব বিশ্বের ভাষায় লেখা যেতে পারে (উদাহরণস্বরূপ কারণ ভেরিয়েবলগুলি ইউনিকোডে লেখা যেতে পারে) written

অন্যদিকে, প্রতিটি পাকা প্রোগ্রামার সম্ভবত এই জাতীয় নির্মাণকে স্থানীয়করণ বা আন্তর্জাতিকীকরণ থেকে আলাদা হিসাবে স্বীকৃতি দেবে, তাই তারা এটি আরও সহজেই 'পেতে' পারে।

শুধু আমার 2 সেন্ট।


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