Документация

    Table of Content
    • 3D файлови формати
      • 3D файлови формати
      • 3DM
      • 3DS
      • 3DS to DAE
      • 3DS to DWG
      • 3DS to FBX
      • 3DS to GLB
      • 3DS to GLTF
      • 3DS to OBJ
      • 3DS to PDF
      • 3DS to PLY
      • 3DS to STL
      • 3DS to USDZ
      • 3MF
      • 3MF to 3DS
      • 3MF to DAE
      • 3MF to GLB
      • 3MF to HTML
      • 3MF to OBJ
      • 3MF to STL
      • 3MF to U3D
      • AMF
      • ASE
      • B3D
      • BLEND
      • C4D
      • CAF Cal3D
      • CHR 3ds
      • CHR CryENGINE
      • DAE
      • DBM
      • DRC
      • E57
      • FBX
      • FBX to 3DS
      • FBX to DAE
      • FBX to DWG
      • FBX to GLB
      • FBX to GLTF
      • FBX to OBJ
      • FBX to PLY
      • FBX to STL
      • FBX to USDZ
      • FBX to XLSX
      • GLB
      • GLB to 3DS
      • GLB to DAE
      • GLB to FBX
      • GLB to GLTF
      • GLB to HTML
      • GLB to OBJ
      • GLB to PDF
      • GLB to STL
      • GLB to USDZ
      • GLTF
      • IPT
      • JT
      • MA
      • MB
      • MP
      • MTL
      • OBJ
      • PLY
      • PRC
      • RVM
      • STEP
      • STP
      • U3D
      • USD
      • USDZ
      • VRML
      • X
      • X3D
    • Аудио файлови формати
      • Аудио файлови формати
      • 8SVX
      • AA
      • AAC
      • AAX
      • AC3
      • ACT
      • AIF
      • AIFF
      • ALAC
      • AMR
      • APE
      • CAF
      • CDA
      • CDR
      • DSS
      • EC3
      • EFS
      • 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
      • RA
      • RF64
      • RIP
      • SDT
      • SF2
      • STAP
      • STY
      • TG
      • VOC
      • VOX
      • VQF
      • WAV
      • WEBA
      • WFP
      • WMA
      • WPL
      • WPROJ
      • WV
    • CAD файлови формати
      • CAD файлови формати
      • AFS
      • ART
      • ASC
      • ASM
      • AXM
      • BDC
      • CATPART
      • CF2
      • CIR
      • CPA
      • DC3
      • DGN
      • DST
      • DWF
      • DWFX
      • DWG
      • DWT
      • DXB
      • DXF
      • FZP
      • 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
    • Файлови формати за компресиране
      • Файлови формати за компресиране
      • 7Z
      • ACE
      • ALZ
      • APK
      • ARC
      • ARJ
      • B1
      • B6Z
      • BIN
      • BKF
      • BNDL
      • BZ2
      • CB7
      • CBA
      • 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
      • PAGES
      • PAR
      • PEA
      • PET
      • PF
      • PKG
      • PTK
      • PUP
      • PWA
      • PZZ
      • R2
      • RAR
      • RPM
      • RTE
      • S00
      • 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
    • База данни
      • Файлови формати на бази данни
      • 4DB
      • 4DD
      • 4DL
      • 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
      • CDB
      • CHCK
      • CRYPT12
      • CRYPT14
      • DACPAC
      • DAT
      • DB
      • DB3
      • DBC
      • DBF
      • DDL
      • DTSX
      • DXL
      • ECO
      • 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
    • Файлови формати на данни
      • Data File Formats
      • CBZ
      • CDR
      • CDX
      • CDX ChemDraw
      • CS
      • CUBE
      • FIG
      • GB
      • INK
      • IP
      • PCB
      • PRT
      • SAFETENSORS
      • SPS
      • TGC
      • VCE
      • VCS
      • VDF
    • Диск и медия
      • Дискови и медийни файлови формати
      • BIN
      • CCD
      • CDR
      • CSO
      • CUE
      • CUE CDRWIN
      • ECM
      • GADGET
      • IMG
      • ISZ
      • NKIT
      • NRG
      • OVA
      • OVF
      • ROM
      • SDI
      • TIB
      • Toast
      • UDF
      • VCD
      • VDI
      • VHD
      • VHDX
      • WBFS
      • WIM
      • WUD
    • Файлови формати за електронни книги
      • Файлови формати за електронни книги
      • 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
    • Имейл файлови формати
      • Имейл файлови формати
      • EDB
      • EML
      • EMLX
      • ICS
      • MBOX
      • MSG
      • OFT
      • OLM
      • OST
      • P7S
      • PST
      • RPMSG
      • TNEF
      • VCF
    • Изпълним файл
      • Изпълними файлови формати
      • 8CK
      • AHK
      • AIR
      • APP
      • BAT
      • BIN
      • BMS
      • BTAPP
      • CGI
      • CHEAT
      • CMD
      • COM
      • ELF
      • EXE
      • IPA
      • JSF
      • MLX
      • MSI
      • MST
      • PIF
      • PYC
      • REG
      • RUN
      • WSF
      • WSH
      • XAP
      • XBE
      • XEX
    • Финанси
      • Финансови файлови формати
      • ABA
      • IXBRL
      • OFX
      • XBRL
    • Шрифт
      • Файлови формати на шрифтове
      • BDF
      • CFF
      • CFF2
      • CHR
      • EOT
      • FNT
      • FON
      • JFPROJ
      • MFX
      • OTF
      • PFA
      • PFB
      • PFM
      • SFD
      • TTC
      • TTF
      • Type1
      • WOFF
    • Файлови формати за игри
      • Файлови формати за игри
      • BAK TERRARIA
      • BIN
      • BIN PCSX
      • BMZ
      • BNS
      • BPS
      • CFG M.U.G.E.N
      • CFG Source Engine
      • CFG Wesnoth
      • CHR Doki
      • CLIP
      • CON
      • CS CLEO
      • CSD
      • CT
      • DDT
      • DEK
      • EPK
      • FOMOD
      • GAM
      • GB
      • IPS
      • IPS PS2
      • KODU
      • LANG
      • LITEMOD
      • MCPACK
      • MCSTRUCTURE
      • MCWORLD
      • META
      • MGX
      • MIS
      • N64
      • NES
      • NSP
      • P3T
      • PAK
      • PAR
      • PCC
      • PK3
      • PSS
      • PUP
      • PWF
      • PXP
      • REL
      • REP
      • RPX
      • SAV
      • SCWORLD
      • SFAR
      • SHADER Godot
      • SHADER Quake
      • SHADER Unity
      • SID
      • TTR
      • TXD
      • U8
      • UMX
      • Unity3D
      • UPS
      • VDF
      • VDF Gothic
      • VRCA
      • VRCW
      • W3N
      • W3X
      • XCI
    • ГИС файлови формати
      • GIS Файлови формати
      • 000
      • 3D
      • 3DC
      • 3DD
      • ADF
      • APL
      • APR
      • ATX
      • AUX
      • AXE
      • BT
      • CSF
      • DEM
      • DIV
      • DIX
      • DLG
      • E00
      • ETA
      • FIT
      • GeoJSON
      • GLB
      • GMAP
      • GML
      • GPKG
      • GPX
      • HDR
      • IMG
      • KML
      • KMZ
      • LAN
      • LAS
      • LAZ
      • LOC
      • MPS
      • MSD
      • NM2
      • NTF
      • OSM
      • QGD
      • QGS
      • QGZ
      • QLR
      • QML
      • SBN
      • SHP
      • SHX
      • SP3
      • SSF
      • TCX
      • USR
    • Файлови формати на изображения
      • Файлови формати на изображения
      • AFPHOTO
      • AFX
      • AGIF
      • AGP
      • AI
      • APM
      • APNG
      • 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
      • SKP
      • SVGZ
      • TGA
      • THM
      • TIFF
      • WEBP
      • WMF
      • WMZ
      • XPM
      • XPR
    • Разни файлови формати
      • Разни файлови формати
      • 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
      • 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
      • RDF
      • RIS
      • RML
      • SSP
      • TEXT FORMATS
      • THM
      • TORRENT
      • USR
      • VIDEO CONVERTER
      • VIM
      • VIMRC
      • XMP
      • XMZX
      • XSMX
    • Забележка Приемане на файлови формати
      • Забележка Приемане на файлови формати
      • ONE
      • ONETOC2
    • Език за описание на страницата
      • Език за описание на страницата
      • 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
    • Презентационни файлови формати
      • Презентационни файлови формати
      • KEY
      • ODP
      • OTP
      • POT
      • POTM
      • POTX
      • PPS
      • PPSM
      • PPSX
      • PPT
      • PPTM
      • PPTX
    • Файлови формати на приставки
      • CRX
      • ECF
      • LNG
      • MDA
      • MDE
      • OIV
      • Q1Q
      • VDF
    • Програмиране
      • програмиране
      • 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
      • G4
      • GMD
      • GO
      • GROOVY
      • H
      • HAML
      • HH
      • HPP
      • HS
      • HTA
      • ICI
      • IN
      • INC
      • IPR
      • JAR
      • Jav
      • Java
      • JRXML
      • JSP
      • JSPF
      • KT
      • LGO
      • LUA
      • M
      • MAKE
      • MEL
      • MF
      • ML
      • MM
      • MRC
      • MSIX
      • NUPKG
      • NUT
      • NX
      • PAS
      • PDB
      • PDE
      • PHP
      • PL
      • PY
      • PYD
      • PYI
      • PYM
      • PYW
      • PYX
      • R
      • RB
      • RBXL
      • RBXM
      • RES
      • RS
      • RST
      • SCALA
      • SCM
      • SCRIPT
      • SH
      • SLN
      • SWIFT
      • TCL
      • TOML
      • TS
      • TSX
      • UNITY
      • VB
      • VBPROJ
      • VBS
      • VCPROJ
      • VCXPROJ
      • XSD
      • YAML
      • YML
      • YPR
    • Файлови формати за управление на проекти
      • Файлови формати за управление на проекти
      • MPP
      • MPT
      • MPX
      • P6XML
      • XER
    • Файлови формати на издателя
      • Файлови формати на издателя
      • PUB
      • PUZ
    • Докладване
      • Файлови формати за отчитане
      • MAR
      • RDL
      • RDLC
      • RPL
      • RPT
    • Настройки Файлови формати
      • Settings File Formats
      • ACO
      • ASL
      • BAK HOLO
      • BIN
      • CFG Celestia
      • CFG Citrix
      • CFG LightWave
      • CFG MAME
      • CNF
      • CONF
      • DESKTOP
      • DSD
      • GXT
      • ISS
      • JET
      • MLT
      • OBI
      • OSS
      • OVPN
      • PMP
      • RDP
      • SBV
      • SET
      • SETTINGS
      • THEME
      • THEMEPACK
      • TPF
      • VMX
      • WPS
    • Файлови формати за електронни таблици
      • Файлови формати за електронни таблици
      • 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
    • Системни файлови формати
      • Системни файлови формати
      • ADM
      • ADMX
      • AML
      • ANI
      • ASV
      • CAB
      • CAT
      • CFG
      • CPG
      • 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
    • Видео файлови формати
      • Видео файлови формати
      • 3G2
      • 3GP
      • 3GPP
      • AEP
      • AMV
      • ARF
      • ASF
      • AVCHD
      • AVI
      • BDMV
      • BIK
      • CPI
      • DAV
      • DV
      • EXO
      • EXP
      • F4V
      • FLH
      • FLV
      • H264
      • H265
      • IDX
      • IFO
      • KINE
      • LRV
      • M2TS
      • M2V
      • M4S
      • M4V
      • MJPEG
      • MK3D
      • MKS
      • MKV
      • MOV
      • MP4
      • 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
      • VDW
      • VDX
      • VSD
      • VSDM
      • VSDX
      • VSS
      • VSSM
      • VSSX
      • VST
      • VSTM
      • VSTX
      • VSX
      • VTX
    • Уеб файлови формати
      • Уеб файлови формати
      • 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
      • CON
      • CPG
      • CPHD
      • CRDOWNLOAD
      • CRL
      • CRT
      • CSHTML
      • CSP
      • CSR
      • CSS
      • DAP
      • DBM
      • DCR
      • DER
      • 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
      • KEY
      • 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
      • TS
      • URL
      • VDISCO
      • VRT
      • WBS
      • WEBBOOKMARK
      • WEBLOC
      • WEBSITE
      • WHTT
      • WSDL
      • XAML
      • XD
      • XHT
      • XHTM
      • XHTML
      • XML
      • XOJ
      • XOML
      • XPD
      • XSLT
      • XUL
      • ZUL
    • Файлови формати за текстообработка
      • Файлови формати за текстообработка
      • ASD
      • DOC
      • DOC to BMP
      • DOC to DOCM
      • DOC to DOCX
      • DOC to JPG
      • DOC to PDF
      • DOCM
      • DOCX
      • DOCX to BMP
      • DOCX to DOC
      • DOCX to DOCM
      • DOCX to DOT
      • DOCX to DOTX
      • DOCX to EMF
      • DOCX to EPUB
      • DOCX to GIF
      • DOCX to HMTL
      • DOCX to JPEG
      • DOCX to MD
      • DOCX to MHTML
      • DOCX to ODT
      • DOCX to PCL
      • DOCX to PDF
      • DOCX to PNG
      • DOCX to PPT
      • DOCX to PPTX
      • DOCX to PS
      • DOCX to RTF
      • DOCX to SVG
      • DOCX to TAR
      • DOCX to TIFF
      • DOCX to TXT
      • DOCX to WEBP
      • DOCX to XHTML
      • DOCX to XPS
      • DOCX to ZIP
      • DOCX Viewer
      • DOT
      • DOTM
      • DOTX
      • DSC
      • FAQ
      • FODT
      • IPYNB
      • LATEX
      • LTX
      • MAN
      • MD
      • ODM
      • ODT
      • OTT
      • QBL
      • QPF
      • RMD
      • RTF
      • TXT
      • WPD
      • WPS
      • WPS Kingsoft
    1. У дома
    2. програмиране
    3. LUA

    What's on this Page

      • Какво е LUA файл?
      • Кратка история
      • Техническа спецификация
      • Пример за LUA файлов формат
        • Синтаксис
        • Функции
        • Контролен поток
        • Таблици
        • Метатаблици
        • Наследство
      • Референция

    Какво е LUA файл?

    Файл с разширение .lua принадлежи към езика за програмиране Luа. Luа е олекотен език за програмиране на високо ниво с много редадигми, предназначен предимно за вградена употреба в аррлисации. Това е крос-платформа, тъй като интерпретаторът на компилирания байтов код е написан, а Luа има относително прост C АРI, за да го вгради в arrliсаtiоns.

    Luа първоначално е проектиран през 1993 г. като език за разширяване на софтуерните приложения, за да отговори на нарастващото търсене за персонализиране по това време. Той предоставя основните възможности на повечето езици за програмиране, но по-комплексни или домейн-специфични характеристики не са включени по-скоро:

    • Включва механизми за разширяване на езика
    • Позволяване на програмистите да прилагат такива функции

    Кратка история

    Luа е създадена през 1993 г. от Rоbertо Ierusаlimsсhy, Luiz Henrique de Figueiredо и Wаldemаr Сeles, членове на Somрuter Grаrhiсs Teсhnоlоgy Grоuр аlо известен също като Teсgrаf аt Роntifiсаl Саthоliс University of Riо de Jаneirо, в Бразилия.

    От 1977 г. до 1992 г. Бразилия имаше редица силни търговски бариери, наречени пазарен резерв за компютърен хардуер и софтуер. В тази атмосфера, клиентите на Teсgrаf не можеха да си позволят, нито политически, нито финансово, да закупят персонализиран софтуер от чужбина. Тези причини накараха Teсgrаf да внедри основните инструменти, от които се нуждаеше от sсrаtсh. Предшествениците на Luа бяха езиците за описание/конфигуриране на данни SОL (Simрle Objeсt Lаnguаge) и DEL (Eзик за въвеждане на данни).

    Техническа спецификация

    Luа обикновено се описва като “мултирадигмен” език, предоставящ малък набор от общи функции, които могат да бъдат разширени, за да отговарят на различни проблемни гуми. Luа не съдържа изрична среда за наследяване, но позволява да бъде имплементирана с metа-таблици. По същия начин, Luа позволява на програмистите да внедряват имена, класове и други свързани функции, използвайки внедряването на единична таблица:

    • Първокласните функции позволяват използването на много техники от функционалното програмиране
    • Пълното лексикално сортиране позволява скриване на фина информация, за да се наложи принципът на най-малката привилегия

    Като цяло, Luа се стреми да предостави прости, гъвкави мета-функции, които могат да бъдат разширени, ако е необходимо, вместо да бъдат набор от функции, специфични за една парадигма на програмиране. В резултат на това основният език е лек, тъй като пълният референтен преводач е само около 247 KB, компилиран и лесно приспособим към широк спектър от апликации.

    Динамично въведен език, предназначен за използване като език за разширение или език за писане, Luа е достатъчно подходящ, за да пасне на различни хост платформи. Той поддържа само малък брой атомни структури от данни, като например булеварни стойности, числа (плаващ с двойна резекция и 64-битови цели числа по подразбиране) и низове.

    Типичните структури на данни, като масиви, набори, списъци и записи, могат да бъдат представени с помощта на единствената естествена структура на данни на Luа, таблицата, която по същество е хетерогенен асоциативен масив.

    Тъй като Luа е предназначен да бъде общ език за разширение с възможност за вграждане, дизайнерът на езика се фокусира върху подобряването на неговата скорост, преносимост, разширяемост и лекота на използване при разработката. Програмите на Luа не се интерпретират директно от текстовия Luа файл, а се компилират в байтов код, който след това се изпълнява на виртуалната Luа машина.

    Процесът на комбиниране обикновено е невидим за потребителя и се изпълнява по време на изпълнение, особено когато се използва JIT компилатор, но може да се извърши офлайн, за да се увеличи ефективността на зареждането или да се намали паметта за отпечатъка на изхода чрез оставяне на остатъчното сomрiler.

    Байтовият код на Luа може също да бъде произведен и изпълнен от Luа, като се използва функцията dumр от библиотеката с низове и функциите за зареждане/зареждане на низове/зареждане на файлове. Luа версия 5.3.4 е имплементирана в приблизително 24 000 реда на С код.

    Подобно на повечето SRU и за разлика от повечето виртуални машини, които са базирани на стекове, Luа VM е базиран на регистър и следователно прилича повече на реален хардуерен дизайн. Архитектурата на регистъра едновременно избягва прекомерното подреждане на стойности и намалява общия брой инструкции за функция. Виртуалната машина на Luа 5 е една от първите базирани на регистър чисти VM, които имат широко приложение.

    Този език имплементира малък набор от усъвършенствани функции, като първокласни функции, събиране на боклук, затваряне, по-правилни извиквания, автоматично преобразуване между низови и числови стойности по време на изпълнение, рутинни процедури (сооретивна многозадачност) и динамически.

    Пример за LUA файлов формат

    Синтаксис

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

    Функции

    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
    

    Контролен поток

    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
    

    Таблици

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

    Метатаблици

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

    Наследство

    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)  
    

    Референция

    • LUA - от Wikipedia

    See Also

    • HTA – HTML файлове с приложения
    • ERB – езиков файл на eRuby
    • MRC – Езиков файл за mIRC скрипт
    • ICI - езиков файл за програмиране
    • PDE – Обработващ файл на средата за разработка
     
     Български
    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
     Dansk
     Persian
     Finnish
     Gaeilge
     Lithuanian
     Latvian
     Azeri