TGViewer
Сіпласпластик Сіпласпластик @cpplastic · 739 subscribers
Post #420 964
Вчора я написав критерії вибору мови програмування для тих, хто тільки починає свій шлях, і отримав купу корисних і цікавих коментарів. А також зауважив, що раніше радив Small Basic.

Але нещодавно я натрапив на Easylang, і це мій новий фаворит серед мов для початківців! В ньому текстові змінні мають долар в імені (name$) — прямо як у QBasiс, є масиви, суперлегко малювати, координати від 0 до 100 (вісь Y йде вгору), кольори від 000 до 999, легка й зручна обробка клавіатури й мишки, таймер, звуки тощо. IDE у бравзері автоматично форматує код. Інтерпретатор на WASM, тож готова програма — це PWA.

Ну й, власне, я вирішив портувати на Easylang одну з найперших програм, яку ми написали з моїм корешем Коляном у коледжі. Ми намагалися зробити чи то більярд, чи то арканоїд, для чого треба було накодити рух і відбиття кола від стінок.

Вам смішно зараз, але для деяких одногрупників тоді навіть текст в правильній позиції екрана вивести — це вже було досягнення, не те що анімувати щось. Якщо просто чистити весь екран на кожний кадр, то зображення неприємно блимало, тож натомість ми робили це так: малюємо коло, робимо затримку, стираємо коло, оновлюємо координати — і так в циклі. Команда SLEEP у QBasic приймала тільки секунди, що задовго для анімації, тому затримку ми робили порожнім циклом FOR … NEXT від 1 до 100000 (а якщо комп удвічі потужніший, то до 200000 😂).

Постає питання, як стирати намальоване, не зачіпаючи решту. Для цього після малювання робимо зняток ділянки екрана командою GET. А потім накладаємо назад командою PUT у режимі XOR. І короч десь ми щось наплутали порядок абощо, і вийшло так, що воно нічого не стирало, замальовуючи екран колами. В результаті вийшло щось дуже схоже на мережива, які ви могли бачити у себе в хаті або принаймні у ваших бабусь і дідусів. Тож цей витвір мистецтва ми гордо назвали SERVETKA.BAS (якраз 8.3 символів, якщо ви розумієте, про що я)!

На Easylang написати це звісно було значно легше. Та головне, що я намагаюся донести: людина має отримувати задоволення від процесу. Як бачите, у нас тоді навіть «некоректний» результат не пішов у смітник: навпаки роздмухав зацікавленість, а які ж іще візерунки можна отримати. І ми почали створювати складніші багатоколірні речі, музику додавали й оце все. Файно було.

А якщо ви почнете початківцю сушити мізки встановленням ліб, парсингом XMLʼів з інтернетів або боротьбою з тайп-чекером, то є ризик відбити бажання цим займатися назавжди 🤔 З іншого боку я радше візуал і все сприймаю в першу чергу саме візуально, вчуся очима тощо. А комусь, може, оце все й не треба, а треба якраз XML з інтернетів.

Проте Easylang спробуйте.
  • 👍 14
  • 😁 3
  • ❤ 2
  • 👀 2
  • 😐 1
  • 👨‍💻 1
More from @cpplastic
  1. Oct 7, 2026Post #543
  2. Oct 2, 2026Щось не злетіло з self-driving cars у автовиробників, еге ж? А стільки галасу було. Ну зат…
  3. Sep 24, 2026Ух, яку ж класну доповідь подивився: «Scott Jenson: Are we really going to use the same De…
  4. Sep 23, 2026Post #540
  5. Sep 21, 2026«Порекламую» вам український сайт, який мені дуже подобається. Взяв слово в лапки, бо як і…
  6. Sep 18, 2026Ви ж знаєте, що я полюбляю Tailscale 💠 попри те, що недоліків у них теж вистачає? Але сам…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →