প্রোগ্রামিং ভাষা একত্রিত করা সম্ভব?


27

আমি কিছুক্ষণ প্রোগ্রামিং করছি, আমি কিছু প্রাথমিক প্রোগ্রাম লিখেছি এবং আমি শিখতে চাই। আমি সেই পর্যায়ে পৌঁছেছি যেখানে আপনি কেবল কী শিখবেন তা জানেন না এবং আমি নিজের কৌতূহলের জন্য একটি প্রশ্ন জিজ্ঞাসা করতে চাই।

সংক্ষেপে প্রশ্নটি হল, আপনি যদি একাধিক প্রোগ্রামিং ভাষাকে 1 ফলাফলের সাথে সংযুক্ত করতে পারেন? উদাহরণস্বরূপ, এই কোডটি কি সম্ভব?

<html>
cout << "Hello world!";
</html>

অথবা

import java.util.Scanner;
cout << "Insert a number from 1 to 10";
Scanner n = new Scanner(System.in);
System.out.println("The value you entered was" +n.newLine());

এটি একটি নির্বোধ প্রশ্নের মতো অনুভূত হয় তবে এটি সম্ভব কিনা তা আমি জানি না, তাই আমি এটি জিজ্ঞাসা করছি। ইন এই প্রশ্ন আমি সে HTML কোডে পাইথন কোড ব্যবহার করা হয় লক্ষ্য যদি আমার উপরোক্ত উদাহরণে সম্ভব হয় না, তিনি কী করেছিলেন?


12
এটি কাজ করার জন্য (মানুষকে পাগল না করে) কোনও ব্যক্তির কীভাবে ইন্টারেক্ট হয় এবং কোন অংশগুলি কোন ভাষা হিসাবে প্রক্রিয়া করা উচিত সে সম্পর্কে কমপক্ষে কঠোর নিয়ম প্রয়োজন ।

6
এটিতে একটি হেলোভা লেক্সার / পার্সার লাগবে।
চাদ হ্যারিসন

2
@ ব্রায়ান লুয়া এম্বেড করা হয়েছে যে দোভাষীটি কিছু সি বা সি ++ কোডের সাথে সংযুক্ত থাকে এবং স্ট্রিং বা বাহ্যিক ফাইলগুলিতে সঞ্চিত লুয়া কোড চালাতে ব্যবহৃত হয়, সম্ভবত ল / কোডটিতে সি / সি ++ অবজেক্ট প্রকাশ করে। লুয়া এই প্রশ্নটির অর্থে "এম্বেড" হয় না (ঘন ঘন, মোটেও নয়)।

2
এটি ২ 26 টি বর্ণের জন্য পৃথক চিহ্ন সহ প্রত্যেককে পাঁচটি বর্ণমালা তৈরি করার মতো এবং একটি বইতে একে একে সংযুক্ত করার মতো: অর্থহীন, বিরক্তিকর এবং অনর্থক।
থমাসএক্স

7
আমি মনে করি লোকেরা স্পষ্টতই সবচেয়ে সাধারণ (এবং কেবলমাত্র বৈধ বাস্তব-জীবন যা আমি ভাবতে পারি) "ভাষাগুলির সংমিশ্রণ" - সি / সি ++ প্রোগ্রামগুলিতে এএসএম টুকরা ব্যবহারের ক্ষেত্রে সাধারণত কার্য সম্পাদনের কারণে ব্যবহার করতে পারি।
টিসি 1

উত্তর:


43

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

<HTML>
<?PHP
call_some_php_function(1,2,"a","b"); /* This is may return nothing, a text string, or actual HTML markup code */
?>
</HTML>

এই উদাহরণটি সম্পর্কে উল্লেখ করার জন্য কয়েকটি গুরুত্বপূর্ণ বিষয়:

  • এইচটিএমএল কোনও প্রোগ্রামিং ভাষা নয়, এটি একটি মার্কআপ ভাষা language
  • পিএইচপি এবং এইচটিএমএল এবং একই জায়গায় কার্যকর করা / ব্যাখ্যা করা যায় না: পিএইচপি কোড সার্ভারে চলমান পিএইচপি ইন্টারপ্রেটার দ্বারা কার্যকর করা হয় এবং ফলাফলটি আশেপাশের এইচটিএমএলটিতে "ইনজেকশন" দেওয়া হয়। তারপরে সেই পুরো ব্লবটি ক্লায়েন্ট / ব্রাউজারে প্রেরণ করা হয় যা সম্পূর্ণ এইচটিএমএল সরবরাহ করে।

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

আমি মনে করি তাত্ত্বিকভাবে আপনি "ভাষা" সূচক যেমন একটি বিশেষ সংকলক / প্রাক প্রসেসর লিখতে পারেন:

Java
{
    import java.util.Scanner;
}
C++
{
   cout << "Insert a number from 1 to 10";
}
Java
{
    Scanner n = new Scanner(System.in); //Actually, this line *could* be a C++ line - it's hard for me to tell just by looking at it.
    System.out.println("The value you entered was" +n.newLine());
}

