The Rye programming language is a dynamic scripting language based on REBOL’s ideas, taking inspiration from the Factor language and Unix shell. Rye is written in Go and inherits Go’s concurrency capabilities, including goroutines and channels. Recently, Rye gained support for Go’s select and waitgroups.
Building blocks
Goroutines
Goroutines are lightweight threads of execution that are managed by the Go/Rye runtime. They operate independently, allowing multiple tasks to run concurrently without blocking each other.
Creating a Goroutine in Rye is straightforward. The go keyword is used to launch a new Goroutine, followed by the Rye function to be executed concurrently. For instance, the following code snippet creates and starts a Goroutine that prints a message after a delay:
; # Hello Goroutine
print "Starting Goroutine"
go does { ; does creates a function without arguments
sleep 1000
print "Hello from Goroutine!"
}
print "Sleeping for 2 seconds"
sleep 2000
Prints:
Starting Goroutine
Sleeping for 2 seconds
Hello from Goroutine!
Komentarji
Objavite komentar