Форум программистов, компьютерный форум, киберфорум
Бета-тестирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
363 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,837
Записей в блоге: 14

C#.NStar

22.11.2020, 01:26. Показов 36644. Ответов 523
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
С чего всё началось
Мой язык программирования развивается, в очередной раз меняя название. Пятое название после C↑ᶜC, C#++, C with stations и временного Unnamed2 имеет вид "C# .NStar". Это название не вызывает никаких ассоциаций со стрелками, с "симбиозом плюсов и шарпа", со "станционным программированием", а вызывает единственную - то, что этот язык - прямое продолжение C#. Теперь вы убедились, что этот язык - не пустая болтовня, одна версия уже увидела свет, поэтому надеюсь, что очередная презентация возможностей C# .NStar хоть и подвергнется критике, но не приведет ни к чему плохому. Вот что уже работает:
1. Пространства имен.
2. Ошибки списком строк - теперь отображение n ошибок не займет время, пропорциональное n2, и вообще я по максимуму убрал конкатенацию строк в цикле, что является экстремально важным признаком качества языка.
3. Списки - не только возврат списка, но и переменные списочных типов.
4. Индексы - последний и самый сложный из перечисленных пунктов. Такой код успешно работает:
Code
1
2
list(3) int a = (((1, 2, 3), (4, 5, 6), (7, 8, 9)), ((10, 11, 12), (13, 14, 15), (16, 17, 18)), ((19, 20, 21), (22, 23, 24), (25, 26, 27)));
return a[1, 2, 3];
Но для того, чтобы выложить версию, этого мало. Это просто презентация.
А вот несколько будущих возможностей:
1. Оператор switch с лямбда-выражением. Это невероятно мощная конструкция! Позволит убрать очень много дублирования в условиях. Вот два примера:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if (task.StartsWith("Class "))
{
    return Action1(task.Substring("Class ".Length));
}
else if (task.StartsWith("Interface "))
{
    return Action2(task.Substring("Interface ".Length));
}
else if (task.StartsWith("Function "))
{
    return Action3(task.Substring("Function ".Length));
}
else if (task.StartsWith("Extent "))
{
    return Action4(task.Substring("Extent ".Length));
}
...
Code
1
2
3
4
5
6
7
8
return x => task == x + string s switch
{
    "Class " => Action1(s);
    "Interface " => Action2(s);
    "Function " => Action3(s);
    "Extent " => Action4(s);
    ...
};
Прошу обратить особое внимание на огромную мощь этой конструкции и написать, хотели бы вы ею воспользоваться или нет, и если нет, то почему.
2. Способ задания словаря будет отличаться от способа задания двумерного списка: ключ и значение будут разделяться оператором ":", а если словарь состоит из единственного элемента, доступного по всем ключам - достаточно указать один этот элемент. Пример:
Code
1
2
Dictionary[string, int] dic1 = ("Съешь": 1, "же": 2, "ещё": 3, "этих": 4, "мягких": 5, "французских": 6, "булок": 7, "да": 8, "выпей": 9, "чаю": 10, _: 0);
Dictionary[string, int] dic2 = -12345;
3. Оператор ![], позволяющий сменить внутренний тип коллекции без смены внешнего типа. Это позволит создать аналог LINQ нового поколения - Jaretorant, в котором не надо завершать каждое выражение функциями ToArray() или ToList(). Только посмотрите:
Code
1
2
3
4
() int oldList;
() real newList = oldList.TransformEach(x => 1r / x);
LinkedList[int] oldList2;
LinkedList[real] newList2 = oldList2.TransformEach(x => 1r / x);
А сама конструкция TransformEach записывается таким способом:
Code
1
2
3
4
5
6
7
8
9
10
Dictionary[(typename TSource, typename TCollection : IEnumerable[TSource], typename TDest), TCollection![TDest] Extent(TCollection source, Func[TDest, TSource] Transformator)] =
{
    TCollection![TDest] output = new TDest[source.Count()];
    int i = 0;
    for (TSource elem in source)
    {
        output[i++] = Transformator(elem);
    }
    return output;
}
P. S. Недавно я наткнулся на список торговых знаков Microsoft. Оказывается, там написано, что нельзя искажать, модифицировать или комбинировать с любыми словами, символами, изображениями или другими видами информации любые из этих торговых знаков. Но самих знаков немного: само слово "Microsoft", Windows, MSN, Bing, Skype, Microsoft Edge и еще один или два. C# там нет! Поэтому создать язык с названием C# .NStar мне ничего не мешает.


 Комментарий модератора 
Update от 09.02.2026


ПОБЕДА!!! C#.NStar достиг версии (Alpha RC) 0.9! Это первое приложение от Red-Star-Soft, когда-либо достигавшее подобной версии! (Фреймворк - это не приложение.) Теперь, надеюсь, я перестал быть "профессиональным недоделывателем"? И, надеюсь, я получу тест?
1. Работа с файлами.
2. При техническом крахе сохраняется лог во временную папку.
3. Потоки. Причем нет этого ужасного разбиения на две воюющих стороны - синхронные и асинхронные - переключение контекста происходит автоматически.
4. "Швейцарский нож" (оператор is, сопоставление шаблонов). Пока что реализованы семь шаблонов: константа, тип, тип с объявлением переменной, var с объявлением переменной, шаблон сравнения (больше/меньше), пустой шаблон (_) и составной шаблон - несколько шаблонов, объединенных операторами and, or, not. Есть одна замеченная, но не исправленная ошибка, что попытка применить шаблон сравнения не к числу вызывает технический крах. Возможно, в будущем исправлю.
5. Сокращенный оператор for - можно написать так:
Code
1
2
3
4
for (i in collection)
{
    ...
}
- или так:
Code
1
2
3
4
for (i in a..b)
{
    ...
}
6. Сокращенные константы - если есть ключевое слово const, необзательно писать var или тем более полный тип.
7. Записи (Record - с прописной буквы). В отличие от C#.NET, это по терминологии Мартина чистые структуры данных, имеющие свойства, совпадащие по именам и типам с параметрами, конструктор из эих параметров и стандартные методы Equals и GetHashCode и неспособные иметь другие методы и свойства.
8. Структуры (Struct - с прописной буквы).
9. Прототип полиморфизма в виде словарей от рекурсивного типа к классу, одним из следующих способов (ключевое слово Class в случае полиморфизма обязтельно брать в скобки):
Code
1
2
3
4
const [typename T, (Class)] ClassName = new(
{
    ...
});
Code
1
2
3
4
const ClassName = new [typename T, (Class)](
{
    ...
});
Code
1
2
3
4
const var ClassName = new [typename T, (Class)](
{
    ...
});
Code
1
2
3
4
const [typename T, (Class)] ClassName = new [typename T, (Class)](
{
    ...
});
Code
1
2
3
4
const [typename T : BaseType, (Class : BaseType2)] ClassName = new(
{
    ...
});
Code
1
2
3
4
const ClassName = new [typename T : BaseType, (Class : BaseType2)](
{
    ...
});
Code
1
2
3
4
const var ClassName = new [typename T : BaseType, (Class : BaseType2)](
{
    ...
});
Code
1
2
3
4
const [typename T : BaseType, (Class : BaseType2)] ClassName = new [typename T : BaseType, (Class : BaseType2)](
{
    ...
});
Словари от чисел, строк или других типов, кроме typename, пока лучше даже не пытаться создавать - они не работают!
10. Обработка исключений:
Code
1
2
3
4
5
6
7
8
try
{
    ...
}
catch (ExceptionType var) if (condition) // if, а не when
{
    ...
}
В текущей версии доступен базовый набор исключений: Exception, ArgumentException (включает в себя ArgumentNullException и ArgumentOutOfRangeException, хотя явно указать их нельзя), IndexOutOfRangeException, InvalidOperationException, NullReferenceException и IOException.
11. И самое невероятное - ПАКЕТНЫЙ МЕНЕДЖЕР!!! Вы можете подключить любой пакет, доступный в публичном репозитории NuGet - достаточно зайти в настройки и указать его имя.
Рабочие примеры кода на C#.NStar, в дополнение к предыдущим версиям:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
using System;
using System.Threading;
Class MyClass
{
    Constructor()
    {
    }
    int Function Sync()
    {
        var x = MyClass2.MyFunc(5);
        return x;
    }
    Task[int] Function Async1()
    {
        var x = MyClass2.MyFunc(5);
        return x;
    }
    Task[int] Function Async2(int n)
    {
        return n * n;
    }
}
 
static Class MyClass2
{
    Func[Task[int], int] MyFunc = new MyClass().Async2;
}
 
return new MyClass().Async1();
Code
1
2
3
object item = "Welcome!";
if (item is string text)
    return text;
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
abstract Class BaseStack
{
    required typename T { get, init };
    
    abstract T Function Peek();
    abstract T Function Pop();
    abstract null Function Push(T item);
}
 
const [typename T, (Class : BaseStack[T])] Stack = new(
{
    private () T list = new(32);
 
    T Function Peek()
    {
        return list[^1];
    }
 
    T Function Pop
    {
        return list.GetAndRemove(list.Length - 1);
    }
 
    null Function Push(T item)
    {
        list.Add(item);
    }
});
 
BaseStack[int] intStack = new Stack[int]();
intStack.Push(5);
intStack.Push(10);
var x = (intStack.Pop(), intStack.Peek());
BaseStack[string] stringStack = new Stack[string]();
stringStack.Push("A");
stringStack.Push("B");
var y = (stringStack.Pop(), stringStack.Peek());
return (x, y);
Code
1
2
3
4
5
6
() int list = new();
for (i in Chain(0, 10)) while (i * i % 20 < 10)
{
    list.Add(i);
}
return list;
Code
1
2
3
4
5
6
int n = 0;
for (i in 1..1000)
{
    n++;
}
return n;
Code
1
2
3
Record Pair(string Name, int Value);
Pair pair = new("Status", 100);
return pair;
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
const [typename T : IComparable[T], (Class)] Repository = new(
{
    private () T items = new();
 
    null Function Add(T item)
    {
        items.Add(item);
    }
 
    T Function GetMax()
    {
        if (items.Length == 0)
            return null;
        return Max(items);
    }
});
 
Class Product : IComparable[Product]
{
    int Id;
    int Function CompareTo(Product product)
    {
        return Id.CompareTo(product.Id);
    }
}
 
var repo = new Repository[Product]();
repo.Add(new Product[1]());
repo.Add(new Product[5]());
return repo.GetMax().Id;
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
using System;
using System.IO;
try
{
    () int list = (1, 2, 3);
    return list.IndexOf(1, 5);
}
catch (ex) if (ex is not ArgumentException)
{
    return 1;
}
catch (ex)
{
    return "" + ex.Message;
}
return 2;
P. S. Можно также скачать из облаков, ссылка на странице версии.
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.11.2020, 01:26
Ответы с готовыми решениями:

Мелкомягкие мыслят местами точно как и я или следят за моим компьютером и крадут идеи, записанные на нем для C# .NStar?
Кто знает? Вот неполная цитата из файла, созданного в феврале этого года: А тут оказывается, что...

Стал ли .NStar в меньшей степени "сборной солянкой"?
sau, это тема для вас! Хотя обоснованные, не содержащие трёпа и троллинга мнения других...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
523
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,697
Записей в блоге: 29
10.02.2026, 19:31
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
В чем разница классов и структур
пошел, прочел, написана белиберда с отсылкой на вики, а про класс вообще вот все что написано, это буквально все
Class
С прописной буквы.
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
А int - это что? На чем он построен, как его представлять? Так же и со строкой - это примитивные типы.
потому и не хотят тебе помогать и с тобой общаться, ты сразу включаешь дурака. Отвечаю: инт - это целое число, его надо представлять как число, границы его такие то. А строка во многих ЯП именно массив/список символов. Ты же пишешь что в твоем ЯП это НЕ список символов, тогда что? Как она представлена в памяти? Как мне удобнее ее себе представить, если я пришел с опытом другого ЯП, где она именно список символов?

