আপনার ভাষার সিনট্যাক্সের উপর নির্ভর করে দুটি আলাদা কেস বিবেচনা করতে হবে। যদি আপনার ভাষা ফাংশন অ্যাপ্লিকেশন (উদাহরণস্বরূপ f(2+1)
) নির্দেশ করতে প্যারেনেসিস ব্যবহার করে তবে অগ্রাধিকার অপ্রাসঙ্গিক। ফাংশনটি স্ট্যাকের দিকে ঠেলাঠেলি করা উচিত এবং পরে পপ আউট করা উচিত (উপরের উদাহরণস্বরূপ, ফলাফলটি 2 1 + f
)। বিকল্পভাবে আপনি ফাংশনটিকে একটি মান হিসাবে অবিলম্বে বিবেচনা করতে পারেন এবং এটি অবিলম্বে আউটপুট করতে পারেন এবং নিকট বন্ধনীর পরে কোনও ফাংশন অনুরোধ অপারেশন আউটপুট করতে পারেন (যা অন্যথায় কোনও প্রথম বন্ধনী হিসাবে একই আচরণ করা উচিত), যেমন ফাংশন আহ্বান অপারেশনটি f 2 1 + $
কোথায় $
।
তবে আপনার ভাষা যদি ফাংশন অনুরোধ নির্দেশ করতে প্যারেনেসিস ব্যবহার না করে তবে এর পরিবর্তে কোনও বিশেষ বিরামচিহ্ন (উদাহরণস্বরূপ f 2 + 1
) ছাড়াই ফাংশনটির পরে সরাসরি যুক্তিটি রাখে , যেমনটি সম্ভবত উইকিপিডিয়ায় উদাহরণ হিসাবে দেখা যায়, তবে বিষয়গুলি কিছুটা জটিল। লক্ষ্য করুন অভিব্যক্তি আমি শুধু দিলেন যেমন একটি উদাহরণ দ্ব্যর্থক: হয় চ 2 প্রয়োগ করা হয় এবং 1 টি ফলাফল যোগ করা, অথবা আমরা 2 এবং 1 একসঙ্গে যুক্ত করুন এবং তারপরে কল চ ফলাফল নিয়ে?
আবার দুটি পন্থা রয়েছে। আপনি যখন এটির মুখোমুখি হন তখন আপনি কেবল ফাংশনটি অপারেটর স্ট্যাকের দিকে ধাক্কা দিতে পারেন এবং আপনি যে কোনও অগ্রাধিকার চান তা নির্ধারণ করতে পারেন। এটিই সহজতম পদ্ধতি এবং স্পষ্টতই উদ্ধৃত উদাহরণটি করেছে। ব্যবহারিক বিষয়গুলি অবশ্য আছে। প্রথমত, আপনি কিভাবে একটি ফাংশন সনাক্ত করবেন? আপনার যদি সসীম সেট থাকে তবে এটি সহজ, তবে আপনার যদি ব্যবহারকারী সংজ্ঞায়িত ফাংশন থাকে তবে এর অর্থ আপনার পার্সারটিকে আপনার পরিবেশে খুব বেশি খাওয়ানো দরকার যা দ্রুত অগোছালো হয়ে যেতে পারে। এবং আপনি কীভাবে একাধিক যুক্তি দিয়ে ফাংশন পরিচালনা করবেন?
আমার অনুভূতিটি হ'ল এই স্টাইলের সিনট্যাক্সের জন্য, কোনও ফাংশন অ্যাপ্লিকেশন অপারেটরের হাতের সাহায্যে মান হিসাবে ফাংশনগুলি ব্যবহার করা আরও অনেক বেশি অর্থবোধ করে। তারপরে, আপনি যখনই কোনও মান পড়েন তখন আপনি কেবল অ্যাপ্লিকেশন অপারেটরকে ইনজেকশন দিতে পারেন এবং আপনি যে শেষটি পড়েছিলেন তাও একটি মান ছিল, সুতরাং কোন শনাক্তকারীদের কার্যকরী তা বলার জন্য আপনার কোনও বিশেষ পদ্ধতির দরকার নেই। আপনি ক্রিয়াকলাপগুলি ফিরে আসা অভিব্যক্তিগুলির সাথেও কাজ করতে পারেন (যা কার্য-অপারেশন শৈলীর সাথে কঠিন বা অসম্ভব)। এবং এর অর্থ আপনি একাধিক যুক্তি ফাংশনগুলি পরিচালনা করতে কার্চিং ব্যবহার করতে পারেন যা এগুলি সরাসরি হ্যান্ডেল করার চেষ্টা করার চেয়ে একটি বিশাল সরলিকরণ।
আপনাকে কেবল তখন সিদ্ধান্ত নিতে হবে যা হ'ল ফাংশন আবেদনের নজির। পছন্দটি আপনার উপর নির্ভর করে, তবে প্রতিটি ভাষায় আমি এটি ব্যবহার করে যা এটি ব্যবহার করে, এটি ভাষায় সর্বাধিক দৃ b়ভাবে বাধ্যতামূলক অপারেটর হয়ে উঠেছে, এবং এটি সঠিকভাবে সহযোগী হয়েছে। (হাস্কেল হ'ল একমাত্র আকর্ষণীয় প্রকরণ, যার পাশাপাশি দৃ strongly়ভাবে বাঁধাই করা সংস্করণ বর্ণিত হয়েছে, এর চিহ্ন প্রতিশব্দও রয়েছে $
যা ভাষার সবচেয়ে দুর্বলতম বাঁধাইকারী অপারেটর যা এক্সপ্রেশন f 2 + 1
2 থেকে 5 এ প্রয়োগ করতে এবং f $ 2 + 1
প্রয়োগ করতে পছন্দ করে এটি বাকী বাকী অংশের পুরো অংশে)
sin( max( 2 3) / 3 * 3.1415)