OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 19 Март, 2024 12:49

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 120 ]  На страницу 1, 2, 3, 4, 5, 6  След.
Автор Сообщение
 Заголовок сообщения: Системный язык Go от Google
СообщениеДобавлено: Среда, 11 Ноябрь, 2009 10:40 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
http://www.linux.org.ru/view-message.js ... 7924590045
http://golang.org/

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

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

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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Среда, 11 Ноябрь, 2009 10:54 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Спасибо за ссылку.

Вот эта штука занятная, очень занятная :)
По области задач, на которую нацелен; по способу решения (без "перезадирания" уровня языка); и по некоторым деталям.

Для тех, кто в курсе этой области :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 09:53 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Один комментарий в RSDN посмешил:
Цитата:
F> PS: Почитал в группах — авторы не видят необходимости в поддержке Виндовс.
ну, аминь!
бросьте каждый по горсти земли и можно расходиться.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 09:58 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Зато авторы не поленились отписаться в мэйллист Haiku-OS с анонсом этого языка, и с вопросом, не хочет ли кто портировать это дело под Haiku ;-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 13:23 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Кстати, насколько я понимаю, ориентирован Go на native-кодогенерацию.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 13:52 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Alexey Veselovsky писал(а):
Зато авторы не поленились отписаться в мэйллист Haiku-OS с анонсом этого языка, и с вопросом, не хочет ли кто портировать это дело под Haiku ;-)

Ну это обязательно -- раз гугл развивает Haiku, то и этот гугловский язык должен быть в Haiku... :wink:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 14:14 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Geniepro писал(а):
Alexey Veselovsky писал(а):
Зато авторы не поленились отписаться в мэйллист Haiku-OS с анонсом этого языка, и с вопросом, не хочет ли кто портировать это дело под Haiku ;-)

Ну это обязательно -- раз гугл развивает Haiku, то и этот гугловский язык должен быть в Haiku... :wink:


Haiku не является проектом Google как бы. И развивают они haiku не более чем скажем gcc.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 14:44 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Google Allocates Six Students for Haiku in Summer of Code 2009!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 15:05 
Аватара пользователя

Зарегистрирован: Среда, 29 Март, 2006 12:09
Сообщения: 495
Geniepro писал(а):
Это не доказывает, что Google развивает Haiku. 6 из почти тысячи - это... немного.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 15:07 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Очередной язык с птичьими обозначениями и идиомами. Глаза сломать можно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Пятница, 13 Ноябрь, 2009 01:31 

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1030
Цитата:
F> PS: Почитал в группах — авторы не видят необходимости в поддержке Виндовс.
ну, аминь!
Дело предлагаете. Так и поступим.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Пятница, 13 Ноябрь, 2009 07:59 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
http://golang.org/doc/go_lang_faq.html#ancestors
Цитата:
What are Go's ancestors?

Go is mostly in the C family (basic syntax), with significant input from the Pascal/Modula/Oberon family (declarations, packages), plus some ideas from languages inspired by Tony Hoare's CSP, such as Newsqueak and Limbo (concurrency). However, it is a new language across the board. In every respect the language was designed by thinking about what programmers do and how to make programming, at least the kind of programming we do, more effective, which means more fun.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Пятница, 13 Ноябрь, 2009 13:04 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
http://golang.org/src/pkg/http/server.go
Код:
// Create new connection from rwc.
func newConn(rwc net.Conn, handler Handler) (c *Conn, err os.Error) {
    c = new(Conn);
    if a := rwc.RemoteAddr(); a != nil {
        c.RemoteAddr = a.String()
    }
    c.handler = handler;
    c.rwc = rwc;
    br := bufio.NewReader(rwc);
    bw := bufio.NewWriter(rwc);
    c.buf = bufio.NewReadWriter(br, bw);
    return c, nil;
}
Казалось бы гугловцы -- серьёзные люди, а такую херню придумывают раз за разом. Ну что это за присваивание внутри условия if? Зачем тащить из сей такое дерьмище?
Код:
    if a := rwc.RemoteAddr(); a != nil {
        c.RemoteAddr = a.String()
    }


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Пятница, 13 Ноябрь, 2009 13:10 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Заскорузлые привычки. Зафиксированные в связях мозга :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Пятница, 13 Ноябрь, 2009 13:57 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
ИМХО причины те же, что и для введения операции запятая, или условная операция в С.
Язык рассчитан на очень опытных программеров.
И в данном конкретном случае похоже на условную операцию.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Пятница, 13 Ноябрь, 2009 15:47 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Очень опытный программист либо будет чураться как огня таких фишек...
Либо любить их исключительно в силу субъективных факторов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Пятница, 13 Ноябрь, 2009 22:02 

Зарегистрирован: Пятница, 20 Июль, 2007 17:26
Сообщения: 710
Откуда: Псков
if a := rwc.RemoteAddr(); a != nil {
c.RemoteAddr = a.String()
}

2 цитатs из описания языка:
1.
Short variable declarations may appear only inside functions.
In some contexts such as the initializers for if, for, or switch statements, they can be used to declare local temporary variables.
2. Each if, for, and switch statement is considered to be in its own implicit block.

a - LOCAL(в пределах if) TEMPORARY VARIABLE

Что здесь плохого?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Суббота, 14 Ноябрь, 2009 02:25 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
albobin писал(а):
if a := rwc.RemoteAddr(); a != nil {
c.RemoteAddr = a.String()
Что здесь плохого?
А что хорошего в таком трюкаческом запутывании синтаксиса? Обосновывать нужно усложнение.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Суббота, 14 Ноябрь, 2009 07:38 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Илья Ермаков писал(а):
Очень опытный программист либо будет чураться как огня таких фишек...
Либо любить их исключительно в силу субъективных факторов.

Ну, видимо, Ричи (или кому-то там из их компании) нравилось... :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Системный язык Go от Google
СообщениеДобавлено: Суббота, 14 Ноябрь, 2009 11:27 

Зарегистрирован: Понедельник, 05 Июнь, 2006 09:49
Сообщения: 327
Откуда: Ленинград, Емельянов Алексей Николаевич
В Алголе-68 такие вещи описывались примерно следующим образом: программа (модуль) состоит из элементов (основ), каждая основа выдает значение (void тоже значение). Значение последней основы является значением выражения. В принципе все вроде просто ...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 120 ]  На страницу 1, 2, 3, 4, 5, 6  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB