Re[6]: [ANN] 12 Things to Know About Google's Go
От: z00n  
Дата: 16.11.09 01:09
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

MC>Здравствуйте, z00n, Вы писали:

Z>>Glenda
MC>А мне всегда казалось, что это мальчик.

Это мальчик!


PS. странно, что там все так фанатели от Эда Вуда — я и 15-ти минут его фильмов не осилил, хотя фильм Бартона мне скорее понравился и даже вызвал некоторое любопытство.
Re[7]: [ANN] 12 Things to Know About Google's Go
От: z00n  
Дата: 16.11.09 01:13
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

MC>Здравствуйте, z00n, Вы писали:

Z>>(мне это слегка напоминает "ебаа нобаа" из "Little Britain"
MC>Как человек, знакомый с английским языком довольно поверхностно, поинтересуюсь на всякий случай. Юмор в том, что подсудимая (ый?) много, быстро и неразборчиво говорит — или надо вслушиваться в смысл произносимого?

http://en.wikipedia.org/wiki/Vicky_Pollard

Я не возьмусь объяснять юмор, но мне в свое время понравилась конструкция "Yeah but no but yeah but no but ...".
Re[3]: [ANN] 12 Things to Know About Google's Go
От: Трурль  
Дата: 17.11.09 09:36
Оценка: :)))
Здравствуйте, Cyberax, Вы писали:

C>Вроде бы и не скрывается, что Go слизан с Оберона и всяких прочих Лимбов.

Go слизан с вижуалбейсика.

From: rob pike <rob@pla...>
Subject: pascal, TeX
Date: Fri, 14 Dec 2001 13:03:50 -0500

> According to my knowledge — Java was the first language that implemented
> garbage collection...

Wrong. Young people don't know any history. The first language with
garbage collection was Visual Basic.

отсюда
Re[4]: [ANN] 12 Things to Know About Google's Go
От: Cyberax Марс  
Дата: 17.11.09 10:14
Оценка: :)
Здравствуйте, Трурль, Вы писали:

Т>Wrong. Young people don't know any history. The first language with

Т>garbage collection was Visual Basic.[/q]
Какой VisualBasic? Первым языком с GC были перфокарты! Каждый день приходил garbage collector и выметал лишние.
Sapienti sat!
Re[3]: [ANN] 12 Things to Know About Google's Go
От: frogkiller Россия  
Дата: 17.11.09 10:26
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Отличие Go в том, что его всё-таки планируют дальше развивать.


Имхо, это главное, если действительно планируют развивать. Остальное — дело вкуса
Курица — это инструмент, с помощью которого одно яйцо производит другие.
Re[14]: [ANN] 12 Things to Know About Google's Go
От: Lazy Cjow Rhrr Россия lj://_lcr_
Дата: 18.11.09 11:36
Оценка:
Геннадий Васильев,

ГВ>>>Даже если так, то как это влияет на оценку самого Go?

MC>>Никак. Просто я с некоторой неприязнью отношусь к хайпу вокруг давно известных вещей.

ГВ>Так нет никакого хайпа, вроде. Может, журналисты и поднимут, конечно. Ну так у них профессия такая. А вообще ничего принципиально нового в программировании не изобретается уж лет сорок как. Только композиционная игра с перепевами старых мелодий — на всё можно найти прототипы 65-го, 72-го, 68-го года выпуска. Ну в крайнем случае — 80-го.


