Size: a a a

2020 March 11

r

red75prime in rust_offtopic
λоλторт
тут не обычный иф, тут инлайн лямбда с введением никому не нужного дополнительного имени b в скоуп
Хорошо. Обычный if в control flow вызывает необходимость в введении отдельной функции
источник

p

polunin.ai in rust_offtopic
https://t.me/libmustdie/4142 это что, кто-то скинул отсюда?
источник

p

polunin.ai in rust_offtopic
Просто я этот мем стырил с профунктора полгода назад, и снова выложили его😂
источник

EG

Emmanuel Goldstein in rust_offtopic
Так что C тут, кажется, не знает T-34, а не мы.
источник

G

Gymmasssorla in rust_offtopic
Emmanuel Goldstein
Так что C тут, кажется, не знает T-34, а не мы.
+
источник

λ

λоλторт in rust_offtopic
red75prime
Хорошо. Обычный if в control flow вызывает необходимость в введении отдельной функции
функции денег стоят чтоли? можно было и так написать:
(h:tl) -> do
 valid <- CmdRun.validScript h
 pure $ if valid
   then Just $ h :| tl
   else Nothing

Стал ли код от этого лучше? Ну лучше чем вариант в исходниках точно стал, но всё ещё есть куда стремиться
источник

EG

Emmanuel Goldstein in rust_offtopic
Хотя, справедливости ради, gcc и clang оба выдают true на (0x0 == NULL), даже несмотря на то, что это напрямую противоречит стандарту
источник

DF

Dollar Føølish in rust_offtopic
Не совсем
источник

DF

Dollar Føølish in rust_offtopic
NULL это просто макрос
источник

EG

Emmanuel Goldstein in rust_offtopic
NULL не имеет права быть равен валидному указателю
источник

DF

Dollar Føølish in rust_offtopic
Именно макрос?
источник

EG

Emmanuel Goldstein in rust_offtopic
Значение NULL. То, что оно макрос — implementation detail
источник

G

Gymmasssorla in rust_offtopic
Emmanuel Goldstein
Хотя, справедливости ради, gcc и clang оба выдают true на (0x0 == NULL), даже несмотря на то, что это напрямую противоречит стандарту
Левая часть же преобразуется в указатель, а два NULL указателя равны
источник

EG

Emmanuel Goldstein in rust_offtopic
Только у меня на тот момент был валидный указатель на 0x0.
источник

EG

Emmanuel Goldstein in rust_offtopic
А валидный указатель не может быть равен NULL.
источник

G

Gymmasssorla in rust_offtopic
Emmanuel Goldstein
Только у меня на тот момент был валидный указатель на 0x0.
Твой 0x0 - это "null pointer constant", которое в силу слабой типизации конвертируется в нулевой указатель
источник

EG

Emmanuel Goldstein in rust_offtopic
> If a null pointer constant is converted to apointer type, the resulting pointer, called anull pointer, is guaranteed to compare unequalto a pointer to any object or function.
источник

EG

Emmanuel Goldstein in rust_offtopic
Gymmasssorla
Твой 0x0 - это "null pointer constant", которое в силу слабой типизации конвертируется в нулевой указатель
На самом деле я сравнивал pa == NULL.
источник

EG

Emmanuel Goldstein in rust_offtopic
pa — это корректный указатель, который мне вернул mmap()
источник

Т8

Т-34 85 in rust_offtopic
Emmanuel Goldstein
Тогда определи, что такое «null» для начал
Исходно - адрес 0х0, что эквивалентно просто 0
источник