[09:33:29] <ada_ru> (Eugene) цитирует (awkravchuk)
Ну и потом, писать на ЯП, который младше хотя бы лет двадцати - это, как мне кажется, попахивает педофилией.
[11:44:36] <ada_ru> (zloidemon) А у кого-нибудь есть корректный конфиг для gps на hidpi под linux?
[20:59:53] <ada_ru> (d_krasilnikov) спецы, поясните проблему... пишу type Colors is ('#','#');, где вместо решётки символы \u2588 и \uA0... gnatpp обрабатывать такое отказывается, но если \uA0 заменить на \u2581 например, то работает нормально. Вместо кодов, естественно, в тексте реальные символы.
[21:00:29] <ada_ru> (d_krasilnikov) Такое ощущение что gnatpp с багом.
[22:07:18] <ada_ru> (Максим) Это в utf8 кодировка? Надо указать кодировку в опциях или в проекте
[22:08:17] <ada_ru> (Максим) 0xA0 не может быть в utf8
[22:09:55] <ada_ru> (I_vlxy_I) А напомните, как в Аде оформляется случай, если функция может вернуть, а может и не вернуть значение (вернуть пустое)? Не возврат значения это частый вариант, поэтому исключение не катит.
[22:24:55] <ada_ru> (Eugene) отвечает (I_vlxy_I) на <А напомните, как в А…>
вернуть null?
[22:25:40] <ada_ru> (Eugene) 7
You can emulate nullable types using variant records:
type T_MyType(Is_Null : Boolean := True) is
record
case Is_Null is
when False =>
field1 : Float
field2 : Boolean
when True =>
null; -- no parameters
end case;
end record
-- Example "Null" value. Trying to use field1 or field2 will
-- result in an exception as they are not available when Is_Null
-- is set to True
Null_MyType : constant T_MyType := (Is_Null => True);
This type has no parameters by default (Is_Null is True by default). For large types, you may have to be careful returning one of these as it might be expensive (you would need to see your compiler vendor to find out if it has optimization for this).
https://stackoverflow.com/a/57701604
[22:25:52] <ada_ru> (I_vlxy_I) отвечает (Eugene) на <вернуть null?>
Указатель? А где размещать значение? Не в куче же
[22:26:26] <ada_ru> (Eugene) отвечает (I_vlxy_I) на <Указатель? А где раз…>
в хаскелле все всегда всё на куче держат и норм, аде тоже не зазорно )))
[22:28:35] <ada_ru> (I_vlxy_I) отвечает (Eugene) на <в хаскелле все всегд…>
В пекло хаскель
[22:42:51] <ada_ru> (d_krasilnikov) отвечает (Максим) на <0xA0 не может быть в…>
это ещё почему? 00А0
[22:49:09] <ada_ru> (Максим) Ну я имел ввиду такой байт.
[22:49:17] <ada_ru> (I_vlxy_I) отвечает (Eugene) на <You can emulate null…>
Это идеоматично?
Максим так реально пишут?
[22:51:23] <ada_ru> (Максим) ada_language_server/lsp-generic_optional.ads at master · AdaCore/ada_language_server · GitHub
https://github.com/AdaCore/ada_language_server/blob/master/source/protocol/lsp-generic_optional.ads
[22:51:55] <ada_ru> (I_vlxy_I) отвечает (Максим) на <ada_language_server/…>
Спасибо! als как идеоматичный кода кусок на Аде 🙂 ну, почти.
[22:52:30] <ada_ru> (Максим) 😁
[22:55:41] <ada_ru> (Максим) отвечает (d_krasilnikov) на <Такое ощущение что g…>
Вы с проектным файлом его запускаете? В нем есть -gnatW8?
[23:32:24] <ada_ru> (d_krasilnikov) отвечает (Максим) на <Вы с проектным файло…>
речь не идёт о сборке проекта, а только о его обработке gnatpp
[23:33:42] <ada_ru> (d_krasilnikov) и преттификатор ломается на символе неразрывного пробела в тексте (utf8 и с bom и без)
[23:36:16] <ada_ru> (d_krasilnikov) я пока не выяснил, ломается ли он на неразрывном пробеле в качестве литерала, завтра скажу...
[23:37:36] <ada_ru> (I_vlxy_I) а нельзя ему зарядить явным образом, что там utf8?
[23:38:32] <ada_ru> (d_krasilnikov) пробовал, никакой реакции
[23:38:33] <ada_ru> (I_vlxy_I) какой-нибудь аргумент вида --wide-character-encoding=8
[23:39:09] <ada_ru> (I_vlxy_I) но это я так, не факт что у него такой аргумент есть
[23:40:17] <ada_ru> (d_krasilnikov) есть, именно этот аргумент и подавался
[23:40:23] <ada_ru> (d_krasilnikov) никакой реакции
[23:40:40] <ada_ru> (d_krasilnikov) до завтра