Skip to content

averycrespi/yolk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation



Yolk

Numerical computing for Yolol.

WhatWhyHowDevelopmentLicenseContributionCredits

What is Yolk?

Yolk is a domain-specific language that transpiles to Yolol.

// Calculate dot products

define dot(V, W) = sum(V * W)

let foo = dot([1, 2], [3, 4])

// Result: foo == 11

Yolk specializes in working with numbers and arrays. It doesn't support strings, conditionals, or gotos.

Why should I use Yolk?

  • Minimal syntax: has the same operators and precedence as Yolol
  • Interoperable design: easy to integrate with your existing Yolol
  • Aggressive optimization: saves space on your Yolol chips

How do I get started?

Learn the Yolk syntax by checking out some examples or by reading the language specification.

Try Yolk online with Yolk Web.

Development

Requires Git and Rust nightly.

# Set nightly as default
rustup default nightly

# Clone the repository
git clone https://github.com/averycrespi/yolk.git && cd yolk

# Build and run tests
make

You can read more about Yolk development in my project highlight blog post.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Credits

Logo derived from: Egg by David from the Noun Project

About

Numerical computing for Yolol

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

No packages published