Skip to content

sillelien/dollar

Repository files navigation

Binary Distribution

GitHub License GitHub Issues GitHub Release Dependency Status BCH compliance

Join the chat at https://gitter.im/sillelien/dollar GitQ Patreon

Full documentation at http://sillelien.github.io/dollar and the manual is at http://sillelien.github.io/dollar/manual/

Download it Now

Intro

Dollar is a light-weight scripting language for the JVM. More specifically it is an integration centric, reactive dynamic programming language.

It is currently being built for the needs of server-side developers and Java developers in general who need to produce quick prototypes or write simple scripts. Furthermore it is an internet centric language where JSON and URIs are first class citizens.

Download it Now

The language is currently in early but active development.

I'm also working full-time on this, if you wish to support my efforts then please back me on Patreon:

Patreon

And/or star the project on GitHub.

Thanks!


Example to find out your local air quality:

//First we get the Geo Location of our IP address
var geo= read http://freegeoip.net/json/
var lat= geo.latitude
var lon= geo.longitude

var quality= read ("https://api.openaq.org/v1/measurements?radius=10000&limit=5&coordinates="+ lat + "," + lon) as URI;

//Now output the quality from each result
quality.results each {
    @@ $1.location
    @@ $1.parameter +" was "+ $1.value +  " " + $1["unit"] +" on " + $1.date.utc
}


Learn more at http://sillelien.github.io/dollar.

Install

Download the distribution then run the following in your shell:

    tar -zxvf dollar-0.4.5195.tgz

To use dollar:

    ./dollar/bin/dollar <filename>.ds

Docs

Documentation is at http://sillelien.github.io/dollar.

Q&A: https://gitq.com/sillelien/dollar

Download it Now

Maven

The artifacts used to build the Dollar project can be accessed using

            <repositories>
                <repository>
                    <id>dollar-s3-release-repo</id>
                    <name>S3 Release Repository for component1</name>
                    <url>s3://dollar-repo/release</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>false</enabled>
                    </snapshots>
                </repository>            
            </repositories>

and

        <dependency>
            <groupId>com.sillelien</groupId>
            <artifactId>dollar-xxx</artifactId>
            <version>0.4.5195</version>
        </dependency>

Dependencies: Dependency Status

Docker

There is a docker image, but it is in it's infancy so better to work with the distribution for now.

docker run -v $HOME/.github:/root/.github -v $HOME/.dollar:/root/.dollar -v $(pwd):/build -it sillelien/dollarscript-headless:0.4  <filename>.ds

Docker Registry

Research & Background Reading

Language Design

http://www.drdobbs.com/architecture-and-design/so-you-want-to-write-your-own-language/240165488

https://www.youtube.com/watch?v=Sg4U4r_AgJU

Lambdas and Scope Closure

https://martinfowler.com/bliki/Lambda.html

Font Ligatures

https://github.com/tonsky/FiraCode


If you use this project please consider giving us a star on GitHub.

Please contact me through Gitter (chat) or through GitHub Issues.

GitHub Issues Join the chat at https://gitter.im/sillelien/dollar

For commercial support please contact me directly.


💰 Referral Links

This is an open source project, which means that we are giving our time to you for free. However like yourselves, we do have bills to pay. Please consider visiting some of these excellent services, they are not junk we can assure you, all services we would or do use ourselves.

Really Excellent Dedicated Servers from Limestone Networks - fantastic service, great price.

Low Cost and High Quality Cloud Hosting from Digital Ocean - truly awesome service.

👮 Copyright and License

GitHub License

(c) 2014-2017 Neil Ellis all rights reserved. Please see LICENSE for license details of this project. Please visit http://neilellis.me for help and raise issues on GitHub.

For commercial support please ✉ contact me directly.