LINUX.ORG.RU
ФорумTalks

Разработка через тестирование: Тетрис для ОС Фантом

 ,


0

1

Я нашел прекрасное:

void math_test()
{
print("Checking int math... ");

if( 2+2 != 4 ) throw "int + math error";
if( 2-2 != 0 ) throw "int - math error";
if( 2/2 != 1 ) throw "int / math error";
if( 3*3 != 9 ) throw "int * math error";

if( 3 < 2 ) throw "int < error";
if( 5 > 6 ) throw "int > error";

if( 3 <= 2 ) throw "int <= error";
if( 5 >= 6 ) throw "int >= error";

if( !(3 <= 3) ) throw "int <= error";
if( !(5 >= 5) ) throw "int >= error";

if( 0 || 0 ) throw "int || math error";
if( 1 || 0 ) {} else throw "int || math error";
if( 0 || 1 ) {} else throw "int || math error";
if( 1 || 1 ) {} else throw "int || math error";

if( 0 && 0 ) throw "int && math error";
if( 1 && 0 ) throw "int && math error";
if( 0 && 1 ) throw "int && math error";
if( 1 && 1 ) {} else throw "int && math error";

if( 0 | 0 ) throw "int | math error";
if( 1 | 0 ) {} else throw "int | math error";
if( 0 | 1 ) {} else throw "int | math error";
if( 1 | 1 ) {} else throw "int | math error";

if( 0 & 0 ) throw "int & math error";
if( 1 & 0 ) throw "int & math error";
if( 0 & 1 ) throw "int & math error";
if( 1 & 1 ) {} else throw "int & math error";

print("passed\n");
}
★★★★★

Последнее исправление: Xintrea (всего исправлений: 1)

И что? Ты вообще представляешь насколько хреново работать на машине у которой 2+2 != 4? Лучше заранее проверить:)

Stahl ★★☆
()

Я, когда на первом курсе писал язык, транслируемый в brainf*, тоже что-то такое делал для проверки :D Возможно, поделка примерно того же уровня.

Sadler ★★★
()
Последнее исправление: Sadler (всего исправлений: 1)
Ответ на: комментарий от Suigintou

Это из configure скриптов?

Язык Phantom, имеет Java/C# подобный синтаксис. Расширение *.ph.

Это они в тетрисе проверяют регрессии компилятора.

https://code.google.com/p/phantomuserland/source/browse/trunk/apps/tetris/com...

Xintrea ★★★★★
() автор топика
Ответ на: комментарий от Xintrea

Что-то мне эта операционка стала напоминать вариант доса с многозадачностью которая потребовала отказаться почти от всех привычных ЯП. И точно как в досе, не будет дров почти для всего.

Napilnik ★★★★★
()

Настоящие отцы программирования никогда не доверяют компилятору:

Assert((2 == 2) == 1); [1];

Assert((1==1)==1);/* Assert fTrue == 1 */ [2];

Assert((1 > 0) == 1); [3];

Assert((42 == 42) == 1); [4].

EXL ★★★★★
()

Теги поставь: фантом, phantom

Третьим будешь.

greenman ★★★★★
()
Ответ на: комментарий от int13h

у доса отсутствует многозадачность

А дос ты знаешь по досбоксу? В седьмом айбиэмовском досе были зачатки многозадачности, работали через файловый менеджер. Комбинацией клавиш можно было вгонять в сон работающее приложение и переключаться на следующее, но к сожалению игры перехватывали управление клавиатуры и там это не работало.

Napilnik ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.