mini_kraken 0.1.03 → 0.1.04

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ba23145a960593f3910547ace544235fcf3f9c9f5ee45b593e3aa465231e37fe
4
- data.tar.gz: f2e1e6371cb9873192fece615acc2a6bd9021c5e7f8b1865b4a108ab414d5e8e
3
+ metadata.gz: 9ef423350ba09d43e77f4fbd981cfb9387f74c0581d19cda817b4db907501de3
4
+ data.tar.gz: de34208e9dba617b72435c552d4628be97808db2e0b2db27b12b8c31ab865d16
5
5
  SHA512:
6
- metadata.gz: 0d8c08206038cb1b1d0fe339ace8f5ee4bcb9a91afb10447b8bc15624253774fcfd8fd1e1c4b07faa687fc2f5071bd4e46db0bcc2323044f2d36222db9906e80
7
- data.tar.gz: 9f55752adc900a4cfa9aa82906aab0c513f3cf35918c7a50e170ce16201fad8dc471e2f364efaaa9f8db935f35b18bbb12e4af1ef4a74d297f03f54dfc92eda3
6
+ metadata.gz: dca643b61f43edb431aa3773f9da8e41381823cc0d8af2bb4401d8851cdc5c63994eb0c927e2daf8698b670236db42f4ca9a45d7abcaccd884f51ec9b72f2ac6
7
+ data.tar.gz: eebe8f8c53bc43c6d26704de26067644a225ad780b1d2aba601dd1a24641a58eaef1b502efba6d37dcf77ea36213145d1be8122f15b5ad48d154012f970bd618
data/CHANGELOG.md CHANGED
@@ -1,6 +1,14 @@
1
+ ## [0.1.04] - 2020-05-02
2
+ ### Changed
3
+ - File `README.md` Added "What is mini_kraken" text.
4
+ - File `README.md` Added badges (CI Travis build status, Gem version, license)
5
+
1
6
  ## [0.1.03] - 2020-05-01
2
7
  Passes all frames 1:1 up to 1:47 of "Reasoned Schemer" book
3
8
 
9
+ ### Fixed
10
+ - Fresh variables are now correctly 'reified' according to the convention in "Reasoned Schemer".
11
+
4
12
  ## [0.1.02] - 2020-04-28
5
13
  Major code refactoring. Passes all frames 1:1 up to 1:36 of "Reasoned Schemer" book
6
14
 
@@ -11,9 +19,6 @@ First code commit
11
19
  - File `CHANGELOG.md`. This file. Adopting `keepachangelog.com` recommended format.
12
20
  - File `min_kraken.gemspec` Updated gem description.
13
21
 
14
- ### Changed
15
- - File `README.md` added badges (Appveyor build status, Gem version, license)
16
-
17
22
  ## [0.1.0] - 2020-02-05
18
23
  ### Added
19
24
  - Initial Github commit as new project
data/README.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # MiniKraken
2
-
2
+ [![Build Status](https://travis-ci.org/famished-tiger/mini_kraken.svg?branch=master)](https://travis-ci.org/famished-tiger/mini_kraken)
3
+ [![Gem Version](https://badge.fury.io/rb/mini_kraken.svg)](https://badge.fury.io/rb/mini_kraken)
4
+ [![License](https://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat)](https://github.com/famished-tiger/mini_kraken/blob/master/LICENSE.txt)
5
+
6
+ ### What is __mini_kraken__ ?
7
+ An implemention of the [miniKanren](http://minikanren.org/) relational programming language in Ruby.
8
+ *miniKanren* is a small language for relational (logic) programming.
9
+ Based on the reference implementation, in Scheme from the "The Reasoned Schemer" book.
10
+ Daniel P. Friedman, William E. Byrd, Oleg Kiselyov, and Jason Hemann: "The Reasoned Schemer", Second Edition,
11
+ ISBN: 9780262535519, (2018), MIT Press.
12
+
13
+ ### Features
14
+ [X] ==
15
+ [X] run\*
16
+ [X] fresh
17
+
18
+ ### TODO
19
+ [-] disj2
20
+ [-] conj2
21
+ [-] conde
3
22
 
4
23
  ## Installation
5
24
 
@@ -1,3 +1,3 @@
1
1
  module MiniKraken
2
- VERSION = '0.1.03'.freeze
2
+ VERSION = '0.1.04'.freeze
3
3
  end
@@ -108,7 +108,7 @@ module MiniKraken
108
108
  expect(result.car).to eq(any_value(0))
109
109
  end
110
110
 
111
- it 'should keep variable fresh when no unification occurs (III)' do
111
+ it 'should keep variable fresh when no unification occurs (II)' do
112
112
  ref1_q = Core::VariableRef.new('q')
113
113
  ref2_q = Core::VariableRef.new('q')
114
114
  goal = equals_goal(ref1_q, ref2_q)
@@ -221,7 +221,7 @@ module MiniKraken
221
221
  expect(result.car).to eq(pea)
222
222
  end
223
223
 
224
- it 'should unify complex equality expressions (II)' do
224
+ it 'should unify complex equality expressions (III)' do
225
225
  expr1 = cons(cons(cons(ref_q)), pod)
226
226
  expr2 = cons(cons(cons(ref_x)), pod)
227
227
  goal = equals_goal(expr1, expr2)
@@ -236,7 +236,7 @@ module MiniKraken
236
236
  expect(result.car).to eq(any_value(0))
237
237
  end
238
238
 
239
- it 'should unify complex equality expressions (II)' do
239
+ it 'should unify complex equality expressions (IV)' do
240
240
  # Reasoned S2, frame 1:36
241
241
  # (run* q (fresh (x) (== '(((,q)) (,x)) `(((,x)) pod)))) ;; => ('pod)
242
242
  expr1 = cons(cons(cons(ref_q)), ref_x)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mini_kraken
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.03
4
+ version: 0.1.04
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dimitri Geshef
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-05-01 00:00:00.000000000 Z
11
+ date: 2020-05-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler