Pull to refresh

Comments 20

А ты можешь попросить нейронку, чтобы чуть покороче генерировала статьи?

Это моя нейронка просит, если что, устала читать. Говорит, что она тоже не железная (врёт).

Я переписываю xenforo с php на django/python - чесно говоря работает в 5-10 быстрее и убрал 90% всякого vendor мусора 90% ошибок прошлого (там как-бы всё как в PSR помните это?) Но на самом деле это все здорово но очень тупо - так как больше нету нужды в загрузчике - помните для composer и vendors?

И если дальше улучшить то и этот django-xf перепишу на pythorust...

Если нейронками делаете то поделитесь как это лучше делать

Но я просто через deepseek (copy & paste) на android + termux + NMM Files Manager даёт прямой доступ к всему в termux - а ещё стоит AutoStart Manager, для запуск termux + .bashrc для запуска сервисов всех одновременно

Там мои сайты и код и python, php, mariadb, cron, Django, xenforo 2.3.10

Ещё туда ррокинул туннель через cloudpub - доступ к всему через сеть интернет

Это круто и здорово 👍 только termux берите через f-droid а не play market

Если два телефона то можно со второго на свой сайт неделями сидеть

Xenforo, Nextcloud, WordPress, Django, Laravel, DLE и почти вообще все на samsung s21

Django PythRust это будущее веба...

Есть буквально все и всякое async, json, api...

Тип: лучше nonblocking sqlite чем mysql (mariadb)

Благодарю. Я буквально сегодня сделал порт с fastapi на ноду. Все прошло супер гладко. За 2 часа управился.

Вы имеете в виду node.js или что

Но это уже не совсем программирование - а хаккинг осторожно говоря - там все пакеты всяким ооп забиты и никакого фп...

Жалко это дер...мо какое

Даже go уже намного лучше - главное сразу переход из react мира в reflection или ast и никаких потом

Неправильный вопрос. Правильный — зачем брать не раст?

Долгое время компиляции, состояние экосистемы крейтов на уровне альфа-бета, куча потенциальных возможностей выстрелить себе в ногу(привет дропу future), необходимость тратить время на решение задач компилятора, а не бизнес решений, абсолютно кривая реализация async - можно продолжать и продолжать.

(привет дропу future)

Единственная реальная проблема здесь, остальное просто пропаганда

Как там дела с динамик async трейтами, работают из коробки? Как дела с рефлексией, она появилась? Как с временем компиляции, все еще пол часа потому что так не договорились сделать кэширование макросов и abi? Что там с контролем блокирующих операций - все еще один вызов мьютекса в async в одной библиотеке похоронит все приложение с thread pool starvation?

работают из коробки?

Если эта фраза намекает, что «не из коробки» они всё же работают (через крейт async_trait или что вы имеете в виду?), значит и проблемы в целом нет

Как дела с рефлексией

Не нужна, здесь вам не джава и не питон

Как с временем компиляции

Меня вполне устраивает, у некоторых C++ приложений время компиляции ещё больше

Что там с контролем блокирующих операций

То же самое, что и в любом другом языке — Rust не обещал защищать от логических ошибок

 они всё же работают 

через костыль, да.

Не нужна

Да, сделать 5(пять) способов метапрограммирования и не осилить сделать рефлексию, после чего заявить "она вам не нужна" - настоящий раст путь.

Меня вполне устраивает

А David Tolnay не устраивало, но кто он такой. Как там кстати с его отменой?

То же самое, что и в любом другом языке

В том же C# этой проблемы нет, async метод с await внутри lock просто не скомпилируется. И в Go этой проблемы нет, запаркуется горутина, а не поток ос. И в erlang/elixir этой проблемы нет, там в целом пожалуй лучшая реалиазция concurrency из всех, с акторной моделью и деревьями супервизоров. Раст же обещал fearless concurrency и наврал. А еще обещал memory safety и тоже наврал(наш привет циклам в Rc/Arc). Ну или как говорят фанатики раста "ваши ожидания это ваши проблемы мы имели ввиду другое".

через костыль, да.

Ну вы хитренький, сделать lock частью синтаксиса языка C# так-то тоже костыль (в C# много таких костылей). При желании ничего не мешает сделать похожий процедурный макрос и для раста и запретить вызывать mutex.lock() напрямую. Вы, кстати, не забывате запретить прямой вызов System.Threading.Lock.Enter() внутри асинхронных методов в C#?

А David Tolnay не устраивало

Его личные проблемы

И в Go этой проблемы нет

Зато в Go есть убогий defer, который помножает все его достижения в «лучшей реализации concurrency из всех» на ноль

(наш привет циклам в Rc/Arc)

Как с их помощью в safe Rust выполнить небезопасную операцию с памятью (double free, buffer overflow и т.п.)?

 небезопасную операцию с памятью 

А причем тут небезопастная операция, если с их помощью можно просто мемори лик сделать?

убогий defer

ну не менее убогий чем drop

 lock частью синтаксиса языка C# так-то тоже костыль

В расте даже этого не смогли.

При желании ничего не мешает сделать похожий процедурный макрос

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

Его личные проблемы

Да, вот только бы не он, с его serde, syn, thiserror, cxx и anyhow, раст давно был бы мертв.

А причем тут небезопастная операция, если с их помощью можно просто мемори лик сделать?

При том, что утечка памяти штука хоть и обидная, но никак не нарушает упомянутый вами memory safety

ну не менее убогий чем drop

Более убогий чем drop, потому что drop автоматический, а defer надо не забыть самостоятельно написать

В расте даже этого не смогли.

Или просто никто до сих пор не отправил соответствующий фичреквест?

Но в целом и без специального синтаксиса можно жить, предупреждение тоже сойдёт https://github.com/rust-lang/rust/issues/83310

И как вы заставите другие крейты использовать ваш макрос?

И как вы заставите другие C#-библиотеки использовать синтаксическую конструкцию lock? Им никто не запрещает игнорировать существование части синтаксиса языка

serde, syn, thiserror, cxx и anyhow

Несмотря на их популярность, я читал немало ругани про них, так что кто знает, может, если бы их не было, кто-нибудь другой изобрёл бы что-нибудь ещё более крутое

Раст это для Пети (pythorust) - это как нано ускоритель всяких enum или sortable, также через rust можно gc или alocations без участия самого python а к тому же через Rust возможно будет использовать Ai прямо на вашем устройстве или в проектах django с fast api

Вот какие возможности спрятаны там в rust без задействования python это как 2 языка одновременно - rust работает на ядре и если в django надо скопировать файл то python передаёт управление rust а тот уже syscall в ядро системы и таким образом ос все сделает за вас без ошибок и очистит память (если куча файлов и async) <- то есть это делает тоже rust автоматически без python

Таким образом ваш django сайт содержит в 10 раз меньше кода если rust библиотеки всё сделают - даже websockets или api db json router и entities manager + dispatcher, cache для django могут работать на rust (независимо от python) а сам сайт django работает далее на python (там только статика) таким же образом можно заставить laravel на php работать через rust (или даже go)

Sign up to leave a comment.

Articles