home.social

#mvu — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #mvu, aggregated by home.social.

fetched live
  1. Code, Force, Repeat. Олдскульный GUI для олдскульных скриптов. Часть 1. Экспозиция

    В этот раз я пришёл с двухчастным текстом про F#, тайппровайдеры, скрипты, спортивное программирование, MVU, консольные интерфейсы в стиле FarManager, низкоуровневый интероп с виндой, некоторое количество хаков ХМ и, внезапно, живопись. Причём только консольные интерфейсы с некоторой натяжкой можно назвать центральным элементом повествования, поэтому я понятия не имею, как должен выглядеть потенциальный читатель этой статьи. Будем исходить из предположения, что он либо достаточно опытен, либо у него достаточно времени и усердия, чтобы расковырять всё, что я не счёл должным разобрать детально ( я могу, но только за 16 глав ). Сегодня мы изучим небольшой .fsx -скрипт, который я ежедневно запускаю, чтобы получить очередную порцию задачек из архива codeforces.com. Необычно то, что скрипт функционирует как полноценное GUI-приложение, пусть и очень страшное старое. Кажется, что до меня так никто не делал, так что с осторожностью назову это авторской инновацией.

    habr.com/ru/companies/first/ar

    #f# #net #консольные_скрипты #консольные_приложения #mvu #fsx #codeforces #спортивное_программирование

  2. Developer experience has been my consistent focus when #Ratatui #Ruby and its #MVU runtime #Tea (The #Elm Architecture).

    For example, look at this great #Router #DSL! For most cases, this will save you a ton of code and headaches. But when you need full control, you've got it.

    Try it now: git.sr.ht/~kerrick/ratatui_rub

    Learn more: sr.ht/~kerrick/ratatui_ruby/

    #DeveloperExperience #DX #TUI #TerminalUserInterface #Software #Functional #Programming #SoftwareEngineering

  3. Today there's no game news but more general F# content from my side
    Some time ago I wrote an MVU package for Avalonia, it was not finished but I decided to give it a try again
    This time the project leans more on Avalonia itself rather than go full MVU, this offers an MVU API but, with more Avalonia native mechanisms like observable bindings
    Controls are created once and then just binds are updated which is quite performant!
    github.com/AngelMunoz/Mvuish.A

    #dotnet #fsharp #avalonia #mvu

  4. what if we could implement the MVU (Model-View-Update) pattern in GTK 4 in such a declarative way?

    last night I had this idea and quickly put together a sketch of how it might look in code. I should clarify that I haven't written a single line; it's 100% a thought experiment for now

    the thing would be to use JS/Rust/Vala for all state logic (Model/Update) and let Blueprint/XML define the UI (View) in a super clean way, connecting everything with data binding and messages

    here are the two snippets I came up with for this concept, which I called Styx (provisional name™)

    what do you think? do you see potential in an approach like this?

    #GTK #GNOME #MVU

  5. In his online book, Iced (the GUI library) explains that the Model-View-Update design pattern fits well with Rust because it is suited to purely functional languages. And libcosmic (based on Iced) in its own book goes even further: MVU adheres to Rust's “aliasing XOR mutability” rule².

    BTW I realize that MVU is not limited to simple apps if associated with an async mechanism.

    ¹ book.iced.rs/architecture.html (see "The Elm Architecture")
    ² pop-os.github.io/libcosmic-boo

    #RustLang #Iced #ibcosmic #MVU

  6. With MauiReactor we have another great option to do MVU and coded user-interfaces for .NET MAUI. With this framework you can build component-based UIs built on top of .NET MAUI to realize amazing cross-platforms apps.

    Thank you for this Adolfo! Everyone: let's not forget to star this repo and support Ado!

    youtube.com/watch?v=egklcAC9ar

    #dotnet #dotnetmaui #mvu #mauireactor