* [ruby-core:97034] [Ruby master Feature#16602] Add support for `frozen_string_literals` to eval.
@ 2020-02-01 7:29 samuel
2020-02-01 11:41 ` [ruby-core:97037] " samuel
2020-02-02 4:39 ` [ruby-core:97042] " samuel
0 siblings, 2 replies; 3+ messages in thread
From: samuel @ 2020-02-01 7:29 UTC (permalink / raw
To: ruby-core
Issue #16602 has been reported by ioquatix (Samuel Williams).
----------------------------------------
Feature #16602: Add support for `frozen_string_literals` to eval.
https://bugs.ruby-lang.org/issues/16602
* Author: ioquatix (Samuel Williams)
* Status: Open
* Priority: Normal
----------------------------------------
Would it make sense for `eval(..., frozen_string_literal: true)` to exist?
--
https://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
* [ruby-core:97037] [Ruby master Feature#16602] Add support for `frozen_string_literals` to eval.
2020-02-01 7:29 [ruby-core:97034] [Ruby master Feature#16602] Add support for `frozen_string_literals` to eval samuel
@ 2020-02-01 11:41 ` samuel
2020-02-02 4:39 ` [ruby-core:97042] " samuel
1 sibling, 0 replies; 3+ messages in thread
From: samuel @ 2020-02-01 11:41 UTC (permalink / raw
To: ruby-core
Issue #16602 has been updated by ioquatix (Samuel Williams).
Yes, it does, but it:
- Requires modification of the string which is sometimes messy.
- Requires modification of line numbers if you want to do it in a way which is not visible to the user.
I think any option that can be provided on the comment line at the start should also be an option to `eval`, and `*_eval`. e.g. `coding` too.
----------------------------------------
Feature #16602: Add support for `frozen_string_literals` to eval.
https://bugs.ruby-lang.org/issues/16602#change-84130
* Author: ioquatix (Samuel Williams)
* Status: Open
* Priority: Normal
----------------------------------------
Would it make sense for `eval(..., frozen_string_literal: true)` to exist?
--
https://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
* [ruby-core:97042] [Ruby master Feature#16602] Add support for `frozen_string_literals` to eval.
2020-02-01 7:29 [ruby-core:97034] [Ruby master Feature#16602] Add support for `frozen_string_literals` to eval samuel
2020-02-01 11:41 ` [ruby-core:97037] " samuel
@ 2020-02-02 4:39 ` samuel
1 sibling, 0 replies; 3+ messages in thread
From: samuel @ 2020-02-02 4:39 UTC (permalink / raw
To: ruby-core
Issue #16602 has been updated by ioquatix (Samuel Williams).
@sawa your argument convince me that we don't need this feature then. But it's not always the case that "You are adding specification to a piece of code that did not have such specification."
But, I'm at a loss how to fix https://github.com/rack/rack/pull/1544
User code may contain:
```
# frozen_string_literal: true
```
But we end up calling eval like this:
```
eval "Rack::Builder.new {\n" + builder_script + "\n}.to_app",
TOPLEVEL_BINDING, file, 0
```
So we end up with a kludge of:
```
Rack::Builder.new {
# frozen_string_literal: true
...
}
```
Which obviously isn't going to work correctly. The only other solution I can think of is to try and match comments in the user code, extract them outside the block, etc. Messy.
----------------------------------------
Feature #16602: Add support for `frozen_string_literals` to eval.
https://bugs.ruby-lang.org/issues/16602#change-84135
* Author: ioquatix (Samuel Williams)
* Status: Open
* Priority: Normal
----------------------------------------
Would it make sense for `eval(..., frozen_string_literal: true)` to exist?
--
https://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-02-02 4:40 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-02-01 7:29 [ruby-core:97034] [Ruby master Feature#16602] Add support for `frozen_string_literals` to eval samuel
2020-02-01 11:41 ` [ruby-core:97037] " samuel
2020-02-02 4:39 ` [ruby-core:97042] " samuel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).