Кіріспе
StarLogo – Митчел Резник, Эрик Клопфер және басқалар Массачусетс Технологиялық институтының (MIT) Медиа Лабы мен Массачусетс штатындағы Scheller Teacher Education Program-да әзірлеген агенттік негіздегі симуляция тілі. Бұл Lisp диалектісі болып табылатын Logo бағдарламалау тілінің кеңейтімі. Білім беру мақсатында жасалған StarLogo-ны студенттер тараптан орталықтандырылмаған жүйелердің қылықтарын модельдеу немесе имитациялау үшін пайдалана алады. Алғашқы StarLogo Connection Machine 2 параллель компьютерінде іске қосылды. Кейінірек Macintosh компьютерлерінде жұмыс істеді. Одан кейін MacStarLogo деп аталды, ал қазір MacStarLogo Classic деп аталады. Қазіргі StarLogo Java тілінде жазылған және көптеген компьютерлерде жұмыс істейді. StarLogo сондай-ақ OpenStarLogo деп аталатын нұсқада да қолжетімді. Оның бастапқы коды онлайн режимінде қолжетімді, бірақ The Open Source Definition бойынша, кодты коммерциялық мақсатта пайдалануға шектеулер болғандықтан, оны шығару лицензиясы ашық кодты лицензия болып табылмайды.
StarLogo is an agent based simulation language developed by Mitchel Resnick, Eric Klopfer, and others at the Massachusetts Institute of Technology (MIT) Media Lab and Scheller Teacher Education Program in Massachusetts. It is an extension of the Logo programming language, a dialect of Lisp. Designed for education, StarLogo can be used by students to model or simulate the behavior of decentralized systems. The first StarLogo ran on a Connection Machine 2 parallel computer. A subsequent version ran on Macintosh computers. It was later renamed MacStarLogo, and now is named MacStarLogo Classic. The current StarLogo is written in the language Java and works on most computers. StarLogo is also available in a version named OpenStarLogo. Its source code is available online, but the license under which it is released is not an open source license according to The Open Source Definition, because of restrictions on the commercial use of the code.
TNG нұсқасы
StarLogo TNG (The Next Generation) 1.0 нұсқасы 2008 жылдың шілдесінде жарық көрді. Ол пайдалану және үйренудің жеңілдігін арттыру мақсатында OpenGL графикасымен 3D әлемді және блоктарға негізделген графикалық тілді ұсынады. Ол C және Java тілдерінде жазылған. StarLogo TNG оқулық құрастырма сияқты бөліктерді біріктіру үшін блоктарды пайдаланады. StarLogo TNG блоктарды олардың біріне-бірі сәйкес келу ретімен оқиды және бағдарламаны Spaceland көрінісінде іске қосады. StarLogo – Йошики Осима бағдарламалаған Kedama бөлшектік жүйесіне басты ықпал етуші, ол Etoys оқу бағдарламалау ортасы мен тілінде қолданылады, оны Squeak Smalltalk-та бастапқыда жасалған Logo нұсқасы ретінде қарастыруға болады.
Nova нұсқасы
StarLogo-ның ең соңғы нұсқасы StarLogo Nova 2014 жылдың жазында бета нұсқасы ретінде жарияланды. StarLogo Nova, StarLogo TNG-нің блоктар тілін және 3D визуализация қозғалтқышын алып, оларды веб-браузерге көшіреді. StarLogo Nova-ның орындалу қозғалтқышы Adobe Flash ортасында құрылған және қазіргі аппараттық құралдарда ондаған мың тәуелсіз қозғалатын агенттерді көрсетуге қабілетті, Adobe Molehill 3D графикалық қолданба бағдарламалау интерфейсін (API) пайдаланатын, арнайы құрылған инстанциялық рендерлеу қозғалтқышын қамтиды. Бағдарламалау аймағы JavaScript негізіндегі блоктар кітапханасы ScriptBlocks-қа негіделген. 2019 жылғы мәліметтер бойынша, StarLogo Nova MIT Scheller Teacher Education Program бағдарламасымен, Эрик Клопфердің басшылығымен және жетекші дизайнер және әзірлеуші Дэниел Венделдің қатысуымен әзірленуде. StarLogo Nova TNG-ге қатысты бірнеше маңызды дизайндық өзгерістерді ұсынады, әсіресе StarLogo 2.2-нің Observer-ін еске түсіретін World агенті енгізілді. StarLogo Nova-да кез келген команданы кез келген агент орындай алады, бірақ әр түрдің өзіндік бағдарламасы және түрге тән қасиеттер жиынтығы болуы мүмкін. Бұл StarLogo Nova-ны объектіге бағытталған бағдарламалау дизайнына жақындатады, студенттердің StarLogo Nova-да алған дағдыларын басқа, кең таралған тілдерге оңай көшіруіне көмектесу мақсатында жасалған. Басқа өзгерістерге блоктарға енгізілген аргументтерді пайдалану (Scratch тіліне ұқсас), симуляция интерфейсін WYSIWYG (What You See Is What You Get) режимінде өңдеу және соқтығысу примитивін құраушы бөліктерге бөлу, әр түрдің өз бағдарламалық бетінде соқтығысу кодының болуы жатады.