<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to char</title><link>https://sourceforge.net/p/ats-lang/wiki/char/</link><description>Recent changes to char</description><atom:link href="https://sourceforge.net/p/ats-lang/wiki/char/feed" rel="self"/><language>en</language><lastBuildDate>Mon, 04 Mar 2013 03:23:33 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/ats-lang/wiki/char/feed" rel="self" type="application/rss+xml"/><item><title>WikiPage char modified by Artyom Shalkhakov</title><link>https://sourceforge.net/p/ats-lang/wiki/char/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v6
+++ v7
@@ -8,15 +8,15 @@
 The following list is believed to be exhaustive:

 * C conventions are used for some characters, e.g.:
-    * newline is written as '\n'
-    * carriage return is written as '\r'
-    * to input a single backlash, use two backslashes, '\\'
-    * to input a single colon, use '\''
+    * newline is written as '\\n'
+    * carriage return is written as '\\r'
+    * to input a single backlash, use two backslashes, '\\\\'
+    * to input a single colon, use '\\''
 * additionally, some characters may "clash" with ATS conventions, so they are escaped too:
-    * '\(' for left parenthesis (clashes with boxed tuple type)
-    * '\{' for left brace (clashes with boxed record type)
-    * '\[' for left bracket (clashes with singly-linked list literal)
-* also, it is possible to specify a character in octal notation: '\000' (backlash, then one to three octal digits 0-7), or in hexadecimal notation, with '\0x00' (backlash, then leading zero, then 'x' or 'X', then one or more hexadecimal digit, which is either 0-9 or a-z or A-Z)
+    * '\\(' for left parenthesis (clashes with boxed tuple type)
+    * '\\{' for left brace (clashes with boxed record type)
+    * '\\[' for left bracket (clashes with singly-linked list literal)
+* also, it is possible to specify a character in octal notation: '\\000' (backlash, then one to three octal digits 0-7), or in hexadecimal notation, with '\\0x00' (backlash, then leading zero, then 'x' or 'X', then one or more hexadecimal digit, which is either 0-9 or a-z or A-Z)

 (How do we specify ASCII codes in Hex, Bin, Dec, Oct, etc?)

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Artyom Shalkhakov</dc:creator><pubDate>Mon, 04 Mar 2013 03:23:33 -0000</pubDate><guid>https://sourceforge.net67e0e08b49a4d19fcae5878735398ec7a24232fc</guid></item><item><title>WikiPage char modified by Artyom Shalkhakov</title><link>https://sourceforge.net/p/ats-lang/wiki/char/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v5
+++ v6
@@ -1,18 +1,31 @@
 ***&lt;font color="#FF0000"&gt;This page is incomplete, and needs review&lt;/font&gt;***

