A really simple program

여기 고전적인 예제 프로그램이 있다.

1
2
3
void hello() {
print("Hello, World!");
}

이 함수는 Hello, World! 를 콘솔에 찍는다. 어떤 타입의 멤버도 아니기 때문에 이 함수를 최상위 레벨 함수라고 부른다. 최상위 레벨 함수를 호출하기 위해 객체를 받을 필요가 없다. 대신에 다음처럼 호출만 하면 된다.

1
hello();

Ceylon 은 Java, C++, C# 에서 볼 수 있는 static 메소드를 가지지 않지만 최상위 레벨 함수가 같은 역할을 하고 있다고 보면 된다. 이렇게 차이가 나는 이유는 Ceylon 은 아주 엄격한 블록 구조를 가지고 있기 때문이다. 중첩된 블록은 포함하는 블록의 선언에 항상 접근할 수 있다. Java 의 static 메소드의 경우와는 다르다.

Ceylon 은 아직 스크립팅을 지원하지 않는다. 함수나 클래스 밖에서 print(“Hello World!”); 라고만 적는것은 안된다. 다음은 잘못된 프로그램이다.

1
print("Hello, World!"); //error: must occur inside a function or class
Share Comments