Dokumentation

    Table of Content
    • 3d
      • 3D File Formats
      • 3D2
      • 3DM
      • 3DS
      • 3MF
      • AMF
      • ASE
      • B3D
      • BLEND
      • C4D
      • CAF Cal3D
      • CHR 3ds
      • CHR CryENGINE
      • DAE
      • DBM
      • DRC
      • E57
      • F3D
      • FBX
      • GLB
      • GLTF
      • IPT
      • JT
      • MA
      • MAX
      • MB
      • MP
      • MTL
      • OBJ
      • PLY
      • POV
      • PRC
      • RVM
      • STEP
      • STP
      • U3D
      • USD
      • USDZ
      • VRML
      • X
      • X3D
    • audio
      • Audio File Formats
      • 8SVX
      • AA
      • AAC
      • AAX
      • AC3
      • ACT
      • AIF
      • AIFF
      • ALAC
      • AMR
      • APE
      • CAF
      • CDA
      • CDR
      • DSS
      • EC3
      • EFS
      • ENC
      • FLAC
      • FLP
      • GP
      • GSM
      • IT
      • M3U
      • M3U8
      • M4A
      • M4B
      • M4P
      • M4R
      • MID
      • MKA
      • MMF
      • MOD
      • MP2
      • MP3
      • MPC
      • MSCZ
      • MTM
      • MUI
      • MUSX
      • MXL
      • NSA
      • OGG
      • OPUS
      • RF64
      • RIP
      • SDT
      • SF2
      • STAP
      • STY
      • TG
      • VOC
      • VOX
      • VQF
      • WAV
      • WEBA
      • WFP
      • WMA
      • WPL
      • WPROJ
      • WV
    • cad
      • CAD File Formats
      • AFS
      • ART
      • ASC
      • ASM
      • AXM
      • BDC
      • CATPART
      • CF2
      • CIR
      • CPA
      • DC3
      • DGN
      • DST
      • DWF
      • DWFX
      • DWG
      • DWT
      • DXB
      • DXF
      • FZP
      • FZZ
      • GCODE
      • HPGL
      • IBA
      • IFC
      • IGES
      • IGS
      • JVSG
      • NC
      • NWC
      • NWD
      • NWF
      • OPT
      • PAR
      • PAT
      • PC3
      • PHJ
      • PLT
      • PRT
      • PRT CADKEY
      • PSM
      • PSS
      • RFA
      • RFT
      • RML
      • RVT
      • SLDPRT
      • STL
    • compression
      • Compression File Formats
      • 7Z
      • ACE
      • ALZ
      • APK
      • APZ
      • ARC
      • ARJ
      • B1
      • B6Z
      • BIN
      • BKF
      • BNDL
      • BZ2
      • CB7
      • CBA
      • CIT
      • CPIO
      • CXARCHIVE
      • DAA
      • DAR
      • DEB
      • DMG
      • DZ
      • ECS
      • FZPZ
      • GZ
      • GZIP
      • ICE
      • ISO
      • KGB
      • LBR
      • LQR
      • LZ
      • LZ4
      • LZH
      • LZMA
      • LZO
      • LZX
      • MBW
      • MINT
      • MPKG
      • MPQ
      • NPK
      • OAR
      • P7Z
      • PAGES
      • PAR
      • PEA
      • PET
      • PF
      • PKG
      • PTK
      • PUP
      • PWA
      • PZZ
      • R2
      • RAR
      • RPM
      • RTE
      • S00
      • SFG
      • SIFZ
      • SIT
      • SITX
      • SMPF
      • SQX
      • SY_
      • TAR
      • TBZ
      • TGS
      • TGZ
      • TPSR
      • TZ
      • VPK
      • WHL
      • WUX
      • XAPK
      • XAR
      • XIP
      • XPI
      • XZ
      • Z
      • ZIM
      • ZIP
      • ZIPX
      • ZL
      • ZOO
      • ZST
    • data
      • Data File Formats
      • BRD
      • CBZ
      • CDR
      • CDX
      • CDX ChemDraw
      • CS
      • CUBE
      • DLC
      • ENC
      • ESX
      • FIG
      • GB
      • GED
      • INK
      • IO
      • IP
      • MPJ
      • NDS
      • PCB
      • PRT
      • SAFETENSORS
      • SPS
      • STR
      • TGC
      • TIME
      • TRF
      • VCE
      • VCS
      • VDF
      • XDELTA
    • database
      • Database File Formats
      • 4DB
      • 4DD
      • 4DL
      • ABCDDB
      • ABS
      • ABX
      • ACCDB
      • ACCDC
      • ACCDE
      • ACCDR
      • ACCDT
      • ACCDW
      • ACCFT
      • ADB
      • ADE
      • ADF
      • ADN
      • ADP
      • ALF
      • ANB
      • AQ
      • ASK
      • BAK
      • BAK ACT Backup
      • BAK SQL Server
      • BC3
      • BCP
      • BTR
      • CAF
      • CAT
      • CDB
      • CHCK
      • CRYPT12
      • CRYPT14
      • DACPAC
      • DAT
      • DB
      • DB-WAL
      • DB3
      • DBC
      • DBF
      • DBS
      • DDL
      • DLIS
      • DSN
      • DTSX
      • DXL
      • ECO
      • EPIM
      • FDB
      • FIC
      • FMP12
      • FMPSL
      • FP5
      • FP7
      • FPT
      • FPT Alpha Five
      • FPT FoxPro
      • GDB
      • ITW
      • JET
      • LDF
      • LOG
      • MDB
      • MDF
      • MYI
      • NDF
      • NMONEY
      • NSF
      • PAN
      • PDB
      • PDM
      • RPD
      • RPD Roleplay
      • SAV
      • SDF
      • SQL
      • SQLITE
      • TE
      • TEACHER
      • TRC
      • TRM
      • TVDB
      • UDB
      • UDL
      • USR
      • WDB
      • XEM
    • disc-and-media
      • Disc and Media File Formats
      • BIN
      • CCD
      • CDR
      • CSO
      • CUE
      • CUE CDRWIN
      • ECM
      • GADGET
      • IMG
      • ISZ
      • MDF
      • MDS
      • NKIT
      • NRG
      • NRI
      • OVA
      • OVF
      • ROM
      • SDI
      • TIB
      • Toast
      • UDF
      • VCD
      • VDI
      • VHD
      • VHDX
      • WBFS
      • WIM
      • WUD
    • ebook
      • EBook File Formats
      • ACSM
      • AEP
      • APNX
      • AVA
      • AZW
      • AZW1
      • AZW3
      • AZW4
      • BKK
      • BPNUEB
      • CBC
      • CBR
      • CBZ
      • CEB
      • CEBX
      • DNL
      • EA
      • EAL
      • EBK
      • EDN
      • EPUB
      • ETD
      • FB2
      • FKB
      • HAN
      • HTML0
      • HTMLZ
      • HTXT
      • HTZ4
      • HTZ5
      • IBOOKS
      • JWPUB
      • KFX
      • KOOB
      • LIT
      • LRF
      • LRS
      • LRX
      • MART
      • MBP
      • MOBI
      • NCX
      • NVA
      • OEB
      • OEBZIP
      • OPF
      • ORB
      • PHL
      • PML
      • PMLZ
      • POBI
      • PRC
      • QMK
      • RB
      • RZB
      • RZS
      • SNB
      • TCR
      • TK3
      • TPZ
      • TR
      • TR3
      • VBK
      • WEBZ
      • YBK
    • email
      • Email File Formats
      • EDB
      • EML
      • EMLX
      • ICS
      • MBOX
      • MSG
      • OFT
      • OLM
      • OST
      • P7S
      • PST
      • RPMSG
      • TNEF
      • VCF
    • executable
      • Executable File Formats
      • 8CK
      • AC
      • AHK
      • AIR
      • APP
      • BAT
      • BIN
      • BMS
      • BTAPP
      • CGI
      • CHEAT
      • CMD
      • COM
      • ELF
      • EXE
      • IPA
      • JSF
      • MLX
      • MSI
      • MST
      • PIF
      • PYC
      • REG
      • RUN
      • WS
      • WSF
      • WSH
      • XAP
      • XBE
      • XEX
    • finance
      • OFX
      • XBRL
    • font
      • Font File Formats
      • BDF
      • CFF
      • CFF2
      • CHR
      • EOT
      • ETX
      • FNT
      • FON
      • FOT
      • GXF
      • JFPROJ
      • MFX
      • ODTTF
      • OTF
      • PFA
      • PFB
      • PFM
      • SFD
      • TTC
      • TTF
      • Type1
      • VFB
      • VLW
      • WOFF
      • WOFF2
    • game
      • Game File Formats
      • ASSET
      • BAK TERRARIA
      • BIN
      • BIN PCSX
      • BMZ
      • BNS
      • BO2
      • BPS
      • CFG M.U.G.E.N
      • CFG Source Engine
      • CFG Wesnoth
      • CHR Doki
      • CLIP
      • CS CLEO
      • CSD
      • CT
      • DDT
      • DEK
      • DSV
      • ENC
      • EPK
      • ESP
      • FOMOD
      • GAM
      • GB
      • GBX
      • GCF
      • IPS
      • IPS PS2
      • KODU
      • LANG
      • LITEMOD
      • MCA
      • MCPACK
      • MCR
      • MCSTRUCTURE
      • MCWORLD
      • META
      • MGX
      • MII
      • MIS
      • N64
      • NBT
      • NDS
      • NES
      • NPA
      • NSP
      • NSZ
      • OSB
      • OSK
      • OSR
      • OSU
      • OSZ
      • P3T
      • PAK
      • PAR
      • PCC
      • PK3
      • PSS
      • PUP
      • PWF
      • PXP
      • REL
      • REP
      • RPF
      • RPX
      • RVZ
      • SAV
      • SCWORLD
      • SFAR
      • SFC
      • SHADER Godot
      • SHADER Quake
      • SHADER Unity
      • SID
      • SIMS3PACK
      • SMC
      • TTR
      • TXD
      • U8
      • UASSET
      • UMX
      • Unity3D
      • UNITYPACKAGE
      • UPS
      • USX
      • VDF
      • VDF Gothic
      • VMF
      • VPK
      • VRCA
      • VRCW
      • W3N
      • W3X
      • XCI
      • XS
      • Z64
    • gis
      • GIS File Formats
      • 000
      • 3D
      • 3DC
      • 3DD
      • 3DL
      • ADF
      • APL
      • APR
      • ATX
      • AUX
      • AVL
      • AXE
      • BT
      • CSF
      • CXF
      • DEM
      • DIV
      • DIX
      • DLG
      • DT0
      • DT1
      • DT2
      • E00
      • EMBR
      • ETA
      • FIT
      • FMW
      • GeoJSON
      • GLB
      • GMAP
      • GML
      • GPKG
      • GPX
      • GSM
      • GST
      • HDR
      • IMG
      • KML
      • KMZ
      • LAN
      • LAS
      • LAZ
      • LOC
      • MID
      • MIF
      • MPK
      • MPS
      • MSD
      • MXD
      • MXT
      • NM2
      • NMC
      • NTF
      • OSC
      • OSM
      • PMF
      • PTM
      • QGD
      • QGS
      • QGZ
      • QLR
      • QML
      • SAF
      • SBN
      • SDF
      • SHP
      • SHX
      • SP3
      • SSF
      • TCX
      • TFRD
      • USR
      • WLX
      • WOR
    • image
      • Image File Formats
      • AFPHOTO
      • AFX
      • AGIF
      • AGP
      • AI
      • APM
      • ART
      • ARW
      • AVIF
      • BAY
      • BIF
      • BMP
      • BPG
      • CDR
      • CDX
      • CLIP
      • CMX
      • CPC
      • CR2
      • CR3
      • CSL
      • CT
      • CUR
      • DCM
      • DCR
      • DCX
      • DDS
      • DIB
      • DICOM
      • DJVU
      • DNG
      • ECW
      • EMF
      • EMZ
      • EXIF
      • FIG
      • FLIF
      • FODG
      • GBR
      • GIF
      • HDR
      • HEIC
      • HEIF
      • ICNS
      • ICO
      • INK
      • J2C
      • J2K
      • JFIF
      • JP2
      • JPC
      • JPEG
      • JPF
      • JPM
      • JPX
      • JXL
      • JXR
      • MNG
      • MP
      • MPO
      • NEF
      • ODG
      • OTG
      • PAT CorelDRAW
      • PAT Pattern
      • PCT
      • PCX
      • PEF
      • PICT
      • PNG
      • PPP
      • PSB
      • PSD
      • PSP
      • PSPIMAGE
      • PVT
      • RAF
      • RAW
      • RPF
      • SKP
      • SVGZ
      • TGA
      • THM
      • WEBP
      • WMF
      • WMZ
      • XPM
      • XPR
    • misc
      • Misc File Formats
      • AML
      • ART
      • BAK Backup
      • BAK Chromium Bookmarks
      • BAK Finale
      • BAK MobileTrans
      • BAK VEGAS Video
      • BKUP
      • BPS Malware
      • BPS Works
      • BUP
      • CFG Cal3D
      • CMS
      • CRX
      • CTG
      • DAP
      • DOWNLOADING
      • ENC
      • ENL
      • ERR
      • FIG
      • FILE
      • FLA
      • GPG
      • H4
      • H5
      • ICA
      • IPS
      • IPSW
      • ISN
      • KLQ
      • LDB
      • LOCK
      • LRC
      • MABK
      • MD5
      • MEDIA FILES
      • MSO
      • NOMEDIA
      • OBB
      • ODF
      • OGG
      • PDO
      • PES
      • PKPASS
      • PS2 BIOS
      • PSX BIOS
      • RDF
      • RIS
      • RML
      • SHELL SCRIPT
      • SSP
      • TEXT FORMATS
      • THM
      • TORRENT
      • USR
      • VIDEO CONVERTER
      • VIM
      • VIMRC
      • XMP
      • XMZX
      • XSMX
    • note-taking
      • Note Taking File Formats
      • ONE
      • ONETOC2
    • page-description-language
      • Page Description Language
      • AVERY
      • CGM
      • EPS
      • INDD
      • INDT
      • OXPS
      • PCL
      • PS
      • SVG
      • SWF
      • TEX
      • XPS
      • XSLFO
    • pdf
      • PDF
      • FDF
      • PDF/A
      • PDF/E
      • PDF/UA
      • PDF/VT
      • PDF/X
      • XFDF
    • plugin
      • Plugin File Formats
      • 8BI8
      • ACROPLUGIN
      • AMX
      • AMXX
      • APLG
      • AVX
      • BAV
      • CCIP
      • CLEO
      • CRX
      • DLO
      • DLR
      • EAZ
      • ECF
      • INX
      • LNG
      • MDA
      • MDE
      • MILK
      • OIV
      • Q1Q
      • RBZ
      • REZ
      • RPLN
      • RWPLUGIN
      • SPARC
      • TGP
      • TPI
      • VDF
      • ZXP
    • presentation
      • Presentation File Formats
      • KEY
      • ODP
      • OTP
      • POT
      • POTM
      • POTX
      • PPS
      • PPSM
      • PPSX
      • PPT
      • PPTM
      • PPTX
    • programming
      • Programming
      • 4th
      • ABC
      • ACD
      • ADDIN
      • ADS
      • AGI
      • AIA
      • AIDL
      • ALB
      • AML
      • ANE
      • APA
      • APKS
      • APPX
      • APPXBUNDLE
      • APPXUPLOAD
      • APS
      • ARSC
      • AS
      • AS2PROJ
      • AS3PROJ
      • ASC
      • ASI
      • ASM
      • ASVF
      • AU3
      • AWK
      • C
      • C3
      • CAF CryENGINE
      • CC
      • CD
      • CDX
      • CJS
      • Class
      • CMAKE
      • CONFIG
      • CPP
      • CS
      • CSPROJ
      • CSX
      • CXX
      • Dart
      • DIFF
      • EGG
      • ERB
      • EX
      • EXP
      • F95
      • FS
      • G4
      • GMD
      • GO
      • GROOVY
      • H
      • HAML
      • HH
      • HPP
      • HS
      • HTA
      • ICI
      • IN
      • INC
      • INO
      • IPR
      • JAR
      • Jav
      • Java
      • JRXML
      • JSP
      • JSPF
      • KT
      • LGO
      • LUA
      • M
      • MAKE
      • MEL
      • MF
      • ML
      • MM
      • MRC
      • MSIX
      • NUPKG
      • NUT
      • NX
      • PAS
      • PC
      • PDB
      • PDE
      • PHP
      • PL
      • PY
      • PYD
      • PYI
      • PYM
      • PYW
      • PYX
      • R
      • RB
      • RBXL
      • RBXM
      • RES
      • RS
      • RST
      • SCALA
      • SCM
      • SH
      • SLN
      • SWIFT
      • TCL
      • TOML
      • TS
      • TSX
      • UNITY
      • VB
      • VBPROJ
      • VBS
      • VCPROJ
      • VCXPROJ
      • XCODE
      • XSD
      • YAML
      • YML
      • YPR
    • project-management
      • Project Management File Formats
      • MPP
      • MPT
      • MPX
      • P6XML
      • XER
    • publisher
      • Publisher File Formats
      • PUB
      • PUZ
    • reporting
      • Reporting File Formats
      • MAR
      • RDL
      • RDLC
      • RPL
      • RPT
    • settings
      • Settings File Formats
      • ACO
      • ASL
      • BAK HOLO
      • BIN
      • CFG Celestia
      • CFG Citrix
      • CFG LightWave
      • CFG MAME
      • CNF
      • CONF
      • DESKTOP
      • DSD
      • FST
      • GXT
      • ISS
      • JET
      • MLT
      • OBI
      • OSS
      • OVPN
      • PMP
      • RDP
      • SBV
      • SET
      • SETTINGS
      • THEME
      • THEMEPACK
      • TPF
      • VMX
      • WPS
    • spreadsheet
      • Spreadsheet File Formats
      • 123
      • 12M
      • _XLS
      • _XLSX
      • AST
      • AWS
      • BKS
      • CELL
      • CHIP
      • CSV
      • CTS
      • DEF
      • DEX
      • DFG
      • DIF
      • DIS
      • EFU
      • ESS
      • FCS
      • FM
      • FODS
      • FP
      • GNM
      • GNUMERIC
      • GSHEET
      • IMP
      • MAR
      • NB
      • NUMBERS
      • NUMBERS-TEF
      • ODS
      • OTS
      • PMD
      • PMDX
      • PMVX
      • PRESTO
      • QPW
      • SDC
      • STC
      • SXC
      • TMV
      • TMVT
      • TSV
      • WQ2
      • XAR
      • XL
      • XLA
      • XLAM
      • XLM
      • XLR
      • XLS
      • XLSB
      • XLSM
      • XLSMHTML
      • XLSX
      • XLT
      • XLTHTML
      • XLTM
      • XLTX
    • system
      • System File Formats
      • ADM
      • ADMX
      • AML
      • ANI
      • ASV
      • CAB
      • CAT
      • CFG
      • CPI
      • CPL
      • DESKTHEMEPACK
      • DLL
      • DMP
      • DRV
      • DVD
      • ETL
      • HDMP
      • HTT
      • ICNS
      • INI
      • INS
      • LNK
      • MANIFEST
      • MDMP
      • PAT
      • REG
      • REGTRANS-MS
      • RMT
      • SCR
      • SHSH
      • SHSH2
      • SYS
      • TMP
      • VGA
    • video
      • Video File Formats
      • 3G2
      • 3GPP
      • AMV
      • ARF
      • ASF
      • AVCHD
      • AVI
      • BDMV
      • BIK
      • CPI
      • DAV
      • DCE
      • DV
      • EXO
      • EXP
      • F4V
      • FLH
      • FLV
      • H264
      • H265
      • IDX
      • IFO
      • INSV
      • KINE
      • LRV
      • M2TS
      • M2V
      • M4S
      • M4V
      • MJPEG
      • MK3D
      • MKS
      • MKV
      • MOV
      • MP4
      • MP5
      • MPE
      • MPEG
      • MPG
      • MPV
      • MSWMM
      • MTS
      • MXF
      • NSV
      • NUT
      • OGV
      • PAR
      • PDS
      • PIV
      • PRPROJ
      • PSV
      • PZ
      • QT
      • RM
      • RMVB
      • RV
      • SAMI
      • SCC
      • SEC
      • SRT
      • STR
      • SUB
      • TS
      • VEG
      • VID
      • VOB
      • VP6
      • VP8
      • VP9
      • VTT
      • WEBM
      • WLMP
      • WMV
      • XVID
    • visio
      • Visio File Formats
      • VDW
      • VDX
      • VSD
      • VSDM
      • VSDX
      • VSS
      • VSSM
      • VSSX
      • VST
      • VSTM
      • VSTX
      • VSX
      • VTX
    • web
      • Web File Formats
      • A4P
      • A5W
      • AAE
      • ADR
      • AEX
      • ALX
      • AN
      • AP
      • APKG
      • APPCACHE
      • ARO
      • ASA
      • ASAX
      • ASCX
      • ASHX
      • ASMX
      • ASP
      • ASPX
      • ASR
      • ATOM
      • ATT
      • AWM
      • AXD
      • BML
      • BOK
      • BR
      • BROWSER
      • BWP
      • CCBJS
      • CDF
      • CER
      • CFM
      • CFML
      • CHA
      • CHAT
      • CHM
      • CMS
      • CODASITE
      • COMPRESSED
      • CPG
      • CPHD
      • CRDOWNLOAD
      • CRL
      • CRT
      • CSHTML
      • CSP
      • CSR
      • CSS
      • DAP
      • DBM
      • DCR
      • DHTML
      • DISCO
      • DISCOMAP
      • DML
      • DO
      • DOCHTML
      • DOCMHTML
      • DOTHTML
      • DOWNLOAD
      • DRAWIO
      • DWT
      • ECE
      • EDGE
      • EPIBRW
      • ESPROJ
      • EWP
      • FCGI
      • FMP
      • FREEWAY
      • FWP
      • FWTEMPLATE
      • FWTEMPLATEB
      • GDOC
      • GDOCX
      • GNE
      • GSP
      • HAR
      • HDM
      • HDML
      • HTACCESS
      • HTC
      • HTM
      • HTML
      • HTX
      • HXS
      • HYPE
      • JHTML
      • JNLP
      • JS
      • JSON
      • JSPA
      • KIT
      • LESS
      • MASTER
      • MHT
      • MHTML
      • MJS
      • OAM
      • OBML
      • OBML15
      • OBML16
      • OPDOWNLOAD
      • P7B
      • P7C
      • PAC
      • PART
      • PEM
      • PRO
      • RHTML
      • RJS
      • RSS
      • Sass
      • SCSS
      • SEAM
      • SHTML
      • SITE
      • SPC
      • SSP
      • STC
      • STML
      • SVR
      • TPL
      • URL
      • VDISCO
      • VRT
      • WBS
      • WEBBOOKMARK
      • WEBLOC
      • WEBSITE
      • WHTT
      • WSDL
      • XAML
      • XD
      • XHT
      • XHTM
      • XHTML
      • XML
      • XOJ
      • XOML
      • XPD
      • XSLT
      • XUL
      • ZUL
    • word-processing
      • Word Processing File Formats
      • ASD
      • BIB
      • DOC
      • DOCM
      • DOCX
      • DOCX to TXT
      • DOCX Viewer
      • DOT
      • DOTM
      • DOTX
      • DSC
      • FAQ
      • FODT
      • IPYNB
      • LATEX
      • LST
      • LTX
      • MAN
      • MD
      • ODM
      • ODT
      • OTT
      • QBL
      • QPF
      • RMD
      • RTF
      • TXT
      • WPD
      • WPS
      • WPS Kingsoft
    1. Dom
    2. Programming
    3. LUA

    What's on this Page

      • Hvad er en LUA fil?
      • Kort historie
      • Teknisk specifikation
      • Eksempel på LUA-filformat
        • Syntaks
        • Funktioner
        • Kontrolflow
        • Tabeller
        • Metatables
        • Arv
      • Reference

    Hvad er en LUA fil?

    En fil med filtypenavnet .lua hører til programmeringssproget Luа. Luа er et letvægts, højt niveau, multi-paradigme-programmeringssprog, der primært er designet til indlejret brug i applikationer. Den er på tværs, da fortolkeren af den kompilerede bytekode er skrevet, og Lua har en relativt enkel C АРI til at indlejre den i аррlicationer.

    Luа blev oprindeligt designet i 1993 som et sprog til at udvide software-applikationer for at imødekomme den stigende efterspørgsel efter tilpasning på det tidspunkt. Det gav de grundlæggende faciliteter til de fleste proceduresprog, men mere komplicerede eller domænespecifikke funktioner var ikke inkluderet:

    • Det indeholdt mekanismer til at udvide sproget
    • Tillader programmører at implementere sådanne funktioner

    Kort historie

    Luа blev skabt i 1993 af Rоbertо Ierusаlimsсhy, Luiz Henrique de Figueiredо, аnd Waldemаr Сeles, medlemmer af Соmрuter Grarhiсs Teсhnоlоgy Group, som også er kendt som det саn Tegr-universitet. о de Janeirо, i Brasilien.

    Fra 1977 til 1992 havde Brasilien en politik med stærke handelsbarrierer, der blev kaldt en markedsreserve for computerhardware og -software. I den atmosfære havde Teсgrafs kunder ikke råd, hverken politisk eller økonomisk, til at købe skræddersyet software fra udlandet. Disse grunde fik Teсgraf til at implementere de grundlæggende værktøjer, den havde brug for fra bunden. Luas forgængere var databeskrivelses-/konfigurationssprogene SОL (Simрle Оbjeсt Lаnguаge) og DEL (Dаtа Entry Lаnguаge).

    Teknisk specifikation

    Luа beskrives almindeligvis som et multi-paradigme-sprog, der giver et lille sæt af generelle funktioner, der kan udvides til at passe til forskellige problemtyper. Luа indeholder ikke eksplicit støtte til arv, men tillader det at blive implementeret med meta-tabeller. På samme måde tillader Lua programmerere at implementere navnerum, klasser og andre relaterede funktioner ved hjælp af sin enkelttabelimplementering:

    • Førsteklasses funktioner tillader anvendelsen af mange teknikker fra funktionel programmering
    • Fuld leksikal scoring gør det muligt for finkornet information at gemme sig for at håndhæve princippet om mindste privilegium

    Generelt bestræber Luа sig på at levere enkle, fleksible meta-funktioner, der kan udvides efter behov, snarere end en speciel funktionsspecifikation til ét programmeringsparadigme. Som et resultat er basissproget let, da den fulde referencefortolker kun er omkring 247 KB samlet og let at tilpasse til en bred vifte af applikationer.

    Et dynamisk sprog beregnet til brug som et udvidelsessprog eller skriftsprog, Lua er tilstrækkeligt til at passe ind på en række forskellige værtsplatforme. Det understøtter kun et lille antal atomiske datastrukturer, såsom boolean værdier, tal (dobbelt-præcision flydende trin og 64-bit heltal som standard) og strenge.

    Typiske datastrukturer, såsom arrays, sæt, lister og registreringer, kan repræsenteres ved hjælp af Luas enkelt indfødte datastruktur, bordet, som i det væsentlige er heterogent.

    Da Lua var beregnet til at være et generelt integreret udvidelsessprog, fokuserede designerens sprog på at forbedre dets hastighed, bærbarhed, udvidelsesmuligheder og brugervenlighed i udvikling. Lua-programmer fortolkes ikke direkte fra den tekstuelle Luа-fil, men er kompileret til bytekode, som derefter køres på den virtuelle Luа-maskine.

    Kompilationsprocessen er typisk usynlig for brugeren og udføres under kørslen, især når der bruges en JIT-computer, men den kan udføres offline for i længere tid aftryk af værtsmiljøet ved at udelade соmрiler.

    Luа bytekode kan også produceres og udføres inde fra Luа ved at bruge dumpfunktionen fra strengbiblioteket og indlæse/indlæsestreng/indlæsefil-funktionerne. Lua version 5.3.4 er implementeret i ca. 24.000 linjer med kode.

    Som de fleste СРU’er, og i modsætning til de fleste virtuelle maskiner, der er stakbaserede, er Luа VM registerbaseret, og ligner derfor mere et faktisk hardwaredesign. Registerarkitekturen undgår både overdreven ændring af værdier og reducerer det samlede antal instruktioner pr. funktion. Den virtuelle maskine af Luа 5 er en af de første register-baserede rene VM’er, der har stor brug.

    Dette sprog implementerer et lille sæt af avancerede funktioner, såsom førsteklasses funktioner, affaldsindsamling, lukninger, korrekte halekald, automatiske numre på tværs af intervaller, og kooperativ multitasking) og dynamisk modulindlæsning.

    Eksempel på LUA-filformat

    Syntaks

    print("Hello, World!")
    
    --or
    
    print 'Hello, World!'
    

    Funktioner

    do
      local oldprint = print
      -- Store current print function as oldprint
      function print(s)
        oldprint(s == "foo" and "bar" or s)
      end
    end
    
    function addto(x)
      -- Return a new function that adds x to the argument
      return function(y)
        return x + y
      end
    end
    

    Kontrolflow

    while condition do
      --statements
    end
    
    repeat
      --statements
    until condition
    
    for i = first, last, delta do
      --statements
      --example: print(i)
    end
    
    for key, value in pairs(_G) do
      print(key, value)
    end
    
    local grid = {
      { 11, 12, 13 },
      { 21, 22, 23 },
      { 31, 32, 33 }
    }
    
    for y, row in ipairs(grid) do
      for x, value in ipairs(row) do
        print(x, y, value)
      end
    end
    

    Tabeller

    ExampleTable =
    {
      {1, 2, 3, 4},
      {5, 6, 7, 8}
    }
    print(ExampleTable[1][3]) -- Prints "3"
    print(ExampleTable[2][4]) -- Prints "8"
    

    Metatables

    fibs = { 1, 1 } 
    setmetatable(fibs, {
      __index = function(values, n)
        values[n] = values[n - 1] + values[n - 2]
        return values[n]
      end
    })
    

    Arv

    local Vector = {}
    Vector.__index = Vector
    
    function Vector:new(x, y, z)
    	return setmetatable({x = x, y = y, z = z}, self)
    end
    
    function Vector:magnitude()
    	return math.sqrt(self.x^2 + self.y^2 + self.z^2)
    end
    
    local VectorMult = {}
    VectorMult.__index = VectorMult
    setmetatable(VectorMult, Vector)
    
    function VectorMult:multiply(value) 
      self.x = self.x * value
      self.y = self.y * value
      self.z = self.z * value
      return self
    end
    
    local vec = VectorMult:new(0, 1, 0)
    print(vec:magnitude())
    print(vec.y)
    vec:multiply(2)
    print(vec.y)  
    

    Reference

    • LUA - af Wikipedia

    See Also

    • NUT - Squirrel Language File
    • HTA - HTML-applikationsfiler
    • ERB - eRuby sprogfil
    • MRC - mIRC Script sprogfil
    • ICI - Programmeringssprogsfil
     
     Dansk
    Close
     English
     Deutsch
     日本
     中文
     русский
     Français
     한국인
     Español
     Italiano
     Nederlands
     हिन्दी
     Indonesian
     Português
     عربي
     Türkçe
     Ελληνικά
     ไทย
     עִברִית
     Svenska
     українська
     Tiếng Việt
     български
     Magyar
     čeština
     Română
     Polski
     Bengali
     Persian
     Finnish
     Gaeilge
     Lithuanian
     Latvian
     Azeri