Email or username:

Password:

Forgot your password?
Top-level
Мя :sparkles_lesbian:

А я правильно понимаю, что в одной директории может быть только один голанговский package..? И при этом его имя совершенно не обязано совпадать с именем директории?

И чтобы всё было логично разделено по неймспейсам без неявных проникновений между файлами, получается нужно каждый файл закидывать в свою директорию..?

15 comments
SignPainter

@mo Всё так. Одна директория - один package (он же неймспейс), но таки принято, чтобы он совпадал с именем директории. Вот названия файлов внутри у тебя могут ни с чем не совпадать.

Мя :sparkles_lesbian:

@SignPainter круто, то есть внутри package творится локализованная вакханалия уровня сишных include

SignPainter

@mo не думаю, что оно там внутри что-то инклюдит. Скорее компилятор все файлы внутри package интерпретирует как один файл, который ты, жалкий человек, раскидал для своего удобства.
Внутри одного package у тебя единый неймспейс. Даже если нафигачишь кучу разных файлов - у них единая область видимости.
Когда ссылаешься на package из другого места - также видишь всё, что объявлено публично, не зависимо от имени файла.

Мя :sparkles_lesbian: replied to SignPainter

@SignPainter да какая разница что там внутри, снаружи это так же удобно как сишные инклюды (сишные инклюды абсолютно не удобны)

SignPainter replied to Мя

@mo я просто подумал, что ты спрашиваешь, создаёт ли куча разноимённых файлов внутри package какой-то оверхед. Насколько понимаю, не создают.

Мя :sparkles_lesbian: replied to SignPainter

@SignPainter они создают оверхед на того кто будет это читать, потому что вещи берутся в неймспейсе хз откуда, из какого-то файла, угадай

SignPainter replied to Мя

@mo это зависит от того, кто и как будет делить на файлы)

PS Go to definition - самая полезная фича этих ваших IDE :)

Мя :sparkles_lesbian: replied to SignPainter

@SignPainter очень полезная, но код иногда хочется просто бегло глянуть на гитхабе, а не грузить в IDE

SignPainter replied to Мя

@mo так это, на гитхабе же тоже есть эта фича.

Мя :sparkles_lesbian:

Кому там не нравилось что питон типо чувствительный к пробелам?

if (condition) {
do_something()
} else {
do_another()
}

Работает. Но стоит добавить перенос перед else...

if (condition) {
do_something()
}
else {
do_another()
}

...и всё падает. Это чувствительность к пробелам уровня баша блин.

А ещё:

do_something(
long, list, of, arguments, on, one, separated, line
)

тоже не работает, но собрав вызов функции в одну строчку ошибки компиляции пропали. Питон им блять не нравится, к пробелам чувствительный

Кому там не нравилось что питон типо чувствительный к пробелам?

if (condition) {
do_something()
} else {
do_another()
}

Работает. Но стоит добавить перенос перед else...

if (condition) {
do_something()
}
else {
do_another()
}

...и всё падает. Это чувствительность к пробелам уровня баша блин.

А ещё:

do_something(
long, list, of, arguments, on, one, separated, line
)

Мя :sparkles_lesbian:

Ну окей, я написала какой-то экспортер. Выглядит даже не слишком как говно, а то что есть можно списать на, кхм, крайнюю несовершенность языка.

Мя :sparkles_lesbian:

Осталось написать докерфайл, Github CI и катнуть впрод

Cyrmax

@mo
Это что Go что ли?

Cyrmax replied to Мя

@mo
Да ну, прикольный язык :)
Хотя я раб автоформата и автокомплита, поэтому многие вещи меня просто не тревожат.

Go Up