Software & Apps

MichigantyPikprippript / typecrip-type-type-only-WASM-Runtime: A Webassembly Runtime implemented by Type Types

This is a websassembly runtime implemented purely in type types. The main idea is that you can turn code into C code (or straight webassembly) with a typecript type (as, with no javascript runtime code) to assemble in an instruction.

This machine is built on the service of a project aimed at showing why type types can run. Well. The funny thing is .. it can. There’s a video about this at Mits YouTubeand more likely to come shortly to give more context as to why and how it is made.

Should I submit a PR to make it better?

No, maybe not. Your view of this repo is basically an active crime scene. There is blood flowing and even if it’s clear that the firearm is still home … it’s not clear hope home can do it.

It may be odd, but I, @dimitropoulos, no perfect emotional attachment to this code and negative zero interest in doing so much more. It’s running. Enough. We can all rest right now. If you want to add this Crysis – I’m happy to pass the project to you, but if you look at the history of the commitment you’ll find that the literal second after I finished the mission. Instead, I’m glad to spend some time with a call or something to anyone who wants to lead it to “next level” in the future, whatever you know. It’s not mine.

I have questions, thoughts, suggestions, ideas, and so on.

Please do not open an issue – just come Discord’s values #doom CANAL And we’ll be glad to chat about it.

In case you are only in heckle, here are some nightmare fuel for you:

  • Simpoo: This whole file has stupid items, but hey, sometimes you have to do what to do what’s to do what should be done.
  • increase: This is the stone corner of the application arithmetic. When seeing it for the first time, some people say “I see the type of screen type, but I don’t see where increasing Takes “. Fair. However.
  • Divide is far The hardest instructions to carry out it up to 64 bits. @Teamchong gets all the honors for this one. To get there, we need it a little at a time to see where it can hit the performance limits The game of Division.
  • some of the Binary to help is the sorta artsy view of fullscreen.
  • Last Human-Pun-Perned Contains files in which the finish line has been crossed. While it chuggerg, we make jokes that show what it looks like when complete. As always go, jokes ended a real thing in the end, haha.
  • Struggling-Blass – Failurenamed due to a very important view of @ssalbdivad that causes the eruption of progress, is the main dashboard for the development of individual tests.
  • Confession – Trials For the full loop (ie from C to Wasm of types) as well as from straight wasm to the kinds found here. They are called approval attempts because the same inputs are also tried with JavaScript built-in Webassembly Runtime, which is the way I make sure the behavior of this machine is correct.
  • Many of the instructions are amazing straightforwardly frank but some of the Managing the instructions on the old have bone meat.
  • bootstrap Displays how to boot to webassembly runtime within types of type.
  • There may be more fun, but the last I’m talking about is that you can find some goats first type HERE and the core “how is the state engine action” HERE.

What exactly do webassembly implemented it?

These are, all written while reading The spects spects on Webassembly:

  • rail
  • br
  • br_if
  • br_table
  • call
  • Call_indiract
  • drop
  • instead of
  • F32.ReinterPret_i32
  • F64.reitaptre_i64
  • Global.get
  • Global.set
  • i32.add
  • i32.and
  • i32.clz
  • I32.cxict
  • i32.ctz
  • I32.div_s
  • I32.div_u
  • I32.eq
  • i32.eqz
  • I32.extend_16_s
  • i32.extend_8_s
  • i32.ge_s
  • i32.ge_u
  • i32.gt_s
  • i32.gt_u
  • i3.le_u
  • I32.le_s
  • i32.load
  • i32.load16_s
  • i32.load16_u
  • i32.load8_s
  • i32.load8_u
  • I32.lt_s
  • i32.lt_u
  • i32.mul
  • i32.ne
  • i32.or
  • I32.popcnt
  • i32..interpret_f32
  • I32.rem_s
  • I32.rem_u
  • i32.trotl
  • i32.trotr
  • i32.shl
  • I32.shr_s
  • I32.shr_u
  • I32.store
  • I32.store_16
  • I32.store_8
  • i32.sub
  • i32.trunc_f32_s
  • i32.trunc_f64_s
  • i32.trunc_f64_u
  • I32.wrap_i64
  • I32.xor
  • i64.add
  • i64.and
  • i64.clz
  • I64.cont
  • i64.ctz
  • I64.div_s
  • I64.div_u
  • I64.eq
  • i64.eqz
  • I64.extend_i32_s
  • I64.extend_i32_u
  • i64.ge_s
  • i64.ge_u
  • i64.gt_s
  • i64.gt_u
  • I64.tle_s
  • i64.tle_u
  • i64.load
  • i64.load16_s
  • I64.load16_u
  • i64.load32_s
  • i64.load32_u
  • i64.load8_s
  • i64.load8_u
  • i64.lt_s
  • i64.lt_u
  • i64.mul
  • i64.ne
  • i64.or
  • I64.popcnt
  • I64 .. sinterpret_f64
  • I64.rem_s
  • I64.rem_u
  • i64.trotl
  • i64.trotr
  • I64.shl
  • i64.shr_s
  • I64.shr_u
  • i64.store
  • I64.store_16
  • I64.store_32
  • I64.store_8
  • I64.sub
  • I64.xor
  • if
  • Local.Gikan
  • Local.set
  • LOCAL.TEE
  • dizziness
  • Memorya.grow
  • Memoryiya
  • nop
  • Uli
  • CHOOSE
  • inaccessible

In addition, as many runchies, some “synthetic” instructions are made not according to webassembly standards, but the features of sorta

  • Synth.ed_block
  • Synth.ed_func
  • Synth.ed_loop
  • synth.halt

https://opengraph.githubassets.com/7f6cb14cf71ab7c73397df48283ff1c1da442ddc1fc942ef8a879227d8e94929/MichiganTypeScript/typescript-types-only-wasm-runtime

2025-02-26 19:26:00

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button