Size: a a a

2021 April 04

H

Hirrolot in rust_offtopic
эта штука поможет дифференцировать файлы
источник

H

Hirrolot in rust_offtopic
инклюдишь 1 раз в 1 файле офк
источник

H

Hirrolot in rust_offtopic
единственное ограничение что два эквивалентных gensym'а не должны быть на 1 строчке, но это терпимо
источник

EG

Emmanuel Goldstein in rust_offtopic
Подожди, как?
источник

H

Hirrolot in rust_offtopic
источник

H

Hirrolot in rust_offtopic
#ifndef ML99_PRIV_COUNTER
#define ML99_PRIV_COUNTER 0
#elif ML99_PRIV_COUNTER == 0
#undef ML99_PRIV_COUNTER
#define ML99_PRIV_COUNTER 1
#elif ML99_PRIV_COUNTER == 1
#undef ML99_PRIV_COUNTER
#define ML99_PRIV_COUNTER 2
#elif ML99_PRIV_COUNTER == 2
#undef ML99_PRIV_COUNTER
#define ML99_PRIV_COUNTER 3
#elif ML99_PRIV_COUNTER == 3

... и т.д. до 255
источник

EG

Emmanuel Goldstein in rust_offtopic
А.
источник

EG

Emmanuel Goldstein in rust_offtopic
Ну
источник

EG

Emmanuel Goldstein in rust_offtopic
Ну это сработает, наверное
источник

H

Hirrolot in rust_offtopic
осталось последнее решение вида

#include ML99_SETUP_COUNTER
в пользовательском коде или чтобы оно автоматически делалось в metalang99.h.

меня останавливает от автоматического решения в том, что оно с предскомпилированным metalang99.h не будет работать
источник

EG

Emmanuel Goldstein in rust_offtopic
С вложенными дефайнами можно было бы сделать, чтобы счётчик инкрементировался каждое использование, а не каждый инклуд
источник

EG

Emmanuel Goldstein in rust_offtopic
Но увы
источник

а

а это кто in rust_offtopic
почему тебе так Stack/Cabal не нравится
источник

а

а это кто in rust_offtopic
едиственный минус — Stack неоправданно медленный
источник

EG

Emmanuel Goldstein in rust_offtopic
Потому что они говно и костыль, ещё вопросы?
Анджеркаться мне сейчас влом
источник

а

а это кто in rust_offtopic
абстракция над абстракцией
источник

H

Hirrolot in rust_offtopic
даже хз как сделать. запретить предкомпилировать metalang99.h или явный #include ML99_SETUP_COUNTER
источник

а

а это кто in rust_offtopic
Ок
источник

EG

Emmanuel Goldstein in rust_offtopic
Они тормозные, кривые, и решают проблему самым идиотским способом среди всех языков, которые я видел, кроме C/++
источник

EG

Emmanuel Goldstein in rust_offtopic
Из-за хаскеллевских проблем с пакетированием у меня каждый день по сто апдейтов хаскеллевских пакетов прилетает, потому что у меня shellcheck установлен
источник