Module 00 - Overview
Lesson 00 - What is this Guide
This guide is intended to make the YAYA programming language accessible to more people. Whether you’re completely new to programming and need to learn the basics of computer science, or you’re experienced in programming but new to YAYA, or even if you have some experience in YAYA and want to learn more advanced features, I hope this guide will have something for you.
I have run this guide past a few people to check for errors and ensure things are explained clearly. But if you find something confusing, or an error of any kind, do reach out and I will clarify and/or update the guide.
This guide is up to date with YAYA Tc571-5. If you want to read more about YAYA from the official source, check out AYAYA. There are a couple of guides there, including one specifically for beginners that just want to know the basics. You’ll notice that it’s entirely in Japanese, which is part of the reason I’m making this guide. It can be very difficult to understand programming concepts when run through a machine translator.
I will include boxes of sample code throughout this guide, which will look like this:
HelloWorld
{
"Hello, world!"
}
You can also download the companion ghost that goes with this guide, and click the links under each of the code boxes to run the code in the ghost and see the output. I also highly encourage you to look inside that ghost’s files and play with the code examples in there, and see what you can make happen! Getting hands on with this stuff and exploring what you can do is a very good way to learn. All the sample code for each lesson will be separated into different files, and extra copies of the original code will be available so that you can undo any changes.
If you don’t have the companion ghost, I still encourage you to copy and paste the code into a ghost, and play with it there.
(In NotePad++, you can get syntax highlighting by clicking on the language tab at the top. Then go to the C category, and click C. If you prefer VScode, another free editor, there is actually syntax highlighting available for YAYA specifically.)
The first section of each page will be mostly a technical overview of the concepts for that lesson, and sample code you can run in the companion ghost. Many pages will also have a “Further Context” section at the bottom, which is aimed more towards readers who are new to computer science, and may benefit from seeing what various concepts look like in actual use. Note that the “Further Context” sections include parts of code that are not explained until later lessons/modules, so don’t worry about understanding each of those examples immediately. As long as you understand what’s going on in the first section of the lesson, you’re doing good.
If you’re already familiar with computer science and you just need to learn about YAYA’s syntax, then feel free to skim or ignore those sections and just read the main lessons. They should tell you all you need to know.
All that being said, I hope you have fun learning about YAYA! As a programming language it has some very strange features. But it is well adapted for creating ghosts, and if you’re new to programming, a lot of the core concepts you learn here can be applied to other programming languages as well.