Factor শেখার উপায়

একদম শুরু থেকে Factor কীভাবে শুরু করবেন তার একটি পরিচিতি


Factor শেখার জন্য অনেক দুর্দান্ত রিসোর্স আছে।

  • Andrea Ferretti-এর Factor টিউটোরিয়াল হলো ভাষাটি শেখার একটি পূর্ণাঙ্গ গাইড, যা স্ট্যাকের মূল বিষয়গুলো থেকে শুরু করে মেটাপ্রোগ্রামিং, ডিস্ট্রিবিউটেড কম্পিউটিং এবং Furnace দিয়ে ওয়েব ডেভেলপমেন্ট পর্যন্ত এগিয়ে যায়।

  • Factor in 2022 হলো John Benediktsson ও Doug Coleman-এর ২০২২ সালের একটি টক, যেখানে ভাষাটি সম্পর্কে এবং আজকাল এটি ব্যবহার করা কেমন লাগে তা ঘুরে ঘুরে দেখানো হয়েছে।

  • Leo Brodie-এর Thinking Forth হলো Forth-এর পেছনের ডিজাইন দর্শন ও মানসিক অভ্যাস নিয়ে একটি ক্লাসিক। Factor যদিও Forth নয়, তবুও এটি কনক্যাটেনেটিভ, স্ট্যাক-ভিত্তিক মানসিকতা উত্তরাধিকারসূত্রে পেয়েছে, আর সেই চিন্তাধারার সেরা পরিচিতি হলো Brodie-এর বইটি।

  • Factor-এর ডকুমেন্টেশন অসাধারণ ও বিস্তৃত। এটি অফলাইনেও পাওয়া যায়, GUI Listener থেকে বা কমান্ড লাইন থেকে সরাসরি সার্চ করা যায়, এবং একই সার্চযোগ্য ডকুমেন্টেশন অনলাইনেও পাওয়া যায়।

  • Björn Lindqvist-এর playground-factor হলো মজার সব টিপস ও ট্রিকসে ভরপুর একটি রিপো। Björn Factor-এর একজন ডেভেলপার, তিনি এটি খুব একটা নিয়মিত আপডেট করেন না এবং এটি এখনো WIP (এর অনেকটাই GitHub Wiki-তে সরিয়ে নেওয়া হচ্ছে), তবুও এর ভেতরের জিনিসগুলো বেশ দারুণ।

  • Learn X in Y Minutes-এ একটি Factor টিউটোরিয়াল আছে। এটি কোনোভাবেই বিস্তৃত নয়, তবে এটি একটি ভালো রেফারেন্স এবং শুরু করার জন্য যথেষ্ট।

  • Rosetta Code: Factor হলো একটি প্রোগ্রামিং ক্রেস্টোম্যাথি সাইটের অংশ। শত শত অন্য ভাষার পাশাপাশি এখানে Factor-এ অনেক সমস্যার সমাধান আছে, যা আপনি আপনার আগে থেকে জানা ভাষার সাথে মিলিয়ে দেখতে পারেন, আর এটি সমাধানের জন্য একটি ভালো রেফারেন্স ও সূচনা বিন্দু।

সবশেষে, আর সম্ভবত সবচেয়ে কম গুরুত্বপূর্ণটি:

  • Stack Overflow। এখানে বড় কোনো কমিউনিটি নেই (ঠিক আছে, আমিসহ মোটে তিনজন ব্যবহারকারী), তবে সত্যিই যদি আপনি আটকে যান, তাহলে সেখানে জিজ্ঞেস করুন, কেউ না কেউ নিশ্চয়ই সাহায্য করবে।

  • মেইলিং লিস্ট। এখানে আপনি Factor-সংক্রান্ত যেকোনো কিছু নিয়ে জিজ্ঞেস করতে পারেন, আর একজন সহযোগী সহায়ক উত্তর দেবেন।

  • Factor আছে IRC-এ! চলে আসুন আমাদের সাথে; সাহায্য করতে আমরা সবসময় খুশি।

  • Joy, Forth, এবং সাধারণভাবে কনক্যাটেনেটিভ / স্ট্যাক-ভিত্তিক প্রোগ্রামিং সম্পর্কে শিখুন ও পড়ুন।

  • Common Lisp Object System সম্পর্কে শিখুন ও পড়ুন। CLOS-কে বিশ্বের সবচেয়ে উন্নত ও উদ্ভাবনী অবজেক্ট মডেল হিসেবে ব্যাপকভাবে গণ্য করা হয়, আর Factor-এর অবজেক্ট মডেল অনেকটাই এটির উপর ভিত্তি করে তৈরি এবং এটির দ্বারা অনুপ্রাণিত।

  • অনেক দিক দিয়েই Factor একটি Lisp। এটি postfix, point-free, ফাংশনাল, উল্টো-পাল্টা ও অদ্ভুত দেখতে এক ধরনের Lisp, কিন্তু এর অনেক ভাবাদর্শ একই। এ কারণে একটি Lisp শেখা উপকারী হতে পারে, বিশেষত Lisp-1, যেখানে ফাংশন ও ভ্যারিয়েবল একই নেমস্পেস ভাগ করে নেয় (কারণ ফাংশনাল প্রোগ্রামিংয়ে ফাংশনগুলো নিজেই মান)। আমি বিনীতভাবে Scheme সুপারিশ করি, কিংবা আরও আধুনিক ও ব্যবহারযোগ্য কিছু চাইলে Scheme-এর উত্তরসূরি Racket।

সবশেষে, Factor প্রায় পুরোটাই Factor দিয়ে লেখা। তাই সোর্স কোড পড়ুন, আর যে শব্দগুলো জানেন না সেগুলো ডকুমেন্টেশনে খুঁজুন।