LINUX.ORG.RU

Сообщения RazrFalcon

 

Там опять Go ругают

Форум — Development

сабж

Статья вызвала бурю эмоций на HN.

Сама статья мне очень понравилась. Очень красочно описывает моё отношение к Go.

This fake “simplicity” runs deep in the Go ecosystem. Rust has the opposite problem - things look scary at first, but it’s for a good reason. The problems tackled have inherent complexity, and it takes some effort to model them appropriately.

Ну или как я люблю говорить: Go примитивный, а не простой.

PS: Работа со строками в Go напомнила недавний холивар (C рулит и педалит.). @grem’у понравится. Путь к файлу содержит недопустимые символы? Та забей!

@WitcherGeralt

 , ,

RazrFalcon
()

Как сгенерировать доку для одного файла?

Форум — Development

Есть скрипт на питоне состоящий из одного файла. Пытаюсь сгененировать для него доку (html страничку), но sphinx брыкается и не хочет ничего делать. Провозился уже больше часа - толку 0. Уже ошибок 10 разных видел. Что не так с этим питоном?

Даже doxygen более вменяемый. И уже тем более cargo doc --open.

 

RazrFalcon
()

beef - новый системный ЯП

Форум — Development

https://www.beeflang.org/

Особенности:

  • По заявлению автора, представляет собой смесь C++ и C#, с небольшими вкраплениями Rust.
  • Без GC, JIT и тому подобного.
  • Развивается параллельно с IDE (написана на самом beef и собственном тулките). Дизайн языка развивается с учётом удобства разработки IDE.
  • Автор делает упор на удобную отладку с помощью дебаггера, а не print.
  • Умеет все модные фичи: ADT, pattern matching, лямбды, дженерики, миксины, кортежи, опциональные типы и тд. Но не гарантирует null-safety.
  • Поддерживает рантайм рефлексию.
  • Не использует исключения. Используется тот же подход что и в Rust: Result + panic.
  • Проверяет проблемы с памятью в рантайме в отладочной сборке. В релизной сборке всё как в C/C++.
  • Предоставляет лёгкое взаимодействие с C/C++ кодом (не уверен в каком виде).
  • Основан на ворованном LLVM. Как будто кто-то сомневался.
  • Автор пилит язык последние 5 лет full-time.

Простой пример:

static Result<uint> GetMinusOne(uint i)
{
    if (i == 0)
        return .Err;
    return .Ok(i - 1);  
}

void Use()
{
    /* Handle result via a switch */
    switch (GetMinusOne(i))
    {
        case .Ok(let newVal): Console.WriteLine("Val: {}", newVal);
        case .Err: Console.WriteLine("Failed");
    }

    /* This invokes an implicit conversion operator, which will be fatal at runtime if an error is returned */
    int newVal = GetMinusOne(i);

    /* Result<T> contains a special "ReturnValueDiscarded" method which is invoked to facilitate failing fatally on ignored returned errors here */
    GetMinusOne(i);
}

В целом ближе к D, чем к Rust, так как содержит намного меньше гарантий.

 , ,

RazrFalcon
()

GTK приложения открываются не в фокусе

Форум — Desktop

Какая-то напасть случилась - GTK приложения открываются не в фокусе. То есть они появляются под текущими, открытыми окнами. Кто сталкивался?

Появилось пару месяцев назад. Думал и без меня пофиксят. Но уже несколько обновлений кед пришло, а воз и ныне там.

 , ,

RazrFalcon
()

C# 9 опережает Rust?

Форум — Development

Тут выложили обзор фич C# 9, и там очень много ФП и странного синтаксиса (привет @WitcherGeralt).

Sum Types:

enum class MixedType  
{  
  Person P;  
  ByteOrBool U;  
}

var person = new Person()  
{  
  Firstname = "Bassam";  
  Lastname = "Alugili";  
};  
  
var unionRecord = new MixedType.P(person);
var unionType1 = new MixedType.U(B true);
var unionType2 = new MixedType.U(Y 86uy);

Pattern matching:

public class GenericClass<T> where T : T1 | T2 | T3 

var crazyCollectionFP = new List<int|double|string>{1, 2.3, "bassam"}; 

