কম্পিউটার
প্রাগৈতিহাসিক যুগে গণনার যন্ত্র উদ্ভাবিত বিভিন্ন প্রচেষ্টাকে কম্পিউটার ইতিহাস হিসেবে ধরা হয়। প্রাচীন কালে মানুষ একসময় সংখ্যা বুঝানোর জন্য ঝিনুক, নুড়ি, দড়ির গিট ইত্যাদি ব্যবহার করত। পরবর্তীতে গণনার কাজে বিভিন্ন কৌশল ও যন্ত্র ব্যবহার করে থাকলেও অ্যাবাকাস (Abacus) নামক একটি প্রাচীন গণনা যন্ত্রকেই কম্পিউটারের ইতিহাসে প্রথম যন্ত্র হিসেবে ধরা হয়। এটি আবিষ্কৃত হয় খ্রিষ্টপূর্ব ২৪০০ সালে ব্যাবিলনে। অ্যাবাকাস ফ্রেমে সাজানো গুটির স্থান পরিবর্তন করে গননা করার যন্ত্র। খ্রিস্টপূর্ব ৪৫০/৫০০ অব্দে মিশরে বা চীনে গননা যন্ত্র হিসেবে অ্যাবাকাস তৈরি হয়।
স্ব-পরিবর্তনকারী কোড
১৯৪৮ সালের জানুয়ারীতে প্রকাশিত হওয়া আইবিএম এসএসইসি কম্পিউটারটির নিজে নিজে এর নির্দেশনাবলী নিয়ে কাজ করতে সমর্থ্য ছিল। এছাড়া এটি এর নির্দেশনাবলীকে তথ্য হিসেবেও ব্যবহার করতে পারতো। যাইহোক, এই সামর্থ্যটি বাস্তবে খুব কমই ব্যবহার করা হয়েছিল। স্ব-পরিবর্তনকারী কোড আবিষ্কার হওয়ার প্রথম দিকে এটি প্রায়ই কম মেমরির ব্যবহার এবং কোড যাতে দ্রুত কাজ করে সেই উদ্দেশ্যে কিংবা উভয় উদ্দেশ্যে ব্যবহার করা হত। এছাড়াও সাবরুটিন নিয়ে কাজ করতে এবং যখন নির্দেশনাবলীতে কোডের কোন সাধারণ শাখা বা বাদ দেয়ার মত কোন কোড থাকতো, তখনও স্ব-পরিবর্তনকারী কোড ব্যাপকভাবে ব্যবহার করা হত। এই ব্যবহারটি এখনও অন্তত তত্ত্বগতভাবে হলেও আলট্রা-আরআইএসসি আর্কিটেকচারে ব্যবহৃত হচ্ছে। ডোনাল্ড কানুথের এমআইএক্স কম্পিউটারেও সাবরুটিন নিয়ে কাজ করার জন্য স্ব-পরিবর্তনকারী কোড ব্যবহার করা হয়।