Можем ли мы просто взять символьный литерал в качестве "интернированной строки" - PullRequest
0 голосов
/ 10 октября 2011

Кто-нибудь знает, есть ли подобная концепция в других популярных языках по сравнению с символьным литералом в Ruby? Могу ли я считать это просто "Interned String"?

Ответы [ 2 ]

0 голосов
/ 10 октября 2011

Кто-нибудь знает, существует ли подобная концепция в других популярных языках по сравнению с символьным литералом в Ruby?

Конечно, символы в Ruby происходят от символов в Smalltalk, который, в свою очередь, получает их от Lisp. У Скалы также есть символы, и атомы Эрланга похожи. Эрланг, вероятно, получил их от Пролога.

Могу ли я считать это просто "Interned String"?

Вы можете считать это разными вещами, но символы являются символами. Они не являются неизменяемыми или интернированными строками или чем-то еще ... это просто символы.

0 голосов
/ 10 октября 2011

Да, символы (иногда называемые атомами в других языках) можно считать интернированными строками.

Здесь много информации о символах Ruby: Вопрос - Понимание символов в Ruby

И напоследок в этом вопросе перечислено много примеров подобных концепций в нескольких языках:

Атомы Лиспа и Эрланга, символы Ruby и Scheme.Насколько они полезны?

...