@turing-machine-js/library-binary-numbers 0.3.0-alpha.4 → 2.0.0-alpha.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.
- package/README.md +3 -9
- package/package.json +4 -9
- package/dist/index.cjs.js +0 -1
- package/dist/index.es.js +0 -1
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# @turing-machine-js/library-binary-numbers
|
|
2
2
|
|
|
3
|
-
[](https://github.com/mellonis/turing-machine-js/actions/workflows/main.yml)
|
|
4
|
+

|
|
5
5
|
|
|
6
6
|
A library for the turing-machine-js.
|
|
7
7
|
|
|
@@ -13,12 +13,6 @@ Using npm:
|
|
|
13
13
|
npm install @turing-machine-js/library-binary-numbers
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
-
or using yarn:
|
|
17
|
-
|
|
18
|
-
```sh
|
|
19
|
-
yarn add @turing-machine-js/library-binary-numbers
|
|
20
|
-
```
|
|
21
|
-
|
|
22
16
|
## A concept
|
|
23
17
|
|
|
24
18
|
Binary numbers are represented as a sequence of symbols `0` and `1`.
|
|
@@ -51,6 +45,6 @@ If you want to use states which were described earlier, you must use a tape bloc
|
|
|
51
45
|
|
|
52
46
|
## Links
|
|
53
47
|
|
|
54
|
-
- The information about `TapeBlock` and `State` classes is [here](https://github.com/mellonis/turing-machine-js/tree/
|
|
48
|
+
- The information about `TapeBlock` and `State` classes is [here](https://github.com/mellonis/turing-machine-js/tree/master/packages/machine)
|
|
55
49
|
- [Turing Machine](https://en.wikipedia.org/wiki/Turing_machine) on the Wikipedia
|
|
56
50
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@turing-machine-js/library-binary-numbers",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "2.0.0-alpha.0",
|
|
4
4
|
"description": "A standard library for working with binary numbers",
|
|
5
5
|
"author": "Ruslan Gilmullin <mellonis14@gmain.com>",
|
|
6
6
|
"homepage": "https://github.com/mellonis/turing-machine-js#readme",
|
|
@@ -24,13 +24,8 @@
|
|
|
24
24
|
"numbers"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@turing-machine-js/machine": "^0.
|
|
27
|
+
"@turing-machine-js/machine": "^2.0.0-alpha.0"
|
|
28
28
|
},
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"scripts": {
|
|
32
|
-
"build": "rollup -c ../../rollup.config.mjs",
|
|
33
|
-
"test": "jest --colors"
|
|
34
|
-
},
|
|
35
|
-
"gitHead": "46f086aced8630b3c5f7d5e1585dacc6735d7666"
|
|
29
|
+
"module": "index.js",
|
|
30
|
+
"gitHead": "eac8ba0029090bdbd64f72566657400101fd587e"
|
|
36
31
|
}
|
package/dist/index.cjs.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";var e=require("@turing-machine-js/machine");const t=new e.Alphabet({symbolList:" ^$01".split("")}),m=new e.TapeBlock({alphabetList:[t]}),{symbol:o}=m,n=new e.State({[o("$")]:{nextState:e.haltState},[e.ifOtherSymbol]:{command:{movement:e.movements.right}}},"goToNumber"),a=new e.State({[e.ifOtherSymbol]:{command:{movement:e.movements.right},nextState:n}},"goToNextNumber"),r=new e.State({[o("$")]:{nextState:e.haltState},[e.ifOtherSymbol]:{command:{movement:e.movements.left}}},"goToPreviousNumberTrue"),l=new e.State({[e.ifOtherSymbol]:{command:{movement:e.movements.left},nextState:r}},"goToPreviousNumber"),S=new e.State({[o("^")]:{nextState:e.haltState},[e.ifOtherSymbol]:{command:{movement:e.movements.left}}},"goToNumberStart"),s=new e.State({[o("$")]:{command:{symbol:e.symbolCommands.erase},nextState:e.haltState},[e.ifOtherSymbol]:{command:{symbol:e.symbolCommands.erase,movement:e.movements.right}}},"deleteNumberTrue"),v=new e.State({[o("^10$")]:{nextState:S.withOverrodeHaltState(s)},[e.ifOtherSymbol]:{nextState:e.haltState}},"deleteNumber"),b=new e.State({[o("^")]:{command:{movement:e.movements.right}},[o("1")]:{command:{symbol:"0",movement:e.movements.right}},[o("0")]:{command:{symbol:"1",movement:e.movements.right}},[o("$")]:{nextState:e.haltState}},"invertNumberGoToNumberWithInversion"),i=new e.State({[o("^10$")]:{nextState:S.withOverrodeHaltState(b)},[e.ifOtherSymbol]:{nextState:e.haltState}},"invertNumber"),h=new e.State({[o(t.blankSymbol)]:{command:{symbol:"^"},nextState:n}},"normalizeNumberPutNewStartSymbol"),u=new e.State({[o("^0")]:{command:{symbol:e.symbolCommands.erase,movement:e.movements.right}},[o("1$")]:{command:{movement:e.movements.left},nextState:h}},"normalizeNumberMoveNumberStart"),d=new e.State({[o("^10$")]:{nextState:S.withOverrodeHaltState(u)},[e.ifOtherSymbol]:{nextState:e.haltState}},"normalizeNumber"),c=new e.State({[o("1")]:{command:{symbol:"0",movement:e.movements.right}},[o("$")]:{nextState:e.haltState}},"plusOneFillZeros"),y=new e.State({[o(t.blankSymbol)]:{command:{symbol:"^",movement:e.movements.right}},[o("1")]:{command:{movement:e.movements.right},nextState:c}},"plusOneAddNumberStart"),w=new e.State({[o("0")]:{command:{symbol:"1",movement:e.movements.right},nextState:c},[o("1")]:{command:{movement:e.movements.left}},[o("^")]:{command:{symbol:"1",movement:e.movements.left},nextState:y}},"plusOneCaryOne"),x=new e.State({[o("^10")]:{command:{movement:e.movements.right}},[o("$")]:{command:{movement:e.movements.left},nextState:w},[e.ifOtherSymbol]:{nextState:e.haltState}},"plusOne"),N=new e.State({[o("^10")]:{command:{movement:e.movements.right}},[o("$")]:{nextState:i.withOverrodeHaltState(x.withOverrodeHaltState(i.withOverrodeHaltState(d)))},[e.ifOtherSymbol]:{nextState:e.haltState}},"minusOne");var O={getTapeBlock:function(){return m.clone()},states:{goToNumber:n,goToNextNumber:a,goToPreviousNumber:l,deleteNumber:v,goToNumbersStart:S,invertNumber:i,normalizeNumber:d,plusOne:x,minusOne:N}};module.exports=O;
|
package/dist/index.es.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Alphabet as e,TapeBlock as t,State as m,haltState as n,ifOtherSymbol as o,movements as a,symbolCommands as r}from"@turing-machine-js/machine";const l=new e({symbolList:" ^$01".split("")}),i=new t({alphabetList:[l]}),{symbol:b}=i,u=new m({[b("$")]:{nextState:n},[o]:{command:{movement:a.right}}},"goToNumber"),S=new m({[o]:{command:{movement:a.right},nextState:u}},"goToNextNumber"),s=new m({[b("$")]:{nextState:n},[o]:{command:{movement:a.left}}},"goToPreviousNumberTrue"),v=new m({[o]:{command:{movement:a.left},nextState:s}},"goToPreviousNumber"),d=new m({[b("^")]:{nextState:n},[o]:{command:{movement:a.left}}},"goToNumberStart"),c=new m({[b("$")]:{command:{symbol:r.erase},nextState:n},[o]:{command:{symbol:r.erase,movement:a.right}}},"deleteNumberTrue"),w=new m({[b("^10$")]:{nextState:d.withOverrodeHaltState(c)},[o]:{nextState:n}},"deleteNumber"),x=new m({[b("^")]:{command:{movement:a.right}},[b("1")]:{command:{symbol:"0",movement:a.right}},[b("0")]:{command:{symbol:"1",movement:a.right}},[b("$")]:{nextState:n}},"invertNumberGoToNumberWithInversion"),N=new m({[b("^10$")]:{nextState:d.withOverrodeHaltState(x)},[o]:{nextState:n}},"invertNumber"),g=new m({[b(l.blankSymbol)]:{command:{symbol:"^"},nextState:u}},"normalizeNumberPutNewStartSymbol"),h=new m({[b("^0")]:{command:{symbol:r.erase,movement:a.right}},[b("1$")]:{command:{movement:a.left},nextState:g}},"normalizeNumberMoveNumberStart"),y=new m({[b("^10$")]:{nextState:d.withOverrodeHaltState(h)},[o]:{nextState:n}},"normalizeNumber"),O=new m({[b("1")]:{command:{symbol:"0",movement:a.right}},[b("$")]:{nextState:n}},"plusOneFillZeros"),T=new m({[b(l.blankSymbol)]:{command:{symbol:"^",movement:a.right}},[b("1")]:{command:{movement:a.right},nextState:O}},"plusOneAddNumberStart"),$=new m({[b("0")]:{command:{symbol:"1",movement:a.right},nextState:O},[b("1")]:{command:{movement:a.left}},[b("^")]:{command:{symbol:"1",movement:a.left},nextState:T}},"plusOneCaryOne"),f=new m({[b("^10")]:{command:{movement:a.right}},[b("$")]:{command:{movement:a.left},nextState:$},[o]:{nextState:n}},"plusOne"),p=new m({[b("^10")]:{command:{movement:a.right}},[b("$")]:{nextState:N.withOverrodeHaltState(f.withOverrodeHaltState(N.withOverrodeHaltState(y)))},[o]:{nextState:n}},"minusOne");var H={getTapeBlock:function(){return i.clone()},states:{goToNumber:u,goToNextNumber:S,goToPreviousNumber:v,deleteNumber:w,goToNumbersStart:d,invertNumber:N,normalizeNumber:y,plusOne:f,minusOne:p}};export default H;
|