Andrew,
I can't answer all of your questions on this modification and its status. I
can
make some comments based upon (a) my reading of the Thesis report on
Unicon.org,
(b) experience with SPITBOL/370 source code, (c) Descriptions in the Green Book
and James Gimple's Algorithms in SNOBOL4. BTW Gimple's Book has some excellent
descriptions in it if you can find a copy (and if it's online please post a
link). In particular, I always hated the 'bead diagrams' and preferred the
path
diagrams used in Gimple and for that matter the pattern structure documentation
in the SPITBOL/370 source. Arbno and Breakx were always of particular interest
in how they *could* be represented and how they *were* represented.
I came to Icon from SPITBOL/SNOBOL4 and still to this day have what I'd
characterize as translation moments where I still think in SPITBOL patterns.
Even if the syntax was the assembler from hell vs. structured, there were of
course other similarities. A lot of the under the cover language semantics,
tables, etc. It was an easy conversion. I still miss certain aspects that have
real benefit like being able to build up patterns in variables. The thesis
points out some limitations including the lack of a general evaluation
facility
in Icon/Unicon that leads to a 'kludge' in the pattern implementation.
I think the benchmarking segment of the thesis was particularly interesting and
answers the performance questions quite well. In some ways I'm not surprised
(not that Icon is inefficient). More would be of interest of course.
I fear I've been a bit reluctant to use it as I'm afraid it might go away
(change is fine and expected but going away would be unfortunate).
There are also a lot of open questions. Pattern Matching in SNOBOL was always
a
language within a language. Putting it back into Unicon raises that again. How
it integrates with the larger language is one of those. Also the ability to
mix
patterns/scanning/matching is an open question. I suspect general integration
with scanning (i.e. backing up) is less likely than with matching.
I'm not sure about the 'klunkiness' of the syntax. Certainly the deferred
expressions are but they've already been called out as a kludge.
Basically, you have to use it to gain the understanding you're looking for.
Hope you find your answers.
David
________________________________
From: Andrew Clarke <[email protected]>
To: [email protected]
Sent: Wed, August 4, 2010 7:52:28 PM
Subject: [Unicon-group] SNOBOL operators - a few questions
Hello all
What is the latest status of SNOBOL operators in Unicon? Did I see
recently a release note or forum message stating that the newest builds
have now integrated it as a beta feature?
I have read the SNOBOL tutes and have practiced the example code, so I
understand the concept of the "pattern data type", deferred execution
marked with *, the conditional and immediate assignment operators,
various built-ins like ARB etc, and the ability to assign new contents
into the subject string. I've also read the document describing the
experimental features built into Unicon.
I think what's missing in my brain is a deep feeling for how the SNOBOL
approach is supposed to be superior. Put that down to lack of writing a
real project using SNOBOL I guess. At present I'm still puzzled as to
what benefits it would /really/ bring to my work.
Clinton, I see from a message dated 19th August 2009, you said
"However, it is both more concise and runs a lot faster than string
scanning"
and I would be interested to see some exposition of this. Is there any
sizable sample code beyond the PDF showing competing solutions?
Also I'd like to comment on the syntax, although I'm sure I won't be
saying anything that's not already known. The syntax is inconsistent and
clunky the way it stands. Sure, there's some conflict with existing
Unicon operators, but I'm a bit puzzled by the inconsistency between
some of the chosen operator symbols. However until I actually try to use
it, I can't pretend to offer better!
------------------------------------------------------------------------------
The Palm PDK Hot Apps Program offers developers who use the
Plug-In Development Kit to bring their C/C++ apps to Palm for a share
of $1 Million in cash or HP Products. Visit us here for more details:
http://p.sf.net/sfu/dev2dev-palm
_______________________________________________
Unicon-group mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/unicon-group
------------------------------------------------------------------------------
The Palm PDK Hot Apps Program offers developers who use the
Plug-In Development Kit to bring their C/C++ apps to Palm for a share
of $1 Million in cash or HP Products. Visit us here for more details:
http://p.sf.net/sfu/dev2dev-palm
_______________________________________________
Unicon-group mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/unicon-group