var result = x switch { true => "Successful", false => 0 }; 

Типы аля Rust:

public class None {}  
public typealias Option<T> = T | None; 
public typealias Result<T> = T | Exception; 

Некое чудо-юдо для автоматической проверки на null:

void M(List<int> list, uint? u)  
{  
  IEnumerable<int> x = list ?? new[] { 1, 2 };  
  var l = u ?? -1;
}  

Что значит uint? - без понятия.

Проверка аргумента на null:

void DoSomething (string txt!)  
{  
  …  
} 

Lambda discard parameters (хз как перевести):

Func zero = (_,_) => 0;  
(_,_) => 1, (int, string) => 1, void local(int , int);

Атрибуты аргументов (опять как в rust):

static bool LocalFunc([NotNull] data)  
{  
  return true;  
} 

Нативный int:

nint nativeInt = 55; // take 4 bytes when I compile in 32 Bit host.  
nint nativeInt = 55; // take 8 bytes when I compile in 64 Bit host with x64 compilation settings.

nuint nativeUnsignedInt = 55; 

А @eao197 говорил, что u32 - это дно. Оказывается нет.

Указатели на функцию (неужели до этого не было?):

unsafe class Example  
{  
  void Example(Action<int> a, delegate*<int, void> f)  
  {  
    a(42);  
    f(42);  
  }  
} 

В целом радует, что идут в сторону ФП и null-safety, но в итоге получаем второй C++, в котором на любой чих есть с десяток конструкций. Что в конечном итоге убивает экосистему.

 , ,

RazrFalcon
()

Сборка ядра во время загрузки

Форум — Talks

В связи с релизом 3960X и 3970X, из которых последний собирает ядро линя с дефолтным конфигом за 24 сек, и анонсом 3990X, у которого будет 64 ядра/128 потоков - задумался о сборке ядра во время загрузки. Думаю с кастомным конфигом можно уложится в 5 сек. Смысла особого нет, но затея интересная.

 ,

RazrFalcon
()

Про треш, который atsym тащит на лор

Форум — Linux-org-ru

Вот что это такое Infra Red Scanner — свободный приёмник-передатчик IrDA-сигналов на базе Arduino ?

Какой-то noname говнокод, который тс нашёл в какой-то помойке. Зачем это на лоре? Это или клинический тупизм или унылый троллинг.

Язабан.

 

RazrFalcon
()

3950x снова с нами, в два раза быстрее 9900k

Форум — Talks

 ,

RazrFalcon
()

Ищу планшет с десктопной ОС

Форум — Linux-hardware

Надоело бороться с мобильными огрызками - хочу ноут без клавы, или складной, с обычным железом и Windows/Linux.

Задачи: инет, фильмы, книги.

Бюджет <$1000 (знаю, что мало)

Самый очевидный вариант - Lenovo IdeaPad, но хз насколько оно юзабильно и можно ли туда поставить линукс. Ну и весит от полтора кило.

Другой вариант - Microsoft Surface, но он или адски дорогой либо дохлый. Да и линукс туда наверное не втулить.

Надеюсь у кого-то из лоровцев есть опыт.

 ,

RazrFalcon
()

Великобритания заказала суперкомпьютер Archer 2 с 11696-ю процессорами AMD Epyc Rome

Форум — Talks

11696 процов/748544 ядра на частоте 2.2GHz.

Источник

 

RazrFalcon
()

pulseaudio щелкает при переключении частоты дискредитации

Форум — Desktop

Решил потыкать pulseaudio на генту - и сразу же словил кучу багов.

Самое раздражающее - щелчки при переключении частоты. Если плеер играет трек с 48kHz, а следующий трек уже 44.1kHz, то происходит щелчок и звуковуха (внешняя, usb) как бы перезапускается. С альсой такого нет.

В арче то же самое.

Есть решения или только перекатываться обратно на альсу?

 ,

RazrFalcon
()

macOS Catalina дропает поддержку 32-х битных приложений

Форум — Talks

Ака больше никакого multilib, по-нашему.

Как вам такой поворот? С одной стороны игр на маке и так не было, так что не велика потеря, но весь старый софт тоже умирает.

В принципе я и на лине держу мультилиб только для старых игр (> 10 лет), ибо всё остальное всё равно не работает. Но решение всё равно радикальное.

 ,

RazrFalcon
()

Nvidia не виновата, виноват Intel

Форум — Talks

Долгие годы я винил nvidia в тормозах KDE/Qt и не только. Странные фризы, тормозящий ресайз окон, тормоза при плавной прокрутке в браузере и Sublime (даже на винде), тиринг!!111

Но стоило мне сменить Intel на AMD, как мои волосы стали мягкими и шелковистыми. Анимации и ресайз окон стали плавными. Тиринга нет из коробки! И плавная прокрутка теперь не заставляет Xorg вешать одно ядро целиком.

Как это объяснить? Несовместимость Intel и nvidia? Неудачная комбинация CPU/GPU/RAM/motherboard?

 , , ,

RazrFalcon
()

Ну что, Матрица 4?

Форум — Talks

 

RazrFalcon
()

Планы на Qt 6

Форум — Development
  • Релиз планируется на конец 2020.
  • Строго-типизированный QML.
  • Опциональный JS.
  • Поддержка C++17 (но не уточняется в чём это будет выражаться).
  • QtWidgets упоминается ровно два раза и то вскользь. Видимо ненужно, а жаль.
  • Обещают сильно не ломать.

В целом много воды и мало конкретики.

Источник

 

RazrFalcon
()

Gentoo без Python 2?

Форум — Desktop

Решил попробовать выпилить python2 из генту, так как он через 4-е месяца помирает, - результаты не очень.

43 пакета пересобрались без проблем, а 10 по-прежнему имеют жёсткую зависимость от python2:

app-text/gnome-doc-utils
dev-java/javatoolkit
dev-vcs/git 
gnome-base/gconf 
media-gfx/inkscape
media-gfx/uniconvertor
net-fs/samba
net-libs/nodejs
net-misc/dropbox-cli
sys-devel/clang 

Ну и skia/gn, но их нет в репе.

Я так понимаю, что python2 к новому году не выпилят, а просто оставят неподдерживаемую версию?

UPD: dev-vcs/git

 ,

RazrFalcon
()

О личной неприязни

Форум — Linux-org-ru

@jollheef уже в который раз проявляет нездоровый интерес к моей персоне.

За 3 года посещения лора, мои сообщения вызвали недовольство модераторов ровно два раза (если память не изменяет, хз как посмотреть историю). И оба раза за сообщение в адрес @jollheef. И оба раза без оскорблений. И оба раза про Go.

Последний эпизод:

jollheef:

Ладно Rust’ом набрасываешь, он пусть и уродлив, но хотя бы живой. А D то зачем тащить? Он успел сдохнуть еще до тех пор, пока начал активно использоваться.

Я:

Зачем гоферам лезть в чужую тему?

Сообщение удалено jollheef по причине 4.3 Провокация flame (-7) Ответ на: комментарий от jollheef 16.07.19 20:19:36

То есть наезжать на Rust - ок, наезжать на Go - бан.

 

RazrFalcon
()

Ну что, Zen 2?

Форум — Talks

3900x мощнее 9900k почти во всех тестах (кроме single thread). Кто бы мог подумать, что спустя более чем 10 лет AMD снова возьмёт верх.

https://www.guru3d.com/articles_pages/amd_ryzen_7_3700x_ryzen_9_3900x_review,...

 , ,

RazrFalcon
()

Кто додумался впихнуть spidermonkey в polkit?

Форум — Desktop

Прилетело обновление polkit, и он теперь хочет spidermonkey. Я его сначала проглядел, а когда сборка упала с ООМ (у меня 8ГБ) уже заметил...

Что творится-то? Я слабо себе представляю зачем нужен polkit, но зачем ему JS я представляю ещё меньше.

Пока замаскировал пакет, а там видно будет.

 

RazrFalcon
()

resvg 0.7 — библиотека отрисовки SVG

Новости — Open Source
Группа Open Source

Вышел новый, значительный релиз библиотеки для растеризации SVG - resvg.

( читать дальше... )

>>> Репозиторий

 , ,

RazrFalcon
()

RSS подписка на новые темы