Warp

From Esolang
Jump to navigation Jump to search
This article is not detailed enough and needs to be expanded. Please help us by adding some more information.

The Warp programming language is a derivative of Harp (still alive at its history page), both by User:Rdococ.

Structure

Warp is much like Harp, with a single instruction which has two arguments. However, with Warp, you would be able to check inputs against regular expressions instead of equivalence to a string, and you would be able to check if the input is empty too, unlike in Harp. The regular expressions would also give you data about the wildcard material - for example, if you were to check the input against 'f(*)' where * is a wildcard, then the program would fill the input with the material in the wildcard, instead of asking the user. For example,

herp* 3
* 1
true 6
false 8
* 1
&* 3
* 6
&* 9
* 8

If we said, for example, 'herptrue', the interpreter would go to instruction #3, with the input filled with 'true'. Since it matches 'true', we ask the user this time and go to 6. Let's say we said '&false'. Now we're back at 3, with 'false'. Now, 'false' doesn't match 'true', so we go to the next line. There, 'false' matches 'false', so we go to 8, forgetting the wildcard stuff. Now, let's say we put '&true'. Now we're at 9, with 'true' in input. No matter what, anything matches '*', so we go to 8. This example doesn't mean much, or atleast I don't think.

Computational class

I'm not sure... I tried to prove it was Turing-complete but it just didn't work out...