- spinoza programming language status report (or, disruptive technologyis always late)
- Posted by spinoza1111 on April 13th, 2008
A while back, I undertook not to post overmuch to this group apart
from status reports on a new programming language, spinoza, which
shall implement some ideas I've aired in discussion.
I promised an XML parser piece by March 30th since I need to convert
object state to something reasonable.
However, in testing the parser I noted that an xmlParser "is" a
progress reporter and since Bad Progress Reports that Suck are a bane,
and because progress reporting seems to me to have a nongraphical,
logical component ("I am processing entities of type e at entity n of
m where m may be unknown") as well as a visual component, I have
pushed xmParser testing on a stack and am working on progress
reports ... not of course this type of progress report but simply the
support of visual progress while the xmlParser, and countless other
tools, make progress.
Because software managers deal in reified and oversimplified concepts,
they often divide logical elements from graphical elements
oversharply, producing horrors like Norton Internet Protection with
its odious screens that stare at you while "something", and you know
not what, happens that might as well be a computer virus in itself.
The problem is that what are considered purely visual elements usually
have a logical component. If ALL progress reporting is "processing
element n of m where m is known or unknown" then progress reporting
has a logical component as well as a visual component.
Since my language C Sharp doesn't feature multiple inheritance I seem
to be forced to say that xml parsers "are" progress reporters in order
to avoid putting the code for progress reports in the xml parser or
worse making a delegate. This is annoying since the language of single
inheritance ,seems to forestall us from saying that something "is" not
only something but also another thing.
It seems to map surplus repression ("I am only an accountant") into
the very language of OO programming, whereas poetically it would seem
that a truly liberatory language would implement multiple inheritance
for the same reason Marx said that man, after the revolution, would
"be" a cattle herder by day and a literary critic by night.
But this may be misleading. It seems that you can always convert
multiple inheritance into chains of single inheritance and multiple
inheritance may be syntax sugar. I shall try to implement multiple
inheritance in spinoza to see if it's worth anything.
This LIFO method of development, wherein I "stack" (postpone) a goal
and dash off in pursuit of a subgoal is either genius (ok, smartness)
or madness. One cannot use it in industry since you cannot tell your
boss under capitalism that you WERE working on
whatWeNeedYesterdayOrElse, but discovered that somethingReallyCool can
be developed that will support part of whatWeNeedYesterdayOrElse, and
much else besides.
Oh, sure, you could do it at places like Bell-Northern Research, some
of the time, but generally speaking it's the road to getting Fired.
Mathematically, your development time slows to a crawl as your stack
deepens.
Of course, nobody, fortunately, is paying me.
But even when Apress had advanced me a healthy sum to write Build Your
Own .Net Language and Compiler, a sum I spent on motel rooms at the Y
to live off the streets, I'd, at the start of the project, already
developed a single monolithic compiler.
I realized that to scale up to the 26000 line compiler for the book, I
could not "hack" the project I'd demo'd.
Instead, I had to drill down and think really hard as to what sort of
objects an OO compiler would need and I realized soon enough that it
would need a data type object, and others, and that each one of these
needed the utmost care and focus, one after the other.
The book couldn't be the presentation of an unassayed monolithic
compiler! What would I say? I'd end up writing what I've seen in the
old days: a bunch of generalities without analysis. No, the OO
approach lets us take things one thing at a time.
I was afraid that in the chaos I would be late because I'd be
overfocused on subgoals.
But as it turned out, I wasn't that late (the original target release
was Oct 2003, the actual release was May 2004). And, the development
of the software wasn't the delaying factor. It was that as a first-
time author my work needed a development edit.
More important, precisely to the extent that in purity of heart I'd
forced myself to treat objects equally, each one deserving of a "core"
set of procedures, I was able, late in development, to do things like
(1) bring up a GUI for testing the data type object and (2) press a
test button to do a regression test and (3) move up the tree.
In many industrial projects on the other hand, the developers have to
say they are working on the "bottom line".
One partial solution to the real (Hegelian) contradiction between the
demands of moneybags types for Results, and the need for complex
systems to have a solid base is the "daily build" wherein at 5:00 PM
you make sure the final product builds and runs "something", and I
used this approach.
But rethinking EVERYTHING essentially slows you down
logarithmically...the LIFO method produces fast results only at the
thrilling finish.
The payoff is when your development stack is finally "popped" boom
boom boom and things work. This did not happen in Build Your Own to
the extent I wished, since owing to lack of time I had to merely
assure that all the code examples would work. I never tested a variety
of different programs.
That's why having been liberated by another career to code exactly as
I wish I am trying to see what would happen if I became my own "Bell
Northern Research".
OK, so when the progressReporter software is done, I will make an
announcement, that something is actually no shit done. Rather than
post the code here, where its size will clutter and mean people will
make rude remarks, I will announce that anyone who's interested may
order a free copy of all the code by way of email (my email address is
spinoza1111@yahoo.com).
No, this isn't my MySpace page; flamers may flame, and be damned. I am
simply coding some .Net code and thoroughly documenting same on a sea-
going ferry purely for the hell of it. If somebunny else finds these
comments useful today, or the code when it is ready, cool.
- Posted by Bruce C. Baker on April 13th, 2008
"spinoza1111" <spinoza1111@yahoo.com> wrote in message
news:fdec2aeb-81a1-4446-b206-09100a2dc240@l28g2000prd.googlegroups.com...
[...]
(Momentarily ignoring my own counsel of ignoring you, Ed.)
As if anyone here would be foolish enough to send you their email address.
(Recloaking.)
- Posted by Vaclav Haisman on April 13th, 2008
spinoza1111 wrote, On 13.4.2008 12:17:
--
VH
- Posted by spinoza1111 on April 14th, 2008
On Apr 14, 6:39*am, Vaclav Haisman <v.hais...@sh.cvut.cz> wrote:
...thank you for your honesty. Most people, especially the lower
middle class, really don't support real freedom of speech when someone
like me actually tries it. Sure, they are ready enough to allow
conventional messages of the sort that a controlled press or a
corporate newsletter prints and of the sort no-one actually reads.
But if someone actually engages reality as such, the usual "supporter
of free speech" is perfectly willing to see that person beat up in an
alleyway in the name of a quiet life for the majority.
- Posted by spinoza1111 on April 14th, 2008
On Apr 14, 6:28*am, "Bruce C. Baker" <b...@undisclosedlocation.net>
wrote:
Very few people have done so, whether in connection to discussions
here, or in response to an invitation in my book. This is a good thing
because it saves me time, and it means I only have to support people
with a genuine interest in my code.
And, I need you to show greater self-control, and follow the rule
"don't feed the troll". If you think I'm a troll, then leave me the
fuck alone, because otherwise you require me to clarify matters.
I'm getting real tired of being bothered by people who don't share my
vision and having to reply merely to clear up the confusion YOU create
when you vent.
You are in fact addicted to a gesture of psychological transference
because most people here are afraid of a very real isolation and for
this reason get their rocks off by seeming to find a person who's
everything they feel they are: completely isolated and friendless.
- Posted by Chris McDonald on April 14th, 2008
spinoza1111 <spinoza1111@yahoo.com> writes:
All one can conclude from this is that you don't consider yourself in
the lower middle class, or that you're wrong.
Neither have anything to do with comp.programming, though.
--
Chris.
- Posted by Richard Heathfield on April 14th, 2008
Vaclav Haisman said:
Freedom of speech *is* a good thing.
Fortunately, we have freedom of listening. We are not required to listen to
gibberish, and many Usenet newsreading clients are quite well-furnished
with ways to filter it out automatically. Or we can simply shrug and move
on. Usenet conventions are for those who understand the value of
conventions (and of courtesy). Those who lack such understanding cannot be
persuaded to gain it, but neither is there any requirement imposed upon us
to listen to their verbiage.
--
Richard Heathfield <http://www.cpax.org.uk>
Email: -http://www. +rjh@
Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
"Usenet is a strange place" - dmr 29 July 1999
- Posted by spinoza1111 on April 14th, 2008
On Apr 14, 2:41*pm, Richard Heathfield <r...@see.sig.invalid> wrote:
Unfortunately, you are feeding the troll. This is because you reply to
others while intending to reply to me, because you're the problem with
this newsgroup and as the problem, you need to attack others.
If you think I am the troll here, then simply cease replying. Address
others through email.
If you expose my name and reputation to libel, I will reply, and I
will seek legal action.
To post publically information that diminishes the humanity and right
to be heard of others is to seek to dominate this ng through bullying,
and this is what you do.
However, I have undertaken to reply minimally or not at all until my
spinoza project is done. When the progress reporter piece is done I
will post a notice of its availability.
You're the deviant here, Mr. Heathfield. You conduct campaigns not in
the interest of technical truth but in order to establish a dominance
which you are incapable of establishing elsewhere.
That's all for now. You make me ill.
- Posted by Richard Heathfield on April 14th, 2008
spinoza1111 said:
No, you're wrong. I have no reason to believe that Vaclav Haisman is a
troll.
No, you're wrong. When I intend to reply to you, I reply to you. When I
intend to reply to others, I reply to those others.
No, you're wrong. Most of my replies in this group are attempts to help
other people with programming, or corrections to incorrect responses (such
as in this case). I don't attack people.
Just as you decide what you will post here, I decide what I will post here.
Don't worry about my damaging your reputation. You need no help there.
When I consider an email response is the best way to go, that's the way I
go. When I consider a Usenet response to be more appropriate, that's what
I do.
The damage you do to your reputation by what you post here far exceeds any
damage I could possibly do to it.
Everybody has a right to speak, and I am all in favour of that (contrary to
your claim). But nobody has a right to force other people to listen to
gibberish. If you want people to listen to you, start speaking sense.
<nonsense snipped>
--
Richard Heathfield <http://www.cpax.org.uk>
Email: -http://www. +rjh@
Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
"Usenet is a strange place" - dmr 29 July 1999
- Posted by Anonymous on April 14th, 2008
On Mon, 14 Apr 2008 07:42:17 +0000, Richard Heathfield wrote:
I believe he is talking about your responses to him. (I should find a
news reader that can filter articles based on whether there's a parent
article by a certain author in their thread...)
- Posted by Nick Keighley on April 14th, 2008
On 13 Apr, 11:17, spinoza1111 <spinoza1...@yahoo.com> wrote:
I'd assumed a parser converted XML into some internal representation.
That is, it was, an *input* technique. But you seem to mean to
convert internal representaion ("object state") into XML ("something
reasonable") (XML is reasonable?!). This seems to be an *output*
technique.
for a non-obvious definition of "is-a". Could you explain this
in more detail? In what sense is an XML parser a progress reporter.
More likely an XML output could be used to report progress. Did you
mean HTML output?
are you talking about progress bars? Eg. when copying a large file
(or many files)?
this can be a good idea. But if you aren't careful
you end up with a full stack and nothing done.
<snip>
switch to a language that does?
I understood single inheritance would usually do, but
it makes your design harder to modify (I'm sure I remember
reading something like this...).
Maybe you are over-using inheritance perhaps composition
could be better. Have you read the patterns book?
what's wrong with a delegate? I was thinking something
like this (pseudo C++ as I don't know C#).
class ProgressReporter
{
public:
updateProgress (EntityType e, EntitityCount n, EntitityCount m);
private:
Reporter* reporter_;
};
ProgressReporter::
updateProgress (EntityType e, EntitityCount n, EntitityCount m)
{
reporter_->update_report(e, n, m);
}
class XmlReporter: public Reporter
{
update_report(EntityType e, EntitityCount n, EntitityCount m)
{
// generate XML
}
};
well yes...
<snip>
I'm afraid I don't understand your political philosophy stuff
so I tend to ignore it.
yes, I'd heard similar
I doubt genius as I suspect people have been doing this
before they'd worked out stone tools.
I believe studies have shown people don't have
very deep stacks. You might need a physical stack
to keep track of things. "To Do" lists are basically
stacks. Gantt (sp?) and PERT and such like are just
sophisticated "To Do" lists :-)
<snip political philosophy>
<snip "war story">
how about posting it on a web site and announcing the address
of the web site?
<snip slightly incomprehensible stuff>
--
Nick Keighley
- Posted by Mike on April 14th, 2008
In article <18c6ebd3-9351-48d3-b0c4-8fb864b6f1ae@q24g2000prf.googlegroups.com>, spinoza1111@yahoo.com says...
I may regret the question Edward, but could you provide a relatively concise description of:
a) what society this 'lower middle class' exists in, and how class-members can be identified;
b) what other identifiable classes exist in this society, and how their class-members can be identified; and,
c) what approximate proportion of the society makes up each of these classes?
Cheers
Mike
- Posted by spinoza1111 on April 15th, 2008
On Apr 14, 3:42*pm, Richard Heathfield <r...@see.sig.invalid> wrote:
Stop playing games. You consistently reply to third parties about
people you don't like in order to disrupt their threads and control
this newsgroup. If it were your goal to warn people about trolls you
would send them email and obey a cardinal rule: don't feed the troll.
If you think I'm a troll then do not respond because that's trolling
in itself.
Bullshit. You use this group dishonestly and to control because you
have no traction anywhere else.
Your advice is generally so reified as to be useless. It is generally
to say that problems have been solved and, as opposed to describing a
solution, you point to masses of poorly-understood code.
I don't want people like you to listen to me, nor do I want you to
speak to me.
- Posted by Richard Heathfield on April 15th, 2008
spinoza1111 said:
Learn how to use a threaded newsreader (as, I believe, several people have
suggested to you before), and you will discover that it's actually
impossible to disrupt a thread. Your inability to understand this hampers
your understanding of Usenet in general, and appears to lead you to think
that an unmoderated international newsgroup can be "controlled" by a
single individual, which is simply laughable. I'm no psychiatrist, so I am
in no position to make authoritative statements about psychiatry, but
speaking as a layman, it sure sounds paranoid to me.
Let's just pretend for a moment that this was my goal, which it wasn't. How
would I identify the email addresses of all the subscribers I wished to
warn, given that many, perhaps even a majority, of them are lurkers? And
how would I persuade my ISP that my email, with its vast address list, was
not spam?
I'm still not really sure whether you're a troll. It is, I suppose,
possible that your astounding ignorance and intransigence are feigned, and
that you assume these characteristics simply to get a rise out of the
group. But *whether or not* you are a troll, you don't get to dictate how
or when I post to this group.
Your inability to believe the truth does not make the truth a lie.
If you took the trouble to read my replies, you'd find that, contrary to
your claim, I generally attempt to find a proper level of abstraction.
It sounds to me as if you are cherry-picking your examples. It is true that
I generally give fairly short shrift to those who are looking for a free
homework lunch, but not everyone falls into that category.
<snip>
You don't get to dictate what I read or what I write. If you don't want to
*read* what I write, that's entirely up to you.
--
Richard Heathfield <http://www.cpax.org.uk>
Email: -http://www. +rjh@
Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
"Usenet is a strange place" - dmr 29 July 1999
- Posted by spinoza1111 on April 15th, 2008
On Apr 14, 7:34*pm, Nick Keighley <nick_keighley_nos...@hotmail.com>
wrote:
Input-output.
It's non-obvious because C Sharp doesn't have multiple inheritance.
No, the two problems are completely independent. One is the need never
again to see the kind of "progress reports" produced by crap such as
Norton Utilities. The other is to always be able to serialize binary
data in text form in a lossless fashion. But, the parser's GUI loads
pre-existing data and during this time I prefer to see accurate
progress reporting.
I've separated the visual element (show me a progress bar, or maybe a
bunny chasing a duck, or an ad for Viagra, in all cases such that the
visual element is a model of actual progress) from what I believe is
the Platonic Idea of progress, from which more elaborate logical Ideas
derive: the serial processing of a set of m elements (where m may be
unknown) from 1 to m.
[If the elements are processed not on the for model, but on the
foreach model, such that we don't "know" their nondeterministic
sequence, I claim this reduces to the serial case conceptually because
the serial case neither "knows", nor "cares" which elements it
processes: the elements are known to the serial case only by their
ordinal number therefore if they happen not to be "next to" each
other, we would never know. Even if multiple members are processed at
THE SAME TIME, all we care about is the moment at which a member has
been processed and this is a dimensionless point in time. Therefore, I
believe the model "processing n of m" is still the basis.]
Stack (recursive) progress can then be modeled as a stack of progress
bars. Multithread progress can then be modeled as a progress bar
"race": multiple bunnies chasing multiple ducks, or multiple Viagra-
crazed dirty old men chasing multiple nubile virgins.
The problem I see in a lot of crap software is that progress was
thought to be exclusively visual and assigned to the dumbos on the GUI
team (the developers ungeeky enough to have girlfriends who are
graphic artists). But ANY problem can be "factored" into the logical
versus the visual.
I claim this is an illusion. Most usable software is late precisely
because its developers code on the LIFO model, fully solving problems
as they arrive without managers yapping about the goddamn bottom line.
Most on-time software damages businesses, customers and employees
because of its aporias.
Windows was late. Linux was late. Whereas PowerPoint presentations
showing how the United States could invade Iraq with 160,000 troops
were on time.
Sure, I got my first job because I coded a program that the data
processing manager said would take 6 months in 24 hours. But I say the
overemphasis on delivery time is an artifact of the entry into the
field of thugs and frauds who don't like to code and have to be over-
monitored.
I'm writing a language that will.
I really should.
I got thoroughly sick of delegates when trying to do "real" OO in
pre-.Net Visual Basic.
In brief, Frankfurt School Marxism is the claim that we of the working
class lead completely inauthentic lives because in order to live in
cities and not have to confront nature, we have to subordinate
ourselves to the force and fraud of a constructed nature constituted
in the power of "successful" players of a rigged game. "Programming"
may well be an unnamed form of social welfare in which surplus
incompetence ensures that a subset of the over-educated can be semi-
employed.
...which is why it's puzzling, to say the least, that in an industrial
programming job you cannot generally realize, in working on stone tool
x, it would be nice to have a meta-tool made out of a harder stone
found At The Place of the Hard Stones, and have to fill out a form
allowing you to travel to The Place of the Stone Tools.
This was the one thing I found most irritating about programming jobs.
Sure, when I was at Bell-Northern Research this was encouraged...until
slobs and pigs joined the firm and promptly used the freedom to
conduct drunken and out of control beer blasts and steal office
equipment (and, in one cases, all the towels in the fitness center).
But at most jobs, the developer has to factor in secret, in my
experience.
As to your analogy, paleo-anthropologists suggest that for thousands
of years Homo Erectus USED but did not MAKE tools. If he found an
appropriately shaped bone, he was smart enough to keep it and use it.
But I can well imagine the situation of the first Homo Faber. He
probably "took too much time" making the perfect cutting tool when it
"made so much more sense" to go to the Place of Bone Tools and pick up
the first "good enough" tool.
Guess who the software manager is, with his talk about "getting things
done fast". Of course, the field may have changed since I left it to
become a teacher, a few years ago. But I tend to doubt it.
People have varying length stacks and SOME people tend to naturally
"stack" and go "off topic" merely to have a more solid solution. I
believe that highly intelligent people, like my son, do this
naturally; he got in trouble for hacking his HP 48 in math class while
he was supposed to "focus" and "pay attention" to the relatively
ignorant lectures of the math teacher. Upon investigation I discovered
that my son was solving the problems presented quickly by coding them
on his calculator. He went on to score an evenly balanced 1560/1600 on
his SAT...and received absolutely no support from his school in uni
admissions because he was a rebel of a politically incorrect race and
gender.
He was perceived, as I've been occasionally, as being off-topic
because in the industrialised environment of the modern school, the
teachers are primarily concerned with reified "lesson plans" which are
literally far more important than the children. The fact that my son
could explain to me why I was fulla shit about big number calculations
at the age of 15 and may have been a young Gauss, like John Nash, made
absolutely no difference because being a part of the machinery was
more important even to his Mom.
At the other extreme, there are people (probably far more numerous
world wide) who have a great deal of trouble in mentally executing a
stack push. These are, for example, the people here and at www.lamma.com.hk
who literally have replied to sentences using subordinate clauses with
death threats. They are generally more effective and successful in the
"real world" (which, as I've said, isn't nature, and which is always
going tits-up, from the Titanic to the Holocaust to the miseries of
today, because it isn't nature).
I advised my son to compromise with this social demand as best I could
and he started reading Lacan. I did not do so in the tones of my
parents, who'd been terrorized by McCarthyism into raging at their
kids to "adjust" at all costs. When "damaged life cannot be lived
rightly" it's hard to be a parent.
The problem is that everybody is so alienated as to fall in love with
their alienation, and I'm no exception to that rule.
Will do this at www.spinoza1111.com. You may visit this site now, but
it's just starting out and is under construction.
Thanks for your reply. I will examine this thread this weekend to
follow up. I have, however, made a promise to this ng to code spinoza
and not post much aside from status reports.
- Posted by Qwertyioup on April 16th, 2008
On Mon, 14 Apr 2008 23:08:48 -0700 (PDT), spinoza1111
<spinoza1111@yahoo.com> wrote:
No, they didn't.
No more than if someone tell you to bugger off are they actually
threatening you with being sodomized.
You however have made many threats, legal and physical.
As they're obviously foolish ranting no one takes these seriously.
-- What happened to the libel/stalking/failing-to-doff-my-cap suit you
were prepping your legal team for? I've been anxiously waiting for my
day in court.
If only it were so.
- Posted by Bruce C. Baker on April 16th, 2008
"spinoza1111" <spinoza1111@yahoo.com> wrote in message
news:613f4a17-1705-441c-aaf5-1ac471ec0b70@1g2000prf.googlegroups.com...
[...]
Here's a slogan for the 21st century:
"Ed Nilges: the twit you love to twit!"
:-)
- Posted by Vaclav Haisman on April 17th, 2008
spinoza1111 wrote, On 15.4.2008 8:08:
comp.lang.spinoza1111.status-reports. This is comp.programming. Stick your
status reports to...somewhere else. Actually, create the
comp.lang.spinoza1111.status-reports group. I am sure all of your and the
spinoza language fans will be happy that they do not have to search through
all the crap in comp.programming anymore to find the reports.
--
VH
- Posted by Bruce C. Baker on April 17th, 2008
"Vaclav Haisman" <v.haisman@sh.cvut.cz> wrote in message
news:48071D82.5050900@sh.cvut.cz...
Or Ed could try posting to comp.compilers--if the moderator will have him!
- Posted by Steve O'Hara-Smith on April 17th, 2008
On Thu, 17 Apr 2008 09:34:25 -0500
"Bruce C. Baker" <bcb@undisclosedlocation.net> wrote:
Have him what ? Hanged ? Silenced ?
--
C:>WIN | Directable Mirror Arrays
The computer obeys and wins. | A better way to focus the sun
You lose and Bill collects. | licences available see
| http://www.sohara.org/