LINUX.ORG.RU

Язык программирования Go. Стоит ли?

 


0

3

Собираюсь взяться за этот ЯП. Есть что о нём сказать плохого? Пробежал глазами по гайду - вроде, ничё так, симпатичненько. Радует, что он компилируемый. Это гарантирует приемлемую скорость выполнения. Метайте критические стрелы.



Последнее исправление: maxcom (всего исправлений: 5)
Ответ на: комментарий от bOshist

А, впрочем, что ожидать от толстого тролля, который два часа назад зарегистрировался.

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

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

/facepalm
Ты хоть знаешь историю языка С?
Во первых, пока жив *NIX - Жив и актуален С.
Во вторых, ЧСВ я вижу,зашкаливает, да?

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

Это, видимо, за счёт возможностей JVM?

Хз, что такое CSP мне не ведомо, если про легкие потоки как в erlang, то их изначально в JVM нет, есть библиотека обрабатывающая jar-файля для их эмуляции, есть проще jetlang - но там применив syncronize можно положить всю сситему, а в java до исх пор уйма «непрерываемых» api.

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

Ну а я между вашим кодом и доками по defer. Вы судя по всему попытались имитировать принудительную очистку ресурсов по выходу из метода - но это давно делается во многих языках.

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

Да, я именно привел пример где defer круто пригодился.

но это давно делается во многих языках

Можно пример?

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

Я вам его приводил 8) Содержимое блока finally всегда выполнится перед return.

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

Так а кавычки-то зачем? Вот в хаскелле имена модулей без кавычек пишутся, в джаве имена пакетов без кавычек, а в Go-то нафига сделали с кавычками?

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

Так а кавычки-то зачем?

Мне самому интересно :) Может это как-то связано с тем что в имени пакета могут присутствовать точка и слеш.

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

После питона - это глоток свежего воздуха.

значит питон не освоил

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

Будет вакансия на этом языке - выучим.

С такими мыслями ничего кроме жабы и пыхи учить не надо.

tensai_cirno ★★★★★
()
Ответ на: комментарий от quantum-troll

Они слишком большие даже с учётом статической линковки.

Туда ещё VM вкомпиливается, надо полагать - с поддержкой GC, конкурентности и что там ещё на уровне RTS сделано. Если сравнить с другими VM, то несколько MB это ещё по-божески, у node - 10MB, у SBCL - 30MB. У GHC минимальный функционал тоже примерно 1MB. Решением может быть линковка рантайма динамически (как у GHC, тогда будут те самые килобайты для исполняемых файлов), либо уменьшение его размера (как у JHC/Clean/MLTon, хотя, развивайся они - тоже бы распухли).

quasimoto ★★★★
()
Ответ на: комментарий от quantum-troll

Огромные бинарники. Нет, в самом деле ОГРОМНЫЕ бинарники.

Nobody cares, really. Можешь взяться за это, велкам. Сейчас это мало кого волнует, в go'шном компиляторе главное — скорость компиляции.

gccgo

Ущербен, потому что нет нормальных горутин. Точка.

tensai_cirno ★★★★★
()

А вообще язык отличный, автор юникода, план9 и инферно не мог плохого состряпать. Делали язык для веба, а внезапно он оказался хорош для всего. Советую посмотреть спич Роба Пайка на Google I/O.

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

Это идиома, в качестве неявного указания типа используется.

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

Для упрощения доступа к пакету.

import M «lib/math» M.Sin()

Не вижу чем тут кавычки помогают, почему не

import M lib/math M.Sin()

? или там

import M lib.math M.Sin()
?

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

это не серьёзно - писать пакетный менеджер на баше.
... Баш - это язык администрирования и автоматизации.


/0

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

А вообще язык отличный, автор юникода, план9 и инферно не мог плохого состряпать. Делали язык для веба

Интернет-магазин за полчаса с минимальными усилиями можно написать?

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

Что, правда, на С/С++ писать программы приятнее чем на питонах с рубями?

однозначно, если речь не идет об вебели или гуйне

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

Понимаешь, питон годится только для того, чтобы написать на нем то, для чего bash не походит.

Тут я уже упалпадцтул. Ничего , что это можно сказать про любой ЯП?;-)

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

Что, правда, на С/С++ писать программы приятнее чем на питонах с рубями?

однозначно, если речь не идет об вебели или гуйне

Месье любит много букв и долго сидеть за монитором, что бы был правильный цвет глаз? Ничего, что на питонах с рубями скорость разработки на порядок выше чем на С/C++?

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

Месье любит много букв и долго сидеть за монитором, что бы был правильный цвет глаз? Ничего, что на питонах с рубями скорость разработки на порядок выше чем на С/C++?

«Слушайте, Шура, если уж вы окончательно перешли на французский язык, то называйте меня не мосье, а ситуайен, что значит – гражданин.» (с)