-Characters are demarcated with single quotes, i.e. the character c is written 'c'. Some characters may need an escape character (the back-slash) because the sequence *'char* for the char being discussed has a special meaning in ATS. One such example is '(, so we actually write '\\(' to denote the left parentheses. We note here that strings, in contract, are demarcated with double quotes.  
+Characters are demarcated with single quotes, i.e. the character c is written 'c'. Some characters may need an escape character (the back-slash) because the sequence *'char* for the char being discussed has a special meaning in ATS. One such example is '(, so we actually write '\\(' to denote the left parentheses. We note here that strings, in contrast, are demarcated with double quotes.

-(What is a complete list of characters needing an escape sequence?)
+Escape sequences for characters
+-------------------------------
+The following list is believed to be exhaustive:

+* C conventions are used for some characters, e.g.:
+    * newline is written as '\n'
+    * carriage return is written as '\r'
+    * to input a single backlash, use two backslashes, '\\'
+    * to input a single colon, use '\''
+* additionally, some characters may "clash" with ATS conventions, so they are escaped too:
+    * '\(' for left parenthesis (clashes with boxed tuple type)
+    * '\{' for left brace (clashes with boxed record type)
+    * '\[' for left bracket (clashes with singly-linked list literal)
+* also, it is possible to specify a character in octal notation: '\000' (backlash, then one to three octal digits 0-7), or in hexadecimal notation, with '\0x00' (backlash, then leading zero, then 'x' or 'X', then one or more hexadecimal digit, which is either 0-9 or a-z or A-Z)

 (How do we specify ASCII codes in Hex, Bin, Dec, Oct, etc?)

+*char* and Unicode
+------------------
+Please note that 'char' maps directly to C type 'char', therefore it is the size of 1 byte, and cannot be used to represent any multi-byte encoding, such as UTF-16 or UTF-32. 

-
-
-
-**Conversion functions for char**
+Conversion functions for *char*
+-----------------------------
 (Also see our [Rosetta Stone].)

 **char to string**
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Artyom Shalkhakov</dc:creator><pubDate>Mon, 04 Mar 2013 03:22:31 -0000</pubDate><guid>https://sourceforge.net0c78aa80ae9da43dec2bed83cf31da5a25d9415f</guid></item><item><title>WikiPage char modified by Brandon Barker</title><link>https://sourceforge.net/p/ats-lang/wiki/char/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v4
+++ v5
@@ -1,7 +1,12 @@
 ***&lt;font color="#FF0000"&gt;This page is incomplete, and needs review&lt;/font&gt;***

-Characters are demarcated with single quotes, i.e. the character c is written 'c'. Some characters may need an escape character (the back-slash) because the sequence *'char* for the char being discussed has a special meaning in ATS. One such example is '(, so we actually write '\\(' to denote the left parentheses. We note here that strings, in contract, are demarcated with double quotes.
+Characters are demarcated with single quotes, i.e. the character c is written 'c'. Some characters may need an escape character (the back-slash) because the sequence *'char* for the char being discussed has a special meaning in ATS. One such example is '(, so we actually write '\\(' to denote the left parentheses. We note here that strings, in contract, are demarcated with double quotes.  
+
+(What is a complete list of characters needing an escape sequence?)
+
+
+(How do we specify ASCII codes in Hex, Bin, Dec, Oct, etc?)

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brandon Barker</dc:creator><pubDate>Tue, 19 Feb 2013 16:56:59 -0000</pubDate><guid>https://sourceforge.neta9a21d4d7bfa913bf12ac6e9a562293cf0a4e275</guid></item><item><title>WikiPage char modified by Brandon Barker</title><link>https://sourceforge.net/p/ats-lang/wiki/char/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v3
+++ v4
@@ -1,7 +1,7 @@
 ***&lt;font color="#FF0000"&gt;This page is incomplete, and needs review&lt;/font&gt;***

-Character's are demarcated with single quotes, i.e. the character c is written 'c'. Some characters may need an escape character (the back-slash) because they sequence '*char* for the char being discussed has a special meaning in ATS. One such example is '(, so we actually write '\\(' to denote the left parentheses. We note here that strings, in contract, are demarcated with double quotes.
+Characters are demarcated with single quotes, i.e. the character c is written 'c'. Some characters may need an escape character (the back-slash) because the sequence *'char* for the char being discussed has a special meaning in ATS. One such example is '(, so we actually write '\\(' to denote the left parentheses. We note here that strings, in contract, are demarcated with double quotes.

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brandon Barker</dc:creator><pubDate>Tue, 19 Feb 2013 16:55:57 -0000</pubDate><guid>https://sourceforge.net538bbfe7d60141c7c2bbe5dbab082536130684c5</guid></item><item><title>WikiPage char modified by Brandon Barker</title><link>https://sourceforge.net/p/ats-lang/wiki/char/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v2
+++ v3
@@ -1,10 +1,14 @@
 ***&lt;font color="#FF0000"&gt;This page is incomplete, and needs review&lt;/font&gt;***
+
+
+Character's are demarcated with single quotes, i.e. the character c is written 'c'. Some characters may need an escape character (the back-slash) because they sequence '*char* for the char being discussed has a special meaning in ATS. One such example is '(, so we actually write '\\(' to denote the left parentheses. We note here that strings, in contract, are demarcated with double quotes.
+

 **Conversion functions for char**
-
+(Also see our [Rosetta Stone].)

 **char to string**

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brandon Barker</dc:creator><pubDate>Tue, 19 Feb 2013 16:54:31 -0000</pubDate><guid>https://sourceforge.net594c2b359da817746a209a4daf7b0fce568690a9</guid></item><item><title>WikiPage char modified by Brandon Barker</title><link>https://sourceforge.net/p/ats-lang/wiki/char/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v1
+++ v2
@@ -14,7 +14,7 @@

 fun ***tostrptr_char***
   (c: char):&lt;pre&gt; strptr1 = "atspre_tostrptr_char"
-overload tostrptr with tostrptr_char
+overload ***tostrptr*** with tostrptr_char
 fun ***tostring_char***
   (c: char):&lt;pre&gt; string (1) = "atspre_tostrptr_char"
-overload tostring with tostring_char
+overload ***tostring*** with tostring_char
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brandon Barker</dc:creator><pubDate>Mon, 18 Feb 2013 04:33:54 -0000</pubDate><guid>https://sourceforge.net42b5aabe9f6e721a6e1bbabc77173b796620f460</guid></item><item><title>WikiPage char modified by Brandon Barker</title><link>https://sourceforge.net/p/ats-lang/wiki/char/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;font color="#FF0000"&gt;This page is incomplete, and needs review&lt;/font&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Conversion functions for char&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;char to string&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;// prelude/SATS/char.sats&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
// stringization&lt;br /&gt;
//&lt;/p&gt;
&lt;p&gt;fun &lt;strong&gt;&lt;em&gt;tostrptr_char&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
  (c: char):&amp;lt;&amp;gt; strptr1 = "atspre_tostrptr_char"&lt;br /&gt;
overload tostrptr with tostrptr_char&lt;br /&gt;
fun &lt;strong&gt;&lt;em&gt;tostring_char&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
  (c: char):&amp;lt;&amp;gt; string (1) = "atspre_tostrptr_char"&lt;br /&gt;
overload tostring with tostring_char&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brandon Barker</dc:creator><pubDate>Mon, 18 Feb 2013 04:31:52 -0000</pubDate><guid>https://sourceforge.net78bd2ebeba04b3f0218d0f5f886d35bfaeda4898</guid></item></channel></rss>