Anonymous 06/04/2019 (Tue) 13:58:03 No.1860 del
(62.96 KB 809x374 b.png)
Кстати, библиотека repr (будет) is language and coding neutral и одни и те же значения (например числа) могут быть репрезентованы по-разному, в зависимости от кодинга и лейаута. При этом лейаут может быть языковым + ещё дополнительно. И в итоге вполне возможно репрезентовать как в десятичные ASCII числа, так и в шестнадцатиричные ASCII числа (0...F), так и в английские имена числительные, так и юникодные русские имена числительные или ещё что-то, например Майя или кого там 20-ричные числа. А юникод это большой стандарт. В repr основной тип — text, он состоит из char, а char из int. char должен представлять один глиф. Я видел статью на хабре, где несколько эмодзи объединяли, получая один глиф.
Ещё я хотел сделать так, чтобы в типе можно было прописать так:
struct {
func (self,кодинг,лейаут) r 'repr';
} a
и тогда бы при пересылке a в repr(), оно бы исполнило функцию r. Но после того как я отказался от динамизации типов во время исполнения это ушло. Возможно в метапрограммирование laisi надо будет добавить такую возможность. Типа
@template with T func ([T data]) repr := {
@ifhas T repr
return data.repr()
@endif
};

Получается, что библиотека repr будет сильно расти в своей функциональности, но это ничто по сравнению с math, где не только тригонометрические функции и логарифмы, но и пересечения фигур, преобразования координат, возможно будет дифференцирование и интегрирование по табличным данным, обсчёт площади и объёма фигур образованных математическими функциями, ух, так можно и математику выучить.



Я искал для линукса оффлайн-транслейтер, чтобы не использовать гугл-транслейтер, но не нашёл, который мне подошёл бы. Возможно придётся писать самому. С другой стороны это дополнительный XP, который даст мне лучше понимать мир.