быстро накидать полу рабочий прототип, чтоб потом переписать его другой ЯП или постоянно рефакторить/исправлять - это не «приятнее», это именно быстрее, причем только на первом этапе, а сколько-нибудь серьезные программы на питоне пишутся долго и нудно как и на других ЯП

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

Неправда Ваша. Код на питоне гораздо лаконичнее -> следовательно пишется гораздо быстрее. Если говорить о мегапроектах, где отсутствие стат. типизации начинает мешать, то выигрыш конечно не такой большой.

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

Неправда Ваша.

Сам дурак (с) оттуда же

Код на питоне гораздо лаконичнее -> следовательно пишется гораздо быстрее.

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

Если говорить о мегапроектах, где отсутствие стат. типизации начинает мешать, то выигрыш конечно не такой большой.

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

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

Сам дурак (с) оттуда же

«Не стучите лысиной по паркету»(c)

у вас низкая скорость набора,

Вот тут вот «сам дурак» однозначно. Это батенька называется необоснованное предположение.

компактный код конечно важен, но прежде всего для чтения, а не для написания

Точно откровений тред. Как Вы себе представляете разработку кода без его чтения???

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

про скорость я ничего не говорил. Про качество - критерии качества в студию, плиз. Про переносимость - питон куда переносимее чем С/С++. Про стабильность - опять таки критерии стабильности... сегфолты ловить не пробовали?

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

Вот тут вот «сам дурак» однозначно. Это батенька называется необоснованное предположение.

это была ирония, жаль, что вы не смогли догадаться

Точно откровений тред. Как Вы себе представляете разработку кода без его чтения???

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

Про переносимость - питон куда переносимее чем С/С++.

ох уж эти сказочники (с) в питоне проблемы с переносимостью даже в рамках самого питона, ну и ладно - давай расскажи как ты PyQt будешь с собой таскать? целевые ОС - мак, linux, win, питон по дефолту не стоит, или стоит произвольной версии в произвольном составе; в С++ можно вообще статично слинковать Qt, если что

Про стабильность - опять таки критерии стабильности... сегфолты ловить не пробовали?

вы опять показываете, что читать не умеете

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

Про переносимость - питон куда переносимее чем С/С++.

кстати такую чушь надо было еще придумать ляпнуть, посмотри список платформ для этих ЯП, как программных, так и аппаратных, как можно вообще было в голове родить мысль «питон куда переносимее чем С»?

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

Про переносимость - питон куда переносимее чем С/С++.

Бугога. А что петон уже работает на платформах на которых нету Си ?

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

Ога, а скорость работы такой программы на два порядка ниже чем C/C++. Это годится только для всякой херни типа веба и гуйни.

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

уточню

Да удобнее. Во первых они получаются более ресурсоемкими, плюс быстрыми. Python и Ruby - больше для веба. Я если честно больше фанат Python, но все же перешел на c/c++. Теперь фанат c/c++ (внезапно.да)

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

ох уж эти сказочники (с) в питоне проблемы с переносимостью даже в рамках самого питона

Был здесь персонаж, который рыдал, что Питон-программа, разработанная на Генте в Python 2.6 не пошла в RHEL 5 на Python 2.4. Ты не его реинкарнация?

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

Бугога. А что петон уже работает на платформах на которых нету Си ?

Внезапно - питон работает из коробки как под вин так и под линь. Причем правильно написанные программы вообще не требуют никакой адаптации. в т.ч. гуйня. Про всякие хитровыкрученные платформы типа кофемолок и спутников я не говорю. Для С/С++ требуется как мин нарыть компилятор и чуток потанцевать с бубном.

Ога, а скорость работы такой программы на два порядка ниже чем C/C++. Это годится только для всякой херни типа веба и гуйни.

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

Вообще срач начался со слов «на С/С++ разрабатывать приятнее и удобнее чем на питоне», что явное 4.2.

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

Причем правильно написанные программы вообще не требуют никакой

специфика есть и в код всё равно приходится вставлять проверку платформ, петон от этого не спасает

адаптации. в т.ч. гуйня.

бугога. это ты про искоробочную гуйню на tk чтоль?

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

это была ирония, жаль, что вы не смогли догадаться

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

при написании кода - все что надо есть в голове, при чтении __после__ - приходится восстанавливать все знания в голове

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

вы опять показываете, что читать не умеете

Специально для Вас, исходный спор возник вокруг обсуждения «С/С++ удобней питона». Зачем Вы сюда приплели яву я ума не приложу... от избытка иронии?

как можно вообще было в голове родить мысль «питон куда переносимее чем С»?

Вообще то сейчас подавляющее число задач по портированию кода - это портирование между *них и виндой. Так вот, внезапно - питон прекрасно переносим вместе с гуйней, если руки правльно приделаны не приходиться менять вообще ничего. С/C++ переносимо куда хуже.

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