rpl 0.14.0 → 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/bin/rpl +17 -4
  4. data/lib/rpl.rb +1 -1
  5. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dd6999ded3fe0314dc2f44e980b2db12b9b4f4334d062227ac2f216da68c64e6
4
- data.tar.gz: acac7fb8f08e925e7e69ace799ca75d1b0da84441d4f3347e357fee941f48e00
3
+ metadata.gz: b0a4aed82c8e9030283580a1fde21b69411b276457c6a9ef2a15453e2b44e8bc
4
+ data.tar.gz: b7845f45fe45610384d47c0686215e1a6ebd1d93021fbafb2d152828e7fd38b1
5
5
  SHA512:
6
- metadata.gz: ba2d7283c0afd3e6ce1537b863dcb2e75837cf544875e3ede504bb9652739078a0a471f882de19439a3fe42ed79e1eaa26e59afd5a092e2dd2f1fccbe6ba384f
7
- data.tar.gz: '096e3a9a8036a56c8ed032c808be57ca85d401043ad8f32a457e2b01b4dc0df4324479bd4bcf0b75dbbf950c86529223e6d66a3bc80c853382dd5066db4cae53'
6
+ metadata.gz: 5aaef08241274f7b1118e884e34fefc400247756c026ff28e3e69ad2ed7eef59992448367cd2586d66baa723ccbfd7a8a3a881631da8cbc5801bf0540fa2cac6
7
+ data.tar.gz: c597fd8a83e0eac4493cd5738c725b796e86715a89672a7a6db2a77fe149cea915b3c820c50edef551acfdfb1b4748431cdbd6cb35c1c717bfc9b934f4a2943c
data/README.md CHANGED
@@ -8,7 +8,7 @@ Reverse-Polish-Lisp inspired language in ruby
8
8
  # Usage
9
9
  * `rpl --help`
10
10
  * run RPL: `rpl`
11
- * by default rpl persists its state in ~/.local/state/rpl.rb/machine which is created if needed
11
+ * by default rpl persists its state in $XDG_DATA_HOME/rpl.rb/env.rpl which is created if needed (if $XDG_DATA_HOME isn't set ~/.local/share/ is used)
12
12
 
13
13
  # Development
14
14
  To run REPL locally: `rake run`
data/bin/rpl CHANGED
@@ -86,10 +86,12 @@ def persistence_filename
86
86
  end
87
87
 
88
88
  options = { run_REPL: ARGV.empty?,
89
- persistence_filename: persistence_filename,
89
+ persistence: true,
90
90
  live_persistence: true,
91
+ persistence_filename: persistence_filename,
91
92
  files: [],
92
- programs: [] }
93
+ programs: [],
94
+ verbosity: :critical }
93
95
 
94
96
  Version = Rpl::VERSION
95
97
 
@@ -98,12 +100,19 @@ OptionParser.new do |opts|
98
100
  options[:persistence_filename] = File.expand_path( filename )
99
101
  end
100
102
 
101
- opts.on('-q', '--no-state', 'Do not load persisted state') do
103
+ opts.on('-q', '--no-state', 'Do not load nor save persisted state') do
104
+ warn "Not loading #{options[:persistence_filename]}." if options[:verbosity] == :debug
105
+
102
106
  options[:persistence_filename] = nil
107
+ options[:live_persistence] = false
108
+ options[:persistence] = false
103
109
  end
104
110
 
105
111
  opts.on('-d', '--no-persist', 'Do not persist state') do
112
+ warn 'Not persisting this session.' if options[:verbosity] == :debug
113
+
106
114
  options[:live_persistence] = false
115
+ options[:persistence] = false
107
116
  end
108
117
 
109
118
  opts.on('-c', '--code "program"', 'run provided "program"') do |program|
@@ -115,6 +124,8 @@ OptionParser.new do |opts|
115
124
  end
116
125
 
117
126
  opts.on('-i', '--interactive', 'launch interactive REPL') do
127
+ warn 'Will load REPL.' if options[:verbosity] == :debug
128
+
118
129
  options[:run_REPL] = true
119
130
  end
120
131
  end.parse!
@@ -136,4 +147,6 @@ end
136
147
  # third launch REPL if (explicitely or implicitely) asked
137
148
  RplRepl.new( interpreter: interpreter ).run! if options[:run_REPL]
138
149
 
139
- interpreter.persist_state
150
+ interpreter.persist_state if options[:persistence]
151
+
152
+ puts interpreter.export_stack
data/lib/rpl.rb CHANGED
@@ -5,7 +5,7 @@ require 'rpl/types'
5
5
  require 'rpl/words'
6
6
 
7
7
  class Rpl < Interpreter
8
- VERSION = '0.14.0'
8
+ VERSION = '0.15.0'
9
9
 
10
10
  include Types
11
11
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rpl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.0
4
+ version: 0.15.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gwenhael Le Moine
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-30 00:00:00.000000000 Z
11
+ date: 2022-11-15 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Reverse-Polish-Lisp inspired language in ruby
14
14
  email: gwenhael@le-moine.org