GADTs? Arrows? Dependent types?
quicksort =: (($:@(<#[),(=#[),$:@(>#[)) ({~ ?@#)) ^: (1<#)
Re[15]: [ANN] 12 Things to Know About Google's Go
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 19.11.09 00:06
Оценка: +1 :)
Здравствуйте, Lazy Cjow Rhrr, Вы писали:

ГВ>>Так нет никакого хайпа, вроде. Может, журналисты и поднимут, конечно. Ну так у них профессия такая. А вообще ничего принципиально нового в программировании не изобретается уж лет сорок как. Только композиционная игра с перепевами старых мелодий — на всё можно найти прототипы 65-го, 72-го, 68-го года выпуска. Ну в крайнем случае — 80-го.


LCR>GADTs? Arrows? Dependent types?


ИМХО, это развитие идей лямбда-исчисления (GADT, DT) и CSP (Arrows). Некое подобие паттернов проектирования ООП, только с более развитой математической основой. В прочем, чтобы не впадать во флейм, лучше признаю, что всё-таки, кое-что относительное новое есть.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[7]: [ANN] 12 Things to Know About Google's Go
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.11.09 16:42
Оценка: :)
Здравствуйте, Mr.Cat, Вы писали:

MC>Здравствуйте, Красин, Вы писали:

К>>Ничего себе вскользь! Language Design FAQ
К>>

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).

MC>Это как раз вскользь — "some ideas".

Дык а так оно и есть. Синтаксис из С, модули и многое другое из Оберона, конкаранси из Newsqueak и Limbo.

Лично для меня как раз конкаранси фичи — это мелочевка, а основное — это база языка. А в базе там очень явно проступает оберон с С-подобным синтаксисом.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: [ANN] 12 Things to Know About Google's Go
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 19.11.09 18:15
Оценка: +1
Здравствуйте, VladD2, Вы писали:

VD>Лично для меня как раз конкаранси фичи — это мелочевка [...]


Что и требовалось доказать. Спасибо, ты очень вовремя.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[9]: [ANN] 12 Things to Know About Google's Go
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.11.09 20:11
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

VD>>Лично для меня как раз конкаранси фичи — это мелочевка [...]


ГВ>Что и требовалось доказать. Спасибо, ты очень вовремя.


А что требовалось доказать и кому?

Есть огромный язык и есть пара фич которые можно всунить в любой язык. А в языки типа Немерле или Лисп можно всунуть в виде библиотеки, так как они поддерживают расширение синтаксиса и семантики.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[10]: [ANN] 12 Things to Know About Google's Go
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 19.11.09 21:40
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>А что требовалось доказать и кому?

VD>Есть огромный язык и есть пара фич которые можно всунить в любой язык. А в языки типа Немерле или Лисп можно всунуть в виде библиотеки, так как они поддерживают расширение синтаксиса и семантики.

Lightweight threads?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[11]: [ANN] 12 Things to Know About Google's Go
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.11.09 00:04
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Здравствуйте, VladD2, Вы писали:


VD>>А что требовалось доказать и кому?

VD>>Есть огромный язык и есть пара фич которые можно всунить в любой язык. А в языки типа Немерле или Лисп можно всунуть в виде библиотеки, так как они поддерживают расширение синтаксиса и семантики.

ГВ>Lightweight threads?


А в чем проблема то? Они что какие-то особенные в этом Гоу будут? Ну, Эрланг за счет функциональной чистоты и интерпретируемости может позволить реализовать более дешевую кооперативную многозадачность. А Гоу тот тут причем?

Возьми те же файберы и пользуйся на здоровье. Или реализуй континюэшоны.

Для работы с реальной же многозадачностью нужны потоки ОС. Так как именно они реализуют переключение между процессорами.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[12]: [ANN] 12 Things to Know About Google's Go
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 20.11.09 02:15
Оценка:
Здравствуйте, VladD2, Вы писали:

ГВ>>Lightweight threads?


VD>А в чем проблема то? Они что какие-то особенные в этом Гоу будут? Ну, Эрланг за счет функциональной чистоты и интерпретируемости может позволить реализовать более дешевую кооперативную многозадачность. А Гоу тот тут причем?


VD>Возьми те же файберы и пользуйся на здоровье. Или реализуй континюэшоны.


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

VD>Для работы с реальной же многозадачностью нужны потоки ОС. Так как именно они реализуют переключение между процессорами.


