Vesob
- This article is not detailed enough and needs to be expanded. Please help us by adding some more information.
- This is still a work in progress. It may be changed in the future.
Designed by | User:Ivava |
---|---|
Appeared in | 2025 |
Computational class | Unknown |
Reference implementation | Python |
- Does not apply to Vesob.ru and other
Vesob [vɛˈsop] is easy minimalistic character by character esoteric programming language for some popular examples and output, if else.
Vesob helps in IP things with something, because it also can output programmer's computer/wiFi own IP by ipify, or by name.
Vesob is just typical esolang, daughter to HQ9+, just adding some commands
Commands
Command | Description |
---|---|
h
|
Hello, world! |
q
|
Quine |
l (small L, not I)
|
output the lenght of code |
i
|
if accumulator is 1, output Ipify IP. If accumulator is other, ignore. |
+
|
Increment the accumulator by 1 |
-
|
Decrement by 1 |
o
|
Output the accumulator |
0
|
Zero the accumulator |
;
|
output the host IP |
:
|
Output the IP by ipify |
Other text is executing as comment. All code is one string.
Examples
Hello, world!
h
The "h" command outputs "Hello, World!", the same, that outputs standart Hello, world!
Quine
q
XKCD Random Number
++++o
The accumulator is 4 after four pluses. o command outputs it.
Shorter variant (4 character)
вввl
"ввв" is non-command, just comment for lenght. l command outputs the lenght of code, and because code is 4 character, it output "4"
Interpreters
Please write own interpreters with your own hands, because ChatGPT's interpreters is terrible.
Interpreters in python
"""Vesob interpreter (compact, readable) Implements commands described in the MediaWiki source provided by the user. All non-command characters are treated as comments. Commands: h -> print "Hello, World!"\n q -> print the program source (quine)\n l -> print length of the code (number of characters)\n i -> if accumulator == 1, print ipify IP\n : -> print ipify IP (unconditional)\n ; -> print host IP (via socket.gethostbyname) -> accumulator += 1 -> accumulator -= 1 o -> print accumulator (as integer)\n 0 -> set accumulator = 0 Notes: ipify retrieval uses HTTPS (urllib). Network errors are caught and reported to stderr. The interpreter treats the whole program as a single string. It prints results to stdout. """ import sys import socket import urllib.request import urllib.error API_IPIFY = "https://api.ipify.org" def get_ipify(): """Return external IP from ipify as a string, or an error message on failure.""" try: with urllib.request.urlopen(API_IPIFY, timeout=5) as resp: return resp.read().decode('utf-8') except Exception as e: return f"ipify-error:{e}" def get_host_ip(): """Return host IP using gethostbyname(gethostname()).""" try: name = socket.gethostname() return socket.gethostbyname(name) except Exception as e: return f"host-ip-error:{e}" def interpret(code: str): """Interpret a Vesob program given as a single string. Side effects: writes outputs to stdout. Returns nothing. """ acc = 0 # iterate character-by-character for ch in code: if ch == '+': acc += 1 elif ch == '-': acc -= 1 elif ch == '0': acc = 0 elif ch == 'o': # output accumulator sys.stdout.write(str(acc)) sys.stdout.write('\n') elif ch == 'h': sys.stdout.write('Hello, World!') sys.stdout.write('\n') elif ch == 'q': # quine: output the whole source string sys.stdout.write(code) sys.stdout.write('\n') elif ch == 'l': sys.stdout.write(str(len(code))) sys.stdout.write('\n') elif ch == 'i': if acc == 1: sys.stdout.write(get_ipify()) sys.stdout.write('\n') elif ch == ':': sys.stdout.write(get_ipify()) sys.stdout.write('\n') elif ch == ';': sys.stdout.write(get_host_ip()) sys.stdout.write('\n') else: # everything else is a comment; ignore continue
Written by AI, maybe contatin errors.
Other
Why User:Ivava developed Vesob?
- At first, Vesob was intended to be a typical, easy, and character-by-character language, but since the author (Ivava) was afraid of cyber things, Ivava added IP and IF ELSE
- At second, it is just replenishment to Esolangs.
Why Vesob interpreter can be written ONLY on language that working with HTTPS?
These Languages include Go, Python, Java, and JS (node.js) Shorter:
- All of these languages have commands, working with host ( gethostbyname). Vesob's interpreter written in Python uses commands
socket.gethostbyname(socket.gethostname())
to work with host IP. - All of these languages have commands, working with HTTPS. Python interpreter opens https://api.ipify.org/ to output IP.
Why not to download packages and libraries? — SO THAT YOU SWEAT LESS. YOU WILL SPEND A YEAR OF TIME TO ESTABLISH ALL THIS.