take a look at examples first
toc
revo, the programming language<br>the death of the general-purpose programming language<br>the general purpose programming language<br>dogmatism<br>linguistics<br>addition as subtraction
where this comes from
so for revo
semantic freedom<br>everything is an expression<br>pipes chain values naturally<br>pattern matching<br>errors as values<br>no unnecessary edge cases
async concurrency without threads
a rich standard library<br>the atoms & the tuples<br>tables<br>c ffi<br>macros<br>optional static typing<br>first-class tests<br>bytecode compilation<br>tooling
so
many cool and interesting ideas go unimplemented. we have enough compute to build ourselves something we’ve always wanted at the cost of performance, but we often prefer to pay that same price to make something generally disliked, and then to patch holes in it">revo, the programming language | revo
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣤⢔⣒⠂⣀⣀⣤⣄⣀⠀⠀<br>⠀⠀⠀⠀⠀⠀⣴⣿⠋⢠⣟⡼⣷⠼⣎⣼⢇⣿⣄⠱⣄<br>⠀⠀⠀⠀⠀⠀⠹⣿⡀⣆⠙⠢⠐⠉⠉⣴⣾⣽⢟⡰⠃<br>⠀⠀⠀⠀⠀⠀⠀⠈⢿⣿⣦⠀⠤⢴⣿⠿⢋⣴⡏⠀⠀<br>⠀⠀⠀⠀⠀⠀⠀⠀⢸⡙⠻⣿⣶⣦⣭⣉⠁⣿⠀⠀⠀<br>⠀⠀⠀⠀⠀⠀⠀⠀⠀⣷⠀⠈⠉⠉⠉⠉⠇⡟⠀⠀⠀<br>⠀⠀⠀⠀⠀⠀⢀⠀⠀⣘⣦⣀⠀⠀⣀⡴⠊⠀⠀⠀⠀<br>⠀⠀⠀⠀⠀⠀⠈⠙⠛⠛⢻⣿⣿⣿⣿⠻⣧⡀⠀⠀⠀<br>⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠫⣿⠉⠻⣇⠘⠓⠂⣀⠀<br>⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⠀⠀⠈⠉⠉⠉⠀⡠<br>⢶⣾⣿⣿⣿⣿⣿⣶⣄⠀⠀⠀⣿⠀⠀⠀⠀⠀⠀⠈⠀<br>⠀⠹⣿⣿⣿⣿⣿⣿⣿⣧⠀⢸⣿⠀⠀⠀⠀⢀⠆⠀⠀<br>⠀⠀⠈⠙⠻⢿⣿⣿⠿⠛⣄⢸⡇⠀⠀⡀⠀⠈⢀⠀⢨<br>⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⡇⠀⠀⠀⠀⠀⠀⢦⣃<br>⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡁⠀⠀⠀⠀⠀⠀⠀⠀<br>⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⠁⠀⠀⠀⠀⠀⠀⠀⠀<br>⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀<br>revo, the programming language<br>software that doesn’t hate you
-> take a look at examples first
tocrevo, the programming language<br>the death of the general-purpose programming language<br>the general purpose programming language<br>dogmatism<br>linguistics<br>addition as subtractionwhere this comes from
so for revosemantic freedom<br>everything is an expression<br>pipes chain values naturally<br>pattern matching<br>errors as values<br>no unnecessary edge cases
async concurrency without threadsa rich standard library<br>the atoms & the tuples<br>tables<br>c ffi<br>macros<br>optional static typing<br>first-class tests<br>bytecode compilation<br>tooling
so<br>many cool and interesting ideas go unimplemented. we have enough compute to build ourselves something we’ve always wanted at the cost of performance, but we often prefer to pay that same price to make something generally disliked, and then to patch holes in it<br>lua has been my favourite language for a bit, and i could not for the life of me figure out why that is. it’s precisely the fact that it’s not “the best” at anything that made it confusing<br>i think this whole time the reason was:<br>the death of the general-purpose programming language<br>a python or a ruby are not the inspiration anymore, because they’re not the best at a given, concrete thing<br>it’s not common to give you a minimum viable set of fundamentals done just the right way, where the same tool lets you write a script, a web server, and have a blast doing so start-to-finish. it’s very important that a project gets done<br>it’s very important to me that you don’t start your weekend project with a rewrite in mind (or rewrite it midway through)<br>it’s very important to me that your small script is copy-pasteable, declaring external dependencies inside of itself without spanning multiple files<br>it’s very important to me that when your project grows, you can still keep it structured<br>Rails wasn’t started because Ruby won a ton of benchmarks, it’s just what the creator liked writing code and getting things done in, which then proved true for its’ users too<br>minecraft was not started in c++ – java was just the familiar thing. it let notch share a single .jar file to people on configurations unheard of, letting those people load their classes in at runtime<br>you can just prove so many ideas, quickly!<br>it’s important to me you wake up tomorrow and don’t dread finishing yesterday’s cool thing<br>the general purpose programming language<br>…is for those who don’t enjoy external testing libraries or js frontend frameworks<br>a model general-purpose programming language is not necessarily more good but good more<br>i’ve gladly spent hundreds of hours on zig and lua, and i would happily do it for rust any day, but there’s less about what comes after.<br>when i get nerdsniped tomorrow, i’ll pick different tools for a cli program, an http testing framework, a macro, a text format parser, and a server<br>but there’s a new ideology!<br>odin knows you want to use raylib, so they just give you raylib. and why not? it costs nothing and it makes everybody involved just happier<br>zig just gives you a formatter, a build system, an outstanding testing framework, and even a json parser – just a great toolchain all around. it doesn’t force you to use codegen, because they know metaprogramming is important.<br>run zig std right now<br>it helps a lot not to have 50 different implementations of the same thing. you can just not use it if you don’t need it, and it won’t be split between fifty different groups<br>when something is written in an unbalanced language, today that just means people will maintain it with ai. i want people to have both...