class Movie {
	def name, price
	boolean watched
	String toString() { return name }
}
def movies = [new Movie(name:'Orph', watched:true, price:20),
	new Movie(name:'Iron Man', watched:true, price:20),
	new Movie(name:'Whale Rider', watched:false, price:15),
	new Movie(name:'Das Boot', watched:false, price:30)]
def watchedMovies(movies) {
	movies.findAll { e -> e.isManager() }
}
assert movies[0..1] == watchedMovies(movies) // [Orph, Iron Man]
def highPaid(movies) {
	threshold = 15
	movies.findAll { e -> e.price > threshold }
}
assert movies[0..2] == highPaid(movies) // [Orph, Iron Man, Das Boot]
def paidMore(amount) {
	{ e -> e.price > amount}
}
def highPaid = paidMore(15)
assert highPaid(movies[0]) // true
assert movies[0..2] == movies.findAll(highPaid)
def filename = 'movies.txt'
new File(filename).withReader{ reader -> doSomethingWith(reader) }
def readersText
def doSomethingWith(reader) { readersText = reader.text }
assert new File(filename).text == readersText

AltStyle によって変換されたページ (->オリジナル) /