LINUX.ORG.RU

Google представляет Go

 , , ,


0

0

Go — экспериментальный язык програмирования, разработанный в Google. Основные разработчики языка — Роб Пайк и Кен Томпсон, также известные как разработчики unix и plan9.

Go предназначен в первую очередь для написания крупных серверных приложений и способен сократить время сборки с десятков минут до нескольких секунд (в сравнении с C++) за счет системы модулей и явного указания зависимостей.

В языке отсутствуют классы, исключения, метапрограммирование и ручное управление памятью, однако присутствуют указатели, сборщик мусора и goto. Также на уровне языка поддерживаются легковесные процессы (goroutines) и каналы (channels).

Можно использовать фигурные скобки и юникод в идентификаторах.

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

★★★

Проверено: hibou ()

Ответ на: Google представляет Go от KblCb

Google представляет Go

> Помилуйте, причём тут образование? Этом скорее способствует сытость и лень, столь свойственные западному программисту. А рассматриваемому нами сыну касты ремесленников некогда рассматривать свой код с художественной точки зрения: ему кушать хочется и семью кормить надо.

по слухам получают они там не меньше штуки баксов, а продукты в индии подешевле наших. так что...

www_linux_org_ru ★★★★★ ()
Ответ на: Google представляет Go от faustus

Google представляет Go

faustus

Почему не ФП? Там ещё цельнее и логичнее.

Ну вообще говоря, человеку знакомому со школьной алгеброй и не знакомому с процедурным программированием ФП как-то понятнее.

KblCb ★★★★★ ()
Ответ на: Google представляет Go от KblCb

Google представляет Go

да-да - все кулпроггеры тащатся от ФП и сруспамят им где только могут, а заодно очень тщательно скрывают все то, что пишут с его использованием

lester ★★★★ ()
Ответ на: Re: Google представляет Go от Puzan

Google представляет Go

1) Рассмотрим класс грибов и образец Puzan

2) Все грибы дышат (потребляют кислород, выделяют углекислый газ)

3) Пусть А - класс грибов, N1 - образец Puzan, N2 - образец мухомор

> Исходя из определения, образец N1 класса A может не обладать всеми свойствами образца N2 класса А.

4) наблюдаем, что образец N1 класса не обладает всеми свойствами образца N2 класса A (Puzan не растёт в лесу)

> Таким образом, если класс А - это совокупность свойств всех образцов, входящих в этот класс (т.е. N1+N2+...+Nn), то N1 (или N2 или Nn) может НЕ обладать ВСЕМИ свойствами класса А.

5) N1 не обладает всеми свойствами класса A == Puzan не обладает всеми свойствами класса грибов

6) Но тем не менее, он гриб :)

Ч.Т.Д.

unC0Rr ★★★★★ ()
Ответ на: Re: Google представляет Go от Puzan

Google представляет Go

> По другому: свойства Nn есть подмножество свойств класса А.

Значит элемент Nn не входит в класс A. Если бы входил - обладал бы всеми его свойствами.

> Таким образом, если класс А - это совокупность свойств всех образцов, входящих в этот класс

Класс обладает не объединением, а пересечением свойств всех его элементов.

А вы - двоечник.

yk4ever ()
Ответ на: Google представляет Go от www_linux_org_ru

Google представляет Go

www_linux_org_ru

по слухам получают они там не меньше штуки баксов, а продукты в индии подешевле наших. так что...

Упсс... Ошибочно приравнял их к московским наркоманам-дотнетчикам... С другой стороны в Индии семьи больше.

KblCb ★★★★★ ()
Ответ на: Google представляет Go от kristall

Re: Google представляет Go

>>Если А - частный случай Б, то А обладает ВСЕМИ свойствами Б. Понятно?

Вернее является подмножеством Б. Не?

anonymous ()
Ответ на: Re: Google представляет Go от anonymous

Google представляет Go

> Класс подразумевает интерфейс, инкапсуляцию и наследование. отсюда и растут те самые 3 слова,

Ну вот видите, вы уже в своих Волшебных Словах путаетесь. Следующий!

> Дактайпинг - это, по вашему, не полиморфизм? Это не полиморфизм. Это типизация. Но заодно открывает возможность к полиморфизму.

Дактайпинг - это именно полиморфизм. А типизация называется "динамическая". Читайте определения. Следующий!

> Когда есть интерфейсы - наследование не нужно. Это неверно. Что, если нужно общее поведение у нескольких типов?

Реализуете интерфейс всеми типами. Читайте определение интерфейса. Почему вы ещё здесь?! Следующий!

yk4ever ()
Ответ на: Google представляет Go от lester

Google представляет Go

lester

да-да - все кулпроггеры тащатся от ФП и сруспамят им где только могут, а заодно очень тщательно скрывают все то, что пишут с его использованием

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

