zaid

module
v1.0.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 6, 2023 License: MIT

README

The zaidlang Programming Language

Test

zaidlang is a small, object-oriented, embeddable toy scripting language. While object-oriented, zaidlang also supports procedural and functional programming styles as well.

zaidlang is dynamically typed, runs by a tree-walking interpreter, and has automatic memory management thanks to its implementation through the Go programming language.

Status

Currently in beta, vetting out the language and seeing how it feels writing/running. Major changes are still possible at this stage.

Documentation

You will find robust, user friendly, and updated documentation on our website.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Installation

Brew

If you're on mac, you may use homebrew:

$ brew tap zaid-language/zaid
$ brew install zaid-language/zaid/zaid
Go Install

If you have Go installed, you may use go install:

go install zaidlang
Direct Download

You may download the compiled binaries for your platform from our GitHub releases page.

Development

  • To build and execute zaidlang, run make.
  • To build zaidlang, run make build.
  • To execute tests, run make test.
$  git clone git@github.com:zaid-language/zaid.git
$  cd zaid
$  make
   zaidlang (x.x)
   Press Ctrl + C to exit

>>

CLI

You can execute code written in zaidlang in various ways using the CLI.

REPL

zaidlang includes a simple REPL to write and execute zaidlang code directly in your terminal. To enter the REPL environment, run zaid on its own:

$  zaid
   zaidlang (x.x)
   Press Ctrl + C to exit

>>
Executing Files

To execute a zaidlang source file (.zaid), pass either the relative or absolute path of the file to zaid. The source file will be executed and then exit back to the terminal.

$  zaid examples/fibtc.zaid
   9227465
$

Releasing

zaidlang is hosted and distributed through GitHub. We utilize GoReleaser to automate the release process. GoReleaser will build all the necessary binaries, publish the release and publish the brew tap formula. The following steps outline the process for maintainers of zaidlang:

  1. Ensure you have a GitHub token with repo access saved to your environment:
export GITHUB_TOKEN="YOUR_GH_TOKEN"
  1. Ensure the internal version reference is updated:

    // version/version.go
    
    var (
       Version = "x.y.z"
    )
    
  2. Create a new tag:

$ git tag -a vx.y.z -m "Release description"
$ git push origin vx.y.z
  1. Run GoReleaser:
$ goreleaser

Credits

License

zaidlang is open-sourced software licensed under the MIT license. See the LICENSE file for complete details.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL