Slava79 (OP)
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 182
Merit: 17
¯\_(ツ)_/¯
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 18, 2018, 05:10:58 PM |
|
Читал в последнее время о катастрофах, произошедших из за того, что смарт контракты были недостаточно хорошо протестированы, содержали баги итп. Стало интересно, есть ли такая криптовалюта, в которой смарт контракты пишутся на функцинальном языке программирования, с использованием чистых функций? Что то типа Haskell, OCaml, F#? Мне кажется это бы сильно уменьшило стоимость разработки и количество ошибок, тестировать было бы легче. Немного погугулил, нашел только https://www.fstar-lang.org/ - его вроде как потенциально планируют для этих целей, но это не совсем то.
|
|
|
|
MuaddibCo
Newbie
Offline
Activity: 2
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 18, 2018, 08:14:00 PM |
|
Как архитектор с 20-ти летним стажем в программировании - количество багов никогда не определяется средствами программирования, но всегда прослойкой между стулом и монитором. Даже на самом лучшем языке люди совершают грубые ошибки, и во многом из-за уверенности, что среда разработки за них все подправит.
|
|
|
|
Slava79 (OP)
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 182
Merit: 17
¯\_(ツ)_/¯
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 19, 2018, 08:29:08 AM |
|
Как архитектор с 20-ти летним стажем в программировании - количество багов никогда не определяется средствами программирования, но всегда прослойкой между стулом и монитором. Даже на самом лучшем языке люди совершают грубые ошибки, и во многом из-за уверенности, что среда разработки за них все подправит.
Конечно, согласен полностью. Здесь речь идет о лучшей статистике. При среднем уровне разработки и ресурсов, я считаю что определенные подходы могут в целом улучшить конечный результат. А когда речь идет о смарт контрактах и банковской сфере, даже незначительное улучшение может стоить миллионы.
|
|
|
|
Slava79 (OP)
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 182
Merit: 17
¯\_(ツ)_/¯
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 27, 2018, 08:39:38 AM |
|
|
|
|
|
unixty
Jr. Member
Offline
Activity: 168
Merit: 1
ImmVRse | Disrupting the VR industry
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 29, 2018, 03:25:23 PM |
|
Как архитектор с 20-ти летним стажем в программировании - количество багов никогда не определяется средствами программирования, но всегда прослойкой между стулом и монитором. Даже на самом лучшем языке люди совершают грубые ошибки, и во многом из-за уверенности, что среда разработки за них все подправит.
Поэтому всегда нужен тот, кто сможет подправить тебя, устранить ошибки. Не нужно надеяться только на себя, лучше подключить знающих людей, но и это конечно же не даст 100% реультата, но 99% все таки сможет дать.
|
● ❱❱ IMMVRSE | Disrupting the VR Industry ❱❱ ● Proud Sponsor of Blockchain 360 at London Tech Week
|
|
|
rumkin
Jr. Member
Offline
Activity: 54
Merit: 1
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 02, 2018, 04:50:04 PM |
|
Забавно только начал делать нечто подобное, правда язык выбрал не такой низкоуровневый. Стало интересно что из этого может получиться. Все-таки функциональные языки содержат меньше абстракций и более предсказуемы.
|
Blockchain Developer | https://rumk.in
|
|
|
Slava79 (OP)
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 182
Merit: 17
¯\_(ツ)_/¯
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 02, 2018, 09:11:14 PM |
|
Забавно только начал делать нечто подобное, правда язык выбрал не такой низкоуровневый. Стало интересно что из этого может получиться. Все-таки функциональные языки содержат меньше абстракций и более предсказуемы.
Согласен, я думаю что язык разумнее выбрать более распространенный. Я сейчас использую в своем прототипе JavaScript но придерживаюсь подхода чистых функций.
|
|
|
|
JasonLeavers
Newbie
Offline
Activity: 86
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 02, 2018, 10:06:58 PM |
|
Кардана обещают будет на Хаскелеподобном языке.
|
|
|
|
rumkin
Jr. Member
Offline
Activity: 54
Merit: 1
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 03, 2018, 01:48:57 AM Last edit: May 03, 2018, 02:15:40 AM by rumkin |
|
Согласен, я думаю что язык разумнее выбрать более распространенный. Я сейчас использую в своем прототипе JavaScript но придерживаюсь подхода чистых функций.
Я выбрал elm. Советую присмотреться: очень лаконичный, минимум конструкций и сущностей. Помимо стандартных для js типов есть кортежи.
|
Blockchain Developer | https://rumk.in
|
|
|
Slava79 (OP)
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 182
Merit: 17
¯\_(ツ)_/¯
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 03, 2018, 06:05:54 AM |
|
Согласен, я думаю что язык разумнее выбрать более распространенный. Я сейчас использую в своем прототипе JavaScript но придерживаюсь подхода чистых функций.
Я выбрал elm. Советую присмотреться: очень лаконичный, минимум конструкций и сущностей. Помимо стандартных для js типов есть кортежи. Мне нравится Elm, но с ним есть проблема, он поддерживается одним человеком. Как вариант рассматриваю PureScript.
|
|
|
|
rumkin
Jr. Member
Offline
Activity: 54
Merit: 1
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 03, 2018, 01:42:10 PM |
|
Мне нравится Elm, но с ним есть проблема, он поддерживается одним человеком. Как вариант рассматриваю PureScript.
Сам язык достаточно взрослый и уже не нуждается в регулярных исправлениях. А хороший проект может дать толчок к развитию сообщества. Для меня самым большим плюсом в нем является легкость создания песочницы.
|
Blockchain Developer | https://rumk.in
|
|
|
Slava79 (OP)
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 182
Merit: 17
¯\_(ツ)_/¯
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 03, 2018, 02:20:18 PM |
|
Сам язык достаточно взрослый и уже не нуждается в регулярных исправлениях. А хороший проект может дать толчок к развитию сообщества. Для меня самым большим плюсом в нем является легкость создания песочницы.
Насчет сообщества согласен пожалуй. Целевая группа пользователей Elm может заинтересоваться проектом. Хм... Но с Elm еще одна загвоздка, там интерфейс взаимодействия с JavaScript не очень прозрачный. По поводу песочницы - если использовать Nashorn из JDK 10, там есть возможность сандбоксинга. Можно подключить любые языки, которые компилируются в JavaScript.
|
|
|
|
rumkin
Jr. Member
Offline
Activity: 54
Merit: 1
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 03, 2018, 06:50:16 PM |
|
Хм... Но с Elm еще одна загвоздка, там интерфейс взаимодействия с JavaScript не очень прозрачный.
А мне как раз-таки нравится его способ взаимодействия с JS ) Что именно вы имеете в виду и какие задачи плохо ложатся на его модель? По поводу песочницы - если использовать Nashorn из JDK 10, там есть возможность сандбоксинга. Можно подключить любые языки, которые компилируются в JavaScript.
У меня вызывает сомнение целесообразность вложения труда/ресурсов в Java-проекты в виду а) проприетарности, б) назревающей конкуренции с WASM и грядущей войне VM, в которой я ставлю на последнего )). Но это если говорить о самой Java, не сравнивая ее с Elm.
|
Blockchain Developer | https://rumk.in
|
|
|
Slava79 (OP)
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 182
Merit: 17
¯\_(ツ)_/¯
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 03, 2018, 09:00:24 PM |
|
А мне как раз-таки нравится его способ взаимодействия с JS ) Что именно вы имеете в виду и какие задачи плохо ложатся на его модель?
Да не то чтобы плохо ложатся, но дополнительная работа по интеграции из-за портов. В PureScript практически просто вызывается функция. Спорно конечно. У меня вызывает сомнение целесообразность вложения труда/ресурсов в Java-проекты в виду а) проприетарности, б) назревающей конкуренции с WASM и грядущей войне VM, в которой я ставлю на последнего )). Но это если говорить о самой Java, не сравнивая ее с Elm.
а) Кроме Oracle у Java есть еще пара коммерческих реализаций и одна open source - OpenJDK. б) Популярные языки имеют обыкновение жить долго и умирать медленно. Грядущие войны, катастрофы, кто знает что произойдет. Да и привычно как то. Старая добрая Java.
|
|
|
|
rumkin
Jr. Member
Offline
Activity: 54
Merit: 1
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 04, 2018, 11:59:34 AM Last edit: May 04, 2018, 03:16:25 PM by rumkin |
|
Да не то чтобы плохо ложатся, но дополнительная работа по интеграции из-за портов. В PureScript практически просто вызывается функция.
Но насколько я понял из PureScript легко вызвать JS, а для песочницы это ненужное поведение и это небходимо как-то отключать. А у Elm по-умолчанию внешний мир недоступен. Или я ошибаюсь насчет PS?
|
Blockchain Developer | https://rumk.in
|
|
|
Slava79 (OP)
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 182
Merit: 17
¯\_(ツ)_/¯
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 04, 2018, 08:47:49 PM |
|
Но насколько я понял из PureScript легко вызвать JS, а для песочницы это ненужное поведение и это небходимо как-то отключать. А у Elm по-умолчанию внешний мир недоступен. Или я ошибаюсь насчет PS?
Все правильно, но мне это как раз подходит. Я же делаю сандбуксинг из Java.
|
|
|
|
|