Jo 프로그래밍 언어 문서

시작하기

Jo는 Python보다 간결한 문법을 가진 프로그래밍 언어입니다.

설치

  1. Jo 다운로드 (ZIP 파일)
  2. 압축 해제
  3. Python 3.7 이상 필요

첫 프로그램

# hello.jo
say "Hello, Jo!"

실행

python main.py hello.jo

REPL 모드

python main.py

기본 문법

변수

x = 10
name = "Jo"
numbers = [1, 2, 3, 4, 5]

출력

say "Hello!"
say x
say x + y

조건문

if x > 10
    say "큰 숫자"
elif x > 5
    say "중간 숫자"
else
    say "작은 숫자"
주의: Jo는 들여쓰기를 사용합니다. 콜론(:)은 필요 없습니다!

반복문 (Jo의 핵심!)

Times 루프

가장 간단한 반복문입니다.

5.times
    say "Hello!"

count = 10
count.times
    say "반복"

Range 기반 For 루프

# 0부터 9까지
for i in 0..10
    say i

# 1부터 5까지
for i in 1..6
    say i

리스트 반복

fruits = ["사과", "바나나", "오렌지"]

# : 연산자 사용
for fruit : fruits
    say fruit

# in도 가능
for fruit in fruits
    say fruit

Loop 문

# 조건부 반복
count = 0
loop count < 10
    say count
    count = count + 1

# 무한 루프
loop
    say "Forever"
    if condition
        break

함수

함수 정의

fn add(a, b)
    ret a + b

fn greet(name)
    say "Hello, " + name

함수 호출

result = add(5, 3)
say result  # 8

greet("World")

클래스

클래스 정의

class Person
    init(name, age)
        @name = name
        @age = age
    
    fn greet()
        say "안녕! 나는 " + @name
    
    fn birthday()
        @age = @age + 1

인스턴스 생성

alice = Person("Alice", 25)
alice.greet()
alice.birthday()
참고: @변수는 인스턴스 변수를 나타냅니다 (Python의 self.변수)

연산자

산술 연산자

연산자 의미 예시
+ 더하기 5 + 3 → 8
- 빼기 10 - 4 → 6
* 곱하기 3 * 4 → 12
/ 나누기 10 / 2 → 5.0
% 나머지 10 % 3 → 1
** 거듭제곱 2 ** 8 → 256

비교 연산자

연산자 의미
== 같음
!= 다름
< 작음
<= 작거나 같음
>
>= 크거나 같음

논리 연산자

  • and - 논리 AND
  • or - 논리 OR
  • not - 논리 NOT

예제 모음

피보나치 수열

fn fibonacci(n)
    if n <= 1
        ret n
    ret fibonacci(n - 1) + fibonacci(n - 2)

for i in 0..10
    say fibonacci(i)

카운터 클래스

class Counter
    init(start)
        @count = start
    
    fn increment()
        @count = @count + 1
    
    fn show()
        say @count

counter = Counter(0)
10.times
    counter.increment()
counter.show()

팩토리얼

fn factorial(n)
    if n <= 1
        ret 1
    ret n * factorial(n - 1)

say factorial(5)  # 120