OSDev

для всех
Текущее время: 28 мар 2024, 15:16

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




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
СообщениеДобавлено: 26 июн 2011, 19:59 
Аватара пользователя

Зарегистрирован: 16 апр 2010, 10:10
Сообщения: 320
Откуда: Псковская обл.
по замыслу создателей должен заменить C,
Цитата:
Создатели Go позиционируют свое детище как системный язык, сочетающий в себе эффективность и скорость исполнения кода, написанного на Си, с простотой разработки на более высокоуровневых скриптовых языках, да еще и со встроенными средствами параллельного программирования.

источник-http://www.xakep.ru/post/55752/


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 26 июн 2011, 20:29 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1418
Врут... ну или пиарят, что одно и то же. Эффективность и скорость исполнения кода от компилятора зависит, а не от языка.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июн 2011, 00:30 

Зарегистрирован: 18 апр 2010, 15:59
Сообщения: 155
Ну вы не совсем правы. Язык определяет пределы оптимизации. К примеру, наличие ключевого слова const в С очень сильно влияет на оптимизацию. Но отсюда же следует, что чем более мощный язык, чем более подробно он позволяет описать все нюансы алгоритма - тем больше этот предел. А так чтобы и просто и быстро - это только в сказке.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июн 2011, 01:01 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1418
Пример явно неудачный. Наличие-отсутствие const не накладывает абсолютно никаких ограничений на оптимизацию, а сказывается лишь на сложности её выполнения: то, что некая переменная на самом деле является константой, компилятор и сам может установить, если "подумает" хорошенько. Если же компилятор не способен без явного указания со стороны программиста понять, что переменная никогда не изменяется, то это плохой компилятор. Другое дело, что константы и должны объявляться как константы, а не как переменные, но это уже относится к стилю программирования, а не к языку или транслятору.

Кстати, уверены, что в Си есть const? Я такого там не припоминаю, хотя, не будучи знатоком сего языка, утверждать не стану. Но, может, он в Си++ появился?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 июл 2011, 21:30 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
Теоретически, может быть и не накладывает. А технически накладывает. Есть такой предел, когда мыслительные затраты на поиск пути оптимизации (или вычислительные затраты на саму оптимизацию) превышают определённый разумный порог. Тогда если нет специальной помощи со стороны языка, создатели компиляторов на эту оптимизацию забивают, несмотря на её теоретическую реализуемость.
Const в этом смысле вполне нормальный пример. Искать, нет ли где модификации глобальной переменной, не будет ни один оптимизирующий компилятор. Тем более, что такая модификация может быть произведена косвенно. Компилятор же запретит даже косвенную модификацию такой переменной, если она явно объявлена константной.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

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


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

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


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

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB