Anonymous avatar Anonymous committed 69e3b95 Draft

Move documentation to README, fix license text (no "REGENTS".)

Comments (0)

Files changed (4)

+     Subject: [Esoteric] [Languages] New! Squishy2K (v2000.10.06)
+        Date: Fri, 06 Oct 2000 20:56:43 -0500
+        From: Chris Pressey
+Organization: Cat's Eye Technologies
+          To: Cat's Eye Technologies Mailing List
+
+
+Back in ancient history I came up with a language which worked like a
+Turing-Complete EBNF - a compiler-compiler that could also do banal
+computation via translation.  I wanted to call the language Wirth in
+honour of the inventor of EBNF.  But the name SQUISHY was proposed and
+stuck.
+
+SQUISHY is now left to the sands of time, and this was long before I had
+ever heard of a semi-Thue grammar or the language Thue.
+
+But SQUISHY is now back, refurbished for the twenty-first century, in
+the form of Squishy2K!  Squishy2K is a lot like the original SQUISHY
+except with more and less.  It's not as much like EBNF anymore.  On the
+other hand, it's more like a state machine now!  And in Perl it's dead
+simple, something like 7K of code.
+
+Squishy2K is a string-rewriting language (read: Thue) embedded within a
+state machine (read: beta-Juliet) with states-doubling-as-functions
+thrown in for good measure (read: I haven't rhe foggiest idea what I'm
+doing.)
+
+Reading the grammar will prove to you how simple it is.
+
+  Program ::= {State}.
+  State   ::= "*" Name "{" {Rule} ["!" Name] "}".
+  Rule    ::= LString "?" RString "!" [Name].
+  LString ::= {quoted | "few" | "many" | "start" | "finish"}.
+  RString ::= {quoted | digit | Name "(" RString ")"}.
+
+In English... a program consists of any number of states.  Each state
+begins with an asterisk, gives a name (alphanumeric), and contains any
+number of rules and an optional notwithstanding clause between curly
+braces.  The state named "main" is where flow control begins and ends.
+
+Each rule is composed of an "lstring" (a pattern to be searched for) and
+an "rstring" (an expression to replace any matched pattern with.)  The
+pattern tokens "start" and "finish" match the beginning and the end of
+the input string respectively.  The tokens "few" and "many" match any
+number of characters, the former preferring to match as few as possible,
+the latter is "greedy."  In the rstring, backreferences to the few and
+many tokens may be made with digits: 1 indicates the first few or many,
+2 the second, and so on.
+
+Each rule, and the notwithstanding clause, can name another state, and
+when a match succeeds on that rule (or no match succeeds for the
+notwithstanding clause), a transition along the arc to that state fires
+(i.e. it's a goto...)
+
+That's about it.
+
+Now I have to write a fake infomercial for it, and it'll be complete. 
+:-)
+
+_chris
+
+-- 
+Uryc! V'z genccrq vafvqr gur ebg13 plcure!
+Share and Enjoy on Cat's Eye Technologies' Electronic Mailing List
+http://www.catseye.mb.ca/list.html

doc/license.txt

-Copyright (c)2000, Cat's Eye Technologies.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-
-  Redistributions of source code must retain the above copyright
-  notice, this list of conditions and the following disclaimer.
-
-  Redistributions in binary form must reproduce the above copyright
-  notice, this list of conditions and the following disclaimer in
-  the documentation and/or other materials provided with the
-  distribution.
-
-  Neither the name of Cat's Eye Technologies nor the names of its
-  contributors may be used to endorse or promote products derived
-  from this software without specific prior written permission. 
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
-CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
-INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
-OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGE. 

doc/squishy2k.txt

