MUMPS

11 отговора 0 прегледа
#1

MUMPS

Случайно да има някой заблуден програмист/потребител на MUMPS ?

Това е среда за програмиране с доста особен език и не много модерен в БГ.
Като администратор на ЕРП система се интересувам дали се използва другаде в България тази среда.

Благодаря предварително !

Отговор
в отговор на alxbaa #2

Re: MUMPS

Да-а-а, намирва се. Допреди няколко години го ползваха военните. Бях програмист в казармата и писах на него повече от година. Руснаците го бяха откраднали от американците и си го бяха кръстили ДИАМС. За времето гогато нямаше интернет и добре развити системи за бази данни в мрежа, си беше доста добра система. Преди няколко години обаче бе възприета нова система от военните и всичко което "заблудените програмисти" писахме, вече е разсекретено и не се ползва. Питай смело, имам доста спомени, въпреки че минаха и доста години оттогава.

Отговор
в отговор на Toп #3

Re: MUMPS

Ами интересувам се например дали сте ползвали нещо като sheduler.
Тоест искам да пусна дадена Routine в точно определен час автоматично, без намеса от човек. В Unix май се ползва cronntab в Windows също има начин.

То нашия МУМПС работи под Windows NT но дефакто интерфейса с потребителя е чрез прост терминал. Интерфейса не го бива, но като система се държи невероятно стабилно и тия Глобали който ги е измислил е бил умен човек ...

Отговор
в отговор на alxbaa #4

Re: MUMPS

Това е доста адванст в сравнение с 1991-ва. Тогава системата ми имаше 10 МВ РАМ памет (не се смей, хората имаха тук-там хардове от по 20 МВ на своите Правец-16). Системата беше една стая, а не едно РС като сега. Хардовете бяха големи колкото перални, сега още може да се видят антени от такива... И като сложиш чавка пред името на променливата (или глобалата) и тази променлива е някой брояч, та тази чавка прави прменливата глобална за системата и се разполага на системниа хард, а не в РАМ-а на локалната машина (терминал). И така се прее..цаква харда. Такива ми ти работи... Но тогава още при пускането на ситемата се сверяваше часовника на системата, вечер след работно време се прави ъпдейт на основните глобали с информацията от деня. През деня винаги имаше дежурен "админ" при системата и нямаше такова нещо като sheduler. При запускане на локален терминал автоматично се включва програма, към която той е "привързан". Така от този терминал не могат да се подават команди към системата, а само да се ползва стартираната програма. Всеки служител си въвежда парола която му дава достъп до определени операции и данни и това е. И се носи яка отговорност за всяка въведена/изтрита/коригирана цифра!!! Абсурд е системата да е включена по всяко време, че и сама да изпълнява програми. Дори и ъпдейта на глобалите който се извършваше всеки работен ден по едно и също време, се стартираше винаги ръчно и след проверка на локалните копия на глобалите, където бяха коригираните данни от последния работен ден. Та такава функция нямаше.

Отговор
в отговор на alxbaa #5

Re: MUMPS

Приятно ми е - 2-3 г. писане на код на MUMPS (до 93г. ) за VAX/VMS машини, сега май му казват само М.
Някаква фирма от Русе знам, че има счетоводна програма писана на М, Банксервиз Пловдив все още има развойно звено пишещо на М. В Сливен преди 10-ина години имаше доста ентусиасти, които даже правеха срещи на М програмистите. Болниците доста го използваха - това е било основната цел при създаването на езика - информационни с-ми за здравни заведения. Май всички военни окръжия пазеха данните за донаборниците и запасните в подобни М среди.
Ако оставиш мейл или се регистрираш бих могъл да ти кажа на кого да звъниш за конкретен отговор на въпроса ти.

Отговор
в отговор на alxbaa #6

= Йерархични БД =

Ами благодаря за отзивите.

Мисля да се справя сам с проблема за schedule засега.

По принцип се интерсувам от йерархични БД които се създават сравнително лесно на МУМПС но не зная как и дали могат да се създават с Oracle, MS SQL server също така ?

Проблема с йерархичните БД май е на мода в момента по мое мнение.
Май информацията в реалния свят по природа име йерархична структура и точно затова се моделира по-лесно с MUMPS Globals, а не с таблици както е в релационните БД.

Чувал съм че продукта CACHE се базира на MUMPS но в БГ дали има CACHE ?

виж това:
[линк]


Иначе си направих регистрация в Dir.bg. Как помага това на комуникацията ?

Това е засега.

Отговор
в отговор на alxbaa #7

Re: = Йерархични БД =

