]]> ]]>

Furry Paws

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

Эта реализация имеет ровно одну общедоступную версию.

Примеры:

Hello, World! - FP (113):

~x — функция-константа (обозначенная как % в Interactive FP). emit — стандартная функция, выводящая свой аргумент в стандартный поток вывода. main — функция, наличие которой в программах на Furry Paws обязательно, т.к. при выполнении программы она вызывается первой.

main = emit.(return ~"Hello, World!\n")

Факториал - FP (114):

Этот пример работает точно так же, как пример для Interactive FP, за исключением отсутствия определения функции zero, являющейся встроенной. Следует отметить, что здесь все операции выполняются в пределах стандартного целочисленного типа, и 13! вызывает ошибку переполнения, поэтому программа может быть вызвана только для факториалов до 12!. show — альтернативный способ вывода информации.

dec = sub.[id, ~1]
seq = zero -> [id] ; cat.[seq.dec, [id]]
factorial = zero -> ~1 ; mul.[id, factorial.dec]

main = show.(return @factorial.(seq.~12))

Числа Фибоначчи - FP (115):

one = eq.[id, ~1]
dec = sub.[id, ~1]
seq = one -> [~1] ; cat.[seq.dec, [id]]
fibonacci = lt.[id, ~3] -> ~1 ; add.[fibonacci.sub.[id, ~1], fibonacci.sub.[id, ~2]]

main = show.(return @fibonacci.(seq.~16))

Комментарии

]]>

blog comments powered by Disqus

]]>

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