Новичку твоя дока противопоказана, так как с каждым новым "определением" она вводит все новые сущности не объясняя их. Я вот тебе написал, а ты начал огрызаться, ну сходи посмотри документацию. Например языка Джулия или Эликсир, там как раз есть и строки и стракты
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
363 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,837
Записей в блоге: 14
10.02.2026, 20:21  [ТС]
Цитата Сообщение от Welemir1 Посмотреть сообщение
пошел, прочел, написана белиберда
Не понял, что именно не так написано? Структура не является типом значения? Она может иметь производные? Или сама может быть производной от класса? (Или от делегата?!)
Цитата Сообщение от Welemir1 Посмотреть сообщение
Отвечаю: инт - это целое число, его надо представлять как число, границы его такие то. А строка во многих ЯП именно массив/список символов. Ты же пишешь что в твоем ЯП это НЕ список символов, тогда что? Как она представлена в памяти? Как мне удобнее ее себе представить, если я пришел с опытом другого ЯП, где она именно список символов?
Тогда отвечаю в таком же формате: строка - это кусок текста, ее надо представлять как последовательность текстовых символов в формате UTF-16LE, границы ее столько-то символов. Но последовательность (IEnumerable) - это не список. Она отличается от списка символов целым рядом методов, которые нельзя выразить через методы списка: регистр - только самый простой пример. Да, в памяти она представлена на низком уровне как список символов, но я сильно сомневаюсь, что новичок полезет на низкий уровень. А на уровне C#.NStar это примитивный тип ровно в той же степени, что и int или сам список.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,697
Записей в блоге: 29
10.02.2026, 20:42
ладно, давай пошагово. Вот цитата, я новичок, хочу начать с твоего языка

Struct
Объявляет структуру. Структура отличается от класса тем, что является типом значения, а не ссылочным. Подробнее здесь. У структуры нет производных, а сама структура может быть производной только от интерфейсов.
Что такое структура, где пример? Что такое "тип значения" и "ссылочный"? в разделе Типы нет ничего про это.
Что такое "производная" - из математики что-то?

Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
Или от делегата?
ага смотрим что же такое делегат? тут выше тебе четко показали как ты любишь терминами сыпать
Delegate
Ключевое слово зарезервировано (назвать так идентификатор нельзя), но на момент написания этих строк не имеет функционала.
и что же такое "делегат"?

Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
это примитивный тип
а где про это почитать, что в твоем ЯП является примитивным типом и почему? В разделе ТИпы ничего нет про это



НЕ ЯВЛЯЮТСЯ ТИПАМИ
Следующие конструкции имеют определенные признаки, делающие их похожими на типы, но они таковыми не являются и перечислены отдельно:

BitList
Класс (тип, но не примитивный).

null
Ключевое слово.
так битлист это тип или не тип? выше написано "не являются"

