Pending overhaul

0 views
Skip to first unread message

Bruce Long

unread,
Jun 18, 2011, 2:03:51 AM6/18/11
to Slipstream Proteus Developers
Greetings all,
I hope everything is going well. The good news is that the software is
getting closer to being grokable without 10 hours of study. But there
are a number of things in the program that have become "hack-like"
over time. The features of the language that I am working on intersect
with those things such that the hacks will become more entrenched if I
don't do something now.

The upshot is that I'm adding a number of inter-related features and
syntax improvements at the same time that I am refactoring the
existing code. I'd like to express what I am doing in this email, both
to communicate and document as well as to request comments. (Hopefully
this will be a REAL request for comments and not a specification of an
already-vetted standard.)

The biggest change is in the way searching and functions work. The new
change will allow a closer mapping to English, provide a pretty way to
express chains of composed functions or nested searches and most
importantly, it facilitates a better syntax for "searching to write"
vs. read only searches. The new syntax will also facilitate some new
semantics which will reduce the need for the \\\^[...] syntax that is
so hard to grok.

Here are the new rules:

A list given in square brackets evaluates to it's last member unless
the operation performed is the inverse function. In that case it
evaluates to it's first member. (Also, recall the result of a list
like [itm1, itm2, <itm3>, itm4] which evaluates to the item marked
with "<...>". This is rarely needed.)

In function mode we set the first item of a '[...]' list to the
arguments like this:

[args, var1, var2, ..., var n, return] <: {argument 1, argument 2}

With function tags this looks like so:

sqrt <: 9

We can compose functions like so:

f <: g <: h <: 9


In a C-like language this would be:

f(g(h(9)))

But we can also do this backwards if we want it to look like a list of
things to be done:

9:>h:>g:>f

We can invert a function like so:

3!>f!>g!>h OR 3 <! f <! g <! h

Semantically, "LIST <: item" and "item :> LIST" assert that item is
the first element of list.

Similarly, "LIST <! item" and "item !> LIST" assert that item is the
last element of list. (And BTW, return the first item of LIST instead
of the last one).

Similar changes are underway for searching or "indexing" as I have
called it before. Though the details of that are not final and I want
to get this post off.t

OTHER HIGHLIGHTS:
* The normalize function will be broken up and smaller.
* infon.flags will be reorganized
* I have found a way to retain language agnosticality while still
allowing keywords. The keywords will substitute for symbols. So you
could create a French version, a Japanese version, etc. The connection
with natural language has been hard for non-technical folks to see
until now.


I'm off to code.

Bruce

Davide Del Vento

unread,
Jun 28, 2011, 6:07:03 PM6/28/11
to slipstream-pro...@googlegroups.com
Hi Bruce,
Hope everything is going well for you too.

I'm glad to see this going forward and I'm sorry I cannot contribute
much right now. I'm overwhelmed with several things, including
mentoring 3 (sic!) interns, and having some subsystems (electrical,
plumbing) at home to fix.

Maybe we can organize a hack-in-the-park sometimes, so I can tell my
wife I'm accompanying the kids to the playground and we meet there to
hack instead (ok, we'll also keep and eye on our kids, ok ok).
Do you know if there is any wireless-enabled playground, or do you
have 3G which you could share or something?

Sebastien, from your URL it looks like your are in Silicon Valley, but
which one? The one in California or in Colorado? If it's the latter it
would be great to meet you in the park too.

TTYL,
Davide

Sebastien Zany

unread,
Jun 28, 2011, 6:32:16 PM6/28/11
to slipstream-pro...@googlegroups.com
Hey Davide, I'm not in Colorado unfortunately.

Bruce Long

unread,
Jun 29, 2011, 12:25:15 AM6/29/11
to slipstream-pro...@googlegroups.com
Hi Davide,
Hack in the park. What a great idea! Let's plan for this Saturday if that works. My phone is a 4G phone and it can create a WIFI access point so we're set. 
--
Give me immortality or give me death!

Davide Del Vento

unread,
Jun 29, 2011, 1:52:47 PM6/29/11
to slipstream-pro...@googlegroups.com
Hi all,
Anyone else interested?

Bruce,
Excellent. Have you checked the weather forecast? What times/location
would work best for you (maybe we can discuss this last question
offline).
Davide
PS: I assume your last kid is not born yet, right? :-)

David Van Duzer

unread,
Jun 29, 2011, 6:27:37 PM6/29/11
to slipstream-pro...@googlegroups.com
I'd be interested.
Reply all
Reply to author
Forward
0 new messages