Mad (زبان برنامه نویسی) کیست؟ توضیح بده.
زبان برنامه نویسی MAD ( رمزگشا الگوریتم میشیگان ) یک زبان برنامه‌نویسی و کامپایلر برای IBM 704 و بعد از آن برای کامپیوترهای اصلی IBM 709 ، IBM 7090 ، IBM 7040 ، UNIVAC 1107 ، UNIVAC 1108 ، Philco 210- IBM و eventual 210 . MAD که در سال 1959 توسط برنارد گالر ، بروس آردن و رابرت ام. گراهام در دانشگاه میشیگان ساخته شد ، نوعی از ALGOL است.این زبان این به طور گسترده ای برای آموزش برنامه نویسی در کالج ها و دانشگاه ها در طول دهه 1960 مورد استفاده قرار گرفت و نقش کوچکی در توسعه سیستم های اشتراک زمان سازگار (CTSS)، Multics و سیستم عامل های کامپیوتری سیستم ترمینال میشیگان ایفا کرد در واقع نتوانست به اندازه کافی موثر واقع شود. نسخه اصلی چت بات ELIZA در MAD-SLIP نوشته شده بود . بایگانی‌های کتابخانه تاریخی بنتلی دانشگاه میشیگان حاوی مطالب مرجع در مورد توسعه MAD و MAD/I، از جمله سه فوت خطی چاپ با نمادهای دست‌نویس و دفترچه‌های راهنمای چاپی اصلی است.MAD، MAD/I، و GOM.سه عدد کامپایلر MAD وجود دارد:تاریخچه.نکته ی جالب این است در حالی که MAD توسط ALGOL 58 ایجاد شده بود ، به هیچ وجه شبیه به ALGOL 58 نیست. برنامه‌های نوشته شده در MAD شامل MAIL، RUNOFF ، یکی از اولین سیستم‌های پردازش متن، و چندین ابزار دیگر همگی تحت سیستم اشتراک‌گذاری زمان سازگار (CTSS) بودند. کار روی طراحی یک کامپایلر MAD برای Multics انجام شد ، اما هرگز اجرا نشد. در زیر نقل قول جالبی از "مصاحبه با برایان کرنیگان" است را مشاهده میکنید که از او پرسیده شد "چه چیزی شما را به برنامه نویسی جذب کرد؟"MAD در مقایسه با برخی دیگر از کامپایلرهای زمان خود بسیار سریع بود. از آنجا که تعدادی از افراد علاقه مند به استفاده از زبان FORTRAN بودند و در عین حال می خواستند سرعت کامپایلر MAD را بدست آورند، سیستمی به نام MADTRAN (نوشته شده در MAD) توسعه یافت. MADTRAN به سادگی یک مترجم از FORTRAN به MAD بود که سپس کد ماشین را تولید کرد. MADTRAN از طریق SHARE توزیع شد . MAD/I ساختار نحوی مشابه ALGOL 60 همراه با ویژگی های مهم MAD اصلی و PL/I دارد . MAD/I به عنوان یک زبان توسعه پذیر طراحی شد. برای استفاده تحت MTS در دسترس بود و بسیاری از ایده‌های جدید را ارائه کرد که به زبان‌های دیگر راه یافت، اما تلفیقی MAD/I کند بود و MAD/I در مقایسه با MAD اصلی 7090 هرگز به استفاده گسترده‌ای نرسید. GOM اساساً این زبان 7090 MAD است که برای معماری 360/370 اصلاح شده و توسعه یافته است و با برخی از خیاطی های عاقلانه متناسب با شیوه ها و مشکلات برنامه نویسی فعلی است. سیستم پیام MTS در GOM نوشته شده است.MAD، مجله Mad، و Alfred E. Neuman.در نسخه پیش از انتشار زبان MAD اصلی، به عنوان ارجاع به همنام MAD، مجله "Mad" ، زمانی که یک برنامه حاوی خطاهای زمان کامپایل بیش از حد بود، کامپایلر یک تصویر تمام صفحه از Alfred E. Neuman را با استفاده از هنر ASCII چاپ می کرد . کپشن این بود: "این مرد را در مورد برنامه خود ببینید - ممکن است بخواهد آن را منتشر کند. او هرگز نگران نیست - اما از نظر ظاهر برنامه شما باید." این ویژگی در نسخه رسمی نهایی گنجانده نشده است. با این حال، در نسخه تولیدی IBM 7040 گنجانده شد.و برنی گالر در مصاحبه ایی به یاد می آورد که:تعریف و بازتعریف اپراتور.یکی از جالب‌ترین ویژگی‌های زبان برنامه نویسی MAD، امکان گسترش زبان با تعریف مجدد عملگرهای موجود، تعریف عملگرهای جدید یا تعریف انواع داده‌های جدید (حالت‌ها) است. تعاریف با استفاده از عبارات اعلان MAD و یادداشت های زبان اسمبلی که پس از اعلان تا شبه دستورالعمل END که عملیات را اجرا می کند، ساخته شده اند.جایی که:سه بسته از پیش تعریف شده از تعاریف (MATRIX، DOUBLE PRECISION و COMPLEX) برای گنجاندن در برنامه های منبع MAD با استفاده از عبارت INCLUDE در دسترس هستند.پیوند های خارجی:.