LINUX.ORG.RU
ФорумTalks

Inko Programming Language

 , inko, , ,


2

4

Решил притащить на обсудить Inko: https://inko-lang.org/

Хз, нужно оно в реальном мире или нет, когда есть python/ruby/elixir.
Но вдруг у кого-нибудь есть умные мысли на этот счёт. :)


Inko is a gradually-typed, safe, object-oriented programming language for writing concurrent programs. By using lightweight isolated processes, data race conditions can not occur. The syntax is easy to learn and remember, and thanks to its error handling model you will never have to worry about unexpected runtime errors.

Inko runs on 64 bits Linux, BSD, Mac OS, and Windows. 32 bits platforms may work, though they are not officially supported at this time.



ps: в тегах питон, руби, эрланг и эликсир потому, что автор считает их основными конкурентами инко. А раст потому, что ВМ написана на нём.

★★★★★

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

Ответ на: комментарий от tailgunner

не plain-text
и на них всех отображается текст

я так и не понял почему вы оба прочли фразу «возможности отображения знаков на устройстве вывода» как «не текст». желательно конечно, чтобы это был привычный мне текст, а не эмодзи или иероглифы.

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

я так и не понял почему вы оба прочли фразу «возможности отображения знаков на устройстве вывода» как «не текст»

А ее следовало понять иначе? Скажи, как.

tailgunner ★★★★★
()
Ответ на: комментарий от system-root

текст тоже состоит из знаков.

Конечно. Так ты сам-то знаешь, что значит:

подстраивать язык под текущие границы возможности отображения знаков на устройстве вывода.

или как?

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

подстраивать язык под текущие границы возможности отображения знаков на устройстве вывода.

конкретизирую — устраивать «пиши сокращай» из языка просто потому что в 1976, 1985, 2005, 2018, (подставьте своё значение) году устройство вывода отображает N строк по вертикали\горизонтали.
так придумывать языки — тупо.

system-root ★★★★★
()
Ответ на: комментарий от tailgunner

может, нужно не написание программ приближать к нативному выражению мыслей человека, а восприятие программ к физическим возможностям человека? Например, человеку проще читать блок кода, когда он у него весь перед глазами

перед глазами
блок кода

system-root ★★★★★
()
Последнее исправление: system-root (всего исправлений: 1)
Ответ на: комментарий от tailgunner

и не нужно его листать туда-сюда, а для этого синтаксис языка должен быть выразительным и компактным

компактным

ты вообще в курсе, откуда я эти цитаты беру?

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

ты вообще в курсе, откуда я эти цитаты беру?

Да. Но я не в курсе, как ты к выводам приходишь. Поэтому, собственно, и спрашиваю. Тебя.

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

проще читать блок кода, когда он у него весь перед глазами, и не нужно его листать туда-сюда

«листать туда-сюда» зависит от устройства вывода.

а для этого синтаксис языка должен быть выразительным и компактным

зависит от предыдущего утверждения, которое зависит от устройства вывода

Очевидно, что спецсимволы как минимум уместны там, где позволяют сократить количество токенов для выражения типовых задач

зависит от синтаксиса, который очевидно, через слово «Очевидно» зависит от предыдущего рассуждения, которое зависит от предпредыдущего которое зависит от устройства вывода.
через это: «пиши сокращай» потому, что экран имеет ограничения.
через это: не надо привязываться к экрану при придумывании языка, т.к. экран имеет тенденцию увеличиваться в размерах со временем, а синтаксис так и останется в «золотой середине» прошлого века.
понятнее?

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

проще читать блок кода, когда он у него весь перед глазами, и не нужно его листать туда-сюда

«листать туда-сюда» зависит от устройства вывода.

А объем усваиваемой информации зависит от возможностей человека.

не надо привязываться к экрану при придумывании языка, т.к. экран имеет тенденцию увеличиваться в размерах со временем, а синтаксис так и останется в «золотой середине» прошлого века.

Как ты пришел к выводу, что привязываются к экрану? Вроде же ясно сказано: «к физическим возможностям человека».

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

ты ничего не знаешь об объёмах и физических возможностях. как и я, как и вообще кто бы то ни было.
объём информации 200 лет назад на всей планете был меньше чем ты читаешь за год, у человека в 1972 году физически не было возможности прочесть с экрана строку в 160 символов длиной или блок текста в 100 строк в высоту без прокрутки.
это были их физические ограничения как вида?

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

ты ничего не знаешь об объёмах и физических возможностях. как и я, как и вообще кто бы то ни было.

Что, вот прям вообще кто бы то ни было не знает? Тогда ладно.

Но я так и не понял, как ты пришел к выводу о создании языка под размер экрана.

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

выглядит годно, может и взял бы в свою писульку вместо gluon, да вот только не вижу, как у него со встраиванием в Rust. ткните, плиз, в нужном направлении.

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

Внезапно, но пердолинг с типчиками нужен не всегда, даже в рамках одного и того же проекта.

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

выглядит годно, может и взял бы в свою писульку вместо gluon, да вот только не вижу, как у него со встраиванием в Rust. ткните, плиз, в нужном направлении.

Можно спросить у самого автора вот тут: https://gitlab.com/inko-lang/inko/issues

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

ой как ловко мы опускаем слово «нативный» чтобы чё-та там доказать.
ну попроси рандомного человека тебе в чат написать текст «проверить есть ли элемент в массиве» а потом грепнуть на предмет i++ --i и подобного.

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

ветку выше не читал, побуду рандомным человеком: el in arr. циклов и переменных меня городить не просили.

t184256 ★★★★★
()
Ответ на: комментарий от system-root

Говорят

ты апеллируешь к опыту основанному на том, что уже есть. восприятие меняется в зависимости от отображения, а о физических ограничениях мы ещё мало знаем.

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

сколько::можно::то @делать?.такие -> уродства !! в_синтаксисе?

Сколько можно терпеть ,.:;!«»-— в русской письменности? Можно же заменить на буквы в верхнем регистре, или еще что придумать. Человек же не думает знаками препинания.

Virtuos86 ★★★★★
()
Ответ на: комментарий от system-root

Например, человеку проще читать блок кода, когда он у него весь перед глазами

Если у меня перед глазами будет блок кода на экране размером со стену комнаты, то просто мне его читать не будет. А если блок кода, содержащий ту же информацию, поместится на тетрадном листке — то будет. Вот только если заменить все сигилы пускай даже на 3-4-х символьные кейворды, в тетрадный лист уместиться шансов поуменьшится. Опять же, оговорюсь, нужно не забывать про золотую середину, чтобы не придти к Perl или там APL)

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

inko.vim

Не взлетит. Надо было к VSCode писать плагин, IntelliJ IDEA, или, на худой конец, к Sublime Text 3.

Virtuos86 ★★★★★
()
Ответ на: комментарий от system-root

1) Дорогой, это ТЫ опустил слово «нативный».

2) Я так и не дождался от тебя объяснения, что это такое.

3) При чём тут вообще рандомный человек в чате?

4) Рандомный человек, вероятно, спросит, что такое «массив».

Miguel ★★★★★
()
Ответ на: комментарий от system-root

ничего не знаешь об объёмах и физических возможностях

high-resolution portion of vision is very small in humans, only about 1–2 degrees

На экране это до дюйма, 1.2..2.4 см на расстоянии 70см. Что-либо большее и ты либо угадываешь, либо сканируешь — не самое эффективное времяпровождение. Можешь посчитать, сколько читабельных символов влазит в твоё личное поле зрения.

Итого, [@#$%] необходимы: по размеру «pointer s» равен «&goodname», а во втором сильно больше информации.

DonkeyHot ★★★★★
()

если отталкиватся от угловых минут глаза, ты автоматом должен писать не более чем на ASM. а имена классов вроде «времяпровождение» должны быть запрещены по причине неэффективности чтения, только об этом никто не узнает, т.к «неэффективности» тоже нужно сканировать.

system-root ★★★★★
()
Ответ на: комментарий от Virtuos86

опять ты апеллирует к опыту, «веками» и всё такое, устраивая дихотомию: или золотая середина или А3 формат.
а золотая середина не может быть без двойных двоеточий по три раза подряд, без двух вопросительных знаков?
никак неможет? это типа математически доказуемо выходит? вовсе нет.
а по поводу символов я обычном языке — они работают по другому, тут вообще нет аналогий.

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

1) Что нет смысла — это я тебе как раз говорю. А ты почему-то возражаешь.

