We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.
Where is my esolang?
Jump to navigation
Jump to search
yet another esolang by islptng
Syntax
i'm too busy to write detail here
where is my [name]? # [wait] = [name] I've forgot where I put my [name] for the [number][st/nd/rd/th] time! # name <- number let me think about it. after I used my [name] the last time... # while [name] > 0 ...a-ha! it's there! # end while it was [time]. # define label what did I do at [time]? # goto label named [time] # 'wait.' take the one used above as an argument wait. what about my [name]? # [wait] - [name] wait. is my [name] here? # name <- wait
I/O
mobile handles i/o
reading it calls a character input
writing to it outputs the value in ASCII
Examples
Print Hi! (too lazy to write Hello, world!)
I've forgot where I put my h for the 72nd time! wait. is my mobile here? I've forgot where I put my i for the 105th time! wait. is my mobile here? I've forgot where I put my exclamation for the 33rd time! wait. is my mobile here?
Intepreters
as with a lot of my other interpreters, this is node.js->c++
code=`
I've forgot where I put my H for the 72nd time!
wait. is my mobile here?
I've forgot where I put my i for the 105th time!
wait. is my mobile here?
I've forgot where I put my exclamation for the 33rd time!
wait. is my mobile here?
`;//input code here
vn=x=>'v'+[...x].map(e=>e.charCodeAt()).join`_`;
ln=x=>'l'+[...x].map(e=>e.charCodeAt()).join`_`;
console.log(`#include<bits/stdc++.h>
#define int int64_t
using namespace std;int wait,${vn('mobile')};signed main(){
`,code.split`
`.map(e=>{let tmp;e=e.trim();
if(tmp=/^where is my (.+)\?$/i.exec(e))return`wait=${vn(tmp[1])};`
if(tmp=/^wait\. is my (.+) here\?$/i.exec(e))return`${vn(tmp[1])}=wait;${tmp[1]=='mobile'?'putchar(wait);':''}`
if(tmp=/^wait\. what about my (.+)\?$/i.exec(e))return`wait-=${vn(tmp[1])};`;
if(tmp=/^let me think about it\. after I used my (.+) the last time\.\.\.$/i.exec(e))return`while(${vn(tmp[1])}>0){`;
if('...a-ha! it\'s there!'===e.toLowerCase())return`}`;
if(tmp=/^it was (.+)\.$/i.exec(e))return`;${ln(tmp[1])}:`;
if(tmp=/^I've forgot where I put my (.+) for the (\d+)(st|nd|rd|th) time!$/i.exec(e))return`wait=${vn(tmp[1])}=${tmp[2]};`;
if(tmp=/^what did I do at (.+)\.$/i.exec(e))return`;goto ${ln(tmp[1])};`;
return`/*Comment: ${e}*/;`;
}).join`
`,'return 0;}');