aboutsummaryrefslogtreecommitdiffhomepage
path: root/README.md
blob: c49c76f302a106aacf8a8b5f1501f9ffc86d0be7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# Waddiwasi

This is a WebAssembly runtime written in pure PHP.

It is partially compatible with the WebAssembly specification version 2.0.



## Examples

### PHP on Wasm

The PHP runtime can be compiled to WebAssembly binary. This Wasm runtime can execute it. Currently, "Hello, World!" program works on the PHP runtime on the Wasm runtime.

```
$ php -d zend.assertions=-1 -d memory_limit=512M -d opcache.enable_cli=on -d opcache.jit=on -d opcache.jit_buffer_size=1G examples/php-on-wasm/php-wasm.php
```

### RubyVM on PHP on Wasm

https://github.com/m3m0r7/rubyvm-on-php is a RubyVM written in pure PHP.

It works on the PHP runtime on my Wasm runtime.

```
$ cd examples/rubyvm-on-php-on-wasm
$ ./HelloWorld.sh
```



## Talks

[Talk in PHPerKaigi (in Japanese)](https://fortee.jp/phperkaigi-2024/proposal/bc5dc153-17af-4079-8f1b-2660af97e2c8)



## License

See [LICENSE](./LICENSE).