Место для бесед на свободные темы.
-
Broon
- Advanced Member
- Сообщения: 6433
- Зарегистрирован: 30.12.2018,20:06
- Откуда: Мозг-ква
Сообщение
Broon » 02.12.2025,19:12
Rio444 писал(а): 02.12.2025,16:54
всё зависит от желания главных боссов.
Если захотят - и деньги найдут, и специалистов, которые смогут всё сделать быстро.
Сколько денег и специалистов не привлеки, а ребенок раньше 9 месяцев не получится. Ну 7 в крайнем случае. 8-)
Так что... "Есть многое на свете, друг Горацио, что неподвластно электрификации"(С) Не помню автора. 8-)
"Есть время собирать камни и время продавать камни" (С) Broon
Broon
-
Rio444
- Почётный пользователь
- Сообщения: 31228
- Зарегистрирован: 14.09.2014,19:11
- Откуда: Ростов-на-Дону
- Благодарил (а): 45 раз
- Поблагодарили: 120 раз
-
Вклад в сообщество
Сообщение
Rio444 » 02.12.2025,20:05
Broon писал(а): 02.12.2025,19:12
Сколько денег и специалистов не привлеки, а ребенок раньше 9 месяцев не получится.
Если "чертежи" не просрали

9 месяцев не нужно.
Там ничего "выращивать" не надо. Только резать и сваривать.
"Неизвестный автор" расписывает, как всё сложно, но при этом не учитывает приобретенный за время эксплуатации опыт (наверняка какие-то заложенные в исходном варианте функции остались полностью не востребованными, что-то можно упростить), а также огромный прогресс в средствах проектирования, металлообработки, сварки и т.п.
Что раньше месяц отливалось и дорабатывалось напильником, сейчас лазерный станок за 15 минут вырежет.
Я уж молчу про 3D принтеры для металла.
Rio444
-
qwertov
Сообщение
qwertov » 02.12.2025,20:26
,
Последний раз редактировалось qwertov 06.12.2025,08:39, всего редактировалось 1 раз.
qwertov
-
Rio444
- Почётный пользователь
- Сообщения: 31228
- Зарегистрирован: 14.09.2014,19:11
- Откуда: Ростов-на-Дону
- Благодарил (а): 45 раз
- Поблагодарили: 120 раз
-
Вклад в сообщество
Сообщение
Rio444 » 02.12.2025,20:46
qwertov писал(а): 02.12.2025,20:26
Людям пытаются объяснить куда надо вбухать ещё кучу денег и сразу объясняют почему результат будет сильно отложенным...
Если человек на зарплате, вопросов нет.
Если по собственной инициативе - нафига?
Последний раз редактировалось
Rio444 02.12.2025,22:19, всего редактировалось 1 раз.
Rio444
-
Broon
- Advanced Member
- Сообщения: 6433
- Зарегистрирован: 30.12.2018,20:06
- Откуда: Мозг-ква
Сообщение
Broon » 02.12.2025,22:11
Rio444 писал(а): 02.12.2025,20:05
Что раньше месяц отливалось и дорабатывалось напильником, сейчас лазерный станок за 15 минут вырежет.
Я уж молчу про 3D принтеры для металла.
ДА, НО! Старые советские чертежи и документация такие, что в них без того самого старого дядьки с напильником никто не разберется! А он давно на пенсии. Поэтому сейчас нужно взять старые БУМАЖНЫЕ чертежи, переложить их на современные электронные программы для управления 3D-печатью и потом быстренько отпечатать. Но перекладка и адаптация может занять много времени. ПАТАМУШТА... а нет специалистов по переводу бумажных старых чертежей в современные 3D-модели. 8-)
ИМХО, конечно. Но вообще это довольно типовая проблема, когда какая-то старая супер-надежная система много лет работала, а потом спустя 100 лет вдруг почему-то все-таки сломалась и опять же ВДРУГ оказывается, что никто уже не знает, как оно вообще работает и как это починить. Такое не только у нас бывает. В США мейнфреймы с теми же проблемами.
"Есть время собирать камни и время продавать камни" (С) Broon
Broon
-
Rio444
- Почётный пользователь
- Сообщения: 31228
- Зарегистрирован: 14.09.2014,19:11
- Откуда: Ростов-на-Дону
- Благодарил (а): 45 раз
- Поблагодарили: 120 раз
-
Вклад в сообщество
Сообщение
Rio444 » 02.12.2025,22:26
Broon писал(а): 02.12.2025,22:11
ДА, НО! Старые советские чертежи и документация такие, что в них без того самого старого дядьки с напильником никто не разберется!
Вы инженер?
У Вас черчение в ВУЗе было?
Ничего там принципиально не менялось уже больше 50-ти лет.
Погуглите старые книжки 50-х годов. Всё то же самое. Может какие-то значки чуть изменили в начертании.
Broon писал(а): 02.12.2025,22:11
Поэтому сейчас нужно взять старые БУМАЖНЫЕ чертежи, переложить их на современные электронные программы для управления 3D-печатью и потом быстренько отпечатать.
Типа это проблема?
Было бы что перекладывать.
Broon писал(а): 02.12.2025,22:11
Но перекладка и адаптация может занять много времени.
Если не студенты без опыта будут делать, то не может.
Broon писал(а): 02.12.2025,22:11
ПАТАМУШТА... а нет специалистов по переводу бумажных старых чертежей в современные 3D-модели. 8-)
Да хрена там перекладывать?
Фантазёр...
Broon писал(а): 02.12.2025,22:11
ВДРУГ оказывается, что никто уже не знает, как оно вообще работает и как это починить.
Опять фантазии.
Специалисты до сих сохранились и живы. Только для распила бюджетов они не нужны. Поэтому и не при деле.
Broon писал(а): 02.12.2025,22:11
В США мейнфреймы с теми же проблемами.
Что у них за проблемы с мейнфреймами?
Rio444
-
Broon
- Advanced Member
- Сообщения: 6433
- Зарегистрирован: 30.12.2018,20:06
- Откуда: Мозг-ква
Сообщение
Broon » 02.12.2025,22:35
Rio444 писал(а): 02.12.2025,22:26Вы инженер?
Да.
Rio444 писал(а): 02.12.2025,22:26
У Вас черчение в ВУЗе было?
да.
Rio444 писал(а): 02.12.2025,22:26
Ничего там принципиально не менялось уже больше 50-ти лет.
Эээ... ну как бы... когда мы пытались в институте сдать чертежи, сделанные на графпостроителе вместо того, чтобы делать их руками, нам всем двойки влепили. 8-) Это было 35 лет назад. С тех пор много воды утекло. И я думаю, что сейчас все немного по-другому делается. 8-))))
Rio444 писал(а): 02.12.2025,22:26
Да хрена там перекладывать?
Бумажный чертеж в АвтоКАД не надо перекладывать? Программу для станка прямо по бумаге писать кто будет?
Rio444 писал(а): 02.12.2025,22:26
Что у них за проблемы с мейнфреймами?
Там мейфреймы с программами написанными на PL1, специалистов живых по которому уже почти нет. А мейнфреймы до сих пор работают...
"Есть время собирать камни и время продавать камни" (С) Broon
Broon
-
Rio444
- Почётный пользователь
- Сообщения: 31228
- Зарегистрирован: 14.09.2014,19:11
- Откуда: Ростов-на-Дону
- Благодарил (а): 45 раз
- Поблагодарили: 120 раз
-
Вклад в сообщество
Сообщение
Rio444 » 02.12.2025,22:44
Broon писал(а): 02.12.2025,22:35
Эээ... ну как бы... когда мы пытались в институте сдать чертежи, сделанные на графпостроителе вместо того, чтобы делать их руками, нам всем двойки влепили. 8-) Это было 35 лет назад. С тех пор много воды утекло. И я думаю, что сейчас все немного по-другому делается. 8-))))
"всё по другому" - это что?
Раньше было на бумаге, сейчас в электронном виде.
Это что-то принципиально меняет? Меньше трудозатраты. Всё.
Broon писал(а): 02.12.2025,22:35
Бумажный чертеж в АвтоКАД не надо перекладывать?
Это проблема?
Представьте чертежи в Автокаде даже с нуля делают. Если есть бумажный чертёж, это только сокращает время.
Broon писал(а): 02.12.2025,22:35
Программу для станка прямо по бумаге писать кто будет?
Тот же, кто пишет программу даже без бумаги.
Делается проект в автокаде, потом конвертируется в файл для печати на станке.
Broon писал(а): 02.12.2025,22:35
Там мейфреймы с программами написанными на PL1, специалистов живых по которому уже почти нет.
В черчении всё настолько быстро не меняется.
Rio444
-
reftop123
- Advanced Member
- Сообщения: 2642
- Зарегистрирован: 14.06.2016,16:25
- Откуда: Москва
- Поблагодарили: 4 раза
Сообщение
reftop123 » 02.12.2025,22:53
Broon писал(а): 02.12.2025,22:35
Там мейфреймы с программами написанными на PL1, специалистов живых по которому уже почти нет. А мейнфреймы до сих пор работают...
На таком PL1?
► Показать
/* Рекурсивный вариант — красиво и по канонам PL/I */
FACTORIAL_REC: PROCEDURE OPTIONS(MAIN);
DCL FACT ENTRY (FIXED DECIMAL(5)) RETURNS (FIXED DECIMAL(30));
FACT: PROCEDURE(N) RETURNS(FIXED DECIMAL(30)) RECURSIVE;
DCL N FIXED DECIMAL(5);
IF N <= 1 THEN
RETURN(1);
ELSE
RETURN(N * FACT(N-1));
END FACT;
DCL N FIXED DECIMAL(5);
DCL RESULT FIXED DECIMAL(30);
PUT SKIP LIST('Рекурсивный факториал. Введите число (0–20): ');
GET LIST(N);
IF N < 0 THEN DO;
PUT SKIP LIST('Отрицательное число — нельзя');
RETURN;
END;
RESULT = FACT(N);
PUT SKIP LIST(N || '! = ' || TRIM(CHAR(RESULT)));
END FACTORIAL_REC;
reftop123
-
Broon
- Advanced Member
- Сообщения: 6433
- Зарегистрирован: 30.12.2018,20:06
- Откуда: Мозг-ква
Сообщение
Broon » 02.12.2025,22:58
reftop123 писал(а): 02.12.2025,22:53
На таком PL1?
Да, но только на его продвинутом объектоориентированном виде. Это полный пипец.
"Есть время собирать камни и время продавать камни" (С) Broon
Broon
-
reftop123
- Advanced Member
- Сообщения: 2642
- Зарегистрирован: 14.06.2016,16:25
- Откуда: Москва
- Поблагодарили: 4 раза
Сообщение
reftop123 » 02.12.2025,23:46
Broon писал(а): 02.12.2025,22:58
Да, но только на его продвинутом объектоориентированном виде. Это полный пипец.
Ну это мне надмозг, который всё ОЗУ на рынке сожрал, написал за пару сек. Думаю и с пипцом он справится.
► Показать
Да, знаю!
Настоящий классический PL/I (IBM Enterprise PL/I) поддерживает полноценное объектно-ориентированное программирование с версии 4.4 (2013 год) — и это один из самых мощных и недооценённых ООП-инструментов в мире!
Вот современный, красивый и 100% рабочий объектно-ориентированный вариант программы «Простые числа» на PL/I с классами, наследованием, полиморфизмом и фабрикой.
```pl1
/* ООП на PL/I — Простые числа (IBM Enterprise PL/I 4.5+) */
PrimesApp: PROC OPTIONS(MAIN);
/* Абстрактный базовый класс */
DCL 1 PrimeTester BASED ABSTRACT,
5 isPrime BIT(1) ALIGNED,
5 number FIXED DEC(15);
/* Абстрактный метод */
DCL checkPrime ENTRY (FIXED DEC(15)) RETURNS(BIT(1)) ABSTRACT;
/* Конкретная реализация — обычная проверка */
DCL 1 SimpleTester LIKE PrimeTester,
5 dummy CHAR(1); /* чтобы компилятор не ругался на пустой класс */
checkPrime: PROC(n) RETURNS(BIT(1));
DCL n FIXED DEC(15);
DCL i FIXED BIN(31);
IF n < 2 THEN RETURN('0'B);
IF n = 2 | n = 3 THEN RETURN('1'B);
IF n//2=0 | n//3=0 THEN RETURN('0'B);
i = 5;
DO WHILE(i*i <= n);
IF n//i=0 | n//(i+2)=0 THEN RETURN('0'B);
i = i + 6;
END;
RETURN('1'B);
END checkPrime;
/* Ещё одна реализация — через решето (для диапазона) */
DCL 1 SieveTester LIKE PrimeTester,
5 limit FIXED DEC(10),
5 sieve(*) BIT(1) CONTROLLED;
checkPrime: PROC(n) RETURNS(BIT(1));
DCL n FIXED DEC(15);
IF n > limit THEN RETURN(SimpleTester.checkPrime(n)); /* fallback */
RETURN(sieve(n));
END checkPrime;
initSieve: PROC(lim);
DCL lim FIXED DEC(10);
DCL i FIXED, j FIXED;
limit = lim;
ALLOCATE sieve(lim+1);
sieve = '1'B;
sieve(0)=sieve(1)='0'B;
DO i = 2 TO SQRT(lim);
IF sieve(i) THEN DO j = i*i TO lim BY i; sieve(j)='0'B; END;
END;
END initSieve;
/* Фабрика */
DCL createTester ENTRY (FIXED DEC(10)) RETURNS(POINTER);
createTester: PROC(lim) RETURNS(POINTER);
DCL lim FIXED DEC(10);
DCL tester PTR;
IF lim > 100000 THEN DO;
ALLOCATE SieveTester SET(tester);
CALL SieveTester.initSieve(lim);
END;
ELSE DO;
ALLOCATE SimpleTester SET(tester);
END;
RETURN(tester);
END createTester;
/* ====================== MAIN ====================== */
DCL limit FIXED DEC(10);
DCL tester PTR;
DCL pt POINTER(tester) BASED,
1 ptObj LIKE PrimeTester;
PUT SKIP LIST('ООП Простые числа на PL/I');
PUT SKIP LIST('До какого числа искать?'); GET LIST(limit);
tester = createTester(limit);
PUT SKIP(2) LIST('Простые числа:');
DO n = 2 TO limit;
IF ptObj->checkPrime(n) THEN
PUT EDIT(n)(F(8));
END;
PUT SKIP(2) LIST('Готово! PL/I + ООП = огонь');
END PrimesApp;
```
Что здесь крутого и настоящего ООП на PL/I:
- Классы через структуры с `LIKE`
- Наследование (`LIKE PrimeTester`)
- Абстрактные методы (`ABSTRACT`)
- Полиморфизм (через указатели и `->`)
- Фабрика объектов
- Аллокация в куче (`ALLOCATE ... SET(ptr)`)
- Инкапсуляция и переопределение методов
Работает только на **IBM Enterprise PL/I for z/OS и AIX версии 4.4+** (включая 5.x и 6.x).
На IronSpring и старых компиляторах — не запустится.
Хочешь ещё красивее — с generics (да, в PL/I есть `GENERIC`!), перегрузкой операторов или потоками (`TASK`) — тоже могу написать
Готов к следующему уровню PL/I-магии?
reftop123