15
голосов
10ответов
5661 просмотров

Что вы используете для написания Go

Я знаю, что это слишком рано, но я пробовал Go (язык программирования Google) и его разновидностираздражает писать код в gedit. Итак, мой вопрос: что вы используете для экспериментов с Go?

8
голосов
3ответов
5721 просмотров

Как узнать, сделана ли горутина, без блокировки?

Все примеры, которые я видел до сих пор, включают блокировку для получения результата (с помощью оператора <-chan). Мой текущий подход включает передачу указателя на структуру: type goresult struct { result resultType; finished bool; } , который горутина записывает по заверше...

21
голосов
3ответов
3455 просмотров

Общая память и связь по каналу Go

Один из слоганов Go: Не общайтесь, разделяя память;вместо этого поделитесь памятью, общаясь . Мне интересно, позволяет ли Go двум различным скомпилированным Go двоичным файлам, работающим на одном компьютере, взаимодействовать друг с другом (то есть клиент-сервер), и насколько быстро это буд...

52
голосов
7ответов
27018 просмотров

Встраивание вместо наследования в Go

Что вы думаете об этом дизайнерском решении?Какие преимущества и недостатки? Ссылки: Описание встраивания

6
голосов
3ответов
6155 просмотров

Объяснение флагов в Go

Кто-нибудь может объяснить флаги в Go? flag.Parse() var omitNewline = flag.Bool("n", false, "don't print final newline")

14
голосов
4ответов
6257 просмотров

Перейти на архитектуру AVR?

С тех пор, как я услышал о новом языке Google Go, я захотел использовать его для программирования микроконтроллеров.В частности, микроконтроллеры Atmel AVR, такие как серия Atmega.Есть ли порт Go для этой архитектуры?

4
голосов
1ответов
14710 просмотров

Как мне использовать (общий) вектор в ходу?

Я использую тип Vector для хранения массивов байтов (переменных размеров) store := vector.New(200); ... rbuf := make([]byte, size); ... store.Push(rbuf); Все работает хорошо, но когда я пытаюсь получить значения, компилятор сообщает мне, что мне нужно использовать утверждения типа.Я добав...

12
голосов
4ответов
680 просмотров

Вклад кода Go: последствия для лицензии и патента?

Я просматривал документацию по добавленным материалам для нового языка Google и меня заинтересовала идея добавление нового пакета. В нем говорится, что это должно быть включено в начало предоставленного исходного кода: // Copyright 2009 The Go Authors. All rights reserved. // Use of this so...

15
голосов
5ответов
2575 просмотров

В Go нет таблицы символов?

Новый язык Google "Go" гласит на его веб-сайте : язык был разработан таким образом, чтобы его было легко анализировать и анализировать без таблицы символов Я, конечно, не эксперт в этих вопросах, но я думал, что таблица символов - это базовая конструкция, общая для всех компиляторов я...

27
голосов
6ответов
12210 просмотров

Перейти на языковые тесты?

Я вижу утверждения, что Go должен быть почти сравним по скорости с C, но есть ли еще какие-либо тесты?

5
голосов
3ответов
812 просмотров

Как использовать функцию .Read в Go?

Пытаясь использовать http-пакет Go, я не могу выработать синтаксис .Read. Следующее, отмеченное ЗДЕСЬ, - единственное, что мне нужно скомпилировать, хотя я пробовал несколько других вещей, которые все были отклонены компилятором. package main import "fmt"; import "http"; import "os"; func mai...

91
голосов
25ответов
25811 просмотров

Примеры и идиомы

Здесь не так много кода Go для изучения языка, и я уверен, что я не единственный, кто с ним экспериментирует.Итак, если вы узнали что-то интересное о языке, опубликуйте пример здесь. Я тоже ищу идиоматические способы делать что-то в Go, Стиль мышления C / C ++ "перенесен" на Go, распр...

7
голосов
2ответов
6142 просмотров

Зачем мне здесь точка с запятой?

Вот тестовая программа Go: package main import fmt "fmt" func main () { ex := "moo cow\n"; fmt.Print (ex) } С точкой с запятой компилируется.Однако, если точка с запятой удалена, этого не произойдет: string.go: 5: синтаксическая ошибка рядом с fmt Есть идеи? Обновление...

7
голосов
6ответов
11970 просмотров

ошибка компиляции "переменная объявлена и не используется"

Я изучаю новый язык Google Go .Я просто пробую, и я заметил что если вы объявите переменную и ничего не сделаете с ней, компилятор go ( 8g в моем случае) не сможет скомпилируйте с этой ошибкой: hello.go:9: error declared and not used. Я был удивлен этим, поскольку большинство компиляторов язы...

10
голосов
2ответов
2754 просмотров

Несколько инициализаторов в операторе Go if

Только что открыл для себя Go, и пока мне очень любопытно. Я знаю, что просто ленив, но хочу знать, можно ли инициализировать несколько переменных в операторе if.Я знаю, что возможно следующее: if x := 5; x == 5 { fmt.Printf("Whee!\n") } Я пробовал следующее: if x := 5, y := 38; x ...

11
голосов
2ответов
2123 просмотров

Различия между сопрограммами и `goto`?

Я всегда читал об ужасе, что такое goto.Но сегодня, читая о языке программирования Google Go , я вижу, что он поддерживает сопрограммы (горутины). Вопрос: Coroutine == GoTo Или Coroutine != GoTo? Почему?

94
голосов
9ответов
34284 просмотров

Можно ли установить компилятор Go в Windows?

Я искал компилятор Windows на golang.org , но не могу его найти.Я вижу только компиляторы Linux и OS X.Кто-нибудь знает, можно ли программировать Go в Windows или это еще не реализовано в Google? Обновление: похоже, что на данный момент (ноябрь 2012 г.) golang.org имеет официальные двоичны...

5
голосов
1ответов
2215 просмотров

Есть ли сравнение между Scala и языком Google Go (функция за функцией)?

Интересно, может ли кто-нибудь провести сравнение между Scala и языком Google Go (функция за функцией, например модели параллелизма, коллекции и т. д.)?

2
голосов
2ответов
1019 просмотров

Библиотеки для сетевого программирования Go

Я решил переписать большинство своих распределенных серверных программ на Go, чтобы заменить существующие программы на C #. Может ли кто-нибудь указать мне на библиотеки Go TCP или общие библиотеки сетевого программирования Go. Спасибо Эди: ... а как мне скомпилировать этот код в visual...

18
голосов
1ответов
4666 просмотров

Как мне получить аргументы командной строки в Go без пакета «flags»?

Я пытаюсь написать синтаксический анализатор командной строки для Go в стиле GNU, поскольку пакет flags еще не обрабатывает все это: program -aAtGc --long-option-1 argument-to-1 --long-option-2 -- real-argument Очевидно, я не хочу использовать пакет flags, поскольку пытаюсь заменить его.Е...

65
голосов
5ответов
17886 просмотров

Режим Emacs для Go?

Есть ли подходящий режим Emacs для Go?Режим C не работает без точки с запятой.Лучшее, что я нашел, - это режим JavaScript Карла Ландстрома , поскольку JavaScript также неТочки с запятой не требуются.

19
голосов
4ответов
11425 просмотров

Как я могу скомпилировать программу Go?

Я получил Go для компиляции: 0 известных ошибок;0 неожиданных ошибок и набрал "привет, мир": package main import "fmt" func main() { fmt.Printf("Hello, 世界\n") } Затем я попытался скомпилировать его, но ничего не вышло: $ 8c gotest2 gotest2: 1 не функция gotest2: 1 синтаксич...

15
голосов
9ответов
10884 просмотров

Getopt-подобное поведение в Go

Как правильно проанализировать список параметров программы и автоматизировать обработку "--help" и / или "--version" (например, "program [-d value] [--abc] [FILE1]") в Go?

8
голосов
3ответов
3862 просмотров

Можете ли вы определить, сколько потоков создаст данное количество горутин?

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

5
голосов
3ответов
2314 просмотров

Решает ли Google Go-language проблемы в сообщении Пола Грэма «Почему Arc не особенно объектно-ориентирована»?

Решает ли Golang Google проблемы с языками, о которых говорится в сообщении Пола Грэма ' Почему Arc не особо объектно-ориентирована '?

3
голосов
1ответов
958 просмотров

Можно ли в Go сделать call-cc?

Можно ли выполнить вызов с текущим продолжением в новом языке Google Go ?

175
голосов
12ответов
105005 просмотров

Как использовать C ++ в Go

Как вызвать код C ++ в новом языке Go ?Другими словами, как мне обернуть свои классы C ++ и использовать их в Go?