LINUX.ORG.RU
 
Amuser

Учебник «Learning Go»


0

2

Оказывается, есть хороший учебник по языку программирования Go на английском языке.

Он подойдёт для тех, кому мало официального Go Tutorial, но при этом лень читать спецификацию языка.

Книга свёрстана на LaTeX и распространяется под CC BY-NC-SA 3.0. Автор (Miek Gieben) периодически дополняет и редактирует книгу.

>>> Список ночных PDF-сборок книги


[#] Ответ на: комментарий от anonymous 29.06.2011 5:28:42  

>> tailgunner

> cat-v вызывает у него острые приступы ДИСКОМФОРТА

Нене, меня очень радуют ссылки на cat-v, по уже озвученной мной причине.

***** ()
[#] Ответ на: о Модульности. от qulinxao 29.06.2011 15:46:56  

пространства имен позволяют связывать только сущности одного уровня иерархии(в ООП или не в ООП - вопрос другой). кстати, каждый класс является пространством имен(Все дружно: "спасибо, КЭП!"). А сущности на разных уровнях иерархии пространством имен не свяжешь. Тут нужно либо наследование либо особо хитрый костыль(затрудняюсь сказать, какой именно), при котором это окажется нинужным. Ну или, как я уже говорил, помнить наизусть 10000+ функций, а что - тоже метод...

*** ()
[#] Ответ на: комментарий от Pinkbyte 29.06.2011 12:06:39  

Ну при чем тут ынтырпрайз? Почти во всех задачах возникают разлапистые структуры данных.

anonymous ()
[#] Ответ на: комментарий от Pinkbyte 29.06.2011 15:51:37  

Ну посмотри, например, на систему модулей в Standard ML и в Ada. Поймешь, что ООП нинужно.

anonymous ()
[#] Ответ на: комментарий от Pinkbyte 29.06.2011 12:08:13  

> В относительно большом проекте без такой удобной штуки как ООП очень напряжно.

ООП и слабая связанность модулей — вещи ортогональные.

** ()
[#] Ответ на: комментарий от anonymous 29.06.2011 10:43:17  
quantum-troll

Не хотят они монстра. Для настоящего программиста, излишняя сложность — хуже, чем бессмысленная жестокость. (имеется в виду сложность результата, а не трудности разработки)

* ()
[#] Ответ на: комментарий от anonymous 29.06.2011 16:24:34  

> Ну посмотри, например, на систему модулей в Standard ML и в Ada. Поймешь, что ООП нинужно.

Тем не менее, есть Ocaml и Ada95.

***** ()
[#] Ответ на: комментарий от tailgunner 29.06.2011 19:30:26  
quantum-troll

Но в то же время есть Haskell (конечно, есть ещё и O'Haskell, но он никому не нужен).

* ()
[#] Ответ на: комментарий от ArtemZ 29.06.2011 0:19:49  
Mojo

Очень "веский" аргумент. Наверное потому, что у тебя в голове вообще ничего нет.

()
[#] Ответ на: комментарий от profit_taker 28.06.2011 20:05:56  
Mojo

то, что уже давно успешно используется программистами уже почти 20 лет, перечислять нет смысла....

()
[#] Ответ на: комментарий от anonymous 29.06.2011 12:01:20  

> Я осилил. Но так и не вижу, на кой хрен эта дурная цацка нужна. Может хоть ты расскажешь, раз такой вумный?

Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of OOP.

anonymous ()
[#] Ответ на: комментарий от quantum-troll 29.06.2011 19:53:44  

> Но в то же время есть Haskell (конечно, есть ещё и O'Haskell, но он никому не нужен).

Можно подумать, Haskell кому-то нужен.

anonymous ()
[#] Ответ на: комментарий от Pinkbyte 29.06.2011 11:55:44  

> Ты уж извини, но Brainfuck - это эзотерика и for fun.

Можно подумать, LISP, Haskell и Smalltalk не эзотерика и не for fun.

anonymous ()
[#] Ответ на: комментарий от anonymous 29.06.2011 23:31:55  

щаз набегут знатоки LISP и утроллят тебя энтерпрайзными решениями на нем :-)

*** ()
[#] Ответ на: комментарий от Pinkbyte 29.06.2011 23:41:26  

> щаз набегут знатоки LISP и утроллят тебя энтерпрайзными решениями на нем :-)

Я уже заранее знаю, чем они будут «троллить».

Самый модный козырь сейчас — решение от ITA Software, которое Google ещё не успел переписать на нормальном языке. Алсо кучка шлимазлов, которые в своё время неосмотрительно вляпались в LISP, а теперь плотно сидят на legacy-игле ушлых гешефтмахеров — конторки под названием Franz Inc.

anonymous ()
[#] Ответ на: комментарий от anonymous 29.06.2011 23:30:56  
quantum-troll

Как ни странно, но хаскель таки действительно кому-то нужен.

* ()
[#] Ответ на: комментарий от quantum-troll 30.06.2011 1:18:21  

Доооо, расчёт факториалов и чисел Фибоначчи — офигенно важные для человечества задачи, ага.

anonymous ()
[#] Ответ на: комментарий от anonymous 30.06.2011 2:01:44  
quantum-troll

Hedgewars, XMonad и некоторое другое тоже не стоит забывать, пожалуй.

* ()
[#] Ответ на: комментарий от quantum-troll 30.06.2011 1:18:21  

Вообще, зависит от того, как понимать это «нужен».

Хиповые шмотки, айфоны, молескины, романы Бегбедера и Коэльо — нужны ли они? Их охотно покупают; стало быть, они кому-то нужны. Но популярность у леммингов не делает всё вышеперечисленное хоть сколько-нибудь полезным.

Так и с Хаскелем.

anonymous ()
[#] Ответ на: комментарий от quantum-troll 30.06.2011 2:04:39  

Hedgewars и XMonad — это не «благодаря», а «вопреки».

anonymous ()
[#] Ответ на: комментарий от anonymous 30.06.2011 2:07:47  
quantum-troll

Вопреки? Т.е, их разработчики проявили НЕСГИБАЕМОСТЬ И ПРЕОДОЛЕНИЕ и отреклись от б-гомерзкого Си++ во имя великого Хаскеля?
Разработчики просто были знакомы с ЯП и взяли то, что им было удобно. Но в отличии от них, подавляющее большинство программистов плохо знакомо с языками вне рамок це-цепэпэ-ява-пыхпых-руби-пёрл-etc. А если нет разработчиков, нет и ПО.

* ()
[#]  
delete83

Пробовал вчера пересобрать книгу в формате a5letter, но оказалось, что в моей OpenSuSE чего-то там не хватает. pdf собирается, но какой-то корявый, без библиографии и содержания. xelatex ругается на что-то дважды во время сборки, но я не могу понять, что ему не нравится. Вроде все необходимые пакеты установил...

Кто разбирается в tex, помогите собрать эту книжку. Хочется ее почитать на читалке 6', но там a4 хреновато отображается.

* ()
[#] Ответ на: комментарий от anonymous 29.06.2011 23:53:32  
mv
>>-----Цитата---->>

Я уже заранее знаю, чем они будут «троллить».

Самый модный козырь сейчас — решение от ITA Software, которое Google ещё не успел переписать на нормальном языке. Алсо кучка шлимазлов, которые в своё время неосмотрительно вляпались в LISP, а теперь плотно сидят на legacy-игле ушлых гешефтмахеров — конторки под названием Franz Inc.

<<-----Цитата----<<

Я написал на лиспе параметрический вывод МПХ, т.е. длина выводимого МПХ зависит от входного параметра. Если ты считаешь, что изучение длины МПХ является недостойной темой исследования для настоящего мужчины, то ты глубоко ошибаешься и вообще педик.

***** ()
[#] Ответ на: комментарий от quantum-troll 30.06.2011 2:04:39  

От XMonad после даже StumpWM блевать тянет, я уж не говорю про сравнение с кошерным Ratpoison.

anonymous ()
[#] Ответ на: комментарий от Pinkbyte 29.06.2011 15:51:37  

> Тут нужно либо наследование либо особо хитрый костыль(затрудняюсь сказать, какой именно),

полиморфизм

anonymous ()
[#] Ответ на: комментарий от anonymous 29.06.2011 16:24:34  

> Ну посмотри, например, на систему модулей в Standard ML и в Ada. Поймешь, что ООП нинужно.


или модулу, оберон-2 и "раширяемый тип запись"
а нормальная модульность = полиморфизм на уровне интерфейсов модуля,полиморфизм не обьектов, а интерфейсов

anonymous ()
[#] Ответ на: комментарий от anonymous 29.06.2011 10:43:17  

> Ну вот и какого хрена они его не сделали фронтэндом к GCC или LLVM? бекендом к gcc сделали, см. gccgo  — включен в состав GCC 4.6. из плюсов оптимизации GCC и простой C FFI, cgo, из минусов — горутины не совсем полно реализованы

anonymous ()
[#] Ответ на: комментарий от anonymous 28.06.2011 8:49:30  

>> Статическая типизация
>http://harmful.cat-v.org/software/dynamic-linking/ http://aiju.de/rant/dynamic-linking



не путай статическую типизацию и статическую/динамическую линковку!
вот в обероне-2 например, есть и статическая типизация и динамическая линковка.
точнее, динамическая загрузка модулей, которая реализована очень просто, не то что кошмар с so библиотеками, GNU build system и libtool + versioned so symbols + dsohowto.pdf by Ulrich Drepper костылики

вообще, го надо по идее с оберон-2 сравнивать — это такой оберон-2 с синтаксическим сахаром Ц и без нормальной динамической модульности. шаг назад от оберона (хотя куда уж тут более), ящитаю.

anonymous ()
[#] Ответ на: комментарий от anonymous 28.06.2011 9:49:15  

> COmega

* спасибо, запейсал в блокнотег новое умное слово ))

anonymous ()
[#] Ответ на: комментарий от anonymous 30.06.2011 13:58:27  

с другой стороны, исключения в оберон совсем никакие (хотя для модулы-3 что-то было), а в Go Duck&Cover ^W Panic & recover  — неплохо реализовано

anonymous ()
[#] Ответ на: комментарий от anonymous 30.06.2011 13:58:27  
quantum-troll

> не путай статическую типизацию и статическую/динамическую линковку!
Я ответил про линковку на ответ про типизацию? 0_0 Прости, похоже я невнимательно читал.

* ()
[#] Ответ на: комментарий от anonymous 30.06.2011 10:47:44  
quantum-troll

Давайте не будем холивар оконных менеджеров. Пожалуйста.

* ()
[#] Ответ на: комментарий от anonymous 30.06.2011 13:24:22  

ну, я имел ввиду костыль не относящийся к ООП. Чтобы так сказать подчеркнуть, что есть и другие варианты :-)

*** ()
[#] Ответ на: комментарий от anonymous 30.06.2011 13:29:44  

>полиморфизм не обьектов, а интерфейсов

а, ну если полиморфизм так рассматривать...

*** ()
[#] Ответ на: комментарий от quantum-troll 30.06.2011 23:24:12  

не, ну а что ты хочешь - это же ЛОР. Здесь любой тред может превратиться в высокохудожественный срач

*** ()