LINUX.ORG.RU

Лицензия Kona (интерпретатора языка K) изменена на свободную

 , , , , ,


0

1

Kona — свободная реализация языка программирования K.
K — язык программирования, по концепции сходный с APL, но использующий алфавит ASCII.
Изначально язык программирования K был разработан Артуром Вайтни, Kx Systems, но его реализация от Kx проприетарная. Kona — альтернативная свободная реализация.

8 апреля 2011 лицензия интерпретатора изменена с проприетарной на свободную лицензию ISC (используемой также в проекте OpenBSD).

Возможно, причиной перехода на свободную лицензию стала недавняя новость об открытии исходных кодов другого APL-подобного языка — J.

Видеовведение
Скринкаст по MapReduce

Домашняя страница Kona на github
Скачать текущую версию

>>> Подробности

> Kona — свободная реализация языка программирования K.

Ждем теперь Tchibo.

elipse ★★★ ()

Кстати, кто реально сравнивал, что лучше J или K, если изучаю ради матана и поднятия скиллов, ну и как очень продвинутый калькулятор.

Xenius ★★★★★ ()

>открытии исходных кодов другого APL-подобного языка

Неправильно говорить «исходные коды языка». Надо «исходные коды реализации языка».

Ttt ☆☆☆☆☆ ()
Ответ на: комментарий от Ttt

> Неправильно говорить «исходные коды языка». Надо «исходные коды реализации языка».
А если реализация единственная/основная? Если их несколько и открыта например сторонняя, то согласен, что это будет не совсем правильно.

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

Ну `nial' - тоже APL, но навскидку явно гуманнее.

// в сабже не разбираюсь

n01r ★★ ()
Ответ на: Интересно от babusha

Re: Интересно

Еще куча вариантов вроде A+, C-- и тд. А ещё можно удвоенные и утроенные (например «язык xxx») буквы юзать. Да и индексы вроде K16 можно.
С витаминами почти так же, например.

Xenius ★★★★★ ()

Интересно, а какие буквы на данный момент заняты названием языков?

forth32 ()

Кто все эти люди^W языки?

DELIRIUM ☆☆☆☆☆ ()
Ответ на: комментарий от Xenius

J лучше вот чем: community больше, чем у К, материалов больше, аутизма меньше и снобизма, вызванного близостью к Уолл-Стрит, меньше.

Но K проще для изучения.

fairplay ()
Ответ на: Re: Интересно от bga_

> там есть иероглифы и руны.

Рунами опасно называть - можно случайно кастануть фаерболл. А вот иероглифы самое оно :)

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

> Код нечитабелдьный получается на языке этом
Код на любом языке нечитабельный, если ты этим языком не владеешь.

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

> Код на любом языке нечитабельный, если ты этим языком не владеешь.

Особенно если этот язык - брейнфак. Или что-то типа К.

Manhunt ★★★★★ ()

J как язык для функционального векторного программирования просто шокирует. Вот о чем надо писать в местечковых журнальчиках типа ПФП, а не всякую парашу про «Максим Сохацкий и Олег Смирнов обменяются любезностями со Львом Валкиным».

Числа фибаначи:

(-&2 +&$: -&1) ^: (1&<)

Все лиспы и хацкели скромно стоят в очереди, за билетиком, дающим право тихо покурить рядом в коридоре.

anonymous ()
Ответ на: комментарий от anonymous

А Лев Валкин скажем им: «Пишите, блядь, код! И мойте жопу, каждый день. А самое главное платите налоги.»

anonymous ()
Ответ на: комментарий от gorky

> В самой Kona есть краткая справка по команде \
Именно, что краткая, не совсем очевидная.

А K вообще, получается, очень простой язык, по количеству синтаксических конструкций сравнимый с awk например?

Я всё-таки склоняюсь теперь к J, потому что в K нету комплексных чисел, например. А как у J и K с большими числами? Вот в bc и dc можно считать числа произвольной длины:
$ dc -e'1d sa [la d1+ sa * la 100 1+ >z]dszxp'
933262154439441526816992388562667004907159682643816214685929638952175\
999932299156089414639761565182862536979208272237582511852109168640000\
00000000000000000000
Вычисление 100!, например
Тогда как в J получается экспоненциальная нотация:
$ j/bin/jconsole
!100
9.33262e157
Можно ли в K вычислить все цифры?

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

если нужна точность в J можно так:
!100x
93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000



SolarRay ()
Ответ на: комментарий от anonymous

> (-&2 +&$: -&1) ^: (1&<)
Я, кажется, даже понял, как это работает.
Если это функция от одного аргумента, то на bc можно записать то же самое как

define f(n){if (1<n) return f(n-2)+f(n-1) else return n}

Смысл точно такой же, единственное, пришлось вместо количества итераций, которые расчитываются по формуле, использовать if

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

Для матана лучше J, для бизнес приложений — K. По крайней мере, так оно позиционируется. Ну и еще «US Army uses K» :)

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