তবে আমি সত্যই নিশ্চিত নই যে আপনি এটি করে কোনও উপকার পাবেন।

এছাড়াও, এই সংকর ভাষার পরিবেশ কীভাবে ভাষার বৈশিষ্ট্যগুলি হ্যান্ডেল করবে যা দুটির মধ্যে অসম্পূর্ণ?


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

7
একটি পৃষ্ঠায় জাভাস্ক্রিপ্ট পাশাপাশি এইচটিএমএল এবং পিএইচপি থাকা অস্বাভাবিক নয়। ভয়াবহ, তবে অস্বাভাবিক নয়।
মাইকেল বর্গওয়ার্ট

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

@ sq33G - ASP.NET HTML কোড উত্পন্ন করে। আপনি চাইলে জাভাস্ক্রিপ্ট অন্তর্ভুক্ত করতে পারেন। ASP.NET অবশ্যই লেখক যা করতে চান হিসাবে বর্ণনা করেন না।
রামহাউন্ড

আমি অন্য কারও কাছে না থাকলে আমি একটি নথিতে পিএইচপি / এইচটিএমএল / জেএস আনতে যাচ্ছি।
বেন ব্রোকা

19

সংক্ষিপ্ত উত্তর

আসলে তা না.


দীর্ঘ উত্তর

এমবেডিং

সাধারণত, একটি একক উত্স ফাইলে ঠিক একটি প্রোগ্রামিং ভাষার জন্য কোড থাকে। একাধিক ভাষাগুলির একাধিক কারণে একক ফাইলে একত্রিত করা অস্বাভাবিক:

  • একাধিক সিন্ট্যাক্টিক্যালি-আলাদা ভাষার পার্স করা অত্যন্ত কঠিন (যদি একেবারে অসম্ভব না হয়)।
  • বিভিন্ন ভাষা প্রোগ্রামিংকে আলাদাভাবে আচরণ করে । হাস্কেলের কোনও ক্রিয়াকলাপের ধারণাটি সি ++ এর চেয়ে আলাদা।

সংযোগস্থাপন

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

Polyglots

বহুভোগ কোডটি একাধিক ভাষায় বৈধ এবং সমতুল্য। স্ট্যাক ওভারফ্লো এর 404 পৃষ্ঠায় এমন একটি প্রোগ্রাম রয়েছে:

ওভারফ্লো 404 বহুভুজ স্ট্যাক করুন

পাইথন, পার্ল, রুবি, সি, ব্রেনফাক এবং বেফুজে এটি "404" মুদ্রণ করে।

উপসংহার

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


আমি এখানে রুবি দেখতে পাচ্ছি না ...
জেসন লুইস

@ জেসনলিউস আমি রুবিকে চিনি না, তবে এই পোস্টটি বলে যে এটি # 4 রেখাটি মূল্যায়ন করে।
ম্যাক্সপাম

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

1
@ এসকে-লজিক এসকিউএল একটি স্ট্রাকচার্ড ক্যোয়ারী ল্যাঙ্গুয়েজ, কোনও প্রোগ্রামিং ভাষা নয়।
ম্যাক্সপাম

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

7

হ্যাঁ, এটা সত্যিই সম্ভব। আপনি যেভাবে কল্পনা করেছেন ঠিক সেভাবে নয়। এই উদ্দেশ্যে বিশেষভাবে নির্মিত কিছু ভাষা রয়েছে।

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

এইচটিএমএল হিসাবে, এটি কেবল একটি মার্কআপ ভাষা। আপনি প্রায়শই একটি সার্ভার-সাইড কোড (যেমন, ভিবি.এনইটি তে), এইচটিএমএল মার্কআপ এবং ক্লায়েন্ট-সাইড জাভাস্ক্রিপ্ট কোডটি একটি একক উত্স ফাইলে মিশ্রিত করতে পারেন, যদিও এটি অনেকের দ্বারা খারাপ অভ্যাস হিসাবে বিবেচিত হয়।


7

এটিকে প্রায়শই পলিগ্লট কোড বলা হয় - আপনি যদি লিঙ্কটি অনুসরণ করেন বা ওয়েবে বিভিন্ন অন্যান্য জায়গায় কিছু মজাদার / উন্মাদ উদাহরণ রয়েছে। এর বেশিরভাগই কেবল মজা করার জন্য / এটি সম্ভব তা প্রমাণ করার জন্য।

আরও গুরুতরভাবে, এখানে বিভিন্ন বাস্তব জীবনের উদাহরণ রয়েছে যেখানে দুটি বা আরও বেশি ভিন্ন ভাষা কার্যকরভাবে একত্রিত হতে পারে:

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

6

পার্ল ইনলাইন ব্যবহার করে কিছু ভাষার সংমিশ্রণ করা সম্ভব যা পার্ল স্ক্রিপ্ট লিখতে এবং ভিন্ন ভাষায় লিখিত কোডের বিভাগগুলি সন্নিবেশ করতে দেয়:

ইনলাইনটিতে সি, সি ++, জাভা, পাইথন, রুবি, টিসিএল, এসেম্ব্লার, বেসিক, গাইল, বেফুঞ্জ, অকটাভে, অ্যাউক, বিসি, টিটি (টেমপ্লেট টুলকিট), ওয়েবচ্যাট এবং এমনকি পিইআরএল সমর্থন রয়েছে


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

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

3

এম্বেডড এসকিউএল অন্য ভাষার প্রোগ্রামগুলিতে এসকিউএল বিবৃতি এম্বেড করার একটি সাধারণ উপায় ছিল।

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


1
এই দিনগুলিতে এম্বেড করা এসকিউএল লিনকিউ আকারে তার প্রত্যাবর্তন করেছে এবং এটি এখানেই রয়েছে।
এসকে-যুক্তি

@ এসকে-যুক্তি: এমএনডেড এসকিউএল এর মতো লিনকিউ কীভাবে? এটি কোনও আলাদা ভাষা নয়, এটি কেবল হোস্ট ভাষায় অতিরিক্ত ভাষা রচনার প্রয়োগ।
জোছিম সউর

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

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

1
প্রো সি এবং প্রো ফোর্টরান এসকিউএল স্টেটমেন্টগুলি কিছুটা অনুবাদ করেছিলেন। এবং লিনকুই একটি "এপিআই" নয়, এটি সিন্ট্যাক্স চিনির সাথে একটি এপিআই এবং বিনিময়যোগ্য সংকলক ব্যাক-এন্ডের একগুচ্ছ। যা এটিকে পূর্ণ-বর্ধিত এম্বেডড ডিএসএল এর নিখুঁত উদাহরণ করে তোলে।
এসকে-যুক্তি

2

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

যখন আপনার সমাধান ওয়েব পরিষেবাদি ব্যবহার করে তখন এই ধারণাটি আরও নেওয়া হয়, এটি একাধিক সফ্টওয়্যার উপাদানগুলিকে একত্রিত করার পক্ষেও পরিষ্কার উপায়।

.NET বিশ্বে উপরোক্ত সমস্ত প্রয়োগ হয়, আরও বেশি, ইন্টারফেস স্তরে এক্সএএমএল এবং এইচটিএমএল ইন্টারফেস একসাথে সিলভারলাইটে থাকতে পারে।

ইউনিক্স বিশ্বে, এক সময় আমরা কেসেল স্ক্রিপ্টগুলি সি ++ এবং সিওবিএল প্রোগ্রাম চালু করতে ব্যবহার করি যাতে সমাধানটি কাজ করতে পারে।


2

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


0

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


0

.NET ফ্রেমওয়ার্কটি বেশ কয়েকটি ভাষাকে একটি সমাধানে অংশ নিতে দেয় for ভাষা সিএলআর-সামঞ্জস্যপূর্ণ বাইট কোড তৈরি করতে পারে ততক্ষণ তা কাজ করে।

http://www.geekinterview.com/question_details/1047


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

আপনি প্রশ্নটি বুঝতে পেরেছি বলে আমি মনে করি না। লেখক একটি অস্পষ্ট ফাইলটিতে একাধিক ভাষাগুলির সংমিশ্রনের কথা বলছেন।
ক্রেগ 19

0

এটি খুব শক্ত, খুব কুরুচিপূর্ণ এবং 1 টি ফাইলে একাধিক প্রোগ্রামিং ভাষার সংমিশ্রণে প্রায়শই অকেজো।

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

আপনি যদি বিশ্বের কয়েকটি গুরুত্বপূর্ণ ওপেন সোর্স প্রকল্পের জন্য কোন ভাষা ব্যবহার করা হয় সে সম্পর্কে আগ্রহী হন তবে আপনি এটি পরীক্ষা করে দেখতে পারেন Ohloh.net। অনেক প্রকল্পের উত্স কোড সম্পর্কে পরিসংখ্যান সেখানে পাওয়া যাবে।


-1

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

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


এইচটিএমএলে ভাষার মিশ্রণের বিষয়ে +1, তবে আমি ব্যক্তিগতভাবে বিশ্বাস করি যে এইচটিএমএল / সিএসএস এবং জেএসকে আলাদা রাখতে এটি পরিষ্কার। ওয়েব ডিজাইনাররা সাইট জুড়ে এম্বেড থাকা স্ট্রাইনি জাভাস্ক্রিপ্টের মাধ্যমে ওয়েড করার চেষ্টা না করেই তাদের কাজটি করতে পারে।
jmort253

আপনি এইচটিএমএল ভাষায় ভাষা মিশ্রন করতে পারেন, তবে তাদের বেশিরভাগই প্রোগ্রামিং ভাষা নয়, এটি হ'ল বিষয়।
অ্যালেক্সিয়াস

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

-1

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


-3

হ্যাঁ, আপনার দোভাষী / সংকলক যতক্ষণ বুঝতে পারে ততক্ষণ প্রোগ্রামিং ভাষাগুলি মিশানো সম্ভব। উদাহরণস্বরূপ জাভাস্ক্রিপ্ট, পিএইচপি, অজগরটি এইচটিএমএলে মেশানো বা সি # তে সি ++।

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.