চথুলহু পথ পার্স করার বিরুদ্ধে কী যুক্তি রয়েছে?


24

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

আমি অভিজ্ঞতার সাথে জানি যে হাতছাড়া লিক্সার / পার্সার লেখা ব্যাকরণ তুচ্ছ - এটি একটি সময় সাশ্রয়ী এবং ত্রুটির প্রবণ প্রক্রিয়া। সুতরাং আমার কাছে দুটি বিকল্প ছিল: পার্সার জেনারেটর à লা ইয়্যাক বা পার্সেকের মতো একটি সংযুক্তি পাঠাগার। প্রাক্তনটিও ভাল ছিল তবে আমি বিভিন্ন কারণে পরবর্তীটি বেছে নিয়েছি এবং কার্যকরী ভাষায় সমাধানটি প্রয়োগ করেছি।

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

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

আমি ইতিবাচক আলোচনাটি পরিচালনার সামনে আবার আলোচনার দিকে চলেছি, তাই আমি কিছু দৃ so় যুক্তি প্রস্তুত করছি।

এই প্রথম কয়েকটি কারণ যা আমার মনে স্ট্রিং এড়ানোর জন্য আসে pস্প্লিট-ভিত্তিক সমাধান:

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

চথুলহু পথ পার্স করার বিরুদ্ধে আপনার প্রিয় যুক্তিগুলি কী ? *

* অবশ্যই যদি আপনি আমাকে বোঝাতে পারেন তবে তিনি ঠিক বলেছেন আমিও পুরোপুরি খুশি হব


9
আমার মত মনে হচ্ছে আপনার সহকর্মী আপনার জন্য ডিএসএল প্রকল্পটি করতে স্বেচ্ছাসেবক করছে!
গ্র্যান্ডমাস্টারবি

23
"আমার পার্সিং পুনর্নবীকরণ করা উচিত নয় তবে কেবল স্ট্যাক এবং স্ট্রিং ব্যবহার করা উচিত। প্রত্যেকের মতো স্প্লিট" - জঘন্য, সেই লোকটি খুশি হওয়া উচিত যে অজ্ঞতা ক্ষতি না করে ...
মাইকেল বর্গওয়ার্ট

4
আপনার সহকর্মীকে পরামর্শ দিন যাতে তিনি পুরো ড্রাগন বুক না পড়ে এবং পরীক্ষা পাস না করে এই আলোচনায় ফিরে না আসে। অন্যথায় পার্সিং-সম্পর্কিত যে কোনও বিষয়ে তার আলোচনা করার অধিকার নেই।
এসকে-যুক্তি

4
দুঃখিত, কে পার্সিং পুনর্নবীকরণ ছিল?
রবিং

2
আমি মনে করি পরের বার যখন দেখি কেউ "আক্ষরিক" শব্দটি রূপকভাবে ব্যবহার করছে তখন আমার মাথাটি আক্ষরিক অর্থে বিস্ফোরিত হবে।

উত্তর:


33

দুটি পদ্ধতির মধ্যে সমালোচনাগত পার্থক্য হ'ল, তিনি যাকে একমাত্র সঠিক পথ হিসাবে বিবেচনা করছেন তা আবশ্যকীয় এবং আপনারই ঘোষণামূলক।

  • আপনার পদ্ধতির স্পষ্টরূপে বিধিগুলি ঘোষণা করা হয়, অর্থাত ব্যাকরণের নিয়মগুলি (প্রায়) সরাসরি আপনার কোডে এনকোড থাকে এবং পার্সার লাইব্রেরি স্বয়ংক্রিয়ভাবে কাঁচা ইনপুটকে পার্সড আউটপুটে রূপান্তর করে, যখন পরিস্থিতি পরিচালনা করা কঠিন এবং অন্যান্য বিষয়গুলির যত্ন নেওয়ার সময়। আপনার কোড বিমূর্ততার একক স্তরের মধ্যে লেখা হয়েছে, যা সমস্যা ডোমেন: পার্সিংয়ের সাথে মিলে যায়। পার্সেকের সঠিকতা ধরে নেওয়া যুক্তিসঙ্গত, যার অর্থ এখানে ত্রুটির একমাত্র ঘরটি হল, আপনার ব্যাকরণের সংজ্ঞাটি ভুল। তবে তারপরে আবার আপনার কাছে পুরোপুরি যোগ্যতাসম্পন্ন নিয়ম অবজেক্ট রয়েছে এবং সেগুলি সহজেই বিচ্ছিন্নতায় পরীক্ষিত হয়। এছাড়াও এটি লক্ষণীয় হতে পারে, যে পরিপক্ক পার্সার লাইব্রেরিগুলি একটি গুরুত্বপূর্ণ বৈশিষ্ট্য সহ জাহাজীকরণ: ত্রুটি প্রতিবেদন করা। পার্সিং ভুল হয়ে গেলে মার্জিত ত্রুটি পুনরুদ্ধার তুচ্ছ নয়। প্রমাণ হিসাবে, আমি পিএইচপি এর অনুরোধ parse error, unexpected T_PAAMAYIM_NEKUDOTAYIM: ডি

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

বিড়ম্বনাটি এতে উপস্থিত থাকে যে আপনার পদ্ধতির সাথে লেখা পার্সারের সঠিকতা তুলনামূলকভাবে সহজে প্রমাণিত। তার ক্ষেত্রে এটি প্রায় অসম্ভব।

একটি সফ্টওয়্যার ডিজাইন তৈরির দুটি উপায় রয়েছে: একটি উপায় হ'ল এটিকে এত সহজ করা যে স্পষ্টতই কোনও ঘাটতি নেই এবং অন্য উপায়টি এটিকে এত জটিল করে তোলা হয়েছে যে কোনও স্পষ্ট ঘাটতি নেই। প্রথম পদ্ধতি অনেক বেশী কঠিন।

CAR Hoare

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

তবে শেষ পর্যন্ত, প্রশ্নটি হচ্ছে: এটি বজায় রাখতে হবে কে? এটি যদি আপনি হয় তবে তা আপনার কল, কেউ যাই বলুক না কেন। যদি এটি তার হয়ে যায়, তবে কেবল দুটি সম্ভাবনা রয়েছে: তাকে পার্সার লাইব্রেরি বোঝার জন্য একটি উপায় খুঁজুন বা তার জন্য একটি আবশ্যক পার্সার লিখুন। আমি আপনাকে এটি আপনার পার্সার কাঠামো থেকে উত্পন্ন করার পরামর্শ দিচ্ছি: ডি


দুটি পদ্ধতির মধ্যে পার্থক্যটির দুর্দান্ত ব্যাখ্যা।
smarmy53

6
আপনি সম্ভবত প্রোগ্রামারদের জন্য টিভি ট্রপগুলির সাথে লিঙ্ক করেছেন। বিদায় বিকেলে ...
ইজকাটা

10

একটি পার্সিং এক্সপ্রেশন ব্যাকরণ (যেমন প্যাক্র্যাট পার্সার অ্যাপ্রোচ) বা পার্সার সংযুক্তকারী পার্সিং পুনর্নবীকরণ করছে না। এগুলি কার্যকরী প্রোগ্রামিং বিশ্বে সুপ্রতিষ্ঠিত কৌশল এবং ডান হাতে এটি বিকল্পগুলির চেয়ে আরও বেশি পঠনযোগ্য হতে পারে। আমি কয়েক বছর আগে সি # তে পিইগির একটি দৃ conv় প্রত্যয়ী প্রদর্শন দেখলাম যা এটি তুলনামূলক সহজ ব্যাকরণগুলির জন্য এটি আমার প্রথম অবলম্বনের হাতিয়ার হিসাবে তৈরি করবে।

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

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

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

তবে আমি সন্দেহ করি যে আপনার আসল সমস্যাটি হয় সংস্কৃতি বা উদ্বিগ্ন about আপনি কি অ্যান্টলার বা ফ্লেক্স / বাইসন ব্যবহার করলে আপনি নিশ্চিত যে আপনার সহকর্মী সমানভাবে প্রকাশ পেয়েছেন না? আমি সন্দেহ করি যে আপনার সমাধানের জন্য "তর্ক করা" একটি হেরে যাওয়া যুদ্ধ হতে পারে; আপনার স্থানীয় পরিচালন কর্তৃপক্ষের কাছে আবেদন করার পরিবর্তে sofক্যমতি নির্মাণ কৌশল ব্যবহার করে এমন নরম পদ্ধতির জন্য আপনাকে আরও বেশি সময় ব্যয় করতে হবে। জোড় প্রোগ্রামিং, এবং দেখায় যে আপনি কীভাবে রক্ষণাবেক্ষণযোগ্যতা ছাড়াই ব্যাকরণে সামঞ্জস্যতা ফিরিয়ে আনতে পারেন এবং কৌশল, এর ইতিহাস ইত্যাদি ব্যাখ্যা করার জন্য ব্রাউনব্যাগ না করে 10 টি বুলেট পয়েন্ট এবং কিছুতে "অভদ্র প্রশ্নোত্তর" হতে পারে মুখোমুখি সভা।


9

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

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

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


এটি একটি মহান ধারণা! কমন্ট ইউনিট পরীক্ষার কাঠামোটিও ব্যবহার করা সহজ হবে।
smarmy53

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

7

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

আসল সমস্যাটি হ'ল আপনার (সম্ভবত আরও অভিজ্ঞ) সহকর্মীটি অনিরাপদ এবং আপনার জ্ঞানের দ্বারা হুমকী অনুভব করছেন। আপনি প্রযুক্তিগত যুক্তি দিয়ে তাকে রাজি করবেন না ; এটি কেবল তাকে আরও প্রতিরক্ষামূলক করে তুলবে। পরিবর্তে তার ভয় হ্রাস করার জন্য আপনাকে কিছু উপায় খুঁজে বের করতে হবে। আমি অনেক প্রস্তাব দিতে পারি না, তবে আপনি লিগ্যাসি কোড সম্পর্কে তাঁর জ্ঞানের জন্য উচ্চ শ্রদ্ধা প্রদর্শন করার চেষ্টা করতে পারেন।

অবশেষে, যদি আপনার পরিচালক তার বিশিষ্ট প্রযুক্তিগত যুক্তিগুলির সাথে একমত হন এবং আপনার সমাধানটি বাতিল করেন তবে আমি মনে করি আপনাকে অন্য অবস্থানের সন্ধান করতে হবে। স্পষ্টতই আপনি আরও পরিশীলিত প্রতিষ্ঠানে আরও মূল্যবান এবং আরও বেশি মূল্যবান be


আপনি ঠিক বলেছেন আমি ইতিমধ্যে জানতাম যে আমার পদ্ধতির উন্নতি হয়, তবে আমি একটি ভাল, দৃ .়প্রত্যয়ী ব্যাখ্যা দিয়ে বেরিয়ে আসতে ব্যর্থ হয়েছি - এটি যে প্রযুক্তিগত তথ্যটি আমি সন্ধান করছি। সমস্যাটির "মানবিক মিথস্ক্রিয়া" দিকটি প্রযুক্তিগত দিক থেকে গুরুত্বপূর্ণ (যদি না হয় তবে) গুরুত্বপূর্ণ is
স্মার্মি 53

4

আমি সংক্ষিপ্ত হতে হবে:

চথুলহু পথ পার্সিং করা শক্ত। এটি এর বিরুদ্ধে সবচেয়ে সহজ এবং দৃ conv় বিশ্বাসযোগ্য যুক্তি।

এটি সহজ ভাষার জন্য কৌশল করতে পারে; বলুন, নিয়মিত ভাষা। যদিও এটি সম্ভবত নিয়মিত প্রকাশের চেয়ে সহজ হবে না।

এটি আরও জটিল জটিল ভাষার জন্য কৌশলও করতে পারে।

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

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

তারপরে, জিনিসটির সহজ: "আরে দেখুন, আপনি এমন কিছু লিখেছেন যা পুনরাবৃত্তীয় বংশদ্ভুত পার্সার বলে! আপনি কি জানেন যে এটি নিয়মিত প্রকাশের মতোই একটি সাধারণ ব্যাকরণ বিবরণ থেকে স্বয়ংক্রিয়ভাবে উত্পন্ন হতে পারে?


দীর্ঘ গল্প সংক্ষিপ্ত:
একমাত্র জিনিস যা কাউকে সভ্য পদ্ধতির ব্যবহার থেকে বিরত রাখতে পারে তা হ'ল এ সম্পর্কে তাদের অজ্ঞতা।


1

সম্ভবত একটি ভাল ডিএসএল শব্দার্থবিজ্ঞানের উপর কাজ করাও গুরুত্বপূর্ণ (বাক্য গঠনটি গুরুত্বপূর্ণ, তবে শব্দার্থবিজ্ঞানও)। আপনি যদি এই বিষয়গুলির সাথে পরিচিত না হন তবে আমি প্রোগ্রামিং ল্যাঙ্গুয়েজস প্র্যাগমেটিক্স (এম। স্কট দ্বারা) এবং খ্রিস্টান কুইনেনেকের মতো কয়েকটি বই পড়ার পরামর্শ দেব। ছোট টুকরো টুকরো টুকরো । কেমব্রিজ বিশ্ববিদ্যালয় প্রেস, 1996

ডিএসএল সম্মেলনে সাম্প্রতিক কাগজপত্রগুলি পড়ার ক্ষেত্রে, যেমন ডিএসএল २०१১ এও সহায়তা করা উচিত।

একটি ডোমেন নির্দিষ্ট ভাষার নকশা করা এবং বাস্তবায়ন করা কঠিন (এবং বেশিরভাগ অসুবিধা পার্সিং নয় !)।

চথুলহু পথকে পার্স করে আপনি কী বোঝাতে চেয়েছেন তা আমি সত্যিই বুঝতে পারি না ; আমার ধারণা আপনি কোনওভাবেই উদ্ভট ফ্যাশনে পার্স করতে চেয়েছিলেন।


ভাল লিঙ্ক। চথুলহুর জন্য, দুঃখিত, আমি লিঙ্কটি ভুলে গেছি। এটি একটি ক্লাসিক কোডিংহরর নিবন্ধের একটি রেফারেন্স: কোডিংহরর . com / blog / 2009 / 11 / parsing-html-the-cthulhu-way.html । আমি মূল পোস্টটি আপডেট করেছি।
স্মার্মি 53
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.