استارلوگو

استارلوگو یک زبان شبیه‌سازی مبتنی بر عامل است که توسط Mitchel Resnick ، Eric Klopfer و دیگران در آزمایشگاه رسانه موسسه فناوری ماساچوست (MIT) و برنامه آموزش معلم شلر در ماساچوست توسعه یافته است. این یک پسوند زبان برنامه نویسی Logo است که گویش Lisp است. استارلوگو که برای آموزش طراحی شده است، می تواند توسط دانش آموزان برای مدل سازی یا شبیه سازی رفتار سیستم های غیرمتمرکز استفاده شود.

اولین استارلوگو روی یک کامپیوتر موازی Connection Machine 2 اجرا شد. نسخه بعدی روی کامپیوترهای مکینتاش اجرا شد. بعداً به MacStarLogo تغییر نام داد و اکنون MacStarLogo Classic نامگذاری شده است. استارلوگو فعلی به زبان جاوا نوشته شده است و روی اکثر رایانه ها کار می کند.

استارلوگو در نسخه ای به نام OpenStarLogo نیز موجود است. کد منبع آن به صورت آنلاین در دسترس است، اما مجوزی که تحت آن منتشر شده است، طبق تعریف منبع باز ، به دلیل محدودیت در استفاده تجاری از کد، مجوز منبع باز نیست.

نسخه TNG 
StarLogo TNG (نسل بعدی) نسخه 1.0 در جولای 2008 منتشر شد. این یک دنیای سه بعدی با استفاده از گرافیک OpenGL و یک زبان گرافیکی مبتنی بر بلوک برای افزایش سهولت استفاده و یادگیری فراهم می کند. به زبان C و جاوا نوشته شده است. StarLogo TNG از بلوک ها برای کنار هم قرار دادن قطعات پازل مانند استفاده می کند. استارلوگو TNG بلوک ها را به ترتیبی که در کنار هم قرار می گیرند می خواند و برنامه را در نمای Spaceland تنظیم می کند. 

استارلوگو یک تأثیر اولیه برای سیستم ذرات Kedama است که توسط Yoshiki Oshima برنامه ریزی شده است، که در محیط و زبان برنامه نویسی آموزشی Etoys یافت می شود، که می توان آن را به عنوان یک لوگو در ابتدا در Squeak Smalltalk مشاهده کرد.

نسخه نوا 
آخرین نسخه StarLogo، StarLogo Nova ،   به صورت بتا در تابستان 2014 منتشر شد. StarLogo Nova زبان بلوک ها و موتور تجسم سه بعدی StarLogo TNG را می گیرد و آنها را به مرورگر وب می آورد. موتور اجرایی StarLogo Nova بر روی زمان اجرا Adobe Flash ساخته شده است و شامل یک موتور رندر نمونه سازی شده است که از رابط برنامه نویسی برنامه گرافیکی Adobe Molehill 3D (API) استفاده می کند که قادر است ده ها هزار عامل متحرک مستقل را بر روی سخت افزار فعلی ارائه دهد. منطقه برنامه نویسی بر روی ScriptBlocks ساخته شده است، یک کتابخانه بلوک های مبتنی بر جاوا اسکریپت . از سال 2019، StarLogo Nova توسط برنامه آموزش معلمان MIT Scheller، به کارگردانی اریک کلوپفر، با طراح و توسعه دهنده اصلی دانیل وندل در دست توسعه است.

StarLogo Nova چندین تغییر طراحی قابل توجه را نسبت به TNG معرفی می کند، به ویژه با معرفی یک عامل World ، که یادآور Observer StarLogo 2.2 است. در StarLogo Nova، هر دستوری می تواند توسط هر عاملی اجرا شود، اما هر نژاد برنامه خاص خود را دارد و می تواند مجموعه ای از ویژگی های نژاد خاص خود را داشته باشد. این امر StarLogo Nova را به یک طراحی برنامه نویسی شی گرا نزدیک می کند تا دانش آموزان بتوانند مهارت های StarLogo Nova را به سایر زبان های رایج تر انتقال دهند. تغییرات دیگر شامل استفاده از آرگومان‌های جاسازی شده برای بلوک‌ها (شبیه به زبان Scratch )، ویرایش What You See Is What You Get (WYSIWYG) رابط شبیه‌سازی، و تقسیم collision primitive به نیمه‌های جزء آن، با هر نژاد در صفحه برنامه خودش دارای کد برخورد است.

همچنین ببینید 

 NetLogo
 اسکرچ (زبان برنامه نویسی)

منابع 

مقاله‌های ایجاد شده توسط ایجادگر
زبان‌های برنامه‌نویسی مبتنی بر عامل
زبان‌های برنامه‌نویسی آموزشی