Skip to content

Commit cbed41a

Browse files
author
Everett Hildenbrandt
committed
LICENSE, README, *.md: WASM => WebAssembly, KWASM => KWasm
1 parent e0e00e0 commit cbed41a

File tree

7 files changed

+36
-42
lines changed

7 files changed

+36
-42
lines changed

LICENSE

+11-12
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
==============================================================================
2-
The WASM Semantics in K Release License
2+
The WebAssembly Semantics in K Release License
33
==============================================================================
44
University of Illinois/NCSA
55
Open Source License
66

7-
Copyright (c) 2009-2015 University of Illinois at Urbana-Champaign.
7+
Copyright (c) 2009-2019 University of Illinois at Urbana-Champaign.
88
All rights reserved.
99

1010
Developed by:
@@ -14,7 +14,6 @@ Developed by:
1414

1515
* University of Illinois at Urbana-Champaign (http://fsl.cs.illinois.edu/)
1616
* Runtime Verification, Inc (https://www.runtimeverification.com)
17-
* University Alexandru-Ioan Cuza, Romania (https://fmse.info.uaic.ro)
1817

1918
Permission is hereby granted, free of charge, to any person obtaining a copy of
2019
this software and associated documentation files (the "Software"), to deal with
@@ -32,9 +31,9 @@ so, subject to the following conditions:
3231
documentation and/or other materials provided with the distribution.
3332

3433
* Neither the names of the K Team, Runtime Verification, the University of
35-
Illinois at Urbana-Champaign, the University Alexandru-Ioan Cuza, nor
36-
the names of its contributors may be used to endorse or promote products
37-
derived from this Software without specific prior written permission.
34+
Illinois at Urbana-Champaign, nor the names of its contributors may be
35+
used to endorse or promote products derived from this Software without
36+
specific prior written permission.
3837

3938
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
4039
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
@@ -45,16 +44,16 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
4544
SOFTWARE.
4645

4746
==============================================================================
48-
Copyrights and Licenses for Third Party Software Distributed with the WASM
47+
Copyrights and Licenses for Third Party Software Distributed with the WebAssembly
4948
Semantics in K:
5049
==============================================================================
51-
The WASM Semantics in K software contains code written by third parties.
52-
Licenses for this software can be found in the licenses directory
50+
The WebAssembly Semantics in K software contains code written by third parties.
51+
Licenses for this software can be found in the licenses directory
5352
in the file as specified below. These files will describe the copyrights,
5453
license, and restrictions which apply to that code.
5554

5655
The disclaimer of warranty in the University of Illinois Open Source License
57-
applies to all code in the WASM Semantics in K Distribution, and nothing in any of
58-
the other licenses gives permission to use the names of the K Team, Runtime
59-
Verification, the University of Illinois, or the University Alexandru-Ioan Cuza
56+
applies to all code in the WebAssembly Semantics in K Distribution, and nothing
57+
in any of the other licenses gives permission to use the names of the K Team,
58+
Runtime Verification, or the University of Illinois
6059
to endorse or promote products derived from this Software.

README.md

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
KWASM: Semantics of WebAssembly in K
1+
KWasm: Semantics of WebAssembly in K
22
====================================
33

44
This repository presents a prototype formal semantics of [WebAssembly].
@@ -14,7 +14,7 @@ This repository generates the build-products for both backends in `.build/defn/j
1414

1515
### System Dependencies
1616

17-
The following are needed for building/running KWASM:
17+
The following are needed for building/running KWasm:
1818

1919
- [git](https://git-scm.com/)
2020
- [Pandoc >= 1.17](https://pandoc.org) is used to generate the `*.k` files from the `*.md` files.
@@ -74,14 +74,14 @@ This Repository
7474

7575
### Semantics Layout
7676

77-
The following files constitute the KWASM semantics:
77+
The following files constitute the KWasm semantics:
7878

79-
- [data.md](data.md) provides the (functional) data of WASM (basic types, type constructors, and values).
80-
- [wasm.md](wasm.md) is the main KWASM semantics, containing the configuration and transition rules of WebAssembly.
79+
- [data.md](data.md) provides the (functional) data of WebAssembly (basic types, type constructors, and values).
80+
- [wasm.md](wasm.md) is the main KWasm semantics, containing the configuration and transition rules of WebAssembly.
8181

8282
These additional files extend the semantics to make the repository more useful:
8383

84-
- [test.md](test.md) is an execution harness for KWASM, providing a simple language for describing tests/programs.
84+
- [test.md](test.md) is an execution harness for KWasm, providing a simple language for describing tests/programs.
8585

8686
### Example usage: `./kwasm` runner script
8787

data.md

+9-14
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
WASM Data
2-
=========
1+
WebAssembly Data
2+
================
33

44
```k
55
require "domains.k"
@@ -13,7 +13,7 @@ Parsing
1313

1414
### Layout
1515

16-
WASM allows for block comments using `(;` and `;)`, and line comments using `;;`.
16+
WebAssembly allows for block comments using `(;` and `;)`, and line comments using `;;`.
1717
Additionally, white-space is skipped/ignored.
1818
Declaring regular expressions of sort `#Layout` infroms the K lexer to drop these tokens.
1919

@@ -26,7 +26,7 @@ Declaring regular expressions of sort `#Layout` infroms the K lexer to drop thes
2626

2727
### Identifiers
2828

29-
As defined in the [WASM Spec], the syntax of identifiers is as follows.
29+
As defined in the WebAssembly spec, the syntax of identifiers is as follows.
3030

3131
**TODO**: Unsupported characters: `.:^@`
3232

@@ -35,12 +35,12 @@ As defined in the [WASM Spec], the syntax of identifiers is as follows.
3535
// ------------------------------------------------------------------------
3636
```
3737

38-
WASM Types
39-
----------
38+
WebAssembly Types
39+
-----------------
4040

4141
### Base Types
4242

43-
WASM has four basic types, for 32 and 64 bit integers and floats.
43+
WebAssembly has four basic types, for 32 and 64 bit integers and floats.
4444

4545
```k
4646
syntax IValType ::= "i32" | "i64"
@@ -106,7 +106,7 @@ Values
106106

107107
### Basic Values
108108

109-
WASM values are either integers or floating-point numbers, of 32- or 64-bit widths.
109+
WebAssembly values are either integers or floating-point numbers, of 32- or 64-bit widths.
110110

111111
```k
112112
syntax Number ::= Int | Float
@@ -169,7 +169,7 @@ Function `#bool` converts a `Bool` into an `Int`.
169169
Data Structures
170170
---------------
171171

172-
WASM is a stack-machine, so here we provide the stack to operate over.
172+
WebAssembly is a stack-machine, so here we provide the stack to operate over.
173173
Operator `_++_` implements an append operator for sort `Stack`.
174174

175175
```k
@@ -201,8 +201,3 @@ Operator `_++_` implements an append operator for sort `Stack`.
201201
rule #drop(TYPE VTYPES, < TYPE > VAL:Number : STACK) => #drop(VTYPES, STACK)
202202
endmodule
203203
```
204-
205-
Resources
206-
=========
207-
208-
[WASM Spec]: <https://github.com/WebAssembly/design>

kwasm

+4-4
Original file line numberDiff line numberDiff line change
@@ -104,11 +104,11 @@ case "$run_command-$backend" in
104104
usage: $0 (run|test) [--backend (ocaml|java|haskell)] <pgm> <K args>*
105105
$0 prove [--backend (java|haskell)] <spec> <K args>*
106106
107-
$0 run : Run a single WASM program
108-
$0 test : Run a single WASM program like it's a test
109-
$0 prove : Run a WASM K proof
107+
$0 run : Run a single WebAssembly program
108+
$0 test : Run a single WebAssembly program like it's a test
109+
$0 prove : Run a WebAssembly K proof
110110
111-
Note: <pgm> is a path to a file containing a WASM program.
111+
Note: <pgm> is a path to a file containing a WebAssembly program.
112112
<spec> is a K specification to be proved.
113113
<K args> are any arguments you want to pass to K when executing/proving.
114114
" ; exit ;;

kwasm-lemmas.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
KWASM Lemmas
22
============
33

4-
These lemmas aid in verifying WASM programs behavior.
4+
These lemmas aid in verifying WebAssembly programs behavior.
55
They are part of the *trusted* base, and so should be scrutinized carefully.
66

77
```k

test.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
KWASM Testing
1+
KWasm Testing
22
=============
33

44
For testing, we augment the semantics with some helpers.

wasm.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
WASM State and Semantics
2-
========================
1+
WebAssembly State and Semantics
2+
===============================
33

44
```k
55
require "data.k"
@@ -44,7 +44,7 @@ Instructions
4444

4545
### Sequencing
4646

47-
WASM instructions are space-separated lists of instructions.
47+
WebAssembly instructions are space-separated lists of instructions.
4848

4949
```k
5050
syntax Instrs ::= List{Instr, ""} [klabel(listInstr)]
@@ -419,7 +419,7 @@ It simply executes the block then records a label with an empty continuation.
419419
The `br*` instructions search through the instruction stack (the `<k>` cell) for the correct label index.
420420
Upon reaching it, the label itself is executed.
421421

422-
Note that, unlike in the WASM specification document, we do not need the special "context" operator here because the value and instruction stacks are separate.
422+
Note that, unlike in the WebAssembly specification document, we do not need the special "context" operator here because the value and instruction stacks are separate.
423423

424424
```k
425425
syntax Instr ::= "(" "br" Int ")"

0 commit comments

Comments
 (0)