{"repo":"NightmarePog/Laze","free":true,"listed":false,"github":"https://github.com/NightmarePog/Laze","clone":"git clone https://github.com/NightmarePog/Laze.git","description":"A statically-typed language that compiles to Lua. Self-hosted compiler, zero runtime dependencies.","language":"Lua","stars":10,"topics":["compiler","language","lazarus","lua","lua-compiler","programming-language","self-hosted","statically-typed","transpiler","type-system"],"license":"MIT","category":"self-hosted-apps","readme_excerpt":"Laze Laze is a small, statically-typed language that compiles to Lua. The output is a single self-contained .lua file with no runtime dependencies, which makes it a good fit for environments where you have Lua but not much else: ComputerCraft computers, embedded scripting runtimes, or anywhere a plain .lua file is easier to deploy than a set of modules. The main thing Laze gives you over writing Lua directly is structure. Classes with real constructors, a type system that catches mistakes before runtime, a module system that resolves imports at compile time, and a clean interop layer for calling existing Lua APIs with type signatures. Quick example Run it: File kinds Laze has three file kinds, distinguished by the suffix before .laz : Suffix Kind Used for --- --- --- .class.laz class Instantiable types with a constructor and instance methods .object.laz object Static namespaces -- utility functions, Lua API wrappers .trait.laz trait Method contracts that classes can implement The filename (without the suffix) is the class or module name, so filenames are PascalCase. Building The compiler looks for std/ next to your source file. Copy or symlink the std/ directory from this repo into your project, or point the compiler at it with --pkg-path : Via make: Language reference Documentation: nightmarepog.github.io/Laze Source is in doc/design/ . Standard library Module Kind Contents --- --- --- std.Str object String utilities: split, trim, pad, find, replace std.Sys object IO, proces","default_branch":null,"files":null,"tree":[],"storefront":"/r/NightmarePog","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/NightmarePog/Laze/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}