KblCb ★★★★★ ()
Ответ на: Google представляет Go от KblCb

Google представляет Go

> Что есть дактайпинг?

Вы не регламентируете ограничение на передаваемый вам аргумент. Вы получаете в качестве аргумента объект и пробуете с ним творить всякое разное (например, говорите ему "дай элемент номер три", "скажи свою длину"). Если объект на ваши требования реагирует адекватно (т.е. реально отдаёт какой-то элемент и целочисленную длину, т.е. ведёт себя как массив) - значит он для ваших целей подходит и его можно считать массивом.

Короче, примерно то же, что и динамическая типизация.

yk4ever ()
Ответ на: Google представляет Go от yk4ever

Re: Google представляет Go

> Класс подразумевает...

О это волшебное слово! Никто толком и не понимает сущности, но вдолбленное во времена юности священное благоговение приводит к дикому фанатизму. Человеки, опомнитесь, кроме класса в понимании СРР есть еще куча простых и понятных форм организации!

anonymous ()
Ответ на: Google представляет Go от KblCb

Google представляет Go

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

Я кагбе читал интервью с разрабами Хаскелля и они с вами несогласны. Их опыт показывает, что профессиональные программисты-императивщики схватывают ФП куда быстрее полных нубов.

yk4ever ()
Ответ на: Google представляет Go от KblCb

Google представляет Go

> С другой стороны в Индии семьи больше.

Один знакомый индус недавно женился. Грит "у нас свадьба была очень скромная, по-семейному, всего триста человек". Мы спрашиваем - а обычно как? Он: ну тыщи две в среднем.

yk4ever ()
Ответ на: Google представляет Go от Karapuz

Google представляет Go

> ЛОР снова торт

Угу. Я чё-та напрягся в последнее время, игнор меньше скора растёт. Но, кажись, скоро всё войдёт в норму.

yk4ever ()
Ответ на: Re: Google представляет Go от Puzan

Google представляет Go

>Подсказка: все свойства Nn принадлежат классу А, но это не все свойства, которые есть у класса А. По другому: свойства Nn есть подмножество свойств класса А.

Для детишек из децкого сада объясняю:
Дорогие ребятки есть такой класс "Хищники";
К этому классу относятся подклассы "Кошечки" и "Собачечки";
А теперь, дорогие мои дитишечки, мы заведем себе два объектика "Шарик" класса "Собачечки" и "Гав" класса "Кошечки";
А теперь, дитишечки, скажите мне, что-же общего у "Шарика" и "Гав"?
Правильно! Вкусная, превкусная котлета, которую "Гав" надёжно спрятал.

Attila ()
Ответ на: Google представляет Go от Absurd

Google представляет Go

>Си с динамическими массивами, gc и системой модулей.

Этож PHP!

Sanitar ()
Ответ на: Google представляет Go от Sanitar

Google представляет Go

> Этож PHP!

Пальцем в небо. В пыхе массивы не динамические, а гибридные; вместо gc рам рефкаунт; системы модулей там нет.

yk4ever ()
Ответ на: Google представляет Go от pazak

Google представляет Go

>На питоне ни одной приличной массовой программы не написано до сих пор

EVE online. в гугле наберите

stave ★★★★★ ()
Ответ на: Re: Google представляет Go от anonymous

Google представляет Go

Да нет же. Тогда А не обладает всеми свойствами, да и не понятно о каких собственно свойствах идет речь. Скорее всего он имел ввиду, что Б есть класс, а А есть его конкретный представитель. Или еще лучше, Б категория, cкажем моноид, и натуральные числа с операцией сложения, как его представители -это А (например).

kristall ★★ ()
Ответ на: Google представляет Go от RedPossum

Re: Google представляет Go

>И массив - это массив. Хочешь передать его в функцию, передастся не указатель на него, а весь массив. Зачем?

Ruby наоборот? :)

jackill ★★★★★ ()

Google представляет Go

Как же они надоели новыми языками...

anonymous ()
Ответ на: Google представляет Go от Git

Google представляет Go

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

beastie ★★★★★ ()
Ответ на: Google представляет Go от yk4ever

Google представляет Go

> Бряки и ретурны не существуют в принципе

И то и другое есть в Хаскеле :-)

eugine_kosenko ★★★ ()

Google представляет Go

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

amix ★★★ ()
Ответ на: Google представляет Go от kamre

Google представляет Go

Ха, прикольно, а я знаю этого Фрэнка. Он у нас со стороны заказчика. :)

WFrag ★★★★ ()
Ответ на: Google представляет Go от KblCb

Google представляет Go

>Неужели кто-то здесь ещё думает что новые языки придумывают для того чтобы писать на них программы?

А что, есть другие задачи ? :) LOL

Вот читаю тред, и думаю, а смотрели ли вообще выступление Пайка ?

Задачи стоящие перед Go ? Для чего вообще создавался Go ?

robot12 ★★★★★ ()

Google представляет Go

Что бы понять Go лучше, советую почитать про Alef и Limbo.

Первый правда давно помер, но можно и оживит. Второй чувствует себя вполне так живым :)

robot12 ★★★★★ ()
Ответ на: Google представляет Go от wfrr

Google представляет Go

>хентайщик?

угу. а лучший хентай - Tonari no Totoro. как хентайщик хентайщику советую. а "В джунглях всё было хорошо, пока не пришла Гуу" - так себе.

tommy ★★★★ ()

Google представляет Go

можно грабить корованы

Slesarev ()
Ответ на: Google представляет Go от faustus

Google представляет Go

> А я считаю - необходимо заставлять народ писать цельные, логичные программы. А не абы как, по пути наименьшего сопротивления - тут break, там return, свитчи еще суют везде.

"Если Вы такие умные, что ж Вы строем не ходите ?" - так что-ли ?

Darkman ★★★ ()
Ответ на: Google представляет Go от yk4ever

Google представляет Go

> Её нигде нет, кроме Scheme. Больше она нигде не прижилась из-за своей злобности.

Это continuations-то нигде нет ?! Смаллталкерам это расскажите, ага. То-то они seaside который год пилят. Плюс на CL их Грехем реализовывал.

Darkman ★★★ ()
Ответ на: Google представляет Go от zenith

Re: Google представляет Go

> У функции должен быть один выход, иначе получается такая же лапша как и с goto.

Что-то? А можешь обосновать?

anonymous ()
Ответ на: Google представляет Go от Darkman

Google представляет Go

> Это continuations-то нигде нет ?! Смаллталкерам это расскажите, ага. То-то они seaside который год пилят. Плюс на CL их Грехем реализовывал.

Ну флаг им всем в руки. На мой взгляд - тот же return, только более зловещий. Профита не видно.

yk4ever ()
Ответ на: Re: Google представляет Go от anonymous

Re: Google представляет Go

>>Если А - частный случай Б, то А обладает ВСЕМИ свойствами Б. Понятно?

>Вернее является подмножеством Б. Не?

Б при этом - подмножество свойств, которыми обладает А. Вообще, тчо за чушь тут народ порет с А и Б? Класс - ни разу не множество объектов, класс - множество приналежащих объекту свойств.

arkhnchul ★★ ()
Ответ на: Google представляет Go от yk4ever

Google представляет Go

> На мой взгляд - тот же return, только более зловещий. Профита не видно.

> тот же return

OMG ! А то что там состояние сохраняется - это так - мелочи. Да ?

> Профита не видно.

Really ?

Darkman ★★★ ()
Ответ на: Google представляет Go от beastie

Google представляет Go

> много новых, смелых и интерессных идей. праотцы во всей красе, так сказать

+1

> выразительным м мощным. вполне может стать адекватным преемником C

Ну я думаю они над самим языком ещё поработают, - есть над чем. Пока ещё трудно сказать насколько "адекватной" будет замена.

pazak ()
Ответ на: Google представляет Go от pazak

Google представляет Go

> Ну я думаю они над самим языком ещё поработают, - есть над чем. Пока ещё трудно сказать насколько "адекватной" будет замена.

Не будет она "адекватной". В первую очередь из-за GC. Си много где в риалтайме используется - какой там к чёрту GC.

Darkman ★★★ ()
Ответ на: Google представляет Go от Darkman

Google представляет Go

> какой там к чёрту GC.

Инкрементальный. Или ты можешь контролировать скорость выполнения free(void*) ?

Casus ★★★★★ ()
Ответ на: Google представляет Go от Casus

Google представляет Go

> Или ты можешь контролировать скорость выполнения free(void*) ?

Наш системщик пришибёт мгновенно, если увидит динамическое выделение памяти в риалтайм-приложении. Максимум пулы, а там освобождение блока константно по времени.

Darkman ★★★ ()
Ответ на: Google представляет Go от yk4ever

Re: Google представляет Go

>Ну вот видите, вы уже в своих Волшебных Словах путаетесь. Следующий!

Какой же ты толстый, я уже замучился протирать от жЫра монитор!

>Дактайпинг - это именно полиморфизм. А типизация называется "динамическая". Читайте определения. Следующий!

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

>Реализуете интерфейс всеми типами. Читайте определение интерфейса. Почему вы ещё здесь?! Следующий!

facepalm.cpp Давай ка заменим слово "наследование" на subclassing, может тогда ты осилишь понять, что реализация интерфейса это не сабклассинг. Сабклассинг это сохранения данных и/или поведения.

И перестань хамить, неуч.

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