OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Воскресенье, 21 Январь, 2018 09:49

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




Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Четверг, 28 Июль, 2016 18:08 
Аватара пользователя

Зарегистрирован: Воскресенье, 12 Апрель, 2015 18:12
Сообщения: 1059
Откуда: СССР v2.0 rc 1
Kemet писал(а):
В Go тоже есть мониторы Хоара, но работают они, вроде, классически - на основе очередей сообщений Бринча Хансена.

Нет в golang никаких мониторов. https://ru.wikipedia.org/wiki/%D0%9C%D0%BE%D0%BD%D0%B8%D1%82%D0%BE%D1%80_(%D1%81%D0%B8%D0%BD%D1%85%D1%80%D0%BE%D0%BD%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F)
Цитата:"Монитор — в языках программирования, высокоуровневый механизм взаимодействия и синхронизации процессов, обеспечивающий доступ к неразделяемым ресурсам.[1] Подход к синхронизации двух или более компьютерных задач, использующих общий ресурс, обычно аппаратуру или набор переменных."
Гоурутины используют общее адресное пространство (что не очень хорошо в гетерогенной ос), но не используют разделяемую память. Какое-то половинчатое решение, не? Я соглашусь, что производительность важна, но не соглашусь, что производительность выше надёжности. Это правило уже оплачено сотнями миллиардов долларов из-за переполнений стека, нарушения границ сегментов, и т. п. детскими болезнями "фигак-фигак и в продакшен"
https://ru.wikipedia.org/wiki/Go#.D0.9C.D0.BD.D0.BE.D0.B3.D0.BE.D0.BF.D0.BE.D1.82.D0.BE.D1.87.D0.BD.D0.BE.D1.81.D1.82.D1.8C
Цитата:"Модель многопоточности Go была создана на основе CSP (англ.) Тони Хоара по типу предыдущих распараллеливаемых языков программирования Occam и Limbo,[4], но также присутствуют такие особенности Пи-исчисления, как канальная передача."
Там все корутины асинхронны. Наличие или отсутствие блокировки зависит от реализованного механизма. В golang реализована лишь именно асинхронная.
Как работают подобные механизмы, я вроде как, понимаю ;) Книжка Танненбаума у меня есть в печатном виде)))

Kemet писал(а):
Да что-то переписывали, Plan9 или Inferno? не помню.

Ничего не переписывали. То, что есть -- на уровне лабораторной работы студента 3-4 курса. На Обероне -- есть.

Kemet писал(а):
Унификация. Как следствие меньше ошибок. Есть стандартный языковой механизм и правила его использования.

Т.е. библиотека это хуже?)))
Кемет, ну представьте себе: 8086, 80186, 80286, 80386, 80х86, х64, арм, пауэр, сан, ... И тысячи их, про которые я не имею ни малейшего понятия.
Кемет, это на полном серьёзе утверждение, что раздутый язык с жирнючим рантаймом будет так легко перенести с такими специфическими конструкциями? Может косяки вылазят именно из-за этого? (а рантайм в режиме tiny (*386*) автоматом хавает около 200 кБ, не говоря уже про gc, который хоть и подправили, но он всё-равно не позволит сделать хард реал-тайм).
Ведь, если положить руку на сердце -- в ломе ломаться нечему!!!
Вот прямо сейчас смотрю на БлэкБокс с запущенной программой дорасчёта и вижу: "Выделено памяти -- 567 кБ". Карл!!! 567 кБ!!!! ВСЕГО!!!!

Kemet писал(а):
Потому что у них нет задач, для которых куцый Оберон не подошел бы.

Так и передам Ивану: задачи твои плоские, именно поэтому ты сбежал с перла на Оберон, и я программу дорасчёта решил нарисовать из-за куцести Оберона, а то что у меня на питоне и ФриПаскале ошибки лезли -- это у меня руки кривые и черепная коробка не арийского вида.))))

https://habrahabr.ru/post/195818/ -- байка с картинками и кодом про то, что в один поток программа на golang РАБОТАЕТ БЫСТРЕЕ!!! Что там на счёт унификации? )) Рейтинг статьи +21, если что.

https://habrahabr.ru/post/195574/ -- ещё одна байка. Доставил комментарий: "Разубедили, не буду пробовать Go.". Рейтинг коммента+16.
Вот ещё от туда же хороший коммент:"Вы показали явным образом, как приложение может замедлиться из-за накладных расходов, которые возникли из-за ненужного распараллеливания задачи."

Не надо меня понимать превратно. Уж лучше golang, чем Си или С++/Java. Но это далеко не оптимальное решение, имхо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Четверг, 28 Июль, 2016 21:01 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2004
Откуда: Красноярск
На Питоне хорошо скрипты писать для небольших задач, где не особо нужна надежность.
У Оберона/Компонентного Паскаля другая область применения.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Четверг, 28 Июль, 2016 23:11 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1427
Go не про параллельность, а про утилизацию ядер.

