ⓘ آی‌سوییم, زبان برنامه‌نویسی. آی‌سوییم یک زبان برنامه‌نویسی انتزاعی است که به وسیلهٔ پیتر لندین ابداع شد و برای اولین بار در مقاله‌ای به نام ۷۰۰ زبان برنامه‌نویس ..

                                     

ⓘ آی‌سوییم (زبان برنامه‌نویسی)

آی‌سوییم یک زبان برنامه‌نویسی انتزاعی است که به وسیلهٔ پیتر لندین ابداع شد و برای اولین بار در مقاله‌ای به نام "۷۰۰ زبان برنامه‌نویسی آینده" که در Communications of the ACM منتشر شد، توصیف شد. نام این زبان یعنی ISWIM، مخفف I f you S ee W hat I M ean" است.

اگر چه این زبان هنوز پیاده‌سازی نشده‌است، ثابت کرده‌است که در توسعهٔ زبان‌های برنامه‌نویسی به خصوص در زبان‌های تابعی مانند SASL، Haskell، Miranda و ML و جایگزین‌هایشان، بسیار مؤثر بوده‌است.

آی‌سوییم یک زبان امری به همراه یک هستهٔ تابعی است که از عبارت‌هایی برای خوانایی بیشتر از نوع حساب لامبداLambda calculus استفاده می‌کند که این امکان داشتن متغیرهای قابل تغییر و تخصیص و یک ساختار کنترلی قدرتمند عملگر J را می‌دهد.

معانی عملیاتی آی‌سوییم از ماشین مجازی SECD و فراخوانی با مقدار استفاده می‌کند که آن ارزیابی مشتاق است. یکی از اهداف آی‌سوییم این بود که بیشتر به نمادهای ریاضی شباهت داشته باشد؛ بنابراین Landin سمی کالن بین عبارت‌ها و بلوک‌های begin end را با قانون off-side و حوزه بر مبنای دندانه گذاری، جایگزین کرد. یکی از تفاوت‌های آی‌سوییم در نمادگذاری استفاده از where clauseها است. یک برنامهٔ آی‌سوییم از یک عبارت تنها که باwhere clause واجد شرایط شده‌است، عبارت‌های شرطی و تعریف توابع تشکیل شده‌است. با CPL این زبان یکی از اولین زبان‌های برنامه‌نویسی بود که از where clauseها استفاده کرد.

یکی از ویژگی‌های معنایی قابل توجه این زبان امکان تعریف انواع داده‌ای جدید به عنوان مجموع حاصل ضرب‌ها با قابلیت بازگشتی بود. متغیرهای آی سوییم اعلان صریح ندارند، و به نظر می‌رسد که احتمالاً هر چند یه طور صریح در مقالهٔ ۱۹۶۶ بیان نشده‌است Landin قصد داشته که زبان با تایپ پویا باشد، مانند زبان لیسپ و بر خلاف الگول. اما این احتمال هم وجود دارد که او در نظر داشته تا نوعی از تایپ استنتاجی را توسعه دهد.

برای پیاده‌سازی مستقیم این زبان تلاشی نشده‌است، ولی زبان PAL مربوط به Art Evan و زبان Gedanken مربوط به John C. Reynolds، بسیاری از مفاهیم Landin مانند عملیات انتقال کنترل قوی را دارند. هر دوی این‌ها تایپ پویا دارند. زبان ML مربوط به Milner بدون عملگر J و به همراه type inference را می‌توانیم به عنوان یک معادل برای این زبان در نظر بگیریم.

یکی دیگر از معایب این زبان اضافه کردن قابلیت‌های زبان امری مانند عملگر J و تخصیص است که دیگر آن را از یک زبان خالص تابعی دور می‌کند و بعد از آن ممکن است روش ارزیابی آن به ارزیابی تنبل تبدیل شود. این روش زبان‌های برنامه‌نویسی دیگری مانند: SASL, Haskell, Miranda), Clean و KRC(Kent recursive calculator را هدایت کرده‌است.

                                     
  • شامل همه زبان های برنامه نویسی مهم می باشد. سامانه ای ای زبان برنامه نویسی آباپ زبان برنامه نویسی ای بی سی ای سی سی زبان برنامه نویسی اکشن اکشن اسکریپت
  • دانشگاه ادینبورگ توسعه یافت. نحو این زبان از زبان برنامه نویسی آی سوییم الهام گرفته است. کلمه ML از فوق زبان Meta Language گرفته شده است. ام ال برای بهبود
  • هسکل به انگلیسی: Haskell یک زبان برنامه نویسی تابعی خالص به انگلیسی: purely functional استاندارد شده و همه منظوره با نوع داده مستحکم است که به یاد
  • به طور کلی از الگول صحبت می شود منظور شاخه های الگول است. زبان برنامه نویسی آی سوییم اسکیم Nested functions Lexical scoping Wikipedia contributors
  • استفاده کرد تا یک زبان برنامه نویسی را مدل کند کاری که به پدید آمدن برنامه نویسی تابعی کمک شایانی کرد. وی همچنین به خاطر آی سوییم شناخته شده است. وی
  • سایت خود منتشر کرد. این دستورالعمل ها هم ساختار الکتریکی و هم فرایندهای برنامه نویسی را پوشش می دهد. از سال این شرکت از طریق مرکز ملی پژوهش های علمی