MUMPS

MUMPS
Paradigmaimperativní (procedurální), strukturovaný
Vznik1966
Typová kontrolabeztypovost

MUMPS (Massachusetts General Hospital Utility Multi-Programming System), někdy zkracováno na M, je programovací jazyk se zabudovanou databází. Na rozdíl od jiných programovacích jazyků se v něm s databází i s jinými soubory pracuje přímo pomocí proměnných a polí na úrovni programu. MUMPS vznikl v roce 1966 jako program pro správu databáze pacientů v Massachusetts General Hospital v Bostonu. První ANSI standard vznikl roku 1977 a současný nejnovější standard je z roku 1995. MUMPS byl součástí operačního systému Diams, který byl mj. používán u počítačů řady SMEP. Dodnes v programu běží valná část aplikací v americkém zdravotnickém sektoru. „Mumps“ jinak anglicky znamená příušnice.

Základy

Proměnné

MUMPS nemá datové typy. Vše je v něm uloženo jako textový řetězec a vyhodnocuje se podle kontextu. Proměnné se nemusí deklarovat a vznikají automaticky. Rozlišuje se velikost písmen. Proměnné mohou být globální nebo lokální. Lokální proměnná se ukládá do paměti programu a zaniká s koncem programu. Globální proměnná se ukládá na disk a s koncem programu nezaniká. Lokální i globální proměnnou lze zrušit pomocí příkazu kill. Název proměnné nesmí obsahovat podtržítko a začíná písmenem nebo znakem %. Název globální proměnné začíná znakem ^.

set var=3*4+2
set ^x=var
kill var

Pole

Pole se stejně jako proměnné nemusí deklarovat a vznikají automaticky při prvním přiřazení. Pole jsou takzvaně „řídká“, což znamená, že když se přiřadí hodnota do prvku s indexem 10, nevznikají automaticky i prvky 0 až 9. Indexem pole může být cokoliv. Při indexování vyšších dimenzí se indexy oddělují čárkou. Pro pole platí stejná pravidla ohledně vznikání a zanikání, jako pro proměnné.

set rodina("matka")="Jana"
set rodina("syn",1)="Petr"
set rodina("syn",1,"vyska")=150
set rodina("syn",2)="Pavel"

Příkazy

Příkazy musí být správně zformátovány a záleží i na mezerách. Většinou je lze zkrátit na 2–3 písmena. Zápis příkazu: příkaz podmínka výraz, kde příkaz je název příkazu, podmínka říká, zda se má příkaz vykonat a výraz je parametr příkazu. Podmínka není povinná.

Tento příklad uloží do pole druha%mocnina druhé mocniny a pak je vypíše. Příkazy uvnitř cyklu musí být odsazené o 1 mezeru.

for i=1:1:20 do
 set druha%mocnina(i)=i*i
for i=1:1:20 do
 write druha%mocnina(i),!

Příklad

Hello world

write "Hello, world!",!
Pahýl
Pahýl
Tento článek je příliš stručný nebo postrádá důležité informace.
Pomozte Wikipedii tím, že jej vhodně rozšíříte. Nevkládejte však bez oprávnění cizí texty.
Programovací jazyky
abecední seznam programovacích jazyků
multiparadigmatické
Ada • C++Common Lisp • D • F# • Go • Oberon • PerlPHPPythonRuby • Rust • Scala • Swift • Tcl (Tk) • Vala
strukturované (procedurální)
AWK • C • COBOLDCL • Forth • FortranLuaModula-2 / Modula-3 • Pascal • PawnPL/SQL
objektové
BETA • Boo • C# • Eiffel • Java (Groovy, Kotlin) • JavaScriptObject PascalObjective-CSmalltalkVB.NET
funkcionální
Clean • Ceylon • Erlang • Haskell • J • LispWolfram Language / Mathematica • Miranda • OCamlScheme
dotazovací
LINQSPARQLSQLXQueryXSL (XSLTXSL-FOXPath)
logické
Gödel • Prolog
výukové
Baltazar • Baltík • Karel • Kodu Game Lab • Logo • Microsoft Small Basic • Petr • Scratch
ezoterické
BefungeBrainfuckHQ9+MalbolgeOok!PietWhitespace
historické
ALGOL • APL • B • BASICCPL (BCPL) • J • MUMPS • PL/ISimula 67SNOBOL
další
ABAPAppleScriptColdFusionJSA • Julia • MATLAB • R • Visual Basic (VBScript) • VimscriptVisual FoxPro
skriptovací/strojový kódkompilované/interpretované • interaktivní/dávkovéWYSIWYG
Autoritní data Editovat na Wikidatech
  • BNE: XX536267
  • LCCN: sh85088405
  • NLI: 987007550839605171