Вот есть у вас сервак в котором 16 ядер. На Go вы их утилизируете легко и эффективно.

То же самое попотев можно сделать и с несколькими процессами ББ, но вы ведь в конечном счете реализуете то, что в Go из коробки. И при этом в Go оно очевидно будет удобнее и проще.

Еще раз акцентирую. В Go решалась задача утилизации ядер на современных архитектурах. Т.е. задача о которой во времена разработки ББ и не задумывался никто.

В Go скорее распределенные вычисления, а не параллельные.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Четверг, 28 Июль, 2016 23:16 

Зарегистрирован: Пятница, 20 Июль, 2007 17:26
Сообщения: 659
Откуда: Псков
В разговорах о "параллельностях" надо их не путать друг с другом :)
https://blog.golang.org/concurrency-is-not-parallelism

PS.
Это замечание не к предыдущему сообщению от Илова


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Пятница, 29 Июль, 2016 08:33 
Аватара пользователя

Зарегистрирован: Воскресенье, 12 Апрель, 2015 18:12
Сообщения: 1059
Откуда: СССР v2.0 rc 1
Один раз либу написать. И хоть 256 ядер будут загружены. Если мне память не отшибло, задача эта по сопроцессам, и множественном запуску на кластере уже решалась.
По хорошему, всё сводится к импорту двух либ)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Суббота, 30 Июль, 2016 04:58 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2289
Откуда: Россия, Санкт-Петербург
Илья Ермаков писал(а):
Из книги Алана Донована и Брайана Кернигана.

Можно тыкать в наглые мейнстримовские рожи, утверждающие, что "масштабы влияния Оберона на Яву, Го и др. чисто символические". :)
Надо бы это... Вот тут есть раздел "Влияние Оберона на другие языки". Дописать бы, а то Go вообще не упоминается.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Вторник, 19 Декабрь, 2017 13:10 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1042
Илья Ермаков писал(а):
Можно тыкать в наглые мейнстримовские рожи, утверждающие, что "масштабы влияния Оберона на Яву, Го и др. чисто символические". :)

Да можно просто сравнить список авторов из 1990 и 2009. :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Среда, 20 Декабрь, 2017 00:50 

Зарегистрирован: Среда, 04 Июль, 2007 16:43
Сообщения: 227
Trurl писал(а):
Да можно просто сравнить список авторов из 1990 и 2009. :)

GopherCon 2015: Robert Griesemer - The Evolution of Go


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Среда, 20 Декабрь, 2017 13:31 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7755
Откуда: Троицк, Москва
QWERTYProgrammer писал(а):
Большое спасибо, ценное свидетельство: с места в карьер -- о productivity Оберона, которой не было в "индустрии".

Что ж они, твари, испортили язык-то.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Среда, 20 Декабрь, 2017 18:37 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 8915
Откуда: Россия, Орёл
А может кто-то перевести это начало на русский? Не могу разобрать беглую речь. Даже слово "Оберон" как-то скомкано до "Оброн".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Среда, 20 Декабрь, 2017 20:30 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2919
Откуда: г. Ярославль
Да там, похоже, надо всё переводить: https://youtu.be/0ReKdcpNyQg?t=1071


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Среда, 20 Декабрь, 2017 20:40 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 230
Откуда: Москва
Info21 писал(а):
QWERTYProgrammer писал(а):
Большое спасибо, ценное свидетельство: с места в карьер -- о productivity Оберона, которой не было в "индустрии".

Что ж они, твари, испортили язык-то.

Там есть комментарии внизу, что еще и жизнь испортили :(
Цитата:
Great talk, interesting observations. Always interesting when someone mentions Oberon(-2), as it's the very first language that was taught to students when I attended the University of Antwerp for a CS degree in 2008, and as such it was also the very first language I was formally introduced to. (Then C++ came along the next semester and ruined my life)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Среда, 20 Декабрь, 2017 23:24 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7755
Откуда: Троицк, Москва
Иван Кузьмицкий писал(а):
Да там, похоже, надо всё переводить: https://youtu.be/0ReKdcpNyQg?t=1071
"exactly the same" -- да уж ))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Четверг, 21 Декабрь, 2017 08:37 

Зарегистрирован: Пятница, 20 Июль, 2007 17:26
Сообщения: 659
Откуда: Псков
Илья Ермаков писал(а):
А может кто-то перевести это начало на русский? Не могу разобрать беглую речь. Даже слово "Оберон" как-то скомкано до "Оброн".

Можно включить субтитры.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Четверг, 21 Декабрь, 2017 10:49 

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Go - официальная генеалогия
СообщениеДобавлено: Воскресенье, 24 Декабрь, 2017 03:40 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7755
Откуда: Троицк, Москва
Илья Ермаков писал(а):
А может кто-то перевести это начало на русский?
Никто не начал переводить речуху?


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

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


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

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


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

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