উত্তর:
আসলে, একটি উপায় আছে!
(comment
(defn hey []
("Hey there!"))
Check me out!
)
আপনার মন্তব্যগুলিকে কেবল (মন্তব্য ..) মোড়ানো করুন :)
আনন্দ কর!
Clojure একটি #_
পাঠক ম্যাক্রো সমর্থন করে যা সম্পূর্ণরূপে পরবর্তী ফর্মটি এড়িয়ে যায়। ক্লোজার রিডার সম্পর্কে এটি পৃষ্ঠায় উল্লেখ করা হয়েছে । রয়েছে মন্তব্য ম্যাক্রো যা অনুরূপ প্রভাব রয়েছে, কিন্তু ভিন্নভাবে বাস্তবায়িত হয়।
উপরের উভয়ের উভয়েরই প্রয়োজন যে আপনি যে জিনিসটি মন্তব্য করছেন তা অন্যথায় সিন্ট্যাক্টিক্যালি সঠিক এস-এক্সপ্রেশন।
কিছু লিস্প উপভাষায় একটি মাল্টি-লাইন মন্তব্য রয়েছে যা স্বেচ্ছাসেবী পাঠ্য থাকতে পারে, তবে আমি ক্লোজারের জন্য একটিও দেখতে পাচ্ছি না।
*scratch*
বাফারে, একাধিক লাইনের পরে ;
;;
বা কিছু জঙ্ক টাইপ ;;;
করুন, সেমিকোলনের পরে প্রথম শব্দের উপর কার্সারটি চাপুন, এবং টিপুন Meta-Q
)।
ডাবল উদ্ধৃতি (স্ট্রিং আক্ষরিক) স্বেচ্ছাচারী পাঠ্য যোগ করার অনুমতি দেয় (কেবলমাত্র সঠিক এস-ফর্মগুলি নয়):
(comment "
public class HelloWorld {
public static void main(String[] args) {
System.out.print("Hello, World");
System.out.println();
}
}
")
Hello
, তৃতীয় রূপটি প্রতীক World
, এবং 4 র্থ রূপটি অন্য স্ট্রিং। comment
শুধু সমস্ত ফর্ম উপেক্ষা। সুতরাং উদাহরণস্বরূপ আমরা ভাগ্যবান যে Hello, World
আইনী ক্লোজার হিসাবে পার্স করে। এটি নির্বিচারে পাঠ্য দিয়ে কাজ করে না। উদাহরণস্বরূপ, (comment "print("/foo")")
ত্রুটি সহ মারা যাবে Invalid token: /foo
।
অন্যান্য উদাহরণ দুর্দান্ত, আমি আরও একটি কৌশল যুক্ত করতে চাই:
কখনও কখনও আপনি কোডের কয়েকটি লাইন মন্তব্য করতে চান, তবে এখনও সংকলকটি এটি সংকলন করে কোনও ত্রুটি সম্পর্কে রিপোর্ট করতে পারেন (উদাহরণস্বরূপ শীর্ষস্থানীয় নেমস্পেসে কমান্ডের একটি সেট যা আপনি পরে আরইপিএলে চালানোর পরিকল্পনা করছেন)।
এই ক্ষেত্রে আমি কোডটি মোড়াতে চাই (fn [] .....)
যার অর্থ এটি এখনও সংকলিত হয়, এটি কল হয় না।
এই লিঙ্কটি দেখুন: http://en.wikibooks.org/wiki/Clojure_Programming/ টিউটোরিয়াল_আর_দ্বীপ
আপনি সিনট্যাক্সের সাহায্যে একাধিক মন্তব্য তৈরি করতে পারেন
(comment .....
....)
ইমাসে আপনি কমান্ডটি ব্যবহার করতে পারেন M-;
(এর জন্য শর্টকাট M-x comment-dwim
)। এটি পাঠ্য / কোডের যে কোনও চিহ্নিত অঞ্চলকে মন্তব্য করবে বা সঙ্কোচিত করবে, সুতরাং যতক্ষণ না আপনার সম্পূর্ণ ফাংশন বা ফাংশনগুলির সেটটি অঞ্চলটিতে অন্তর্ভুক্ত করা হয়, আপনি এই অঞ্চলটিকে বেশ সহজেই মন্তব্য করতে বা অসন্তুষ্ট করতে পারেন। ফাংশনের জন্য ইমাস রেফারেন্স ম্যানুয়ালটি এখানেM-;
পাওয়া যাবে ।
আমি জানি যে একাধিক উপায় রয়েছে:
প্রথমটি মন্তব্য ম্যাক্রো ব্যবহার করছে : এটি কেবল মন্তব্যের প্রধান অভ্যন্তরের সমস্ত কোডকে মূল্যায়ন করে না (তবে এটি এখনও সুষম বন্ধনী / বন্ধনীগুলির জন্য পরীক্ষা করে)। আপনি যদি পেরেডিটের সাথে নিজের উপায়টি জানেন, আপনি কয়েকটি সেক্সপ কল মন্তব্য করতে চাইলে বেশি সময় লাগবে না।
(comment
(println 1))
যাইহোক, এটি এখনও বন্ধনী ম্যাচের জন্য পরীক্ষা করবে। সুতরাং আপনার যদি ভারসাম্যহীন প্রথম বন্ধনী থাকে তবে আপনি কোডগুলি সংকলন করবেন না (ফলনযোগ্য java.lang.RuntimeException: EOF while reading
)।
আরেকটি উপায় ব্যবহার করা হচ্ছে #_
(ওরফে দ্য ম্যাক্রো), এটি পরের সেক্সপকে ফেলে দেবে, যা আমি ব্যক্তিগতভাবে পছন্দ করি (টাইপ করা দ্রুত এবং সাধারণত আমি যখন ডিবাগ করতে হয় তখন সেক্সপ্সে আমি তা করি):
#_(println 1)
এটি তুলনামূলকভাবে ডিলিমিটারগুলির জন্যও পরীক্ষা করে: সুতরাং আপনার যদি ভারসাম্যহীন বন্ধনী থাকে তবে এটিও সঙ্কলিত হবে না।
শেষ অবধি, এমন একটি ;
চরিত্র রয়েছে যা রেখাকে মন্তব্য করবে (অন্যান্য ভাষাগুলির ভাষ্য বৈশিষ্ট্যের অনুরূপ) এবং সংকলনটি এটিকে সম্পূর্ণ উপেক্ষা করবে। আপনি যদি একাধিক লাইন মন্তব্য করতে চান তবে আপনার সাথে সমস্ত লাইনকে পুনরায় সংশোধন করতে হবে; যা সাধারণত একটি ঝামেলা হয়ে থাকে তবে সাধারণত পাঠ্য সম্পাদকরা একাধিক লাইন নির্বাচন করার পরে একটি আদেশ দিয়ে এটি আপনার জন্য করবেন।
; (println 1)
; (println 1 also won't break
দীর্ঘ মন্তব্য ব্লকের জন্য, ম্যাক্রোস #_ বা (মন্তব্য ...) মালিকানা হিসাবে কাজ করেনি, তারপরে আমি ভিএসসিইডি (ওএস এক্স) দিয়ে মন্তব্য ব্লক করেছি।