2) То есть, ты не знаешь.

3) То есть, ты не знаешь, а просто так ляпнул.

4) Я провёл, и сообщил тебе результат в предыдущем комменте.

Повторяю: а) от тебя требуется определение «нативного выражения мыслей», если только ты не готов признать, что это понятие бессмысленно; б) объяснение, чем это хорошо. Пока что ты кидаешься словами, которые не можешь объяснить.

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

я тебе так скажу — если ты не желаешь продолжать конструктивную беседу в которой без указания\контекста что это специальные термины было упомянуто «нативного выражения мыслей», что значит можно читать значения этих слов по словарю — ну что поделать.
а просить копипасть\пересказывать тебе словарь прост потому что ты решил пошланговать про «понятия» — я не в настроении такой хернёй маятся с тобою.

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

если ты не желаешь продолжать конструктивную беседу

Как раз конструктивной беседы я хочу от тебя добиться. Пока безрезультатно.

без указания\контекста что это специальные термины было упомянуто «нативного выражения мыслей»

Именно. Я прошу тебя, уже в который раз, наконец расшифровать, что это значит.

ну что поделать. а просить копипасть\пересказывать тебе словарь

Если можешь дать ссылку на определение «нативного выражения мыслей», то давай.

я не в настроении

Я уже понял, что ты не в настроении вести нормальный разговор, в котором употребляющий термин, не знакомый собеседнику, этот термин объясняет.

И поправь слово «маяться», оно с мягким знаком.

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

термин
термин
определение

я смотрю ты продолжаешь шланговать? из какой предметной области ты собрался от меня получать определение этого т.н. «термина»?
и с какой стати ты пытаешься получить от меня определения слова из словаря, называя слово термином, после того, как тебе указал где брать значения слова?
можешь взять все три значения в словаре.
для слова нативный
для слова выражения
для слова мыслей
а потом скомбинировать это в предложение, которое будет другими словами объяснять значения исходного, в котором слова тебе незнакомы.
это так работает.

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

из какой предметной области ты собрался от меня получать определение этого т.н. «термина»?

Из ТВОЕЙ. Меня интересует смысл, который ТЫ вкладываешь в это слово.

и с какой стати ты пытаешься получить от меня определения слова

С той, что это ТЫ его используешь.

после того, как тебе указал где брать значения слова?

Нет. Ты сослался на «словарь», даже не указав, какой именно. Я тебе гарантирую, в большинстве словарей русского языка вообще нет слова «нативный».

это так работает.

Нет. Это работает не так. А именно: ты используешь слова, смысл которых непонятен — ТЫ объясняешь, что ты имеешь в виду.

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

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

по этому, просто сделаем вид, что ты не можешь дальше, по причине незнания некоторых слов, а их нет в твоём словаре. бывает.

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

ещё раз повторяю, я принципиально отказываюсь

Итого: ты понаписал дофига текста, вместо того, чтобы сразу объяснить, что ты имеешь в виду.

ты не желаешь узнать значения слова

Не желал бы — не спрашивал бы. Только не «слова», а выражения.

в эти игры я сегодня играть не хочу

Я всего лишь попросил тебя объяснить смысл твоих слов. Если это для тебя «игры» — ну что ж, бывает.

что ты не можешь дальше

«Не можешь дальше» что? Понимать тебя? Да, если ты употребляешь неизвестные выражения, но отказываешься их объяснить.

слова которому чуть менее чем дофига тысяч лет и которое происходит из той же языковой семьи

Скажи пожалуйста, в каком языке есть слово «нативный»?

Нет, мне известно сленговое значение этого слова, разумеется; а вот значение выражения «нативное выражение мыслей» мне неизвестно. Именно его я прошу тебя объяснить.

Miguel ★★★★★
()
Ответ на: комментарий от system-root

опять ты апеллирует к опыту, «веками» и всё такое

А что глаза человека эволюционируют так быстро, что можно насрать на накопленный опыт?

