# Code Review: NoSymbolId1

**URL:** <https://www.ruby-forum.com/t/code-review-nosymbolid1/150121>\
**Category:** IronRuby\
**Created:** [October 4, 2008, 12:19am UTC](https://www.ruby-forum.com/t/code-review-nosymbolid1/150121 "2008-10-04T00:19:02Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![grujildo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/94ad74/32.png) [@grujildo](https://www.ruby-forum.com/u/grujildo)\
**Post date:** [October 4, 2008, 12:19am UTC](https://www.ruby-forum.com/t/code-review-nosymbolid1/150121/1 "2008-10-04T00:19:02Z")

</div>

tfpt review “/shelveset:NoSymbolId1;REDMOND\tomat”

Removes SymbolIds from IronRuby compiler and runtime. Still keeps  
SymbolId as a representation of Symbol Ruby class. The plan is to  
replace SymbolId completely by System.String with interning table on  
RubyContext (the integer values will be unique per script runtime). The  
table will hold on additional information about the strings (encoding,  
taint, instance variables, etc.).

Tomas

---

<div class="post-metadata">

**Author:** ![grujildo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/94ad74/32.png) [@grujildo](https://www.ruby-forum.com/u/grujildo)\
**Post date:** [October 4, 2008, 2:13am UTC](https://www.ruby-forum.com/t/code-review-nosymbolid1/150121/2 "2008-10-04T02:13:40Z")

</div>

Changes look good, overall. I like the approach.

In Tokenizer.cs, you replaced Symbols.Minus with the hardcoded “-” –  
but Symbols.Minus has separately been redefined to “-”. Best to  
continue to use the symbolic name, no?

---

<div class="post-metadata">

**Author:** ![grujildo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/94ad74/32.png) [@grujildo](https://www.ruby-forum.com/u/grujildo)\
**Post date:** [October 4, 2008, 2:48am UTC](https://www.ruby-forum.com/t/code-review-nosymbolid1/150121/3 "2008-10-04T02:48:16Z")

</div>

OK, I’ve undone this line for now.

Tomas
