Форум программистов, компьютерный форум, киберфорум
CoderHuligan
Войти
Регистрация
Восстановить пароль
Старый
Концепция variadic
Запись от CoderHuligan размещена 04.03.2025 в 20:00
Показов 2899 Комментарии 9
Метки delphi

Мне не очень нравится (а кому это нравится?) что у нас есть отдельно компилятор, отдельно линковщик, причем со своим собственным командным языком. При этом усложнении надо знать помимо языка компилятора, еще и язык ликера. Но кто их знает в совершенстве? Обычно достаточно знать...
Аватар для CoderHuligan
Старый
Рейтинг: 4.00. Голосов: 1.
О языках программировани­­­­­­­­­я замолвите слово..
Запись от CoderHuligan размещена 12.02.2025 в 12:06
Показов 5802 Комментарии 54

Каждый последующий язык - хуже предыдущего. Это аксиома..
Есть языки, которые уже рождаются мертвыми.
Есть языки, которые рождаются в простоте, но умирают, под тяжестью возросшей сложности.
Есть языки, которые вечны. C - вечен. Forth - вечен.
----
Языки не могут иметь...
Аватар для CoderHuligan
Старый
Рейтинг: 3.00. Голосов: 2.
Не возвращайте мне ваши ошибки!
Запись от CoderHuligan размещена 08.07.2024 в 14:51
Показов 2922 Комментарии 35
Метки c, си

Размышления по поводу архитектуры обработки ошибок в коде. Конкретно я использую язык Си и его библиотеку. И примеры будут на чистом Си.
Так вот многие функции стандартной библиотеки кроме полезного значения возвращают код ошибки или NULL.
Но возникает вопрос: а почему...
Аватар для CoderHuligan
Старый
Рейтинг: 3.00. Голосов: 1.
ООП наоборот?
Запись от CoderHuligan размещена 04.07.2024 в 09:23
Показов 4209 Комментарии 89
Метки oop, ооп

Я бы не стал писать этот пост в своем блоге, если бы не нуждался в некой обратной связи.
Постараюсь быть краток.
Я не против ООП. Вернее: я согласен что объектная парадигма внесла новый уровень в искусство программирования. Согласен, что мыслить в категориях объектов...
Аватар для CoderHuligan
Старый
Рейтинг: 3.00. Голосов: 1.
Как запомнить знаковые и беззнаковые диапазоны максимальных значений
Запись от CoderHuligan размещена 05.06.2024 в 17:36
Показов 4465 Комментарии 46

Не будем о том зачем это нужно. Это может пригодиться в самых разных случаях.
Итак, как же запомнить эти числа тем, кто не очень дружит с запоминанием чисел.
Вот эти диапазоны:
Code
1
2
3
4
5
6
signed char          -128, 127
unsigned char        255
signed short int    -32768, 32767
unsigned short int  65535
signed long int      -2147483648, 2147483647
unsigned long int    4294967295
Чтобы крепко запомнить эти...
Аватар для CoderHuligan
Старый
Рейтинг: 3.00. Голосов: 2.
Интерфейсы и модульность
Запись от CoderHuligan размещена 30.01.2024 в 17:15
Показов 5198 Комментарии 62

Слово "интерфейс" происходит от двух слов - inter (между) и face (лицо), т. е. то что находится между лицами. Как взаимодействуют между собой к примеру люди? Посредством языка, т.е. того, что является интерфейсом между двумя и более, лицами. Без интерфейса взаимодействие невозможно. Даже язык жестов является таким же интерфейсом, как и любой другой язык.
Сразу отмечу, что любой язык как интерфейс, является чисто внешней сущностью, которая вполне независима...
Аватар для CoderHuligan
Старый
Рейтинг: 3.00. Голосов: 3.
Как избавиться от циклов
Запись от CoderHuligan размещена 28.05.2023 в 14:02
Показов 5453 Комментарии 50
Метки ооп

Это разговор об основах.
Как известно, ООП выросло на понятии структуры, что потом превратилось в понятие класса. Это привело к разбуханию кода. Разбухание кода усложнило его поддержку. Воду лить не буду, а приведу пример:
Допустим у нас есть структура "книга", которая состоит из полей "название", "автор" и "цена". Вот схематичный заголовочный файл с её описанием:
Кликните здесь для просмотра всего текста
C
1
2
3
#ifndef _BOOK_H
#define _BOOK_H
#include <string.h>
...
Аватар для CoderHuligan
Старый
Рейтинг: 4.50. Голосов: 2.
Набросок
Запись от CoderHuligan размещена 24.04.2023 в 18:22
Показов 8879 Комментарии 108

Набросок языка. Есть несколько моментов требующих уточнения. Пока основная схема.
Язык состоит из предписаний (statements) и управляющих конструкций (УП).
Предписания разделяются запятыми! УП разделяются точками с запятой! Это дает важное преимущество для ЯП (языка программирования)...
Аватар для CoderHuligan
Старый
Рейтинг: 1.60. Голосов: 5.
Что есть язык программировани­­я, да и вообще язык, как таковой
Запись от CoderHuligan размещена 23.04.2023 в 17:19
Показов 3687 Комментарии 40

На мой взгляд язык, чтобы называться языком, должен иметь некий ограниченный набор ключевых слов. Если нечто, что называют языком ключевых слов не имеет, то и языком его назвать нельзя. Пример. Возьмем язык Tcl. Так называемый язык командных инструментов. Очень мощный язык - кто...
Аватар для CoderHuligan
Старый
Рейтинг: 3.60. Голосов: 5.
Open Source вовсе не Free Source
Запись от CoderHuligan размещена 13.04.2023 в 14:38
Показов 3138 Комментарии 37

На чем сегодня писать программы? Вопрос кажется диким, так как вокруг столько сред разработки.. Но если копнуть глубже, то становится как-то не по себе.. Оказывается, что разрабатывать-то, действительно, по сути, мало есть на чем.. И это не безумная мысль..
К примеру, зададим...
Аватар для CoderHuligan
Старый
Рейтинг: 5.00. Голосов: 1.
Сказ про то, как один мужик win 7 устанавливал
Запись от CoderHuligan размещена 01.04.2023 в 17:33
Показов 1889 Комментарии 19

Исходные данные:
1) Ноутбук Lenovo Ideapad 110 ibr15. 64 бит. 4 ядра. 2 гига оперативы. Диск сигейт 500 гигов, жесткий. dvd/cd привод отсутствует.
2) Предустановленная windows 10, домашняя версия
3) Большое желание установить второй системой Win 7
Итак, в чем, всё-таки сыр-бор? А в том, что данный...
Аватар для CoderHuligan
Старый
Рейтинг: 5.00. Голосов: 1.
Типизация функций - зло или добро?
Запись от CoderHuligan размещена 17.02.2023 в 13:47
Показов 9540 Комментарии 97

Это продолжение размышлений из позапрошлого поста данного блога.
На этот раз разговор пойдет о функциях.
Обычные языки программирования (ЯП) имеют не только типизированные наборы данных - структурный тип, но и как ни странно, это распространяется и на функции (процедуры)....
Аватар для CoderHuligan
Старый
Рейтинг: 5.00. Голосов: 1.
Так, заметки на полях..
Запись от CoderHuligan размещена 13.11.2022 в 17:00
Показов 1967 Комментарии 12
Метки tcl

По Tcl несколько позже. Это реальная вещь. Я без проблем подключил звуковой модуль для своей проги, и настроил его. Теперь морзянку строчит как из пулемета.. Но на этом пока все застопорилось и не потому, что я не могу доделать прогу, а потому что как-то руки не доходят это доделать.
Но я о другом..
Сложно говорить о сложных для кого-то вещах, но надо.
Что мы сейчас имеем в своей основе? Ну, как бы программа делиться на отдельные подпрограммы. Это позволяет...
Аватар для CoderHuligan
Старый
Рейтинг: 5.00. Голосов: 2.
Реальная разработка на Tcl. Я полюбил его.
Запись от CoderHuligan размещена 30.09.2022 в 16:18
Показов 3340 Комментарии 4
Метки tcl

Хотя раньше только присматривался. Когда же начал писать реальный проект, то начал понимать в чем истина. Кто-то тут высказывался, мол, Си это все что нужно. Не спорю. На нем можно всё. Но какой ценой? Об этом эти люди не думают. видимо у них уйма свободного времени.. Реально сложные...
Аватар для CoderHuligan
Старый
Рейтинг: 5.00. Голосов: 1.
О некоторых странностях в реализации Некоторых типов ATD
Запись от CoderHuligan размещена 11.06.2022 в 16:59
Показов 1592 Комментарии 11

Прочел недавно вот эту статью на Хабре: "Анатомия таблиц LuaJIT и особенности их использования" https://habr.com/ru/company/vk/blog/493642/
В языке Lua существует единственный абстрактный тип данных - таблица. Она реализована на какой-то жгучей смеси обычных массивов и хэш-таблиц. К чему это может привести и какие косяки могут...
Аватар для CoderHuligan
Старый
Рейтинг: 3.40. Голосов: 5.
Проект ЯП (любительского)
Запись от CoderHuligan размещена 26.04.2022 в 18:56
Показов 15157 Комментарии 154

Итак предварительные намётки на проект языка с русским синтаксисом без излишних заморочек. Основная проблема такого ЯП в том, что постоянно приходится переключаться с латиницы на кириллицу при наборе кода. Выход из этого я вижу в том, чтобы оставить в языке только те символы,...
Аватар для CoderHuligan
Старый
Рейтинг: 3.00. Голосов: 2.
Плюсы воинствующие
Запись от CoderHuligan размещена 19.04.2022 в 11:38
Показов 4203 Комментарии 42

Так, ремарка по ходу.. Отдельный раздел (форум) по языку Си упразднили перенеся его в виде подкатегории раздела c++. При этом исчез отдельный раздел под профессиональный Си, который теперь слит в один раздел с c++. Короче говоря:
Белеет мой парус в краю одиноком
на фоне больших кораблей...

Не красит это вас, плюсовики..
Ваша агрессия говорит против вас, против вашего языка. Жили бы...
Аватар для CoderHuligan
Старый
Внутреннее представление кортежа
Запись от CoderHuligan размещена 07.02.2022 в 18:08
Показов 1986 Комментарии 6

Внешнее представление языка программирования (далее ЯП) очень важная вещь, но еще более важно как он устроен на внутреннем уровне. То есть каким образом реализованы те или иные структуры данных и пр. и с какой эффективностью они работают во время исполнения ( в ран-тайме)....
Аватар для CoderHuligan
Старый
Рейтинг: 5.00. Голосов: 1.
Что-то давно не писал у себя в блоге
Запись от CoderHuligan размещена 29.01.2022 в 15:16
Показов 3953 Комментарии 31

Давненько сюда не заходил. Активно изучаю ассемблер, подтягиваю знания по компиляторам. Хотелось бы создать минималистичный язык программирования с широкими возможностями, который бы ПООЩРЯЛ НЕструктурный стиль, который ближе всего автоматам. Нечто среднее между basic и oberon,...
Аватар для CoderHuligan
Старый
Рейтинг: 3.67. Голосов: 3.
Дела текущие
Запись от CoderHuligan размещена 08.04.2021 в 14:11
Показов 20729 Комментарии 124

Ремонт компа идет. Сменил xp на семерку. Пока работать будет без видеокарты через видеовыход, а там посмотрим. Ноут тоже глючил: windows 10 каждый день в синий экран и идет перезагруз во время просмотра видео. Видимо драйвера кривые. Это происходит в Opera браузере. Установил хром, может...
Аватар для CoderHuligan
Старый
Рейтинг: 3.67. Голосов: 3.
Знак свыше
Запись от CoderHuligan размещена 03.04.2021 в 15:27
Показов 15343 Комментарии 56

Сегодня у меня полетел комп со всеми наработками, архивами и пр. Хорошо что часть архивов перегнал на ноут. Но там осталось много ценного. Думаю, что жесткий диск в порядке. Скорее всего видюха полетела, так как экран посыпался. Ну, что - компу больше 10 лет. Попробую наладить в...
Аватар для CoderHuligan
Старый
Рейтинг: 2.60. Голосов: 5.
Почему мы до сих пор экономим память?
Запись от CoderHuligan размещена 13.03.2021 в 13:10
Показов 13282 Комментарии 85

Заголовок может показаться провокационным, но я бы чистосердечно хотел услышать ответ на этот вопрос, и возможно поставить новые.. На самом деле по крайней мере для меня это важно и это один из краеугольных вопросов..
По делам текущим. Последнее время полностью вьезжал...
Аватар для CoderHuligan
Старый
Рейтинг: 5.00. Голосов: 2.
Морской бой. Мой
Запись от CoderHuligan размещена 25.02.2021 в 17:32
Показов 22504 Комментарии 132

Итак, как и обещал, сделал игру "Морской бой". Пока консольный вариант. Дойдут ли руки до гуишного - покажет время.
После продолжительных (относительно так как с перерывами делал меньше месяца) мучений по отладке, так как делал на голом си, все же удалось довести до ума...
Аватар для CoderHuligan
Старый
Рейтинг: 5.00. Голосов: 2.
Сверху или снизу? Сверху!!!
Запись от CoderHuligan размещена 22.02.2021 в 10:46
Показов 8499 Комментарии 45

Как проектируют программные системы? Обычно существует два основных подхода к написанию (проектированию) программ. Один из них так называемое проектирование сверху, другой - снизу.
Философию создания снизу, как известно, проповедовали фортисты или фортеры - поклонники...
Аватар для CoderHuligan
Старый
Рейтинг: 2.33. Голосов: 3.
На пути к непроцедурному языку #1
Запись от CoderHuligan размещена 20.06.2020 в 12:36
Показов 2940 Комментарии 16

Предыдущий пост был посвящен пределам удержания и понимания. К этому следовало бы добавить еще и следующее обстоятельство.
Практически большинство современных языков предполагает строго заданный порядок параметров в определении и вызовах функций и процедур.
Например взять любую функцию, например из стандартной библиотеки Си поиска подстроки в строке:
C
1
char *strstr(const char *src, const char *n);
Здесь, заметим, невозможно вызвать эту функцию...
Аватар для CoderHuligan
Старый
Рейтинг: 3.00. Голосов: 2.
О психологических пределах понимания и удержания.
Запись от CoderHuligan размещена 04.06.2020 в 14:45
Показов 5946 Комментарии 54

Нужно ли изучать иностранные языки? Кто бы сомневался! Нужно, конечно, если мы хотим понять чужую культуру, приобщиться, так сказать, к её великим творениям, да и просто пообщаться с себе подобными..
Но ведь известно, что если мы не хотим забыть какой-то язык его надо постоянно...
Аватар для CoderHuligan
Старый
Рейтинг: 2.67. Голосов: 3.
Продолжение формализации. Некоторые идеи #2
Запись от CoderHuligan размещена 03.04.2020 в 14:32
Показов 17529 Комментарии 221

(Добавлено позднее: это конечно заблуждение, но оно интересно с точки зрения фантазии...)
Кстати, о птичках (не так сложно написать компилятор, как формализовать ЯП без сайд эффектов)
Если не отказываться от стека (пусть даже виртуального), а все же оставить некую общую...
Аватар для CoderHuligan
Старый
Рейтинг: 4.00. Голосов: 5.
"Обратный " форт или "неправильный" basic
Запись от CoderHuligan размещена 23.03.2020 в 14:48
Показов 9985 Комментарии 111

Начал экспериментировать с написанием компилятора для некоего языка программирования, который имеет некоторые особенности и пока существует только в моей голове.
Нынешние языки, на мой взгляд, не удовлетворяют по крайней мере двум принципам:
1) Простоте;
2) Скорости...
Аватар для CoderHuligan
Старый
Рейтинг: 2.33. Голосов: 9.
Бритва Оккама
Запись от CoderHuligan размещена 26.06.2019 в 15:09
Показов 19982 Комментарии 268

Бритва оккама - известный методологический принцип в философии, который гласит примерно следующее: "Не следует привлекать новые сущности без крайней на то необходимости.". Оккам писал:
…множественность никогда не следует полагать без необходимости… [но] всё, что может быть объяснено из различия материй по ряду оснований, — это же может быть объяснено одинаково хорошо или даже лучше с помощью одного основания.
Из вики:
"Принцип «бритвы Оккама»...
Аватар для CoderHuligan
Старый
Рейтинг: 2.14. Голосов: 7.
goto и switch
Запись от CoderHuligan размещена 24.06.2019 в 10:22
Показов 5996 Комментарии 46

Вижу, что многие не понимают сути "народного" подхода, поступают вопросы, на которые следует ответить.
Цитата Сообщение от voral
Более того применение флагов не имеет отношение к выбору с GOTO или без оного. Это вещи разного порядка. (Мне все больше кажется, что вы не совсем верно толкуете "структурное" программирование). Флаги это не состояние программы в целом, или на какой то момент времени... Это лишь характеристика конкретной сущности. Которая может меняться, а может не меняться.
...
Аватар для CoderHuligan
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru