در تاریخ رایانش، کمتر صنعتی به‌اندازه بازار ماشین‌های لیسپ (Lisp Machines) صعود و سقوطی چنین چشمگیر و تأثیرگذار داشته است. این ماشین‌ها که برای اجرای یک زبان برنامه‌نویسی واحد با حداکثر سرعت ساخته شده بودند، به‌نوعی نخستین ایستگاه‌های کاری تجاری تک‌کاربره محسوب می‌شدند. آن‌ها فناوری‌هایی را پیشگام شدند که امروز توسعه‌دهندگان آن‌ها را کاملاً بدیهی می‌پندارند؛ از مدیریت خودکار حافظه (Garbage Collection) گرفته تا نوآوری‌های شبکه‌ای مانند Chaosnet. با این حال، تا سال ۱۹۸۸ در مجموع کمتر از 7,000 دستگاه از آن‌ها به فروش رسید و در سال 1987 بازاری که از این اکوسیستم حمایت می‌کرد، رو به فروپاشی گذاشت. شدت این سقوط به‌حدی بود که عامل اصلی آغاز دومین زمستان هوش مصنوعی شناخته می‌شود؛ رویدادی که در کمتر از یک دهه پس از اوج صنعت، یک رده کامل از رایانه‌ها را برای همیشه از صحنه فناوری محو کرد.

نیاز به توان پردازشی؛ جرقه‌ای برای ساخت ماشین‌های لیسپ

پیدایش ماشین لیسپ از دل ناکامی‌های عمیق پژوهشگران زبان آمد. برنامه‌های هوش مصنوعی در دهه‌های 1960 و 1970 ذاتاً به حجم عظیمی از توان پردازشی، چه در زمان پردازنده و چه در فضای حافظه، نیاز داشتند. این نیاز سرسام‌آور به‌واسطه استفاده از زبان برنامه‌نویسی نمادین لیسپ (زبان منتخب محققان هوش مصنوعی) تشدید می‌شد؛ آن هم در دوره‌ای که سخت‌افزارهای تجاری منحصراً برای زبان‌هایی نظیر اسمبلی و فرترن بهینه‌سازی شده بودند.

از آنجا که نوع متغیرها در زبان لیسپ در زمان اجرا (Runtime) تعیین می‌شد، ساده‌ترین عملیات‌های ریاضی مانند جمع دو متغیر، به‌دلیل نیاز به دستورهای آزمون و انشعاب، روی سخت‌افزارهای متعارف تا پنج برابر بیشتر زمان می‌برد. هم‌زمان، نیاز برنامه‌های هوش مصنوعی به حافظه از فضای آدرس‌دهی رایج‌ترین رایانه پژوهشی آن دوران یعنی DEC PDP-10 فراتر می‌رفت.

هزینه باورنکردنی سخت‌افزارها ایجاب می‌کرد ماشین‌ها میان کاربران زیادی به اشتراک گذاشته شوند. با این حال، پژوهشگران موسسه فناوری ماساچوست (MIT) به دنبال راه‌حلی بنیادین گشتند: رایانه‌ای که صرفاً برای توسعه و اجرای برنامه‌های کلان هوش مصنوعی طراحی شده باشد، با ساختار لیسپ کاملاً سازگار باشد و هر بار تنها به یک کاربر اختصاص یابد.

نمونه‌ای از یک ماشین لیسپ قدیمی و ایستگاه کاری تخصصی

در سال 1973، ریچارد گرینبلت و توماس نایت، دو برنامه‌نویس آزمایشگاه هوش مصنوعی MIT، پروژه‌ای را آغاز کردند که بعدها به پروژه ماشین لیسپ معروف شد. آن‌ها با بهره‌گیری از معماری برچسب‌دار 24-بیت، رایانه‌ای ساختند که برخی از عملیات پایه لیسپ به‌صورت سخت‌افزاری در آن سیم‌کشی شده بود. نخستین ماشین با نام CONS عرضه شد که نامش را از عملگر ساخت فهرست در لیسپ وام گرفته بود.

پس از آن نسخه CADR پا به میدان گذاشت؛ یک پردازنده 32-بیت ریزبرنامه‌پذیر با پشتیبانی سخت‌افزاری از آزمون نوع، کدگذاری CDR و مدیریت تدریجی حافظه. حدود 25 دستگاه از این نمونه‌های اولیه با قیمت تقریبی 50,000 دلار به فروش رفت. استقبال گسترده از این ماشین در کنفرانس هوش مصنوعی MIT در سال 1978 باعث شد تا آژانس پروژه‌های تحقیقاتی پیشرفته دفاعی آمریکا (دارپا) بودجه توسعه آن را تضمین کند.

معماری سخت‌افزاری جلوتر از زمان خود

هسته نوآوری این ماشین‌ها در معماری برچسب‌دار (Tagged Architecture) نهفته بود. هر کلمه در حافظه شامل بیت‌های اضافه‌ای بود که نوع داده ذخیره‌شده را کدگذاری می‌کرد. این ساختار به سخت‌افزار اجازه می‌داد به‌جای توقف برای اجرای توالی‌های پیچیده، بررسی نوع داده را هم‌زمان با عملیات حسابی انجام دهد. اگر این آزمون‌های هم‌زمان ناموفق بودند، نتیجه کنار گذاشته و دوباره محاسبه می‌شد؛ رویکردی هوشمندانه که سرعت پردازش را چندین برابر افزایش می‌داد.

نمودار معماری برچسب‌دار ماشین‌های لیسپ

این معماری در طول زمان به‌طور پیوسته تکامل یافت:

  • Symbolics 3600: این معماری که در سال 1983 معرفی شد، طول کلمه استاندارد 32-بیت را به 36 بیت ارتقا داد. بیت‌های اضافی برای فشرده‌سازی داده‌ها و بهبود چشمگیر کارایی مدیریت حافظه استفاده می‌شدند و عناصر فهرست‌های پیوندی را در نصف فضای معمول جای می‌دادند.
  • پردازنده Ivory: در سال 1987 عرضه شد و از کلمات 40-بیتی بهره برد. بیت‌های مازاد در این پردازنده عمدتاً برای کدهای تصحیح خطا (Error-Correcting Codes) در نظر گرفته شده بودند.
  • دو دستور ریزکد (Microcode) اختصاصی برای پشتیبانی از توابع لیسپ طراحی شدند که هزینه پردازشی فراخوانی توابع را به‌شدت در پیاده‌سازی‌های شرکت Symbolics کاهش داد.

چرا ماشین‌های لیسپ ناپدید شدند؟

با وجود تمام این درخشش‌های مهندسی، بازار ماشین‌های لیسپ نتوانست بر رقابت با رایانه‌های شخصی ارزان‌قیمت و استاندارد مقاومت کند. رشد خیره‌کننده سرعت پردازنده‌های تجاری و کاهش قیمت حافظه‌های رم در اواسط دهه 1980، مزیت سخت‌افزاری ماشین‌های لیسپ را بی‌اثر ساخت. توسعه‌دهندگان به‌تدریج متوجه شدند که می‌توانند کدهای هوش مصنوعی خود را روی ایستگاه‌های کاری استاندارد یونیکس یا حتی رایانه‌های شخصی با هزینه‌ای بسیار کمتر اجرا کنند.

تکیه بیش از حد به سخت‌افزار اختصاصی، هزینه‌های نگهداری بالا و بسته بودن این سیستم‌ها، باعث شد تا شرکتی مانند Symbolics و رقبای آن در برابر انقلاب سخت‌افزارهای استاندارد تسلیم شوند. این فروپاشی تجاری نشان داد که آینده متعلق به نرم‌افزارهای مستقل از پلتفرم است، نه سخت‌افزارهایی که صرفاً برای یک زبان برنامه‌نویسی خاص سیم‌کشی شده‌اند.