функция в твоем яп может вернуть null?
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
363 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,837
Записей в блоге: 14
10.02.2026, 20:59  [ТС]
Цитата Сообщение от Welemir1 Посмотреть сообщение
Что такое структура, где пример? Что такое "тип значения" и "ссылочный"? в разделе Типы нет ничего про это.
То есть я должен повторять текст из Википедии о том, что такое ссылочный тип и тип значения? Простой ссылки на уже давно написанное экспертами недостаточно?
Цитата Сообщение от Welemir1 Посмотреть сообщение
Что такое "производная" - из математики что-то?
Это какой же новичок знает про производную из математики? Разумеется, речь о базовых и производных типах, или я должен опять повторять текст из Википедии?
Цитата Сообщение от Welemir1 Посмотреть сообщение
и что же такое "делегат"?
Тут я должен повторить определение из документации оригинального C#, правильно я понял?
Цитата Сообщение от Welemir1 Посмотреть сообщение
а где про это почитать, что в твоем ЯП является примитивным типом и почему? В разделе ТИпы ничего нет про это
Опять повторять давно широко известное определение?
Цитата Сообщение от Welemir1 Посмотреть сообщение
так битлист это тип или не тип? выше написано "не являются"
Да, тут немного не сходится. Переименовать раздел в "Примитивные типы"?
Цитата Сообщение от Welemir1 Посмотреть сообщение
функция в твоем яп может вернуть null?
Да.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,697
Записей в блоге: 29
10.02.2026, 21:06
вот вот, а зачем вообще тогда что-то писать? просто дай ссылку на доку сишарпа, а рядом приписку - от ссылки выше отличаются только вот такие моменты и нюансы. И убери все замахи на новичков и усталых путников, честно пиши, что надо знать сишарп прежде чем знакомиться с этим. А еще надо знать похоже все об ООП перед изучением. Вот мы и отрезали любых новичков, еще на старте. Не, я пошел питон учить или джаву, там все расскажут терпеливо от азов до сложного, не отправляя в вики.

если функция может вернуть нулл и я ее вызов присвою переменной (var x = returnNull() ), то какого типа будет переменная?
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
363 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,837
Записей в блоге: 14
10.02.2026, 21:20  [ТС]
Цитата Сообщение от Welemir1 Посмотреть сообщение
если функция может вернуть нулл и я ее вызов присвою переменной (var x = returnNull() ), то какого типа будет переменная?
Если честно, не знаю, не пробовал.

Добавлено через 6 минут
Welemir1, а точно документация и введение для чайников - это одно и то же? Введение для чайников есть. А документация, мне кажется, и не должна описывать каждое базовое понятие.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,697
Записей в блоге: 29
11.02.2026, 07:20
мы уже выяснили, что чайникам и новичкам путь заказан к твоему продукту. А вот чем польстится тот, кто знает сишарп и ООП - это большой вопрос
0
Эксперт .NET
 Аватар для Usaga
14371 / 9478 / 1360
Регистрация: 21.01.2016
Сообщений: 35,752
11.02.2026, 08:08
Welemir1, тут ещё другой вопрос: ЧТО и КАК надо гуглить, чтобы хотя бы случайно наткнуться на этот "продукт".
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,697
Записей в блоге: 29
11.02.2026, 10:02
Etyuhibosecyu, есть какой то оператор чтобы получить тип объекта?

ты знал что твой ЯП (в отличие от многих других) позволяет сравнение null, а также арифметические операции типа сложения нулов? Ты где то это описал? а это важное поведение, я не могу утверждать что в сишарпе не так, но есть ощущение что нет. В джаваскрипте про такое только слышал

Про слабую типизацию твою я устал тебе писать, в доке ты нигде про нее не написал

Добавлено через 15 минут
хе, можно прибавить отнять и умножить на нулл, но нельзя на нулл делить
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
363 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,837
Записей в блоге: 14
11.02.2026, 12:32  [ТС]
Цитата Сообщение от Welemir1 Посмотреть сообщение
мы уже выяснили, что чайникам и новичкам путь заказан к твоему продукту.
Чем плохое введение для чайников (именно по этой ссылке)?
Цитата Сообщение от Welemir1 Посмотреть сообщение
ты знал что твой ЯП (в отличие от многих других) позволяет сравнение null, а также арифметические операции типа сложения нулов?
Напрямую не пробовал, но логично, потому что null - это "значение по умолчанию", которое может быть в том числе и у числового типа.
Цитата Сообщение от Welemir1 Посмотреть сообщение
Про слабую типизацию твою я устал тебе писать, в доке ты нигде про нее не написал
Написал.

