Welcome to the SqueakSpeak syntax guide! This document will help you understand how to write code in the most adorable programming language ever created! 🐁✨
Use Squeak
to print to the console:
Squeak "Hello little mouse!";
Squeak 42;
Squeak myVariable;
Declare variables using Cuddle
:
Cuddle myNumber = 42;
Cuddle myText = "Cheese is yummy!";
Use Listen
to get user input:
Listen(userInput); // Stores input in userInput variable
Create objects using SnuggleObject
:
SnuggleObject Mouse {
Mouse->name = "Pip";
Mouse->age = 2;
Mouse->favoriteFood = "Cheese";
}
Access object fields using ->
:
Squeak Mouse->name; // Outputs: Pip
Peek (counter == 0) {
Squeak "Counter is zero!";
} Purr {
Squeak "Counter is not zero!";
}
Nuzzle (x < 5) {
Squeak x;
x = x + 1;
}
Define functions using FluffMagic
:
FluffMagic greetMouse(name) {
Squeak "Hello, " + name + "!";
}
Call functions using their name:
greetMouse("Pip");
Return values using PawReturn
:
FluffMagic add(a, b) {
PawReturn a + b;
}
Basic math operations are supported:
Cuddle result = 5 + 3; // Addition
result = 10 - 4; // Subtraction
result = 6 * 7; // Multiplication
result = 15 / 3; // Division
result = 10 % 3; // Modulo
result = 2 ^ 3; // Power
Use Brain
for math functions:
Brain(sin, 45) -> result; // Sine
Brain(cos, 45) -> result; // Cosine
Brain(tan, 45) -> result; // Tangent
Brain(sqrt, 16) -> result; // Square root
Brain(pow, 2, 3) -> result; // Power
Make HTTP requests using BeepBoop
:
BeepBoop("https://example.com") -> response;
Import other SqueakSpeak files using BringWarmth
:
BringWarmth "otherfile.ssp";
// Single line comment
/*
Multi-line
comment
*/
SnipChoose (value) {
SnipCase 1: {
Squeak "One!";
}
SnipCase "test": {
Squeak "Test case!";
}
SnipDefault: {
Squeak "Default case!";
}
}
Call .NET functions using NativeCall
:
NativeCall "System.Math" "Abs" (-42) -> result;
- Numbers (integers and floating-point)
- Strings (enclosed in double quotes)
- Objects (created with SnuggleObject)
- Arrays (using square brackets)
- Use descriptive variable names
- Comment your code to explain complex operations
- Break down complex operations into smaller functions
- Keep your code organized and properly indented
- Use proper error handling where appropriate
Need more help? Join our mouse community at GitHub! 🐭✨