а золотая середина не может быть без двойных двоеточий по три раза подряд, без двух вопросительных знаков?

Двойное многоточие — потому что одинарное уже занято.

а по поводу символов я обычном языке — они работают по другому, тут вообще нет аналогий.

Они работают так же: выполняют служебные функции в тексте. Какое отношение к алгоритму работы программы имеют ";"? Никакого, как и запятые с точками в обычном тексте не несут ни какой смысловой нагрузки. Так зачем их делать словами и мешать со словами, которые реализуют алгоритм?

Virtuos86 ★★★★★
()
Последнее исправление: Virtuos86 (всего исправлений: 2)
Ответ на: комментарий от Miguel

Скажи пожалуйста, в каком языке есть слово «нативный»?

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

system-root ★★★★★
()
Ответ на: комментарий от Virtuos86

точку за запятой я вообще не понимаю.
а вот знаки вроде вопросительного или восклицательного, в тех языка где они есть, не согласен что выполняют служебные функции. могу сделать аналогию: это контракт. только особенный, ничего общего с тем что бывает в программировании (если это не ИИ технологии какие-то, наверное)

можно насрать на накопленный опыт?

нет, не надо насирать, но не стоит думать что _нельзя_ заменить пару дурацких символов на другие символы которые у многих означают понятные слова, потому, что сразу станет А3 и мильён строк.
можно ведь придумать такую конструкцию, чтобы и надобность совсем отпала. весь поинт то в том, что просто так заменить !! на «some» любой Дениска сможет, и это как раз и есть итерирование в пустоту.
вот из конструкции try catch NullPointerException сделать Maybe — это надо подумать.

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

нет, не надо насирать, но не стоит думать что _нельзя_ заменить пару дурацких символов на другие символы которые у многих означают понятные слова, потому, что сразу станет А3 и мильён строк.

Я без конкретных примеров перестал понимать, что ты хочешь, и твое категорическое непринятие "!!" (это вообще откуда?) не проясняет ситуацию.

вот из конструкции try catch NullPointerException сделать Maybe — это надо подумать.

Ты это всерьез? Это не конструкция, а принципиально иной способ обработки ошибок, здесь синтаксис по определению будет отличаться. И исключения проще для понимания и использования.

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

!! из примеров сабжа. я не знаю что это значит. но наверное экономит места в блоке кода.

это всерьез? Это не конструкция, а принципиально иной способ

этих «принципиально иных способов» целая куча, по определению они не могут отличатся, всё основано на одних принципах. по подходу, парадигме — ну да, отличаются. нет определения, что обязан быть try catch если делаешь ООП. но это уже другая история.
написал, что хочу, чтобы делали не очередной NiH язык, а язык в котором нет без надобности всякой херни вроде "!!" или ".?"
а ты говоришь, что так нельзя, обязана быть золотая середина, чтоб кода было меньше, тогда его проще читать.
и потом я говорю, что вот "!!" или ".?" не тянет на золотую середину, можно как-то заменить получше и не обязательно так, чтобы кода стало больше и читать стало труднее. можно ведь хитрые конструкции придумать накрайняк.

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

!! из примеров сабжа. я не знаю что это значит. но наверное экономит места в блоке кода.

"!!" используется для заголовка определения блока кода. Спорное решение, но ты прав, место экономится)

это всерьез? Это не конструкция, а принципиально иной способ

этих «принципиально иных способов» целая куча, по определению они не могут отличатся, всё основано на одних принципах. по подходу, парадигме — ну да, отличаются

Этих способов ровно 3: коды ошибок, исключения, АлгТД. На ~ «одних» принципах строится 1 и 3 — ну как, одних, коды ошибок нужно руками пробрасывать «наверх», а в языках с алгебраическими типами данных присутствует и сопоставление с образцом, и какой-никакой сахарок, избавляющий от части возни такого рода и от оверхеда во время выполнения программы на бесконечные проверки.

И синтаксис сильно зависит от того, какой путь обработки ошибок выбран.

написал, что хочу, чтобы делали не очередной NiH язык, а язык в котором нет без надобности всякой херни вроде "!!" или ".?"

Что Inko именно НЁХ, я согласен. Но это моё личное мнение).

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