-     Subject: [Esoteric] [Languages] New! Squishy2K (v2000.10.06)
-        Date: Fri, 06 Oct 2000 20:56:43 -0500
-        From: Chris Pressey
-Organization: Cat's Eye Technologies
-          To: Cat's Eye Technologies Mailing List
-
-
-Back in ancient history I came up with a language which worked like a
-Turing-Complete EBNF - a compiler-compiler that could also do banal
-computation via translation.  I wanted to call the language Wirth in
-honour of the inventor of EBNF.  But the name SQUISHY was proposed and
-stuck.
-
-SQUISHY is now left to the sands of time, and this was long before I had
-ever heard of a semi-Thue grammar or the language Thue.
-
-But SQUISHY is now back, refurbished for the twenty-first century, in
-the form of Squishy2K!  Squishy2K is a lot like the original SQUISHY
-except with more and less.  It's not as much like EBNF anymore.  On the
-other hand, it's more like a state machine now!  And in Perl it's dead
-simple, something like 7K of code.
-
-Squishy2K is a string-rewriting language (read: Thue) embedded within a
-state machine (read: beta-Juliet) with states-doubling-as-functions
-thrown in for good measure (read: I haven't rhe foggiest idea what I'm
-doing.)
-
-Reading the grammar will prove to you how simple it is.
-
-  Program ::= {State}.
-  State   ::= "*" Name "{" {Rule} ["!" Name] "}".
-  Rule    ::= LString "?" RString "!" [Name].
-  LString ::= {quoted | "few" | "many" | "start" | "finish"}.
-  RString ::= {quoted | digit | Name "(" RString ")"}.
-
-In English... a program consists of any number of states.  Each state
-begins with an asterisk, gives a name (alphanumeric), and contains any
-number of rules and an optional notwithstanding clause between curly
-braces.  The state named "main" is where flow control begins and ends.
-
-Each rule is composed of an "lstring" (a pattern to be searched for) and
-an "rstring" (an expression to replace any matched pattern with.)  The
-pattern tokens "start" and "finish" match the beginning and the end of
-the input string respectively.  The tokens "few" and "many" match any
-number of characters, the former preferring to match as few as possible,
-the latter is "greedy."  In the rstring, backreferences to the few and
-many tokens may be made with digits: 1 indicates the first few or many,
-2 the second, and so on.
-
-Each rule, and the notwithstanding clause, can name another state, and
-when a match succeeds on that rule (or no match succeeds for the
-notwithstanding clause), a transition along the arc to that state fires
-(i.e. it's a goto...)
-
-That's about it.
-
-Now I have to write a fake infomercial for it, and it'll be complete. 
-:-)
-
-_chris
-
--- 
-Uryc! V'z genccrq vafvqr gur ebg13 plcure!
-Share and Enjoy on Cat's Eye Technologies' Electronic Mailing List
-http://www.catseye.mb.ca/list.html
 # squishy2k.pl - v2000.10.06 Chris Pressey
 # Squishy2K to Perl 5 compiler in Perl 5
 
-# Copyright (c)2000, Cat's Eye Technologies.
+# Copyright (c)2000-2012, Chris Pressey, Cat's Eye Technologies.
 # All rights reserved.
 # 
 # Redistribution and use in source and binary forms, with or without
 # modification, are permitted provided that the following conditions
 # are met:
-# 
-#   Redistributions of source code must retain the above copyright
-#   notice, this list of conditions and the following disclaimer.
-# 
-#   Redistributions in binary form must reproduce the above copyright
-#   notice, this list of conditions and the following disclaimer in
-#   the documentation and/or other materials provided with the
-#   distribution.
-# 
-#   Neither the name of Cat's Eye Technologies nor the names of its
-#   contributors may be used to endorse or promote products derived
-#   from this software without specific prior written permission. 
-# 
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
-# CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
-# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-# DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
-# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
-# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-# OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-# POSSIBILITY OF SUCH DAMAGE. 
+#
+#  1. Redistributions of source code must retain the above copyright
+#     notices, this list of conditions and the following disclaimer.
+#  2. Redistributions in binary form must reproduce the above copyright
+#     notices, this list of conditions, and the following disclaimer in
+#     the documentation and/or other materials provided with the
+#     distribution.
+#  3. Neither the names of the copyright holders nor the names of their
+#     contributors may be used to endorse or promote products derived
+#     from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE
+# COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
 
 ### SYNOPSIS
 
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.