]]> ]]>

Ceylon M1

Версия реализации Ceylon языка программирования Ceylon

Ceylon M1 “Newton” — первая версия компилятора и среды разработки Ceylon, выпущенная 20 декабря 2011 года. Реализует около 80% запланированных возможностей языка.

Примеры:

Hello, World! - Ceylon (440):

Допустим, эта программа принадлежит модулю helloworld.progopedia.com. Тогда сам код программы должен находиться в файле /source/com/progopedia/helloworld.ceylon (относительно главной директории программы, из которой она будет запускаться). Кроме того, в файле /source/com/progopedia/module.ceylon должно находиться описание модуля, например, такое:

Module module {
 name = 'com.progopedia.helloworld';
 version = '1.0.0';
 by = {"Mariia Mykhailova"};
 dependencies = {};
 doc = "Hello, World!";
 license = 'Public domain';
}

После этого программу можно скомпилировать командой ceylonc com.progopedia.helloworld и запустить командой ceylon com.progopedia.helloworld/1.0.0 (указание версии при запуске обязательно).

void run() {
    print("Hello, World!");
}

Факториал - Ceylon (441):

В этом примере факториалы вычисляются итеративно. Ключевое слово variable указывает на то, что значение переменной fact будет изменяться позднее (в Java, напротив, ключевое слово final указывает на то, что значение переменной изменяться не будет). Тип Integer позволяет хранить значения факториалов без переполнения. Оператор конкатенации аргументов команды print не требует отдельного оператора, но при этом первый и последний элемент из списка конкатенируемых должны быть строками.

void run() {
    variable Integer fact := 1;
    for (i in 0..16) {
        print("" i "! = " fact "");
        fact *= i + 1;
    }
}

Числа Фибоначчи - Ceylon (442):

В этом примере используется итеративное вычисление чисел Фибоначчи.

void run() {
    variable String output := "";
    variable Integer fib1 := 0;
    variable Integer fib2 := 1;
    variable Integer fib3;
    for (i in 1..16) {
        output := "" output "" fib2 ", ";
        fib3 := fib1 + fib2;
        fib1 := fib2;
        fib2 := fib3;
    }
    print("" output "...");
}

Комментарии

]]>

blog comments powered by Disqus

]]>

Работа программистам