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

১. গাণিতিক সারণির সংকট ও ব্যাবেজের আক্ষেপ

ঊনবিংশ শতাব্দীর শুরুতে নৌ-জাহাজের দিকনির্ণয়, আর্টিলারির গোলাবর্ষণ, জ্যোতির্বিজ্ঞান এবং বীমার জটিল হিসাব পুরোপুরি নির্ভরশীল ছিল মুদ্রিত গাণিতিক সারণির ওপর: লগারিদম, সাইন, ট্যানজেন্ট ইত্যাদি। এই সারণিগুলো যারা বসে বসে হিসাব করতেন, পেশাগতভাবে সেই মানুষদেরই তখন বলা হতো “কম্পিউটার (Computer)”।

মানুষ ভুল করে। একটি হিসাব সারণিতে মাত্র একটি সংখ্যার ভুলের কারণে রাজকীয় নৌবাহিনীর যুদ্ধজাহাজ সমুদ্রের নিচে ডুবে যাওয়া পাথরে আছড়ে পড়তে পারত। ১৮২১ সালে জ্যোতির্বিদ জন হার্শেলের সাথে বসে সারণির অগণিত ভুল সংশোধন করতে করতে বিরক্ত হয়ে চার্লস ব্যাবেজ চিৎকার করে বলে উঠেছিলেন: “ঈশ্বর, এই সব হিসাব যদি বাষ্পের শক্তিতে স্বয়ংক্রিয়ভাবে হতে পারত!”

২. ডিফারেন্স ইঞ্জিন: ধাতুর কাঠামোয় বহুপদী সমীকরণ

মানুষের ভুলের অবসান ঘটাতে ব্যাবেজ নকশা করেন ডিফারেন্স ইঞ্জিন (Difference Engine)। সরাসরি গুণ বা ভাগ না করে ডিফারেন্স ইঞ্জিন ফাইনাইট ডিফারেন্স বা সসীম অন্তর পদ্ধতি (Method of Finite Differences) ব্যবহার করত। টেইলর সিরিজের মাধ্যমে যেকোনো বক্ররেখা বা সমীকরণকে বহুপদী সমীকরণে রূপান্তর করে শুধুমাত্র বারবার যোগের মাধ্যমেই সারণির মান বের করা সম্ভব:

$$P(x) = a_n x^n + a_{n-1} x^{n-1} + \dots + a_1 x + a_0 \implies \Delta^n P(x) = \text{ধ্রুবক}$$

যেমন $f(x) = ২x^২ + ৩$ সমীকরণের ক্ষেত্রে দ্বিতীয় অন্তর সবসময় ধ্রুবক ($\Delta_২ = ৪$)। ফলে কোনো প্রকার গুণ ছাড়াই শুধুমাত্র ধ্রুবক সংখ্যাটি যোগ করে পরবর্তী প্রতিটি মান নির্ভুলভাবে বের করা যেত। ব্যাবেজ উল্লম্ব পিতলের গিয়ারের স্তূপ দিয়ে এই যন্ত্রটি তৈরি করেন এবং মানুষের মুদ্রণজনিত ভুল এড়াতে ফলাফলের সংখ্যাগুলো স্বয়ংক্রিয়ভাবে তামার পাতে খোদাই করে মুদ্রণের ব্যবস্থা রাখেন।

৩. অ্যানালিটিক্যাল ইঞ্জিন: প্রথম সাধারণ-উদ্দেশ্যমূলক কম্পিউটার

১৮৩৪ সালে প্রথম ডিফারেন্স ইঞ্জিনের কাজ চলার সময় ব্যাবেজের মাথায় আসে আরেক বৈপ্লবিক ধারণা। শুধুমাত্র একটি নির্দিষ্ট সমীকরণ গণনার যন্ত্র না বানিয়ে এমন এক যন্ত্র বানানো সম্ভব যা যেকোনো ধরনের গণনা সম্পাদন করতে পারবে। তিনি এর নাম দেন অ্যানালিটিক্যাল ইঞ্জিন (Analytical Engine)।

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

  • দ্য স্টোর (The Store / মেমোরি): ১,০০০টি উল্লম্ব পিতলের শ্যাফটের সমষ্টি, যা প্রতিটি ৫০ দশমিক ডিজিটের ১,০০০টি সংখ্যা মেমোরিতে ধরে রাখতে পারত।
  • দ্য মিল (The Mill / সিপিইউ বা এএলইউ): কেন্দ্রীয় প্রসেসর, যা বেভেল গিয়ার ও মেকানিক্যাল লজিকের সাহায্যে যোগ, বিয়োগ, গুণ ও ভাগ সম্পাদন করত।
  • নিয়ন্ত্রণ ব্যবস্থা (Punched Cards): জোসেফ ম্যারি জ্যাকোয়ার্ডের তাঁতকলের মতো ছিদ্রযুক্ত পাঞ্চ কার্ডের মাধ্যমে নির্দেশাবলী গ্রহণ করত—অপারেশন কার্ড এবং ভেরিয়েবল কার্ড।
  • কন্ডিশনাল ব্রাঞ্চিং (শর্তাধীন লুপ): বিয়োগের ফল ঋণাত্মক হলে যন্ত্রের একটি লিভার ট্রিপ করত এবং পাঞ্চ কার্ডের অনুক্রম সামনে বা পেছনে লাফিয়ে চলত—যা আধুনিক IF...THEN লুপের প্রথম যান্ত্রিক উদ্ভাবন।

