آیاو (زبان برنامهنویسی)
از ویکیپدیا، دانشنامهٔ آزاد
| گونه | شئگرا، مبتنی بر پیشنمونه |
|---|---|
| منتشر شده در | ۲۰۰۲ |
| طراح(ها) | استیو دکورت |
| توسعهدهنده(ها) | استیو دکورت، جاناتان رایت، جرمی ترگونه |
| پیادهسازی(ها) | آیاو، اکیوت |
| تاثیر گرفته از | اسمالتاک، لوا، لیسپ، نیوتناسکریپت، سلف، اکت۱ |
| تاثیر گذاشته بر | آیوک، فانسی |
| وبگاه | iolanguage.com |
آیاو (به انگلیسی: Io) یک زبان برنامهنویسی بر پایه پیشنمونه پویا است[۱]. ایدههای این زبان اکثرا از زبانهای اسمالتاک (تمام مقدارها شی هستند)، سلف (بر پایه پیشنمونه)، نیوتناسکریپت (ارثبری تفاضلی)، اکت۱ (اکتورها و فیوچرها برای همروندی)، لیسپ (کد یک درخت قابل بررسی و قابل تغییر در زمان اجراست)، و لوا (کوچک، قابل توکاری) برگرفته شده است[۱].
مثالها[ویرایش]
"Hello, world!" println
پیادهسازی تابع فاکتوریل به صورت غیربازگشتی:
factorial := method(n, if(n == 0, return 1) res := 1 Range 1 to(n) foreach(i, res = res * i) )
به این دلیل که تخصیص res * i به res آخرین عمل انجام شده است، تابع به صورت غیر صریح این مقدار را به عنوان نتیجه برمیگرداند و نیازی به عبارت صریح بازگرداندن نیست.