←back to thread

620 points tambourine_man | 1 comments | | HN request time: 0.212s | source
Show context
enescakir ◴[] No.43749266[source]
Not sure about introducing yet another string prefix. Between f-strings, raw strings, and i18n stuff, it’s already getting crowded. Curious how readable this will be in large codebases.
replies(3): >>43749334 #>>43749489 #>>43749515 #
wodenokoto ◴[] No.43749334[source]
I'm of the opposite opinion. Let's set the prefixes free!

    from sql import sql

    query = sql"SELECT user_id, user_name FROM {user_table_versioned} WHERE user_name = {user_name}"
replies(4): >>43749474 #>>43749545 #>>43749548 #>>43749927 #
dmurray ◴[] No.43749474[source]
How would this be different from a function sql() that operates on one of these new t-strings?

The syntactic sugar of changing it from sql(t"...") doesn't seem particularly valuable. The novel thing about t-strings is that they change the parsing at compile-time.

replies(3): >>43749506 #>>43749648 #>>43749903 #
1. Timwi ◴[] No.43749648[source]
> The syntactic sugar of changing it from sql(t"...") doesn't seem particularly valuable.

It's valuable because:

- IDEs could then syntax-highlight SQL inside of SQL strings and HTML inside of HTML strings

- You can't accidentally pass an HTML string to your SQL library