DOT DSL

DOT DSL

কঠিন

নির্দেশনা

একটি ডোমেইন স্পেসিফিক ভাষা (DSL) হলো নির্দিষ্ট একটি ডোমেইনের জন্য অপ্টিমাইজ করা ছোট একটি ভাষা। যেহেতু একটি DSL নির্দিষ্ট লক্ষ্যের জন্য তৈরি, তাই এটি লেখককে কী চান তা ঘোষণা করার সুযোগ দিয়ে উৎপাদনশীলতা ও বোঝাপড়ায় বড় প্রভাব ফেলতে পারে, কীভাবে তা নয়।

এগুলোর প্রয়োগের একটি বড় ক্ষেত্র হলো জটিল কাস্টমাইজেশন বা কনফিগারেশন।

উদাহরণস্বরূপ, DOT ভাষা দিয়ে আপনি একটি গ্রাফের লিখিত বর্ণনা লিখতে পারেন, যা পরে Graphviz-এর কোনো একটি টুল (যেমন dot) দিয়ে ছবিতে রূপান্তর করা হয়। একটি সরল গ্রাফ দেখতে এরকম:

graph {
    graph [bgcolor="yellow"]
    a [color="red"]
    b [color="blue"]
    a -- b [color="green"]
}

এটি example.dot ফাইলে রেখে dot example.dot -T png -o example.png রান করলে example.png নামের একটি ছবি তৈরি হয়, যেখানে হলুদ ব্যাকগ্রাউন্ডে একটি সবুজ রেখায় যুক্ত লাল ও নীল বৃত্ত থাকে।

Graphviz dot ভাষার মতো একটি ডোমেইন স্পেসিফিক ভাষা লিখুন।

আমাদের DSL Graphviz dot ভাষার মতোই, কারণ আমাদের DSL গ্রাফ ডেটা স্ট্রাকচার তৈরি করতে ব্যবহৃত হবে। তবে DOT ভাষার বিপরীতে, আমাদের DSL হবে একটি ইন্টারনাল DSL, যা শুধু আমাদের নিজেদের ভাষায় ব্যবহারের জন্য।

ইন্টারনাল ও এক্সটার্নাল DSL-এর পার্থক্য সম্পর্কে আরও জানুন।

Lean সিনট্যাক্স

এই অনুশীলনীতে DOT ভাষার মতো একটি DSL-এর জন্য আপনাকে সিনট্যাক্স ডিফাইন করতে হবে।

এই কাজটিতে সম্ভবত আপনাকে নোটেশন বা ম্যাক্রো ব্যবহার করতে হবে। একটি রেফারেন্স দেখে নিতে পারেন।

Note

এই অনুশীলনীতে নোডের মাঝে এজ একটি মাত্র - দিয়ে প্রকাশ করা হয়, যেখানে আসল DOT ভাষায় ব্যবহৃত হয় --. এতে Lean-এর এক লাইনের কমেন্ট সিনট্যাক্সের সঙ্গে সংঘর্ষ এড়ানো যায়।

এছাড়া প্রতিটি স্টেটমেন্টের শেষে ; থাকে, এমনকি গ্রাফ-স্তরের কমেন্টেও।


সূত্র

Wikipediaলিংকটি নতুন উইন্ডো বা ট্যাবে খোলে
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
Lean Exercism

DOT DSL শুরু করতে প্রস্তুত?

Exercism-এ সাইন আপ করুন, Lean ট্র্যাকের 100টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।