halunke 0.7.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +6 -6
- data/Rakefile +2 -3
- data/docs/Gemfile.lock +115 -106
- data/docs/array.md +12 -2
- data/docs/dictionary.md +12 -2
- data/docs/number.md +22 -2
- data/docs/regexp.md +3 -2
- data/docs/stdio.md +8 -8
- data/docs/string.md +23 -13
- data/docs/true-false.md +14 -3
- data/halunke.gemspec +3 -3
- data/lib/halunke/grammar.y +2 -2
- data/lib/halunke/nodes.rb +6 -1
- data/lib/halunke/parser.rb +3 -3
- data/lib/halunke/runtime/false.hal +2 -2
- data/lib/halunke/runtime/harray.rb +6 -6
- data/lib/halunke/runtime/hdictionary.rb +4 -4
- data/lib/halunke/runtime/hnumber.rb +6 -3
- data/lib/halunke/runtime/hregexp.rb +2 -2
- data/lib/halunke/runtime/hstdio.rb +2 -2
- data/lib/halunke/runtime/hstring.rb +2 -2
- data/lib/halunke/runtime/true.hal +2 -2
- data/lib/halunke/{lexer.rb → tokenizer.rb} +114 -114
- data/lib/halunke/{lexer.rl → tokenizer.rl} +3 -3
- data/lib/halunke/version.rb +1 -1
- metadata +11 -12
@@ -1,11 +1,11 @@
|
|
1
1
|
=begin
|
2
2
|
%%{
|
3
|
-
machine
|
3
|
+
machine tokenizer;
|
4
4
|
|
5
5
|
number = ('+'|'-')?[0-9]+('.'[0-9]+)?;
|
6
6
|
string = '"' [^"]* '"';
|
7
7
|
unassigned_bareword = "'" [a-zA-Z_]+;
|
8
|
-
bareword = [a-zA-Z_]+ | '+' | '-' | '*' | '/' | '<' | '>' | '=' | '@';
|
8
|
+
bareword = [a-zA-Z_]+ | '+' | '-' | '*' | '/' | '<' | '>' | '=' | '@' | '**';
|
9
9
|
open_paren = '(';
|
10
10
|
close_paren = ')';
|
11
11
|
open_curly = '{';
|
@@ -41,7 +41,7 @@
|
|
41
41
|
=end
|
42
42
|
|
43
43
|
module Halunke
|
44
|
-
class
|
44
|
+
class Tokenizer
|
45
45
|
def initialize
|
46
46
|
%% write data;
|
47
47
|
@tokens = []
|
data/lib/halunke/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: halunke
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lucas Dohmen
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-03-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rack
|
@@ -30,28 +30,28 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 1.
|
33
|
+
version: 1.17.2
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 1.
|
40
|
+
version: 1.17.2
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rake
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 12.3.
|
47
|
+
version: 12.3.2
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 12.3.
|
54
|
+
version: 12.3.2
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: minitest
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -72,14 +72,14 @@ dependencies:
|
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 1.4.
|
75
|
+
version: 1.4.15
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 1.4.
|
82
|
+
version: 1.4.15
|
83
83
|
description: A dynamic OO language with ideas traditionally described as "functional"
|
84
84
|
email:
|
85
85
|
- lucas@dohmen.io
|
@@ -127,8 +127,6 @@ files:
|
|
127
127
|
- lib/halunke.rb
|
128
128
|
- lib/halunke/grammar.y
|
129
129
|
- lib/halunke/interpreter.rb
|
130
|
-
- lib/halunke/lexer.rb
|
131
|
-
- lib/halunke/lexer.rl
|
132
130
|
- lib/halunke/nodes.rb
|
133
131
|
- lib/halunke/parser.rb
|
134
132
|
- lib/halunke/runtime.rb
|
@@ -146,6 +144,8 @@ files:
|
|
146
144
|
- lib/halunke/runtime/hunassigned_bareword.rb
|
147
145
|
- lib/halunke/runtime/hweb.rb
|
148
146
|
- lib/halunke/runtime/true.hal
|
147
|
+
- lib/halunke/tokenizer.rb
|
148
|
+
- lib/halunke/tokenizer.rl
|
149
149
|
- lib/halunke/version.rb
|
150
150
|
homepage: http://halunke.jetzt
|
151
151
|
licenses:
|
@@ -166,8 +166,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
166
166
|
- !ruby/object:Gem::Version
|
167
167
|
version: '0'
|
168
168
|
requirements: []
|
169
|
-
|
170
|
-
rubygems_version: 2.7.6
|
169
|
+
rubygems_version: 3.0.1
|
171
170
|
signing_key:
|
172
171
|
specification_version: 4
|
173
172
|
summary: The Halunke programming language
|