Daniel Shiffman has recently published the second edition of his Learning Processing book updated for processing-3.0. He has also published the code here. This a port of his mouse history sketch, which makes use of ruby
Struct instead of
PVector and ruby Array in place of ArrayList. Show your ruby chops by porting some more examples…
And send me a tweet @monkstoneT
Here is the sketch code:-
# Learning Processing # Daniel Shiffman # https://www.learningprocessing.com # Example 23-5: A snake following the mouse Using an Array # of Struct (we just need something to hold x and y values) Vect = Struct.new(:x, :y) attr_reader :history def setup sketch_title 'Mouse History' @history =  end def draw background(255) # New mouse position history << Vect.new(mouse_x, mouse_y) # Remove old ones history.shift if history.size > 50 # Draw everything history.each_with_index do |vec, i| # Draw an ellipse for each element of the Array. no_stroke fill(255 - i * 5) ellipse(vec.x, vec.y, i, i) end end def settings size 300, 300 end
I have also ported The Nature of Code to JRubyArt.