OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Воскресенье, 16 Июнь, 2019 20:58

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




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

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8127
Откуда: Троицк, Москва
SET в Обероне -- прежде всего средство работы с битовыми флажками, а не с произвольными математическими множествами.
INTEGER -- тоже ведь не для произвольных математических целых.


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

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1040
Откуда: Россия, Чебоксары
Ясно, что... Однако и множества в задачах встречаются часто. Например, множество кодов клавиш частенько бывает полезно, а они никак не умещаются даже в 256 :)


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

Зарегистрирован: Воскресенье, 04 Ноябрь, 2007 23:01
Сообщения: 151
Alexey_Donskoy писал(а):
..Ещё бы лучше - безразмерно. Реализовать поддержку в компиляторе не так уж трудно.
В итоге получится векторная обработка по схеме "из памяти - в память". По известным причинам оказавшаяся тупиковой ветвью.


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

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Краткий пересказ Effective Go на русском языке


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

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9122
Откуда: Россия, Орёл
В апрельском номере Linux Format - статья А. Боровского "Go: на языке классиков" (с. 44).

Автор не устает дивиться на то, что "а вот это... ну прям Паскаль какой-то..". Про то, откуда стырено, ясное дело, ни слова.

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

"... но ; как разделитель операторов не используется. Точнее говоря, грамматика языка её допускает, но она не является обязательной. Если говорить ещё точнее, синтаксический анализатор Go вставляет символ ; в конце каждой строки, которая завершает оператор.
... Например, если вместо
if a > b {
Printf("a > b")
}
написать
if a > b
{
Printf("a > b")
}
то функция Printf() будет вызываться всегда, независимо от значений a и b. При этом компилятор не сообщит об ошибке... Будет выдано только предупреждение. ... может стать источником трудновыявимых ошибок."

".. перед именем функции мы указываем имя пакета. Если интуиция программиста подсказывает вам, что существует способ избежать утомительных префиксов, то вы правы. При импортировании пакета мы можем указать его псевдоним, который затем будет использоваться вместо его имени. ..."
Но сишники были бы не сишники: "Если же мы напишем import . "fmt", то функции из пакета можно будет вызывать вообще без префикса".

"В языке Go для объявления функций используется специальное ключевое слово func, как в Паскале. Это далеко не единственное сходство между Go и Паскалем, и дело тут не в языковых пристрастиях авторов. Паскалеподобные элементы Go преследуют важную (с точки зрения разработчиков) цель - повысить скорость компиляции. Лаконичная грамматика C заставляет компилятор выполнять много дополнительной работы по выяснению смысла языковых конструкций. Вспомогательные слова Паскаля и Go упрощают работу компилятора (хотя и вынуждают программиста напечатать несколько дополнительных символов)."

Кроме самой извращённой трактовки - ещё и невежество автора статьи в плане методов трансляции: смешение понятий лексики и грамматики, бред о каком-то там ускорении, связанном напрямую с "много- или мало- буквием" языка (медленность С, ощутимая сегодня, связана в первую очередь с отсутствием модульности и нормальной раздельной компиляции).


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

Зарегистрирован: Пятница, 24 Апрель, 2009 16:28
Сообщения: 529
Откуда: Москва
Илья Ермаков писал(а):
... Например, если вместо
if a > b {
Printf("a > b")
}
написать
if a > b
{
Printf("a > b")
}
А вот нефига так писать! :mrgreen: :mrgreen: :mrgreen:
Взяли, понимаешь, моду лишние строчки разводить...
viewtopic.php?p=44629#p44629


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

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8127
Откуда: Троицк, Москва
Илья Ермаков писал(а):
В апрельском номере Linux Format ...
Интересно и ценно. В плане улучшения ощущения мировосприятия ИТ-масс. И ощущения их невежества: за точку в импорте и т.п. придумки надо убивать.


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

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Info21 писал(а):
за точку в импорте и т.п. придумки надо убивать.

Там в Питере два дебилоида убили и съели девушку, и им не растрел присудили, а всего-то по 18-19 лет тюрьмы.
А Вы говорите -- надо убивать за точку в импорте...


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

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1363
Peter Almazov писал(а):
Илья Ермаков писал(а):
... Например, если вместо
if a > b {
Printf("a > b")
}
написать
if a > b
{
Printf("a > b")
}
А вот нефига так писать! :mrgreen: :mrgreen: :mrgreen:
Взяли, понимаешь, моду лишние строчки разводить...
viewtopic.php?p=44629#p44629

Опаньки! Они что там обалдели совсем? Это называется - "боремся за НАДЁЖНОСТЬ"?????
маразм какой-то!


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

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 1537
Откуда: Беларусь, Минск
Всё-таки, надеюсь, что эта особенность доступна только при явном использовании какого-то ключа компилятора.


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

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 1191
Откуда: Украина, Киев
Valery Solovey писал(а):
какого-то ключа компилятора.
Ключи компилятора - зло :twisted:


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

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1194
Wlad2 писал(а):
Опаньки! Они что там обалдели совсем? Это называется - "боремся за НАДЁЖНОСТЬ"?????


Это называется желтая пресса. ;)


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

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1363
Trurl писал(а):
Wlad2 писал(а):
Опаньки! Они что там обалдели совсем? Это называется - "боремся за НАДЁЖНОСТЬ"?????

Это называется желтая пресса. ;)

Так это - шутка была, джентельмены?
аж от сердца отлегло!
думал: уж неужели рыба-таки с головы начала гнить?
фуууух...


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

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8127
Откуда: Троицк, Москва
Так правда шутка или как?


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

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
http://golang.org/doc/effective_go.html#semicolons

Цитата:
One caveat. You should never put the opening brace of a control structure (if, for, switch, or select) on the next line. If you do, a semicolon will be inserted before the brace, which could cause unwanted effects. Write them like this
Код:
if i < f() {
    g()
}

not like this
Код:
if i < f()  // wrong!
{           // wrong!
    g()
}

Похоже, жестокая, но правда. :shock:


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

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8127
Откуда: Троицк, Москва
Geniepro писал(а):
Похоже, жестокая, но правда. :shock:
Убивать однозначно.

Хоор еще в 1980 предупреждал, что вся эта ахинея опасней пестицидов...


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

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1363
Geniepro писал(а):
... Похоже, жестокая, но правда. :shock:

фу! - свинюкатство какое!
аййемвэридисЪаппоинтеДЪ.


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

Зарегистрирован: Вторник, 13 Ноябрь, 2007 20:38
Сообщения: 1056
Info21 писал(а):
Убивать однозначно.
Не стоит подставлять администрацию форума такими призывами :wink: . Даже в шутку. ("Разжигание ...") В личку - сколько угодно.

PS: Хотя по существу Вы правы :D


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

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1194
Код:
package main
import "fmt"

func main() {
  if 1 < 2 {
    fmt.Printf("1 < 2\n")
  }
  if 1 < 2
  {
    fmt.Printf("1 < 2\n")
  }
  if 2 < 1 {
    fmt.Printf("2 < 1\n")
  }
  if 2 < 1
  {
    fmt.Printf("2 < 1\n")
  }
}

Код:
Run output
1 < 2
1 < 2

случай так называемого вранья.


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

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Trurl писал(а):
Код:
  if 2 < 1
  {
    fmt.Printf("2 < 1\n")
  }

случай так называемого вранья.

А вот так:
Код:
  if (2 < 1)
  {
    fmt.Printf("2 < 1\n")
  }

?


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

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


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

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


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

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