ডি (প্রোগ্রামিং ভাষা)

উইকিপিডিয়া, মুক্ত বিশ্বকোষ থেকে
পরিভ্রমণে ঝাঁপ দিন অনুসন্ধানে ঝাঁপ দিন
ডি প্রোগ্রামিং ভাষা
D Programming Language logo.svg
প্যারাডাইমMulti-paradigm: functional, imperative, object-oriented
নকশাকারWalter Bright, Andrei Alexandrescu (since 2007)
বিকাশকারীডি ল্যাঙ্গুয়েজ ফাউন্ডেশন
প্রথম প্রদর্শিত৮ ডিসেম্বর ২০০১; ১৮ বছর আগে (2001-12-08)[১]
স্থিতিশীল সংস্করণ
2.088.0[২] / ১ সেপ্টেম্বর ২০১৯; ১০ মাস আগে (2019-09-01)[২]
ধরণের শৃঙ্খলাInferred, static, strong
ওএসফ্রিবিএসডি, লিনাক্স, ম্যাকওএস, মাইক্রোসফট উইন্ডোজ
লাইসেন্সবুস্ট সফটওয়্যার লাইসেন্স[৩][৪][৫]
ফাইলনেম এক্সটেনশান.d
ওয়েবসাইটdlang.org
মুখ্য বাস্তবায়নসমূহ
ডিএমডি (reference implementation), জিসিসি, এলডিসি, এসডিসি
যার দ্বারা প্রভাবিত
C, সি++, C#, Eiffel,[৬] জাভা (প্রোগ্রামিং ভাষা), পাইথন (প্রোগ্রামিং ভাষা)
যাকে প্রভাবিত করেছে
গিনি (প্রোগ্রামিং ভাষা), MiniD, Qore, Swift,[৭] Vala

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

কিছু উদাহরণ[সম্পাদনা]

উদাহরণ ১[সম্পাদনা]

এই উদাহরণ প্রোগ্রামটি তার কমান্ড লাইনের যুক্তিগুলি মুদ্রণ করে। main ফাংশন একটি ডি প্রোগ্রামের এন্ট্রি পয়েন্ট, এবং args কমান্ড লাইন আর্গুমেন্ট প্রতিনিধিত্বমূলক স্ট্রিং একটি অ্যারে। ডি-তে একটি string হচ্ছে ক্যারেক্টারের একটি অ্যারে, যেটি ডি১ -এ char[] অথবা ডি২ তে immutable(char)[] এর প্রতিনিধিত্ব করে।

1 import std.stdio: writefln;
2 
3 void main(string[] args)
4 {
5     foreach (i, arg; args)
6         writefln("args[%d] = '%s'", i, arg);
7 }

উদাহরণ ২[সম্পাদনা]

The following shows several D capabilities and D design trade-offs in a short program. It iterates over the lines of a text file named words.txt, which contains a different word on each line, and prints all the words that are anagrams of other words.

 1 import std.stdio, std.algorithm, std.range, std.string;
 2 
 3 void main() {
 4     dstring[] [dstring] signs2words;
 5 
 6     foreach (dchar[] w; lines(File("words.txt"))) {
 7         w = w.chomp().toLower();
 8         immutable key = w.dup.sort().release().idup;
 9         signs2words[key] ~= w.idup;
10     }
11 
12     foreach (words; signs2words) {
13         if (words.length > 1) {
14             writefln(words.join(" "));
15         }
16     }
17 }

তথ্যসূত্র[সম্পাদনা]

  1. উদ্ধৃতি ত্রুটি: অবৈধ <ref> ট্যাগ; D1 changelog1 নামের সূত্রের জন্য কোন লেখা প্রদান করা হয়নি
  2. উদ্ধৃতি ত্রুটি: অবৈধ <ref> ট্যাগ; D2 changelog নামের সূত্রের জন্য কোন লেখা প্রদান করা হয়নি
  3. উদ্ধৃতি ত্রুটি: অবৈধ <ref> ট্যাগ; D-frontend-license নামের সূত্রের জন্য কোন লেখা প্রদান করা হয়নি
  4. "dmd Backend converted to Boost License"। ৭ এপ্রিল ২০১৭। সংগ্রহের তারিখ ৯ এপ্রিল ২০১৭ 
  5. "D 2.0 FAQ"। সংগ্রহের তারিখ ১১ আগস্ট ২০১৫ 
  6. আলেক্সান্দ্রেস্কু, আন্দ্রে (২০১০)। The D programming language (First সংস্করণ)। Upper Saddle River, New Jersey: Addison-Wesley। পৃষ্ঠা 314। আইএসবিএন 0321635361 
  7. "Building assert() in Swift, Part 2: __FILE__ and __LINE__"। সংগ্রহের তারিখ ২৫ সেপ্টেম্বর ২০১৪