Друкарня від WE.UA

Mash Script: Базовий синтаксис

Початок

Кожна програма починається з з функції main та імпорту стандартної бібліотеки stdl:

Cтворімо наш перший файл із розширенням .mash. Це можна зробити в будь-якому текстовому редакторі (наприклад, Sublime Text).

import { * } from stdl;

void main() {
  Out.println("Привіт, світ!"); // В кінці кожного виразу треба ставити ';'
}

Рядок 1: import { * } from stdl означає, що ми можемо використовувати змінні з бібліотеки stdl.

Рядок 2: Порожній рядок. Mash Script ігнорує пробіли. Однак кілька рядків роблять код більш читабельним.

Рядок 3: void main() оголошення функції main. Будь-який код всередині фігурних дужок { } буде виконано.

Рядок 4: Фігурні дужки { } позначають початок і кінець тіла функції main.

Рядок 5: Out.println("Привіт, світ!") - це метод println класу Out, який використовується для друку тексту на екрані. У нашому прикладі буде виведено "Привіт, світ!".

Якщо ми запустимо файл, побачимо наступне повідомлення в консолі:

Привіт, світ!

Коментарі

В Mash Script коментарі можна використовувати для пояснення коду і підвищення його читабельності. Також вони допомагають уникнути виконання певних частин коду під час тестування альтернативного варіанту. Коментарі можуть бути однорядковими (з символом //) або багаторядковими (між /* та */).

Наприклад:

// Це однорядковий коментар
int age = 18; // Це коментар до рядка коду

/* Це
   багаторядковий
   коментар */
string name = "Джон"; // Це коментар до рядка коду

Вхід і вихід

Основна мета класів Out і In полягає у виведенні інформації та отриманні даних відповідно. Для виведення повідомлення в консоль можна використовувати метод println класу Out. А метод line класу In дозволяє отримати рядок введений користувачем. Давайте розглянемо клас Out:

void main() {
  Out.println("1 Рядок"); // В кінці кожного виразу треба ставити ';'
  Out.println("2 Рядок");
}

Виведе:

1 Рядок
2 Рядок

Отримання даних за допомогою In.line:

void main() {
  string response = In.line("Введіть своє ім'я: ");
}

При виклику цього методу програма виведе повідомлення "Введіть своє ім'я: " у консоль та призупинить своє виконання, очікуючи, що користувач введе дані та натисне клавішу «Enter». Після цього метод поверне введені користувачем дані як рядок.

Ми можемо написати програму, яка виведе повідомлення, що ввів користувач:

void main() {
  Out.println(In.line("-> "));
}

Результат введення "Привіт" у програму:

-> Привіт
Привіт

Весь файл виглядатиме так:

import { * } from stdl;

void main() {
  Out.println(In.line("-> ")); // Не забувайте про крапку з комою
}

Читати далі

Щоб зробити щось цікавіше, треба дізнатися більше:

Статті про вітчизняний бізнес та цікавих людей:

  • CRM keyCRM: зручне рішення для продажів, комунікацій і керування командою

    Успіх компанії залежить від того, наскільки швидко вона здатна опрацьовувати вхідні запити. Коли дані про клієнтів розпорошені між різними месенджерами, виникає хаос. CRM keyCRM пропонує вихід із цієї ситуації, об’єднуючи всі робочі процеси в єдиному зручному інтерфейсі.

    Теми цього довгочиту:

    Crm
  • Різниця між UX і UI, яку варто зрозуміти ще до першого заняття

    Більшість людей, які обирають професію UX чи UI, довго вважають це одним і тим самим. Насправді це два різних підходи до роботи над продуктом, і плутанина між ними гальмує розвиток ще на старті.

    Теми цього довгочиту:

    Ui-ux
  • Логіка змін: як SEO оптимізація прибирає бар’єри до зростання

    Багато компаній приходять у SEO з очікуванням швидкого ривка, але дійсний ефект починається там, де сайт перестають латати точково. Тому в центрі роботи стоїть не окрема дія, а послідовні зміни. Оптимізація сайту має прибирати системні перешкоди, а не маскувати їх новими текстами

    Теми цього довгочиту:

    Seo
  • Музичний футуризм: неймовірні інструменти XXI століття

    Еволюція музичних інструментів це один із найкрутіших проявів потужності людської уяви і потреби виразити себе через мистецтво. І хоча багато традиційних інструментів майже не змінилися за століття існування, інновації і пошук не зупиняються.

    Теми цього довгочиту:

    Музичні Інструменти
  • Стіл – всьому голова? Так, якщо його правильно підібрати

    Коли починаєш вивчати пропозицію меблевих фабрик щодо столів, дивуєшся кількості варіантів, адже вони пропонують різні розміри, різні матеріали, різноманітні форми та дизайни. Скористайтесь нашим каталогом MebelOK, щоб Ви могли підібрати найкращу модель для Вашого приміщення

    Теми цього довгочиту:

    Столи
Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Romashka
Romashka@Romashka

Створюю інтерпретатор Mash Src

11Довгочити
262Перегляди
1Підписники
На Друкарні з 16 березня 2024

Більше від автора

  • Mash Script: Рядки, string

    Стаття охоплює різні аспекти роботи з рядками в мові Mash Script, включаючи їхній літеральний запис, методи, рядки-шаблони та інше.

    Теми цього довгочиту:

    Mash Script
  • Mash Script: Оголошення функцій

    Ця публікація охоплює основи роботи з функціями в мові програмування Mash Script: оголошення, використання опціональних параметрів, повернення значень, продвинуту типізацію та створення анонімних функцій.

    Теми цього довгочиту:

    Mash Script

Це також може зацікавити:

  • Java. Трішки про JVM та graceful shutdown

    У сучасних Java-додатках важливо забезпечити не лише високу продуктивність, але й коректне завершення роботи. Тому розглянемо основні потоки JVM, процес graceful shutdown, використання класу Runtime та механізму shutdown hooks для ефективного завершення роботи програм.

    Теми цього довгочиту:

    Java
  • Функції all() та any() у Python

    Всіх вітаю! Сьогодні ми будемо розбирати суть та різницю між вбудованими функціями all() та any() у Python. Взагалі зрозуміти ці функції доволі не складно, тому і стаття не сильно велика.

    Теми цього довгочиту:

    It

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Це також може зацікавити:

  • Java. Трішки про JVM та graceful shutdown

    У сучасних Java-додатках важливо забезпечити не лише високу продуктивність, але й коректне завершення роботи. Тому розглянемо основні потоки JVM, процес graceful shutdown, використання класу Runtime та механізму shutdown hooks для ефективного завершення роботи програм.

    Теми цього довгочиту:

    Java
  • Функції all() та any() у Python

    Всіх вітаю! Сьогодні ми будемо розбирати суть та різницю між вбудованими функціями all() та any() у Python. Взагалі зрозуміти ці функції доволі не складно, тому і стаття не сильно велика.

    Теми цього довгочиту:

    It