Ами с релационни БД също може да се изгради йерархична структура на данните. Проблемът на MUMPS беше, че не поддържаше SQL а това е огромно предимство - говоря за версиите му до 93-та с които съм работил.
Доколкото си спомням работата с глобалите беше истински кошмар, когато трябва да четеш данни на няколко поднива - ставаше с едни вградени for цикли.
Най-важното от това, което не ми харесваше в MUMPS бе:
- нямаше интерфейс към др. БД
- затруднена работа с ОС. Дори и прости неща, като копиране, преименоване на файлове, работа с директории беше трудна задача.
- нямаше компилатор
- нямаше динамично заделяне/освобождаване на памет. Bubble sort вървеше в пъти по бавно в сравнение с др. езици
- ужасен синтаксис

Но МЪМПС-а определено печели по един показател - малкия разход на оперативна памет и големия бр. терминали, които можеха да работят едновременно в сравнение с др. динозавърски език напр. COBOL


>> Иначе си направих регистрация в Dir.bg. Как помага това на комуникацията ?

Можеш да променяш и триеш твой пост. Можеш да изпращаш/получаваш лични бележки.

Отговор
в отговор на alxbaa #8

Re: MUMPS

The Dayly WTF: A Case of the MUMPS

Отговор
в отговор на KpyM #9

Re: MUMPS

Това ме утрепа.
Особено комбинацията MUMPS + медицина.
Според мен всички програмисти които пишат лош код, в ада ще програмират на MUMPS за здравната каса, използвайки 8 битови процесори, емулиращи 64 битов СПАРК стейшън.
Амин

Bеer? Mоre?
Плацебото
Отговор
в отговор на bira_more #10

Re: MUMPS

Ето ти малко примерен код на MUMPS за да разбереш, защо ми се бяха изтрили клавишите на хоризонталните цифри.

Кода е копнат от тук: [линк]
Всъщност за човек с малко опит в процедурното програмиране, изучаването на MUMPS би му отнело 3-4 месеца. Ако има нещо хубаво в подобни езици /MUMPS,COBOL,PRG/ то е, че все още има търсене и на тях може да се пише до навършване на пенсионна възраст.
--------------------------------------------------------------

%DTC
%DTC ; SF/XAK - DATE/TIME OPERATIONS ;1/16/92 11:36 AM
;;19.0;VA FileMan;;Jul 14, 1992
D I 'X1!'X2 S X="" Q
S X=X1 D H S X1=%H,X=X2,X2=%Y+1 D H S X=X1-%H,%Y=%Y+1&X2
K %H,X1,X2 Q
;
C S X=X1 Q:'X D H S %H=%H+X2 D YMD S:$P(X1,".",2) X=X_"."_$P(X1,".",2) K X1,X2 Q
S S %=%#60/100+(%#3600\60)/100+(%\3600)/100 Q
;
H I X<1410000 S %H=0,%Y=-1 Q
S %Y=$E(X,1,3),%M=$E(X,4,5),%D=$E(X,6,7)
S %T=$E(X_0,9,10)*60+$E(X_"000",11,12)*60+$E(X_"00000",13,14)
TOH S %H=%M>2&'(%Y#4)+$P("^31^59^90^120^151^181^212^243^273^304^334","^",%M)+%D
S %='%M!'%D,%Y=%Y-141,%H=%H+(%Y*365)+(%Y\4)-(%Y>59)+%,%Y=$S(%:-1,1:%H+4#7)
K %M,%D,% Q

------------------------------------------------------------------------------------

Отговор
в отговор на Beco_ #11

Re: MUMPS

Баси м*мата тва истинско ли е или дир-а е сменил енкодинга?

Машина за отделяне на кожа и сланина от парени свине
Отговор
в отговор на alxbaa #12

Re: MUMPS

И аз имам някакаъв мрачен experience с въпросното нещо. Болката вече отмина, но срама остана.
Като цяло MUMPS програмистите са секта, която е по-крайна дори от linux обществото. Данните са дървовидни, синтаксисът - още по-дървовиден.
Кодът, който е постнал весо_, е съвсем истински. Езика се оправя с около 20 команди. (не че SQL не се оправя с 4).
Основния му проблем е че ако ти трябва например списък на клиенти подреден по име и егн, трябва да ги пазиш в две глобали (тези глобали са нещо като индекс, но с данни, които се пазят в един голям sting, delimited с каквото му хареса на програмиста, най често ^ или @). Много голямо redundancy, малка нормализация.
Иначе логическата структура на данните прилича донякъде на XML, което показва че няма нищо ново под слънцето. В XML за щастие си имаш дефиниция (XSD) и човек може да си парсне бозите, които е сътворил, докато при MUMPS-a всичко е в главата на програмиста.

Сегашната версия cache твърди, че била пострелационна база данни, каквото и да значи това.

Отговор