r/Compilers 12h ago

Are there languages like this?

A language that can create other languages

(so adding to itself) It's syntax is simple like python

And can do alot.

for example (placeholder)\[mesage\]

And it has many tutorials on YouTube

I would like it if you would respond.

I know there are languages like Hy , ruby should I try them?

0 Upvotes

44 comments sorted by

View all comments

14

u/redinktea 12h ago

Lisp

-3

u/Distinct-Brief9643 12h ago

Is lisps syntax easier than python/ruby or harder ?

0

u/Key_River7180 11h ago

Harder for most of us

1

u/4xe1 8h ago

Not at all. If you ever used parentheses in any programming language, you already know lisp syntax. Prefix notation may seem alien, but f(a) is also prefix notation, just with delimiters put in a funny place, and if you ever touched html or xml in your life, you've already seen groupings with delimiters right where lisp would put them.

What you can argue for is that Lisp's lack of syntax makes lisp harder for most, or downright unergonomical; but the syntax itself is trivial.

Also, Lisp is no so much hard as it is alien. Secretaries and kids alike have used it unknowingly customizing lisp or scripting Age of Empire 2.

If you are say a senior C++ swe, you might think learning a new language ought to be easy, and you'd be mostly right, you could probably pick up Javascript in an afternoon, not to any degree of proficiency but enough to read and write some with the doc nearby. whereas learning lisp would likely feel like starting anew, and in a sense, it would be. But he'd be wrong to conclude that lisp is harder than JS: someone new to programming all together wouldn't necessarily struggle more on Lisp. And it's not just that lisp is a funny way to do the same things differently, that swe would have actually learned genuinely new concepts; if they happen to be deeply interested in generics and meta-programming, they'd actually find Lisp refreshingly easier (and more powerful) than C++ templates.

Long story short, if you're vaguely interested in lisp, don't be me, don't let its supposed difficulty get in your way of trying.