Cara lain untuk menggunakan python di browser (dan tidak hanya)

Latar Belakang

Pada musim semi tahun 2020, saya pertama kali mencoba sendiri dalam pengembangan situs web backend, saya menulis dengan python, dan di depan, saya harus menggunakan js dan itu menyebabkan saya ditolak (di sini perlu untuk mengklarifikasi bahwa saya tidak menganggap js sebagai bahasa yang buruk, saya hanya tidak menyukainya). Tanpa ragu-ragu, saya mulai menulis penerjemah dari python ke javascript (dan jika saya mencari di Google, saya akan menemukan ini dan itu ). penerjemah ini akan dibahas.





Beda dengan penerjemah lain

Selama proses pengembangan, saya membaca tentang JavaScript dan tidak banyak membaca tentang bahasa lain (ruby, lua, php) dan memperhatikan bahwa mereka memiliki banyak kesamaan, misalnya, adanya kondisional, fungsi, variabel, dll. Dan kemudian saya berpikir mengapa tidak menambahkan kemampuan untuk menyiarkan tidak hanya di js tetapi juga dalam bahasa lain.





Bahasa ditambahkan menggunakan fungsi penangan, misalnya, penangan matematika untuk js terlihat seperti ini:





def bin_op(left, right, op):
    return f"({left}{op}{right})"
      
      



dan untuk cadel akan terlihat seperti ini:





def bin_op(left, right, op):
    return f"({op} {left} {right})"
      
      



Dan juga ciri khasnya adalah kemampuan untuk menambahkan makro, seperti pembagian integer di js:





signs = {"//": lambda l, r: f"Math.floor({l}/{r})"}
      
      



Siapa yang membutuhkannya

Salah satu opsi untuk menggunakan proyek ini adalah menulis skrip dalam game, karena python cukup berat untuk bahasa yang disematkan, Anda dapat menggunakan terjemahan ke lua.





Anda juga dapat menggunakannya sebagai linter python dengan koreksi kesalahan pada nama fungsi.





( js pascal) .





, - . : ( python ) .





, , . - , .





java. Java(jvm) - , , : Kotlin, Java, Clojure .





js, go, hello world (c++).





.





if...elif...else, while, for(C for each), . . .





, python. . .





web :





P.S.

.





Dukung proyek dengan tanda bintang di github





Bergabunglah dengan saluran telegram








All Articles