Size: a a a

2020 January 02

AZ

Alex Zhukovsky in rust_offtopic
просто потрать 10 минут и все станет ясно
источник

A

Alexander in rust_offtopic
ок, посмотрю
источник

A

Alexander in rust_offtopic
> Downcasting, for example, means you cannot entirely trust subclassing as a means of information hiding.

В го тоже такое есть, даже если функция принимает тип A (интерфейс) с одним методом, значение можно скастить в рантайме до другого интерфейса B, и по сути вызывать методы, которые не описаны в A
источник

A

Alexander in rust_offtopic
И хрен поймёшь, что функция может вызвать, такое себе
источник

IB

Ivan Boldyrev in rust_offtopic
@Psilon да, я знаю историю лиспа, и много на нем писал. В тч макросы 😁 Но твои слова не противоречат ли тому, как работает компилятор лиспа?
источник

OA

Oleg Andreev in rust_offtopic
мне кажется мидори пытался сделать две вещи в одном флаконе - жестко привязать реальные токены с т.з. ОС, с линейными типами внутри языка. Имхо, достаточно выдавать токены как MAC/VRF-строки (типа, подписанный креденшиал с идентификатором процесса/приложения, а так же того, к чему доступ и exp time), а внутри уже, в зависимости от языка, оборачивать в линейные типы чтоб повторить линейную модель внутри процесса, но не заставлять компилятор это поддерживать нативно.
источник

OA

Oleg Andreev in rust_offtopic
если твое приложение организует само себя через жопу (копирует токен куда угодно), то это его проблема. Все равно с т.з. ОС trust boundary - это весь процесс, а не его часть
источник

OA

Oleg Andreev in rust_offtopic
а вот выдать токен другому приложению процесс не может потому что он подписан только для него, и сискол с этим токеном из другого процесса не пройдет
источник

AZ

Alex Zhukovsky in rust_offtopic
Ivan Boldyrev
@Psilon да, я знаю историю лиспа, и много на нем писал. В тч макросы 😁 Но твои слова не противоречат ли тому, как работает компилятор лиспа?
я все о лишь сказал что утверждение "языки которые позвоилил писать макросы сами на себе появились позже" просто неверно, вот и все
источник

OA

Oleg Andreev in rust_offtopic
вместо VRF/MAC можно просто число - но тогда ОС должна держать глобальный список всех жетонов, а это не оч круто
источник

IB

Ivan Boldyrev in rust_offtopic
Alex Zhukovsky
я все о лишь сказал что утверждение "языки которые позвоилил писать макросы сами на себе появились позже" просто неверно, вот и все
Там ещё было слово "компилируемые", которые ты любезно опустил :)
источник

OA

Oleg Andreev in rust_offtopic
крипто-подпись позволяет ОС не хранить ничего вообще кроме как секретный ключ, доступный лишь ядру
источник

AZ

Alex Zhukovsky in rust_offtopic
Ivan Boldyrev
Там ещё было слово "компилируемые", которые ты любезно опустил :)
а лисп не компилировался7
источник

AZ

Alex Zhukovsky in rust_offtopic
In simplistic Lisp implementations, this list structure is directly interpreted to run the program; a function is literally a piece of list structure which is traversed by the interpreter in executing it. However, most substantial Lisp systems also include a compiler. The compiler translates list structure into machine code or bytecode for execution. This code can run as fast as code compiled in conventional languages such as C.
источник

OA

Oleg Andreev in rust_offtopic
а кто-нить компилил лисп в форт?
источник

OA

Oleg Andreev in rust_offtopic
вот это была бы синергия
источник

AZ

Alex Zhukovsky in rust_offtopic
Macros expand before the compilation step, and thus offer some interesting options. If a program needs a precomputed table, then a macro might create the table at compile time, so the compiler need only output the table and need not call code to create the table at run time. Some Lisp implementations even have a mechanism, eval-when, that allows code to be present during compile time (when a macro would need it), but not present in the emitted module.
источник

IB

Ivan Boldyrev in rust_offtopic
Alex Zhukovsky
а лисп не компилировался7
Не сразу.
источник

AZ

Alex Zhukovsky in rust_offtopic
Ivan Boldyrev
Не сразу.
тогда почему вики говорит что для лиспа есть компиляторы если их невозможно сделать?
источник

AZ

Alex Zhukovsky in rust_offtopic
А вообще это противоречит проекциям футамуры, так щто невалидное утверждение
источник