bloom-lang/bud — Issue #256: inscrutable syntax error on interface declaration
Author: jhellerstein
Created: 2011-10-26 07:09:29+00:00
State: open

Consider the following code:

```ruby
require 'rubygems'
require 'bud'

class TestMe
include Bud
state {interface input :silly}
end

p = TestMe.new
```
Here's what you get when you run it:

```
(joeh@walker) tmp > ruby doit.rb
doit.rb:6:in `input': wrong number of arguments (1 for 0) (ArgumentError)
from doit.rb:6:in `__state5__TestMe'
from /Users/joeh/.rvm/gems/ruby-1.8.7-p352/gems/bud-0.0.7/lib/bud.rb:259:in `call'
from /Users/joeh/.rvm/gems/ruby-1.8.7-p352/gems/bud-0.0.7/lib/bud.rb:259:in `call_state_methods'
from /Users/joeh/.rvm/gems/ruby-1.8.7-p352/gems/bud-0.0.7/lib/bud.rb:259:in `each'
from /Users/joeh/.rvm/gems/ruby-1.8.7-p352/gems/bud-0.0.7/lib/bud.rb:259:in `call_state_methods'
from /Users/joeh/.rvm/gems/ruby-1.8.7-p352/gems/bud-0.0.7/lib/bud.rb:258:in `each'
from /Users/joeh/.rvm/gems/ruby-1.8.7-p352/gems/bud-0.0.7/lib/bud.rb:258:in `call_state_methods'
from /Users/joeh/.rvm/gems/ruby-1.8.7-p352/gems/bud-0.0.7/lib/bud.rb:237:in `init_state'
from /Users/joeh/.rvm/gems/ruby-1.8.7-p352/gems/bud-0.0.7/lib/bud.rb:147:in `initialize'
from doit.rb:9:in `new'
from doit.rb:9
(joeh@walker) tmp >
```

The error is a missing comma after the keyword "input" in the state block.