Top 1,000 Features Creators Resources Blog Explorer Download
GitHub icon

spry

< >

spry is a programming language created in 2015 by Göran Krampe.

Source code:
git clone https://github.com/gokr/spry
#691on PLDB 9Years Old

A Smalltalk and Rebol inspired language implemented as an AST interpreter in Nim


Example from the web:
# Let's add a method to:do: that works as in Smalltalk. # Methods take the first argument, the "receiver", from the left # and binds it to "self". to:do: = method [:to :block n = self [n <= to] whileTrue: [ do block n ..n = (n + 1)]] # Then we can loop in Smalltalk style echoing 1 to 5! 1 to: 5 do: [echo :x] # We can similarly implement select: from Smalltalk select: = method [:pred result = ([] clone) self reset [self end?] whileFalse: [ n = (self next) do pred n then: [result add: n]] ^result] # Then use it to produce [3 4] echo ([1 2 3 4] select: [:x > 2])
Example from hello-world:
#48!#65!#6c!#6c!#6f!#20!#57!#6f!#72!#6c!#64!

Language features

Feature Supported Token Example
Booleans ✓ True False
Comments ✓
# A comment
Line Comments ✓ #
# A comment
Semantic Indentation X

View source

- Build the next great programming language · About · Acknowledgements · Extensions · Day 626 · feedback@pldb.io