৪. আডা লাভলেস এবং প্রথম কম্পিউটার প্রোগ্রাম

১৮৪২ সালে ইতালীয় সামরিক প্রকৌশলী লুইগি মেনাব্রিয়া তুরিনে ব্যাবেজের বক্তৃতার ওপর ভিত্তি করে ফরাসি ভাষায় একটি গবেষণাপত্র লেখেন। লর্ড বায়রনের কন্যা এবং বিশিষ্ট গণিতবিদ অগাস্টা আডা কিং, কাউন্টেস অব লাভলেস এই গবেষণাপত্রটি ইংরেজিতে অনুবাদ করেন।

অনুবাদ শেষে আডা লাভলেস মূল প্রবন্ধের সাথে তাঁর নিজস্ব সাতটি বিশদ ব্যাখ্যা যুক্ত করেন—যার শিরোনাম ছিল নোটস এ থেকে জি (Notes A–G)। এই নোটগুলো মূল প্রবন্ধের চেয়ে আকারে তিনগুণ বড় ছিল এবং ১৮৪৩ সালে প্রকাশিত এই লেখার মাধ্যমেই আডা লাভলেস ইতিহাসের প্রথম কম্পিউটার প্রোগ্রামার হিসেবে অমরত্ব লাভ করেন।

নোট জি: বার্নৌলি সংখ্যার অ্যালগরিদম

নোট জি-তে আডা লাভলেস বার্নৌলি সংখ্যা ($B_n$) নির্ণয়ের জন্য একটি পূর্ণাঙ্গ অ্যালগরিদম প্রস্তুত করেন। ত্রিকোণমিতি ও ক্যালকুলাসের জটিল সূত্রে বার্নৌলি সংখ্যার বিস্তার ঘটে:

$$\frac{x}{e^x – 1} = \sum_{n=0}^{\infty} B_n \frac{x^n}{n!}$$

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

কাব্যিক বিজ্ঞান: ক্যালকুলেটর থেকে সফটওয়্যারের রূপান্তর

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

“অ্যানালিটিক্যাল ইঞ্জিন বীজগণিতের নকশা বোনে, ঠিক যেমন জ্যাকোয়ার্ডের তাঁতকল বোনে ফুল আর লতাপাতা… যদি সুরের বিজ্ঞান ও সঙ্গীতের মূল সম্পর্কগুলোকে সংকেতের মাধ্যমে প্রকাশ করা যায়, তবে এই ইঞ্জিন বৈজ্ঞানিক নিয়মে যেকোনো জটিলতা ও দৈর্ঘ্যের সঙ্গীত সৃষ্টি করতে পারবে।”

এটিই ছিল একটি সাধারণ ক্যালকুলেটর থেকে একটি সাধারণ-উদ্দেশ্যমূলক কম্পিউটারে উত্তরণের ঐতিহাসিক মহাবিস্ফোরণ: মানুষের চিন্তা, যুক্তি, সঙ্গীত বা ভাষাকে সংকেতে রূপান্তর করে অ্যালগরিদমের মাধ্যমে পরিচালনা করার প্রথম অমর দর্শন।


প্রধান একাডেমিক তথ্যসূত্র

  • Babbage, C. (1864). Passages from the Life of a Philosopher. London.
  • Lovelace, A. A. (1843). Sketch of the Analytical Engine Invented by Charles Babbage. Taylor’s Scientific Memoirs, 3, 666–731.
  • Swade, D. (2000). The Cogwheel Brain: Charles Babbage and the Quest to Think. Little, Brown.
  • Fuegi, J., & Francis, J. (2003). Lovelace & Babbage and the creation of the 1843 ‘notes’. IEEE Annals of the History of Computing, 25(4), 16–26.