Search
 
SCRIPT & CODE EXAMPLE
 
CODE EXAMPLE FOR PYTHON

how to make a programming language in python

# I've tried making a programming language
# It wasn't to great, But it was nice

# 1st find the file to run and read the lines

text = ""
consts = []
import sys
try:
    file = open(sys.argv[1])
    lines = file.readlines()
except Exception:
    print("Error: No file to run")
    
# 2nd I will create all the variables and functions I will be using

def Bin(Integer):  
    return bin(Integer).replace("0b", "")  
class Symbol:
    def __init__(self, name=''):
        self.name = f"Symbol({name})"
    def __repr__(self):
        return self.name
lines = text
def mySplit(string):
    text = string
    string = string
    string = string.replace("(", "œ", 1)
    string = string[::-1].replace(")"[::-1], "œ"[::-1], 1)[::-1]
    text = string.split("œ")
    return text

def mySplit2(string):
    text = string
    string = string
    string = string.replace("=", "œ=œ")
    text = string.split("œ")
    return text
sep = lambda String,sep: sep.join(list(String))
builtins = {"int": int, "str": str, "float": float, "bool": bool, "unique": Symbol, "hex": hex, "bin": Bin, "list": list, "sep": sep }
count = 0
    
# 3rd loop through the lines

for i in lines:
    # next write the instructions
    
    count+=1
    code = mySplit(i.strip().replace("
", ""))
    code2 = mySplit2(i.strip().replace("
", ""))
    x = 0
    
    while True:
        x+=2
        try:
            if code[x - 2].strip() == "Console.println":
                try:
                    print(eval(code[x - 1], { "__builtins__" : builtins}))
                except Exception as e:
                    print(str(e))
            elif code[x - 2].strip() == "Console.print":
                try:
                    print(eval(code[x - 1], { "__builtins__" : builtins}), end="")
                except Exception as e:
                    print(str(e))
            elif code[x - 2].strip() == "Console.input":
                try:
                    input(eval(code[x - 1], { "__builtins__" : builtins}))
                except Exception as e:
                    print(str(e))
            elif code[x - 2].strip() == "Console.waite":
                try:
                    import time
                    time.sleep(eval(code[x - 1], { "__builtins__" : builtins}))
                except Exception as e:
                    print(str(e))
            elif list(i.strip().replace("
", ""))[0:2] == list("//"):
                pass
            elif i.strip().replace("
", "") != "":
               print("invalid syntax at line " + str(count))

        except IndexError:
            pass
        try:
            code[x + 2]
        except Exception:
            break
    
Source by www.geeksforgeeks.org #
 
PREVIOUS NEXT
Tagged: #programming #language #python
ADD COMMENT
Topic
Name
1+4 =