Вытесняющая многозадачность уже давно прекрасно работает на однопроцессорных машинах.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[12]: Кроме того
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 20.11.09 02:19
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Или реализуй континюэшоны.


Я не хочу связываться с реализацией continuations. Зачем тащить лишний сложный механизм?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[13]: [ANN] 12 Things to Know About Google's Go
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.11.09 14:33
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Кстати говоря, я не имел в виду кооперативную многозадачность.


Да? А что же ты имел в виду под:
ГВ>>>Lightweight threads?

Может быть ты просто не владеешь терминологией?

VD>>Для работы с реальной же многозадачностью нужны потоки ОС. Так как именно они реализуют переключение между процессорами.


ГВ>Вытесняющая многозадачность уже давно прекрасно работает на однопроцессорных машинах.


Ну, и пользуйся потоками ОС. Они доступны из любого языка. А реализовать удобный синтаксис синхронизации для обычных потоков можно для любого языка. Для Немерле можно оформить такое расширение в виде макры. Чорды и есть такое расширение.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[14]: [ANN] 12 Things to Know About Google's Go
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 20.11.09 14:40
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>>>Для работы с реальной же многозадачностью нужны потоки ОС. Так как именно они реализуют переключение между процессорами.

ГВ>>Вытесняющая многозадачность уже давно прекрасно работает на однопроцессорных машинах.
VD>Ну, и пользуйся потоками ОС. Они доступны из любого языка. А реализовать удобный синтаксис синхронизации для обычных потоков можно для любого языка. Для Немерле можно оформить такое расширение в виде макры. Чорды и есть такое расширение.

Можно, конечно. Только смущает ограничение на количество потоков ОС.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[15]: [ANN] 12 Things to Know About Google's Go
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.11.09 15:24
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Можно, конечно. Только смущает ограничение на количество потоков ОС.


Это которое? Создавай потоки с мелким стеком и будет тебе их тысячи.

Только вот я хоть у бей не пойму зачем нужно потоков существенно больше чем есть процессоров?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[16]: [ANN] 12 Things to Know About Google's Go
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 20.11.09 22:41
Оценка: +1
Здравствуйте, VladD2, Вы писали:

ГВ>>Можно, конечно. Только смущает ограничение на количество потоков ОС.

VD>Это которое? Создавай потоки с мелким стеком и будет тебе их тысячи.

Попробуй сделать полмиллиона потоков. Просто полмиллиона потоков на одной машине.

VD>Только вот я хоть у бей не пойму зачем нужно потоков существенно больше чем есть процессоров?


Тут я лучше ограничусь простым постулированием того, что такая потребность есть.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[2]: [ANN] 12 Things to Know About Google's Go
От: Gaperton http://gaperton.livejournal.com
Дата: 21.11.09 00:52
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

MC>Как это называется?


Клево. Только один момент — не мог бы ты сравнить системы типов этих языков? Видишь-ли, твой пример касается по большей части только фич параллелизма, а они взяты с лимбо.

Меня, в частности, интересуют:
1) Методы, и "ортогональность" типов и методов.
2) Интерфейсы, и "утиная типизация"

Это достаточно принципиальные вещи. А мелочи, вроде возможности возвращать несколько значений из функций, замыкания, оператор switch — это мелочи. Но они также важны.
Re[3]: [ANN] 12 Things to Know About Google's Go
От: Mr.Cat  
Дата: 28.11.09 19:13
Оценка:
Здравствуйте, Gaperton, Вы писали:
G>1) Методы, и "ортогональность" типов и методов.
Не совсем понимаю, что ты имеешь в виду. То, что есть типы данных, а у них есть методы? Да, в лимбо так вроде бы.

G>2) Интерфейсы, и "утиная типизация"

Тут в limbo по-другому. В limbo под интерфейсом понимается интерфейс модуля: функции и типы данных, им экспортируемые. Соответственно, у одного интерфейса модуля могут быть разные реализации. В go, конечно, поинтереснее сделано.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.