(به : ) یک زبان برنامه‌نویسی (یا یکی از اعضای خانوادهٔ زبان‌های برنامه‌نویسی) انتزاعی است که به وسیلهٔ ابداع شد و برای اولین بار در مقاله‌ای به نام "۷۰۰ زبان برنامه‌نویسی آینده" که در منتشر شد، توصیف شد. نام این زبان یعنی ISWIM، مخفف " f you ee hat ean" (اگر شما منظور مرا فهمیدید) است.
 اگر چه این زبان هنوز پیاده‌سازی نشده‌است، ثابت کرده‌است که در توسعهٔ زبان‌های برنامه‌نویسی به خصوص در زبان‌های تابعی مانند ، ، و و جایگزین‌هایشان، بسیار مؤثر بوده‌است.
 آی‌سوییم یک زبان امری به همراه یک هستهٔ تابعی است که از عبارت‌هایی برای خوانایی بیشتر از نوع استفاده می‌کند که این امکان داشتن متغیرهای قابل تغییر و تخصیص و یک ساختار کنترلی قدرتمند (عملگر J) را می‌دهد.
 معانی عملیاتی آی‌سوییم از ماشین مجازی SECD و فراخوانی با مقدار استفاده می‌کند که آن است. یکی از اهداف آی‌سوییم این بود که بیشتر به نمادهای ریاضی شباهت داشته باشد؛ بنابراین Landin سمی کالن بین عبارت‌ها و بلوک‌های را با قانون و حوزه بر مبنای دندانه گذاری، جایگزین کرد. یکی از تفاوت‌های آی‌سوییم در نمادگذاری استفاده از where clauseها است. یک برنامهٔ آی‌سوییم از یک عبارت تنها که باwhere clause واجد شرایط شده‌است، عبارت‌های شرطی و تعریف توابع تشکیل شده‌است. با CPL این زبان یکی از اولین زبان‌های برنامه‌نویسی بود که از where clauseها استفاده کرد.
 یکی از ویژگی‌های معنایی قابل توجه این زبان امکان تعریف انواع داده‌ای جدید به عنوان مجموع حاصل ضرب‌ها با قابلیت بازگشتی بود. متغیرهای آی سوییم اعلان صریح ندارند، و به نظر می‌رسد که احتمالاً (هر چند یه طور صریح در مقالهٔ ۱۹۶۶ بیان نشده‌است) Landin قصد داشته که زبان با تایپ پویا باشد، مانند زبان و بر خلاف . اما این احتمال هم وجود دارد که او در نظر داشته تا نوعی از را توسعه دهد.
 برای پیاده‌سازی مستقیم این زبان تلاشی نشده‌است، ولی زبان PAL مربوط به Art Evan و زبان Gedanken مربوط به John C. Reynolds، بسیاری از مفاهیم Landin مانند عملیات انتقال کنترل قوی را دارند. هر دوی این‌ها تایپ پویا دارند. زبان مربوط به Milner (بدون عملگر J و به همراه type inference) را می‌توانیم به عنوان یک معادل برای این زبان در نظر بگیریم.
 یکی دیگر از معایب این زبان اضافه کردن قابلیت‌های زبان امری (مانند عملگر J و تخصیص) است که دیگر آن را از یک زبان خالص تابعی دور می‌کند و بعد از آن ممکن است روش ارزیابی آن به به تبدیل شود. این روش زبان‌های برنامه‌نویسی دیگری مانند: SASL، هستکل، میراندا، Clean و KRC Kent recursive calculator را هدایت کرده‌است.
{"title": "آی‌سوییم (زبان برنامه‌نویسی)", "link": "https://fa.wikipedia.org//w/index.php?title=%D8%A2%DB%8C%E2%80%8C%D8%B3%D9%88%DB%8C%DB%8C%D9%85_(%D8%B2%D8%A8%D8%A7%D9%86_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C)&oldid=33580727", "language": "fa"}