Добавлено через 1 минуту
Цитата Сообщение от Welemir1 Посмотреть сообщение
есть какой то оператор чтобы получить тип объекта?
typeof(object).
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,697
Записей в блоге: 29
11.02.2026, 12:58
Etyuhibosecyu, если ты не читаешь, то зачем просишь писать тебе замечания? ты прочел и понял что в других языках так не принято? Ты описал такое поведение нулла?

Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
"значение по умолчанию", которое может быть в том числе и у числового типа.
кто сказал такую гадость? для чисел это 0, гду у тебя описано это (значения по умолчанию для типов)?

Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
Написал.
ну и где на диаграмме строка, нулл? откуда я должен заранее знать как поведет себя программа при сложении строки и числа, строки и нулла?

C#
1
2
3
string s = "1";
var x= null;
return s + x;
Code
1
Technical wreck F003 in unknown line at unknown position: a serious error occurred during compilation, translation or execution; program has not been executed

а вот про тип нулла
C#
1
2
var z = null;
return typeof(z);
Code
1
Technical wreck F003 in unknown line at unknown position: a serious error occurred during compilation, translation or execution; program has not been executed
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
363 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,837
Записей в блоге: 14
11.02.2026, 13:05  [ТС]
Цитата Сообщение от Welemir1 Посмотреть сообщение
Ты описал такое поведение нулла?
Спасибо за этот вопрос, буду описывать.
Цитата Сообщение от Welemir1 Посмотреть сообщение
ну и где на диаграмме строка, нулл?
Я уже начал писать "полную" документацию, а не только отличия от чего-то, сейчас пишу про арифметические операторы, напишу и про это.
0
11.02.2026, 13:16

Не по теме:

Шрифт для документации просто отвратительный, глаза вытекают при долгом чтении. Особенно на больших мониторах.

0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
363 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,837
Записей в блоге: 14
11.02.2026, 13:18  [ТС]
Цитата Сообщение от gogolik Посмотреть сообщение
Шрифт для документации просто отвратительный, глаза вытекают при долгом чтении. Особенно на больших мониторах.
Какой лучше? С засечками?
0
Супер-модератор
Эксперт JSЭксперт HTML/CSSЭксперт PHP
 Аватар для gogolik
3964 / 2129 / 833
Регистрация: 13.03.2010
Сообщений: 6,994
11.02.2026, 13:37
Etyuhibosecyu, мне кажется, что любой, но не этот. Он узкий, даже простой Arial или Robot поставить - уже лучше выглядит.
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
363 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,837
Записей в блоге: 14
11.02.2026, 13:58  [ТС]
Цитата Сообщение от gogolik Посмотреть сообщение
мне кажется, что любой, но не этот. Он узкий, даже простой Arial или Robot поставить - уже лучше выглядит.
Поставил свой любимый Times New Roman - лучше? (Если что, нужно почистить кэш.)
0
 Аватар для Noname2331
92 / 72 / 10
Регистрация: 22.12.2024
Сообщений: 502
11.02.2026, 14:56
А у меня есть жалоба на фон. Зачем вам такой 700x700 фон монотонного цвета весом полмегабайта https://red-star-soft.com/files/back.png

Так как мне почему-то "замедлили" весь интернет, он у меня долго грузится, постепенно застилая собой бекграунд
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
363 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,837
Записей в блоге: 14
11.02.2026, 15:03  [ТС]
Цитата Сообщение от Noname2331 Посмотреть сообщение
Зачем вам такой 700x700 фон монотонного цвета весом полмегабайта
Так лучше?
1
 Аватар для Noname2331
92 / 72 / 10
Регистрация: 22.12.2024
Сообщений: 502
11.02.2026, 15:12
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
Так лучше?
Да. Совсем идеалом было бы без статики вообще, background-color: #fdeee6;
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
363 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,837
Записей в блоге: 14
11.02.2026, 15:15  [ТС]
Цитата Сообщение от Noname2331 Посмотреть сообщение
Да. Совсем идеалом было бы без статики вообще, background-color: #fdeee6;
Как-то забыл про это свойство. Так исправилось?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ответ Создать тему
Новые блоги и статьи
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла: Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru