ডায়নামিক ল্যাঙ্গুয়েজ রানটাইম এবং সি # 4.0 এর মধ্যে সম্পর্ক কী?


11

ধরা যাক আমি আজকাল বিদ্যমান হিসাবে NET প্ল্যাটফর্মে একটি গতিশীল ভাষা সংকলক / দোভাষী, একটি স্কিম ইন্টারপ্রেটার তৈরি করতে চেয়েছিলাম। আমি কি ডায়নামিক ল্যাঙ্গুয়েজ রানটাইম (ডিএলআর) ব্যবহার করে, বা আমার ভাষার গতিশীল বৈশিষ্ট্যগুলি প্রয়োগ করতে সি # 4.0 ব্যবহার করে ভাল হতে পারি ? নাকি আমার দুজনের দরকার?

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

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


আমি বিশ্বাস করি। নেট 4.0 গতিশীল বৈশিষ্ট্যগুলিও ডিএলআরের উপর ভিত্তি করে।
ডেভ


@ ডেভ: আমি নেট 4.0.০ রানটাইম এবং ডিএলআরের মধ্যে সম্পর্কের বিষয়ে বিশদ বর্ণনা করে একটি নিবন্ধের একটি বর্তমান, প্রামাণিক লিঙ্কে সন্তুষ্ট হব। এটি যদি আমাকে সি # 4.0 তে ডায়নামিক টাইপ সিস্টেমটি যথেষ্ট শক্তিশালী হয় এবং ডিএলআর-তে এমন কোনও গুরুত্বপূর্ণ বৈশিষ্ট্য রয়েছে যা। নেট 4.0 রানটাইম থেকে বাদ দেওয়া হয়েছিল কিনা তা আমাকে একটি ন্যায্য ধারণা দেবে। আমি কিছু নিবন্ধ পেয়েছি, তবে সেদিনই সমস্তগুলি আবার লেখা হয়েছিল যখন ডিএলআর আকার নিচ্ছিল এবং সেগুলির অনেকগুলি অনুমানমূলক।
রবার্ট হার্ভে

উত্তর:


3

এই নিবন্ধটি আমার মনে পড়ে। msdn.microsoft.com/en-us/magazine/gg598922.aspx

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


3

থেকে: জিম্মিসেচ

রবার্ট,

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

DLR এর কোডবেস বাকি (Microsoft.Scripting.dll, Microsoft.Dynamic.dll সবচেয়ে বেশি গুরুত্বপূর্ণ) থেকে ডাউনলোডের জন্য পাওয়া যায় এই CodePlex প্রকল্পের অথবা IronLanguages GitHub প্রকল্পের। তারা গ্রাহকগণ এবং হোস্টিং ভাষার উত্পাদকদের জন্য API সরবরাহ করে, যখন নেট নেট N.০ এ থাকা API গুলি প্রকৃতপক্ষে পদ্ধতিগুলির গতিশীল প্রেরণের জন্য।

.NET 4.0 এর জন্য একটি গতিময় ভাষার সংকলক লিখতে, আমি সি # ব্যবহারের ভাষা হিসাবে ব্যবহার করতাম এবং সাধারণ সংকলক কার্যগুলি সহজ করার জন্য ডিএলআরটি একটি গ্রন্থাগার হিসাবে ব্যবহার করতাম। ডিএলআরের সাধারণ উদাহরণের ভাষার জন্য, সিম্পলটি দেখুন।

~ জিমি

http://dlr.codeplex.com/discussions/268746#post656778

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