diff --git a/lib/soml/compiler.rb b/lib/soml/compiler.rb index 70132112..a5b32a82 100644 --- a/lib/soml/compiler.rb +++ b/lib/soml/compiler.rb @@ -141,7 +141,7 @@ module Soml end def self.load_parfait - ["layout","object"].each do |o| + ["word","class","layout","object"].each do |o| str = File.open(File.expand_path("parfait/#{o}.soml", File.dirname(__FILE__))).read syntax = Parser::Salama.new.parse_with_debug(str) parts = Parser::Transform.new.apply(syntax) diff --git a/lib/soml/parfait/class.soml b/lib/soml/parfait/class.soml new file mode 100644 index 00000000..9224f9ae --- /dev/null +++ b/lib/soml/parfait/class.soml @@ -0,0 +1,5 @@ +class Class < Object + Word get_name() + return get_internal(4) + end +end diff --git a/lib/soml/parfait/layout.soml b/lib/soml/parfait/layout.soml index 5e89e5ca..31a8f78b 100644 --- a/lib/soml/parfait/layout.soml +++ b/lib/soml/parfait/layout.soml @@ -1,7 +1,7 @@ class Layout < Object Class object_class() - get_internal(2) + return get_internal(2) end end diff --git a/lib/soml/parfait/word.soml b/lib/soml/parfait/word.soml new file mode 100644 index 00000000..58d47fab --- /dev/null +++ b/lib/soml/parfait/word.soml @@ -0,0 +1,2 @@ +class Word < Object +end