Yabasic ( Yet Another BASIC ) یک مفسر بیسیک رایگان و منبع باز برای پلتفرم های مایکروسافت ویندوز و یونیکس است . [2] Yabasic در ابتدا توسط Marc-Oliver Ihm توسعه داده شد که آخرین نسخه پایدار 2.77.3 را در سال 2016 منتشر کرد. از نسخه 2.77.1، پروژه مجوز MIT و همچنین کد منبع را برای تشویق به GitHub منتقل کرده است. دیگران برای مشارکت در توسعه آن. [3]
نسخه ای بهینه شده برای BeOS ، ZETA و هایکو . [4]
یک بندر یاباسیک به جعبه ابزار Fltk به نام «فلیاب» در دست توسعه بود. میتوانست با برنامههای نوشته شده در yab سازگار با منبع باشد، نوعی از Yabasic که برنامههای گرافیکی را قادر میسازد با استفاده از BeOS API نوشته شوند . پس از اینکه BeOS و جانشین آن ZETA سرانجام ناپدید شدند، اعضای تیم اطراف yab برای BeOS تصمیم گرفتند به لینوکس بروند و بنابراین FLTK را برای پیادهسازی بخشهای UI انتخاب کردند. پورتها برای مایکروسافت ویندوز، مک او اس ایکس و لینوکس ممکن بود. Flyab این قابلیت را به Yabasic اضافه کرد تا رابط های کاربری گرافیکی بومی را در تمام پلتفرم های پشتیبانی شده ایجاد کند. مشکل اصلی اجرای کامل دستورات طرح بندی به FLTK بود، همانطور که در نسخه BeOS استفاده می شد. [ نیاز به نقل از ] از نوامبر 2008، به نظر می رسد این پروژه متوقف شده است.
سونی همچنین نسخهای از Yabasic را برای پلیاستیشن 2 روی دیسک نمایشی [5] که با کنسولهای PS2 در نواحی PAL ارسال میشد، بستهبندی کرد، بنابراین میتوان آن را یک رایانه خانگی و نه فقط یک ماشین بازی در نظر گرفت، بنابراین مالیات واردات اروپایی را دور زد. [6]
به عنوان ادامه پروژه قبل از تغییرات جدید توسط نویسنده اصلی، نسخه 3 توسط تیمی با محوریت پدرو سا و توماس لارسن در حال توسعه بود، اما توسعه متوقف شده است و اکنون به نظر می رسد که پروژه رها شده است. [ نیازمند منبع ]
# !/ usr / bin / yabasicنام برنامه REM: cbm-mtudemo.yab REM نویسنده: mtu REM REM هدف: نمایش کارت گرافیک CBM-PET آنها 320x200باز کردن پنجره 320 ، 200 20 P = 160 : Q = 100 30 XP = 144 : XR = 1.5 * 3.1415927 40 YP = 56 : YR = 1 : ZP = 64 50 XF = XR / XP : YF = YP / YR : ZF = XR ZI =- Q TO Q - l 70 IF ZI <- ZP OR ZI > ZP GOTO 150 80 ZT = ZI * XP / ZP: ZZ = ZI 90 XL = INT ( 0.5 + SQRT ( XP * XP - ZT * ZT )) 100 برای XI =- XL TO XL 110 XT = SQRT ( XI * XI + ZT * ZT ) * XF: XX = XI 120 YY = ( SIN ( XT ) + 0.4 * SIN ( 3.0 * XT )) * YF 130 GOSUB 17 140 NEXT XI 150 NEXT ZI 160 PAUSE 10 END 170 X1 = XX + ZZ + P 180 Y1 = YY - ZZ + Q : Y1 = 199 - Y1 190 LINE X1 , Y1 , X1 , Y1 -1 120IF 200 IF 210 CLEAR LINE X1 , Y1 + 1 , X1 , 199 220 بازگشت