Discussion:
[fonc] One more year?!
Reuben Thomas
2012-01-21 01:52:16 UTC
Permalink
I have just skimmed VPRI's 2011 report; lots of interesting stuff
there. The ironies of a working system that the rest of us can only
view in snapshot form grow ever-stronger: the constant references to
active documents are infuriating. The audience would like to see the
active document, but instead we only get a printout. It's as if,
waiting for a new film, we got only reviews of trailers rather than
the trailers themselves.

The irony is then compounded by a code listing at the end of the
document (hint: a URL is shorter and actually useful; this is not the
1980s).

And then just when we thought it was going to end, the agony
continues: you've pushed the deadline back a year.

I wish you all a joyful and productive 2012; unlike many projects,
it's clear that with this one the question is not whether what is
finally released will be worth the wait, it's whether it'll ever
actually be released.

You do shoot yourselves in the foot at one point: "The Web should have
used HyperCard as its model, and the web designers made a terrible
mistake by not doing so." Yes, but the web shipped and revolutionised
the world; meanwhile, you lot have shipped stuff that, at best, like
Smalltalk, has inspired revolutions at one remove. Many of the lessons
of your work are decades old and still not widely learned. Contrast
with Steve Jobs, who spun an ounce of invention into a mile of
innovation, by combining a desire for better computing with the
understanding that without taking people with you, your ideas will die
with you. It's a shame and an embarrassment that to the world at large
he's the gold standard.

Please, no more deadline extensions. Whatever you have by the end of
this year will unquestionably be worth releasing, for all its
imperfections. It's high time to stop inventing the future and start
investing it.
--
http://rrt.sc3d.org
Loup Vaillant
2012-01-21 10:11:39 UTC
Permalink
Post by Reuben Thomas
I have just skimmed VPRI's 2011 report; lots of interesting stuff
there. The ironies of a working system that the rest of us can only
view in snapshot form grow ever-stronger: the constant references to
active documents are infuriating. The audience would like to see the
active document, but instead we only get a printout. It's as if,
waiting for a new film, we got only reviews of trailers rather than
the trailers themselves.
The irony is then compounded by a code listing at the end of the
document (hint: a URL is shorter and actually useful; this is not the
1980s).
And then just when we thought it was going to end, the agony
continues: you've pushed the deadline back a year.
I wish you all a joyful and productive 2012; unlike many projects,
it's clear that with this one the question is not whether what is
finally released will be worth the wait, it's whether it'll ever
actually be released.
You do shoot yourselves in the foot at one point: "The Web should have
used HyperCard as its model, and the web designers made a terrible
mistake by not doing so." Yes, but the web shipped and revolutionised
the world; meanwhile, you lot have shipped stuff that, at best, like
Smalltalk, has inspired revolutions at one remove. Many of the lessons
of your work are decades old and still not widely learned. Contrast
with Steve Jobs, who spun an ounce of invention into a mile of
innovation, by combining a desire for better computing with the
understanding that without taking people with you, your ideas will die
with you. It's a shame and an embarrassment that to the world at large
he's the gold standard.
Please, no more deadline extensions. Whatever you have by the end of
this year will unquestionably be worth releasing, for all its
imperfections. It's high time to stop inventing the future and start
investing it.
The FONC Wiki mention subversion repositories here:
(stable) http://piumarta.com/svn2/idst/tags/idst-376
(trunk) http://piumarta.com/svn2/idst/trunk

I haven't tried yet, but it seems we outsiders can already play with it.
Maybe that'll do as an actual "trailer"?

Loup.
Peter Franta
2012-01-21 15:11:59 UTC
Permalink
VPRI answer to their Government and Private Funders, not those of us who
have the fortune to observe as they go.

It is my understanding the deliverable is not a "product" but "lessons
learned" to go and do it for real! Not ideal for us but then they're not
serving us.

Clearly this doesn't match your expectations. This is frustrating to you
but are your expectations their concern? Where do these expectations come
from?

Popular/Successful <> Better. It all depends on your pov and what you value.

Regards
P
Post by Reuben Thomas
I have just skimmed VPRI's 2011 report; lots of interesting stuff
there. The ironies of a working system that the rest of us can only
view in snapshot form grow ever-stronger: the constant references to
active documents are infuriating. The audience would like to see the
active document, but instead we only get a printout. It's as if,
waiting for a new film, we got only reviews of trailers rather than
the trailers themselves.
The irony is then compounded by a code listing at the end of the
document (hint: a URL is shorter and actually useful; this is not the
1980s).
And then just when we thought it was going to end, the agony
continues: you've pushed the deadline back a year.
I wish you all a joyful and productive 2012; unlike many projects,
it's clear that with this one the question is not whether what is
finally released will be worth the wait, it's whether it'll ever
actually be released.
You do shoot yourselves in the foot at one point: "The Web should have
used HyperCard as its model, and the web designers made a terrible
mistake by not doing so." Yes, but the web shipped and revolutionised
the world; meanwhile, you lot have shipped stuff that, at best, like
Smalltalk, has inspired revolutions at one remove. Many of the lessons
of your work are decades old and still not widely learned. Contrast
with Steve Jobs, who spun an ounce of invention into a mile of
innovation, by combining a desire for better computing with the
understanding that without taking people with you, your ideas will die
with you. It's a shame and an embarrassment that to the world at large
he's the gold standard.
Please, no more deadline extensions. Whatever you have by the end of
this year will unquestionably be worth releasing, for all its
imperfections. It's high time to stop inventing the future and start
investing it.
(stable) http://piumarta.com/svn2/idst/**tags/idst-376<http://piumarta.com/svn2/idst/tags/idst-376>
(trunk) http://piumarta.com/svn2/idst/**trunk<http://piumarta.com/svn2/idst/trunk>
I haven't tried yet, but it seems we outsiders can already play with it.
Maybe that'll do as an actual "trailer"?
Loup.
______________________________**_________________
fonc mailing list
http://vpri.org/mailman/**listinfo/fonc<http://vpri.org/mailman/listinfo/fonc>
BGB
2012-01-21 23:08:27 UTC
Permalink
Post by Peter Franta
VPRI answer to their Government and Private Funders, not those of us
who have the fortune to observe as they go.
It is my understanding the deliverable is not a "product" but "lessons
learned" to go and do it for real! Not ideal for us but then they're
not serving us.
Clearly this doesn't match your expectations. This is frustrating to
you but are your expectations their concern? Where do these
expectations come from?
Popular/Successful <> Better. It all depends on your pov and what you value.
yeah. I am just a random observer as well, and operating in the far more
mundane world of "spewing code and trying to make it all work..." (and
wondering if/when/where I will ever make an income).

there is some amount of "experimentation", but most of this is itself
much more mundane, and not really a central focus (it is more of a "try
various things and see what sticks" experience).


likewise, it can be interesting to gather and try out ideas, and see
what all works.
sometimes, the new thing can be simpler overall, even if initially or
conceptually more complex.


for example, at a basic level, dynamic typing is more complex than
static typing (which can be seen as a type-checked variant of an untyped
system). once things start getting more complex, and one is dealing with
less trivial type semantics, then dynamic typing becomes much simpler
(the main difference is that dynamic typing is not well-supported on
current hardware, leading to complex/awkward type inference in an
attempt to get reasonable performance).

but, then there is a tradeoff:
static types work better in the simple case for finding many types of
errors (even a good type-inference algo with type-validation may, with a
loose type-system, accept bad input and coerce it into a
semantically-valid, but unintended form).

dynamic type-systems work better when the types are less trivial, and/or
may become, well, dynamic (at which point, many good old static
languages lead either to overly complex mechanisms, or a need to "strong
arm" the type-system via lots of casts). even in an otherwise
well-developed static language, there may end up being stupid/arbitrary
restrictions which don't follow from either the implementation or the
conceptual semantics (such as, in several languages, the inability to
pass/convert a generic-container for a subclass into a generic container
for the superclass, ...).

in these cases, it may well make sense to leave it up to the programmer
which semantics they want to use.

for example, in my own language, if a declared type is used, it is
treated more like in a static language (coercing if needed and the types
are compatible, or potentially making an error otherwise).

some other languages treat things more loosely, making me wonder what
really is the point of having type annotations in this case. what is
gained from annotations if the compiler does not enforce the types and
the types don't impact run-time behavior? in terms of optimization, in
this case, they offer little more than what could have been reasonably
gained by type-inference. there only real obvious merit is to serve as a
hint for what type the variable "should" be (if people so happen to be
look at the declarations at the time).

granted, when one has both static and dynamic type-semantics, this is
potentially more complex than either case by itself (although, having
both does allow some potentially interesting semantics, such as the
ability to handle semantics which would likely be slow in a
dynamically-typed language, but which would be overly complicated or not
possible to represent with traditional uses of generics or templates,
such as conditional or "evaluated" types).


but, who knows, maybe there are better ways to deal with all this as well?

how much of the concept of 'types' is itself real, and how much is an
artifact of the existing implementations? how much of existing
programming practice is "real", and how much is essentially cruft?

simple example:
there are fields and there are methods;
sometimes we want to access fields directly, and sometimes to limit such
access.

so, then the public/private notion popped up, with the usual convention
being to keep all fields as private. then, people introduced
getter/setter methods (and there is then a whole lot of "obj.getX()" and
"obj.setX(value)").

then, languages have added properties, so that the extra notation can be
shaved back off (allowing, once again, "obj.X" and "obj.X=value;"), and
have similarly allowed short-hand dummy property declarations, such as
"public double X { get; set; };"

although there are sensible reasons behind all of this, one can also
wonder: "what exactly really is the point?". couldn't one, say, just as
easily (assuming the language handled it gracefully) declare the field
initially as public, and if later it needs to be trapped, simply change
it to private, drop in the property handler, and call it good?...

or, alternatively, if one declares a property without its associated
variable, why not just "infer" that said variable needs to exist and,
y'know, create it?...

granted, some people have asked the same of other sorts of variables,
but the usual issue is that referring to an undeclared variable leaves
it very ambiguous as to what sort of scope the variable should have, or
if it should exist at all.

granted, I personally see little "real" need though for why direct
static visibility should be mandatory, and so I tend to leave open the
possibilities of indirect static visibility and also for dynamic
visibility (this has been disallowed in certain cases in some of my
language designs, but my implementations have thus far not bothered
checking for them). typically, the variable needs to exist "somewhere"
though.

practically, I suspect that the issue is that this case would be fairly
complicated in a traditional early-bound VM, and that a lot of stuff I
have read doesn't really allow for the possibility of there to be a
statically-determinable "gray area" between traditional early-bound
semantics and dynamically-handled late-binding... I guess, maybe it is
because it is seen as something roughly akin to inlining virtual methods
or similar.

sadly, I know of more possible nifty edge-cases than my current
implementation bothers to exploit (most of the time, lacking lexical
visibility, it will just fall back to using dynamic late-binding).


but, there are probably endless such things around I guess.

or such...
Post by Peter Franta
Regards
P
I have just skimmed VPRI's 2011 report; lots of interesting stuff
there. The ironies of a working system that the rest of us can only
view in snapshot form grow ever-stronger: the constant
references to
active documents are infuriating. The audience would like to see the
active document, but instead we only get a printout. It's as if,
waiting for a new film, we got only reviews of trailers rather than
the trailers themselves.
The irony is then compounded by a code listing at the end of the
document (hint: a URL is shorter and actually useful; this is not the
1980s).
And then just when we thought it was going to end, the agony
continues: you've pushed the deadline back a year.
I wish you all a joyful and productive 2012; unlike many projects,
it's clear that with this one the question is not whether what is
finally released will be worth the wait, it's whether it'll ever
actually be released.
You do shoot yourselves in the foot at one point: "The Web should have
used HyperCard as its model, and the web designers made a terrible
mistake by not doing so." Yes, but the web shipped and
revolutionised
the world; meanwhile, you lot have shipped stuff that, at best, like
Smalltalk, has inspired revolutions at one remove. Many of the lessons
of your work are decades old and still not widely learned. Contrast
with Steve Jobs, who spun an ounce of invention into a mile of
innovation, by combining a desire for better computing with the
understanding that without taking people with you, your ideas will die
with you. It's a shame and an embarrassment that to the world at large
he's the gold standard.
Please, no more deadline extensions. Whatever you have by the end of
this year will unquestionably be worth releasing, for all its
imperfections. It's high time to stop inventing the future and start
investing it.
(stable) http://piumarta.com/svn2/idst/tags/idst-376
(trunk) http://piumarta.com/svn2/idst/trunk
I haven't tried yet, but it seems we outsiders can already play with it.
Maybe that'll do as an actual "trailer"?
Loup.
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Peter Franta
2012-01-21 23:28:31 UTC
Permalink
BGB,

I love this quote from you

"sometimes, the new thing can be simpler overall, even if initially or
conceptually more complex."

This resonates with me big time. A lot of effort to build infrastructure
that will make things simpler

P
Post by Peter Franta
VPRI answer to their Government and Private Funders, not those of us who
have the fortune to observe as they go.
It is my understanding the deliverable is not a "product" but "lessons
learned" to go and do it for real! Not ideal for us but then they're not
serving us.
Clearly this doesn't match your expectations. This is frustrating to you
but are your expectations their concern? Where do these expectations come
from?
Popular/Successful <> Better. It all depends on your pov and what you value.
yeah. I am just a random observer as well, and operating in the far more
mundane world of "spewing code and trying to make it all work..." (and
wondering if/when/where I will ever make an income).
there is some amount of "experimentation", but most of this is itself much
more mundane, and not really a central focus (it is more of a "try various
things and see what sticks" experience).
likewise, it can be interesting to gather and try out ideas, and see what
all works.
sometimes, the new thing can be simpler overall, even if initially or
conceptually more complex.
for example, at a basic level, dynamic typing is more complex than static
typing (which can be seen as a type-checked variant of an untyped system).
once things start getting more complex, and one is dealing with less
trivial type semantics, then dynamic typing becomes much simpler (the main
difference is that dynamic typing is not well-supported on current
hardware, leading to complex/awkward type inference in an attempt to get
reasonable performance).
static types work better in the simple case for finding many types of
errors (even a good type-inference algo with type-validation may, with a
loose type-system, accept bad input and coerce it into a
semantically-valid, but unintended form).
dynamic type-systems work better when the types are less trivial, and/or
may become, well, dynamic (at which point, many good old static languages
lead either to overly complex mechanisms, or a need to "strong arm" the
type-system via lots of casts). even in an otherwise well-developed static
language, there may end up being stupid/arbitrary restrictions which don't
follow from either the implementation or the conceptual semantics (such as,
in several languages, the inability to pass/convert a generic-container for
a subclass into a generic container for the superclass, ...).
in these cases, it may well make sense to leave it up to the programmer
which semantics they want to use.
for example, in my own language, if a declared type is used, it is treated
more like in a static language (coercing if needed and the types are
compatible, or potentially making an error otherwise).
some other languages treat things more loosely, making me wonder what
really is the point of having type annotations in this case. what is gained
from annotations if the compiler does not enforce the types and the types
don't impact run-time behavior? in terms of optimization, in this case,
they offer little more than what could have been reasonably gained by
type-inference. there only real obvious merit is to serve as a hint for
what type the variable "should" be (if people so happen to be look at the
declarations at the time).
granted, when one has both static and dynamic type-semantics, this is
potentially more complex than either case by itself (although, having both
does allow some potentially interesting semantics, such as the ability to
handle semantics which would likely be slow in a dynamically-typed
language, but which would be overly complicated or not possible to
represent with traditional uses of generics or templates, such as
conditional or "evaluated" types).
but, who knows, maybe there are better ways to deal with all this as well?
how much of the concept of 'types' is itself real, and how much is an
artifact of the existing implementations? how much of existing programming
practice is "real", and how much is essentially cruft?
there are fields and there are methods;
sometimes we want to access fields directly, and sometimes to limit such
access.
so, then the public/private notion popped up, with the usual convention
being to keep all fields as private. then, people introduced getter/setter
methods (and there is then a whole lot of "obj.getX()" and
"obj.setX(value)").
then, languages have added properties, so that the extra notation can be
shaved back off (allowing, once again, "obj.X" and "obj.X=value;"), and
have similarly allowed short-hand dummy property declarations, such as
"public double X { get; set; };"
although there are sensible reasons behind all of this, one can also
wonder: "what exactly really is the point?". couldn't one, say, just as
easily (assuming the language handled it gracefully) declare the field
initially as public, and if later it needs to be trapped, simply change it
to private, drop in the property handler, and call it good?...
or, alternatively, if one declares a property without its associated
variable, why not just "infer" that said variable needs to exist and,
y'know, create it?...
granted, some people have asked the same of other sorts of variables, but
the usual issue is that referring to an undeclared variable leaves it very
ambiguous as to what sort of scope the variable should have, or if it
should exist at all.
granted, I personally see little "real" need though for why direct static
visibility should be mandatory, and so I tend to leave open the
possibilities of indirect static visibility and also for dynamic visibility
(this has been disallowed in certain cases in some of my language designs,
but my implementations have thus far not bothered checking for them).
typically, the variable needs to exist "somewhere" though.
practically, I suspect that the issue is that this case would be fairly
complicated in a traditional early-bound VM, and that a lot of stuff I have
read doesn't really allow for the possibility of there to be a
statically-determinable "gray area" between traditional early-bound
semantics and dynamically-handled late-binding... I guess, maybe it is
because it is seen as something roughly akin to inlining virtual methods or
similar.
sadly, I know of more possible nifty edge-cases than my current
implementation bothers to exploit (most of the time, lacking lexical
visibility, it will just fall back to using dynamic late-binding).
but, there are probably endless such things around I guess.
or such...
Regards
P
Post by Loup Vaillant
Post by Reuben Thomas
I have just skimmed VPRI's 2011 report; lots of interesting stuff
there. The ironies of a working system that the rest of us can only
view in snapshot form grow ever-stronger: the constant references to
active documents are infuriating. The audience would like to see the
active document, but instead we only get a printout. It's as if,
waiting for a new film, we got only reviews of trailers rather than
the trailers themselves.
The irony is then compounded by a code listing at the end of the
document (hint: a URL is shorter and actually useful; this is not the
1980s).
And then just when we thought it was going to end, the agony
continues: you've pushed the deadline back a year.
I wish you all a joyful and productive 2012; unlike many projects,
it's clear that with this one the question is not whether what is
finally released will be worth the wait, it's whether it'll ever
actually be released.
You do shoot yourselves in the foot at one point: "The Web should have
used HyperCard as its model, and the web designers made a terrible
mistake by not doing so." Yes, but the web shipped and revolutionised
the world; meanwhile, you lot have shipped stuff that, at best, like
Smalltalk, has inspired revolutions at one remove. Many of the lessons
of your work are decades old and still not widely learned. Contrast
with Steve Jobs, who spun an ounce of invention into a mile of
innovation, by combining a desire for better computing with the
understanding that without taking people with you, your ideas will die
with you. It's a shame and an embarrassment that to the world at large
he's the gold standard.
Please, no more deadline extensions. Whatever you have by the end of
this year will unquestionably be worth releasing, for all its
imperfections. It's high time to stop inventing the future and start
investing it.
(stable) http://piumarta.com/svn2/idst/tags/idst-376
(trunk) http://piumarta.com/svn2/idst/trunk
I haven't tried yet, but it seems we outsiders can already play with it.
Maybe that'll do as an actual "trailer"?
Loup.
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
_______________________________________________
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Reuben Thomas
2012-01-21 23:17:58 UTC
Permalink
Post by Peter Franta
VPRI answer to their Government and Private Funders, not those of us who
have the fortune to observe as they go.
Government-funded is publically funded. I'm disappointed that public
funding rules apparently impose nothing more than an annual report on
publically-funded research programs.
Post by Peter Franta
It is my understanding the deliverable is not a "product" but "lessons
learned" to go and do it for real! Not ideal for us but then they're not
serving us.
If they're government-funded they're serving the US taxpayer.
Admittedly I'm not a US citizen, but heck, I contribute to the
revenues of plenty of US corporations, on which they presumably pay
tax. And I said nothing about product, but I'll get to that later.
Post by Peter Franta
Clearly this doesn't match your expectations. This is frustrating to you but
are your expectations their concern? Where do these expectations come from?
It matches my expectations all too well: brilliant research looking
like it will be flushed down history's toilet like so much other
brilliant research before it.
Post by Peter Franta
Popular/Successful <> Better.
Exactly. If it were the same, it wouldn't be necessary to popularise
better research in order to make it successful. Good stuff doesn't
drive out bad by sheer superiority, sadly.

Simply doing good research is not enough. If it were we'd be decades
ahead in computing, and centuries in other fields.
--
http://rrt.sc3d.org
Peter Franta
2012-01-21 23:25:16 UTC
Permalink
Agreed. It is sad, if only there was a way to get the Horse to drink once
it has been led to the water.

It would be great if this sort of stuff went main stream. Lets hope it
leads to implementations that the world can't ignore!

P
Post by Reuben Thomas
Post by Peter Franta
VPRI answer to their Government and Private Funders, not those of us who
have the fortune to observe as they go.
Government-funded is publically funded. I'm disappointed that public
funding rules apparently impose nothing more than an annual report on
publically-funded research programs.
Post by Peter Franta
It is my understanding the deliverable is not a "product" but "lessons
learned" to go and do it for real! Not ideal for us but then they're not
serving us.
If they're government-funded they're serving the US taxpayer.
Admittedly I'm not a US citizen, but heck, I contribute to the
revenues of plenty of US corporations, on which they presumably pay
tax. And I said nothing about product, but I'll get to that later.
Post by Peter Franta
Clearly this doesn't match your expectations. This is frustrating to you
but
Post by Peter Franta
are your expectations their concern? Where do these expectations come
from?
It matches my expectations all too well: brilliant research looking
like it will be flushed down history's toilet like so much other
brilliant research before it.
Post by Peter Franta
Popular/Successful <> Better.
Exactly. If it were the same, it wouldn't be necessary to popularise
better research in order to make it successful. Good stuff doesn't
drive out bad by sheer superiority, sadly.
Simply doing good research is not enough. If it were we'd be decades
ahead in computing, and centuries in other fields.
--
http://rrt.sc3d.org
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Robin Barooah
2012-01-21 23:42:58 UTC
Permalink
Hi,

It seems to me that if this project has even 1/10 of the impact that the earlier work had, then it will still be one of the most significant contributions to the state of the art.

-Robin Barooah
Agreed. It is sad, if only there was a way to get the Horse to drink once it has been led to the water.
It would be great if this sort of stuff went main stream. Lets hope it leads to implementations that the world can't ignore!
P
Post by Peter Franta
VPRI answer to their Government and Private Funders, not those of us who
have the fortune to observe as they go.
Government-funded is publically funded. I'm disappointed that public
funding rules apparently impose nothing more than an annual report on
publically-funded research programs.
Post by Peter Franta
It is my understanding the deliverable is not a "product" but "lessons
learned" to go and do it for real! Not ideal for us but then they're not
serving us.
If they're government-funded they're serving the US taxpayer.
Admittedly I'm not a US citizen, but heck, I contribute to the
revenues of plenty of US corporations, on which they presumably pay
tax. And I said nothing about product, but I'll get to that later.
Post by Peter Franta
Clearly this doesn't match your expectations. This is frustrating to you but
are your expectations their concern? Where do these expectations come from?
It matches my expectations all too well: brilliant research looking
like it will be flushed down history's toilet like so much other
brilliant research before it.
Post by Peter Franta
Popular/Successful <> Better.
Exactly. If it were the same, it wouldn't be necessary to popularise
better research in order to make it successful. Good stuff doesn't
drive out bad by sheer superiority, sadly.
Simply doing good research is not enough. If it were we'd be decades
ahead in computing, and centuries in other fields.
--
http://rrt.sc3d.org
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Reuben Thomas
2012-01-21 23:45:50 UTC
Permalink
Post by Robin Barooah
Hi,
It seems to me that if this project has even 1/10 of the impact that the
earlier work had, then it will still be one of the most significant
contributions to the state of the art.
True, but the earlier work had far less than 1/10th of the impact it
deserved, and I fear that'll happen again.
--
http://rrt.sc3d.org
Robin Barooah
2012-01-21 23:56:45 UTC
Permalink
Whilst I share the feeling that a lot more should have been possible, the earlier work informed or transformed almost all of what personal computing is today, and arguably, the embodiments that are closest to the original are proving themselves to be most successful.

With hindsight, I don't think it's obvious that different tactics would have changed the outcome. I would be interested to hear how you think greater impact could have been achieved the first time around.
Post by Reuben Thomas
Post by Robin Barooah
Hi,
It seems to me that if this project has even 1/10 of the impact that the
earlier work had, then it will still be one of the most significant
contributions to the state of the art.
True, but the earlier work had far less than 1/10th of the impact it
deserved, and I fear that'll happen again.
--
http://rrt.sc3d.org
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Reuben Thomas
2012-01-22 21:56:03 UTC
Permalink
Post by Robin Barooah
Whilst I share the feeling that a lot more should have been possible, the earlier work informed or transformed almost all of what personal computing is today, and arguably, the
embodiments that are closest to the original are proving themselves to be most successful.
And how faint the influence. We have systems that are (increasingly)
locked down, (increasingly) fragmented and (increasingly) complex. The
great gifts of introspection, re-use, sharing and simplicity are
buried somewhere underneath. Yes, without the earlier work of those at
VPRI, things would be less good. But that's small recompense.
Post by Robin Barooah
With hindsight, I don't think it's obvious that different tactics would have changed the outcome.
Nor do I have any idea how it could have been done better.
Post by Robin Barooah
 I would be interested to hear how you think greater impact could have been achieved the first time around.
No idea. You'll notice that pretty much all my recommendations depend
on current technology.
--
http://rrt.sc3d.org
Casey Ransberger
2012-01-21 10:56:09 UTC
Permalink
Below.
Post by Reuben Thomas
I have just skimmed VPRI's 2011 report; lots of interesting stuff
there. The ironies of a working system that the rest of us can only
view in snapshot form grow ever-stronger: the constant references to
active documents are infuriating. The audience would like to see the
active document, but instead we only get a printout. It's as if,
waiting for a new film, we got only reviews of trailers rather than
the trailers themselves.
The irony is then compounded by a code listing at the end of the
document (hint: a URL is shorter and actually useful; this is not the
1980s).
And then just when we thought it was going to end, the agony
continues: you've pushed the deadline back a year.
I wish you all a joyful and productive 2012; unlike many projects,
it's clear that with this one the question is not whether what is
finally released will be worth the wait, it's whether it'll ever
actually be released.
You do shoot yourselves in the foot at one point: "The Web should have
used HyperCard as its model, and the web designers made a terrible
mistake by not doing so." Yes, but the web shipped and revolutionised
the world; meanwhile, you lot have shipped stuff that, at best, like
Smalltalk, has inspired revolutions at one remove. Many of the lessons
of your work are decades old and still not widely learned. Contrast
with Steve Jobs, who spun an ounce of invention into a mile of
innovation, by combining a desire for better computing with the
understanding that without taking people with you, your ideas will die
with you. It's a shame and an embarrassment that to the world at large
he's the gold standard.
Please, no more deadline extensions. Whatever you have by the end of
this year will unquestionably be worth releasing, for all its
imperfections. It's high time to stop inventing the future and start
investing it.
--
http://rrt.sc3d.org
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Thanks for your passionate words. I hope you'll forgive my natural predisposition to supply a counter-argument. It turns out that I can barely help it, it's just my nature:)

Here's a project where we have some people trying to do something that a lot of people have wanted to try, but haven't gotten around to. This is something which is in a sense completely new; yes, most of us work in several languages on a daily basis. But are these the right set of languages to get our work done most efficiently? Is there a better set?

And: while artists in other fields were able to stand on the shoulders of giants, programmers, generally speaking (and this is my own feeling,) have to stand on a pile of dogshit.

While we could criticize this work as shipping late, we might also note that most software projects ship both late and *over budget.*

Here's a project, even a *research* project, that's shipping late strictly because in four years, these people were able to come in so far under budget as to buy themselves another year of invention.

Tom West called it "pinball," you work your ass off, you do a good job, and if you're lucky, they let you do it again. One of the things he was famous for was "pinching his quarters," because the real game wasn't what he was doing then, it was about what he was doing *next.*

West was banking everything he had to get a free ball.

I'd like to express my unrepentant, unapologetic congratulations to *everyone* who was a part of making this unique, fantastic inquiry last a full year longer than we thought it would, and for involving the unwashed industrial masses (read: me) in the conversation.

This continues to enrich my life and I'm damned happy to see it go on another year.


Thank you.

Excelsior!


Casey Ransberger
Julian Leviston
2012-01-21 11:47:11 UTC
Permalink
Post by Casey Ransberger
Thanks for your passionate words. I hope you'll forgive my natural predisposition to supply a counter-argument. It turns out that I can barely help it, it's just my nature:)
Here's a project where we have some people trying to do something that a lot of people have wanted to try, but haven't gotten around to. This is something which is in a sense completely new; yes, most of us work in several languages on a daily basis. But are these the right set of languages to get our work done most efficiently? Is there a better set?
And: while artists in other fields were able to stand on the shoulders of giants, programmers, generally speaking (and this is my own feeling,) have to stand on a pile of dogshit.
While we could criticize this work as shipping late, we might also note that most software projects ship both late and *over budget.*
Here's a project, even a *research* project, that's shipping late strictly because in four years, these people were able to come in so far under budget as to buy themselves another year of invention.
Tom West called it "pinball," you work your ass off, you do a good job, and if you're lucky, they let you do it again. One of the things he was famous for was "pinching his quarters," because the real game wasn't what he was doing then, it was about what he was doing *next.*
West was banking everything he had to get a free ball.
I'd like to express my unrepentant, unapologetic congratulations to *everyone* who was a part of making this unique, fantastic inquiry last a full year longer than we thought it would, and for involving the unwashed industrial masses (read: me) in the conversation.
This continues to enrich my life and I'm damned happy to see it go on another year.
Thank you.
Excelsior!
Casey Ransberger
I'm in agreement, Casey. I didn't see the project is "shipping late", but rather "under-budget so able to extend another year". I was actually quite happy to see it go on a further year.

Besides, it's not as though the products of the project haven't gone unannounced, unreleased or are in any way secret - quite the opposite. Where they have been finished as much as to be useful, they've been released as experimental prototypes or even working systems.

Sure, Frank isn't "out" yet... but as far as I understand it even Frank isn't the final "product", but rather part of a precursor to a more polished set of ideas which exist as simples and beautiful integrated pieces of "executable art". (Just as Smalltalk and Self were, in my opinion).

This kind of work is not the same as "normal" projects that proceed in a linear fashion IMHO. Truly innovative works never proceed in time in the "normal" way, as far as I am able to see.

I hope I haven't caused any offence by writing this. I just feel - like you, Casey - that something needs to be contributed to this discussion in the contrasting position. I'll leave it at that.

Much Love,
Julian
Shawn Morel
2012-01-21 18:23:32 UTC
Permalink
Reuben,

Your response is enlightening in many ways. I think it re-inforces for me how computer science is really more of an "automation pop culture." As a society, we've become engrossed with product yet we spend only a few minutes at most usually playing around with the artefacts produced - forming surface judgements and rarely if ever deconstructing them in order to understand their inner environment. As an academic discipline, I fear we've become entrenched in dogma around the accidental complexities we now consider "core" to our understanding of a problem - a running executable, bits of ASCII sigels organized in "files".

Every year, a thread similar to this pops up and I've never really known how to respond. Now, I'd like to propose that if we are indeed to be considered a "science of computation" then we should do as other scientific disciplines and try to reproduce the findings.

After all, given that more or less robust implementations of OMeta exist, if I truly understand, for example, "nothing" the low level machine language, then I should be able to spend an afternoon with OMeta and this year's report's appendix and have a crude "nothing" interpreter. The same could be said about most parts of the system. If I can't reproduce this work then either:

- conceptual bits are missing
- I've found a better way to do it
- I don't really yet understand the concept

In all cases, sharing THAT experience here is more constructive for everyone. Build you're own interpretation of nothing or build a set of Nile programs as you understand Nile to work and put it on git hub.

I think the one thing that I might like to see is a screen capture of a live essay to make sure my understanding is in line. But then, I can build my own live essay in HTML / JS or something else.

I truly believe that the goals of VPRI are better served by NOT handing out executable forms of their findings but rather disseminating the concepts of "executable Maths"

shawn
Post by Reuben Thomas
I have just skimmed VPRI's 2011 report; lots of interesting stuff
there. The ironies of a working system that the rest of us can only
view in snapshot form grow ever-stronger: the constant references to
active documents are infuriating. The audience would like to see the
active document, but instead we only get a printout. It's as if,
waiting for a new film, we got only reviews of trailers rather than
the trailers themselves.
The irony is then compounded by a code listing at the end of the
document (hint: a URL is shorter and actually useful; this is not the
1980s).
And then just when we thought it was going to end, the agony
continues: you've pushed the deadline back a year.
I wish you all a joyful and productive 2012; unlike many projects,
it's clear that with this one the question is not whether what is
finally released will be worth the wait, it's whether it'll ever
actually be released.
You do shoot yourselves in the foot at one point: "The Web should have
used HyperCard as its model, and the web designers made a terrible
mistake by not doing so." Yes, but the web shipped and revolutionised
the world; meanwhile, you lot have shipped stuff that, at best, like
Smalltalk, has inspired revolutions at one remove. Many of the lessons
of your work are decades old and still not widely learned. Contrast
with Steve Jobs, who spun an ounce of invention into a mile of
innovation, by combining a desire for better computing with the
understanding that without taking people with you, your ideas will die
with you. It's a shame and an embarrassment that to the world at large
he's the gold standard.
Please, no more deadline extensions. Whatever you have by the end of
this year will unquestionably be worth releasing, for all its
imperfections. It's high time to stop inventing the future and start
investing it.
--
http://rrt.sc3d.org
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Reuben Thomas
2012-01-21 23:53:20 UTC
Permalink
Post by Shawn Morel
Your response is enlightening in many ways.
Yours is deeply depressing, as it shows just how resilient the ivory
tower researcher mentality still is.
Post by Shawn Morel
After all, given that more or less robust implementations
of OMeta exist, if I truly understand, for example,
"nothing" the low level machine language, then I should
be able to spend an afternoon with OMeta and this year's
report's appendix and have a crude "nothing" interpreter.
We're not all researchers.

Only a few people are ever going to understand these ideas well enough
to reimplement them. But they are not the only people that count:
funders, entrepreneurs, and users have to be convinced to some degree
of the value of the ideas too, or they will not flourish. Just look at
all the good ideas in computer science that are still ignored decades
after they were dreamed up. Many of them have come from the
researchers at VPRI.

In the past, computer scientists were stuck with publishing papers,
like most scientists still are. Other researchers could try to
reproduce their results; some might push their ideas into industry,
and eventually we'd get products. But now, uniquely among the
sciences, we can directly publish our experiments, so that anyone can
try them. Keen end-users can play with them, other researchers can
take them apart to find out how they work, developers can use them
directly.

This gives more and complementary routes to a wide range of degrees of
understanding, from simply thinking "that's cool" to the traditional
scientific reproduction of results.

Merely convincing other researchers is not enough: at the very least,
VPRI's constituency is developers; to the extent that it affects UIs,
it extends to users too. There are plenty of important ideas in
computer science and software engineering that are gathering dust in
the annals of research because the relevant group has never warmed to
them.

I see two main reactions from the researchers themselves:

1. We don't want to be distracted.

Well, don't be. Publish all your code on github or a similar service,
and take no responsibility for it, don't answer any issues, reply to
any comments, and feel free to rewind and replace the repository. Even
so, people will love playing with the code you put up, will fork it,
and will do interesting work with it.

2. The stuff we have is just temporary. People should wait for the
finished version.

I'll believe that when I see a finished release. Most academic
projects never reach 1.0. You do both your intermediate work and your
audience a disservice by not releasing the intermediate work: even if
it really is as transient and unrelated to the final result as you
claim, it'll help to build interest in your work, which deserves and
needs that, and help your audience to follow you on your journey.
Teaching of most subjects tends to recapitulate their historical
development until they become mature; hence, throwing out early
research prototypes facilitates this natural (and, for the
researchers, zero-effort) didactic path.
Post by Shawn Morel
I think it re-inforces for me how computer science is
really more of an "automation pop culture."
As a society, we've become engrossed with product
You underestimate the importance of both pop culture and products to
research. Research does not grow and prosper in some abstract academic
noosphere, but in a corner of contemporary culture. Most people only
ever get as far as pop culture and products. Researchers that get this
tend to be more successful than those that don't. I'd like these
particular researchers to be more successful (and in particular, more
successful than they've been in the past) at promulgating their ideas,
which is why I'm trying to encourage them to exploit easy ways to
engage their audience.
--
http://rrt.sc3d.org
BGB
2012-01-22 02:26:27 UTC
Permalink
Post by Shawn Morel
Reuben,
Your response is enlightening in many ways. I think it re-inforces for me how computer science is really more of an "automation pop culture." As a society, we've become engrossed with product yet we spend only a few minutes at most usually playing around with the artefacts produced - forming surface judgements and rarely if ever deconstructing them in order to understand their inner environment. As an academic discipline, I fear we've become entrenched in dogma around the accidental complexities we now consider "core" to our understanding of a problem - a running executable, bits of ASCII sigels organized in "files".
dunno if you are objecting just to the notion of executables, or to
files in general.

I suspect in both cases though, it may be due to some extent on a
user/psychological need for humans to be like "there is something, and
there it is".

users then need to have a sense of files existing, and to be able to
interact with them (copy them around, ...). otherwise, there would
likely need to be something to take on a similar role. if it were merely
"a sea of data", some people might be happy, but others would be
somewhat less happy (the OS and File-System is often becoming enough of
such a "sea of data" as it already is).

to some extent, the program binary is also, similarly, a representation
of the "thing" that is the program (although, some naive users gain the
misconception that it is the icon which "is" the app, leading sometimes
to people copying the icon onto a thumb-drive or similar, going onto
another system, and having little idea why their "application" no longer
works on the new system).

but, like the FS, applications have increasingly started to become a
"sea of data", as the program becomes a whole directory of files, or has
its contents spread all over within the OS's directories.

hence, some systems have made use of an "executable" which is really an
executable read-only archive or database (JVM and .NET).

a few systems have gone further still, having the app be essentially
distributed as a self-contained virtual file-system. Steam does this,
with the program being itself a self-contained read-only VFS, but
allowing the application to write into its VFS (the actual file data is
stored separately in this case).

I have even encountered a few applications before distributed as VMware
images (with an entire OS, typically FreeDOS or a stripped-down/hacked
Win9x or WinXP, bundled as a part of the "app"), granted, in the cases
where I have encountered this, I have been left to doubt both the
legality and competence of the developers (just how poorly made and
hacked-together crap does an app need to be before it justifies shipping
an entire OS with the app in order to run it?... meanwhile does MS
necessarily approve of Win9x or WinXP being used as a redistributable
run-time for said app?...).

granted, at least if Win98 blue-screens in VMware, it is a little less
annoying than on real HW, but then one can be left to wonder if it just
doesn't run well in an emulator, or if it really was that unreliable?...
(granted, I do sort of remember Win98 being one of those OS's I thought
was too terrible to really bother actually using, me instead mostly
running Linux and later Win2K, before later migrating back mostly into
Windows land just prior to the release of WinXP...).

nevermind unverified reports that WinME was worse than Win98 (with both
poor reliability and also software compatibility problems...).


but, anyways, "application as a runnable VFS" is possibly an idea which
could be worth possible exploration. now, whether or not it is
allowed/possible for a user to extract the contents of such an
application, is a more open issue (as-is whether or not the VFS is
read-only or self-modifying).

ideally, if it could also be done better than with the Valve/Steam GCF
system is more open (ideally... it could be done without manual
"LoadLibrary()" / "GetProcAddress()" and API-fetching hacks, or an
otherwise overly constrained/annoying bootstrap process...). if one were
still using native binaries, a probable strategy could be to compile the
program as native DLLs or SO's, and have the launcher potentially
incorporate a customized loader (launcher opens the VFS, looks for
appropriate binaries for the architecture, loads them into the address
space, and executes them).

one "could" make the VFS be an EXE, but my personal testing shows this
to be pointless on modern Windows (if executed directly, the associated
program will be invoked, including with any file extensions).

say, image exists "foobar.myvm", and is called as "foobar.myvm Arg0
Arg1", apparently the VM will be called with a commandline something like:
"C:\Program Files (x86)\MyVM\myvm.exe" "E:\...\foobar.myvm" Arg0 Arg1

(note that, if launching via "WinMain()", it will be a single big string
as-above, but if by "main()" it will of course be split into the
relevant entries in "argv[]").

taken further, one doesn't need to type the file-extension (in the CMD
shell) if the extension is present in the "PATHEXT" environment variable.

I could be wrong somewhere, but this the behavior I saw in my own tests.

for Linux, I am aware also of the "shebang" / "hash-bang" system, which
AFAICT "should" work for binary files (provided it looks something like
"#!/usr/local/bin/whatever\n\0"), but I am not necessarily sure if this
is "generally portable" (seemed to work on Cygwin and Linux at least).
there is apparently also the "binfmt_misc" mechanism on Linux.

I am less certain which strategy would be preferable though given a
binary format capable of using either strategy (they may be mutually
exclusive though, as the use of a shebang would render the magic no
longer being necessarily at a fixed-address, but granted there is always
still the file extension...).


then again, all of this may itself be a result of the mountain of
complexity and cruft that is, anymore, taken for granted. like, "in a
better tomorrow" there will not be a need for ugly application-loading
hacks?...

(nevermind that my "magical program binary format" is essentially just a
hacked variation of the Quake1 "WAD2" format, with some stupid 16-byte
alignment restrictions for sake allowing space to be allocated using a
bitmap...).
Post by Shawn Morel
Every year, a thread similar to this pops up and I've never really known how to respond. Now, I'd like to propose that if we are indeed to be considered a "science of computation" then we should do as other scientific disciplines and try to reproduce the findings.
interesting idea...
Post by Shawn Morel
- conceptual bits are missing
- I've found a better way to do it
- I don't really yet understand the concept
In all cases, sharing THAT experience here is more constructive for everyone. Build you're own interpretation of nothing or build a set of Nile programs as you understand Nile to work and put it on git hub.
also a cool idea.

much like a generalization of "hey, here are some random files in a
random file format, how easily can I make this stuff work in my stuff?..."

if things don't map well, or would likely require a bunch of
architectural hacks to make it work, maybe there is a bit of problem
somewhere?...


although not particularly small, after implementing Java ByteCode
support for my VM stuff, I had looked at adding .NET MSIL/CIL support.
at the time, it looked like a nasty-enough problem that I had
half-considered incorporating a dedicated CLI implementation ("Dot Net
Anywhere") and daisy-chaining the thing.

granted, this was a few years ago, and I have since figured out the
concept of threaded-code and how to (albeit inefficiently) map a
table-driven structure onto a hierarchical database (the .NET CLR uses a
table-driven / RDBMS-like database structure, whereas my VM uses a
hierarchical database more similar to the Windows Registry or similar...).

I could probably manage to make it work if I wanted, but I am not
certain there is a whole lot of point (I would not gain much over what I
can gain either by daisy-chaining to .NET or Mono, or by just using
Java, all of which were concluded to be "generally deficient" for my uses).
Post by Shawn Morel
I think the one thing that I might like to see is a screen capture of a live essay to make sure my understanding is in line. But then, I can build my own live essay in HTML / JS or something else.
I truly believe that the goals of VPRI are better served by NOT handing out executable forms of their findings but rather disseminating the concepts of "executable Maths"
very possibly...

if the goal is looking for "the theory", it may be preferable to avoid
being tied down to a particular/concrete implementation (in which case,
people might expect the designer/creator to actually *maintain* the
thing, rather than merely going off and researching other possibilities).

admittedly, I am not as personally driven to avoid a concrete
implementation, but at the same time, I am not particularly much doing
research either... (but, yeah, I do understand wanting to avoid being
"chained down" as, after all, who knows what things tomorrow may
hold?... so a person can sit around "doing their own thing", ...).

like, for example, if a musician wanted to pursue various musical forms.
say, for example: a dubstep backbeat combined with rap-style lyrics sung
using a death-metal voice or similar, without "the man" (producers, ...)
demanding all the time that they get a new album together (or that their
fans and "the man" expect them to stay with their existing sound and
theme), and if they just gave them something which was like "and so
wub-wub-wub, goes the sub-sub-sub, as the lights go blim-blim-blim, as
shorty goes rub-run-run, on my hub-hub-hub, as my rims go
spin-spin-spin" or something... (all sung in deep growls and roars), at
which point maybe the producers would be very unhappy (say, if he was
hired on to be part of a tween-pop boy-band, and adolescent females may
respond poorly to bass-filled "wubbing growl-rap", or something...).


or such...
Post by Shawn Morel
shawn
Post by Reuben Thomas
I have just skimmed VPRI's 2011 report; lots of interesting stuff
there. The ironies of a working system that the rest of us can only
view in snapshot form grow ever-stronger: the constant references to
active documents are infuriating. The audience would like to see the
active document, but instead we only get a printout. It's as if,
waiting for a new film, we got only reviews of trailers rather than
the trailers themselves.
The irony is then compounded by a code listing at the end of the
document (hint: a URL is shorter and actually useful; this is not the
1980s).
And then just when we thought it was going to end, the agony
continues: you've pushed the deadline back a year.
I wish you all a joyful and productive 2012; unlike many projects,
it's clear that with this one the question is not whether what is
finally released will be worth the wait, it's whether it'll ever
actually be released.
You do shoot yourselves in the foot at one point: "The Web should have
used HyperCard as its model, and the web designers made a terrible
mistake by not doing so." Yes, but the web shipped and revolutionised
the world; meanwhile, you lot have shipped stuff that, at best, like
Smalltalk, has inspired revolutions at one remove. Many of the lessons
of your work are decades old and still not widely learned. Contrast
with Steve Jobs, who spun an ounce of invention into a mile of
innovation, by combining a desire for better computing with the
understanding that without taking people with you, your ideas will die
with you. It's a shame and an embarrassment that to the world at large
he's the gold standard.
Please, no more deadline extensions. Whatever you have by the end of
this year will unquestionably be worth releasing, for all its
imperfections. It's high time to stop inventing the future and start
investing it.
--
http://rrt.sc3d.org
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Casey Ransberger
2012-01-22 21:26:54 UTC
Permalink
Below.
like, for example, if a musician wanted to pursue various musical forms. say, for example: a dubstep backbeat combined with rap-style lyrics sung using a death-metal voice or similar, without "the man" (producers, ...) demanding all the time that they get a new album together (or that their fans and "the man" expect them to stay with their existing sound and theme), and if they just gave them something which was like "and so wub-wub-wub, goes the sub-sub-sub, as the lights go blim-blim-blim, as shorty goes rub-run-run, on my hub-hub-hub, as my rims go spin-spin-spin" or something... (all sung in deep growls and roars), at which point maybe the producers would be very unhappy (say, if he was hired on to be part of a tween-pop boy-band, and adolescent females may respond poorly to bass-filled "wubbing growl-rap", or something...).
or such...
This is probably the raddest metaphor that I have ever seen on a mailing list.

BGB FTW!

P.S.

If you want to get this song out the door, I'm totally in. Dubsteprapmetal might be the next big thing. I can do everything except the drums. We should write an elegant language for expressing musical score in OMeta and use a simulated orchestra!
Reuben Thomas
2012-01-22 21:51:39 UTC
Permalink
Post by Casey Ransberger
Below.
Post by BGB
like, for example, if a musician wanted to pursue various musical forms.
say, for example: a dubstep backbeat combined with rap-style lyrics sung
using a death-metal voice or similar, without "the man" (producers, ...)
demanding all the time that they get a new album together
Only art is not science: it doesn't have pieces you can take apart and
reuse in the same way (technique does).

So it's not an analogy that works.

(I did a PhD in computer science, and I make my living as a singer.)
--
http://rrt.sc3d.org
Dion Stewart
2012-01-23 00:30:04 UTC
Permalink
Is there a hard line between science and art?

I lean towards Richard Gabriel's and Kevin Sullivan's views on this one.

"How do artists and scientist work? The same."

<http://dreamsongs.com/Files/BetterScienceThroughArt.pdf>


" How do artists and scientists work? The same
Post by Reuben Thomas
Post by Casey Ransberger
Below.
Post by BGB
like, for example, if a musician wanted to pursue various musical forms.
say, for example: a dubstep backbeat combined with rap-style lyrics sung
using a death-metal voice or similar, without "the man" (producers, ...)
demanding all the time that they get a new album together
Only art is not science: it doesn't have pieces you can take apart and
reuse in the same way (technique does).
So it's not an analogy that works.
(I did a PhD in computer science, and I make my living as a singer.)
--
http://rrt.sc3d.org
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
BGB
2012-01-23 00:50:28 UTC
Permalink
Post by Dion Stewart
Is there a hard line between science and art?
I lean towards Richard Gabriel's and Kevin Sullivan's views on this one.
"How do artists and scientist work? The same."
<http://dreamsongs.com/Files/BetterScienceThroughArt.pdf>
I was actually going to argue something vaguely similar, but was more
busy with writing something else (a "professional musician" may not be
necessarily that much different from a scientist or engineer, and a "mad
scientist" may not necessarily be too much different from traditional
notions of an artist).
Post by Dion Stewart
" How do artists and scientists work? The same
Post by Reuben Thomas
Post by Casey Ransberger
Below.
Post by BGB
like, for example, if a musician wanted to pursue various musical forms.
say, for example: a dubstep backbeat combined with rap-style lyrics sung
using a death-metal voice or similar, without "the man" (producers, ...)
demanding all the time that they get a new album together
Only art is not science: it doesn't have pieces you can take apart and
reuse in the same way (technique does).
So it's not an analogy that works.
(I did a PhD in computer science, and I make my living as a singer.)
--
http://rrt.sc3d.org
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Reuben Thomas
2012-01-23 11:50:40 UTC
Permalink
Post by Dion Stewart
Is there a hard line between science and art?
No.
Post by Dion Stewart
"How do artists and scientist work? The same."
David Girle
2012-01-23 15:23:12 UTC
Permalink
VPRI folks appear to read posts on this forum, which takes time.
I look at the traffic on this thread and am reminded of another on
graphics that Dan Amelang took the time to make a lengthy, detailed
response to ... which to me distilled to, if you have an alternative
concept, deliver it in code and then we can discuss.
Two people have posted that the Maru code at the end of the 2011
report does not run on the publicly available Maru engine? So how
much time is being invested by this community in what is delivered?
May I respectfully suggest that if we want more regular postings from
VPRI, we improve the signal to noise ratio on this forum.

david
Post by Dion Stewart
Is there a hard line between science and art?
No.
Post by Dion Stewart
"How do artists and scientist work? The same."
Bruce M. Axtens
2012-01-23 15:36:26 UTC
Permalink
G'day

I've been trying to get the svn version of idst to compile on MinGW. I
starts off well but after a while gets to a point where it starts
creating hundreds of instances of sh.exe, bringing my well specced
Toshiba laptop to its knees.

You're probably expecting a screenshot or cut and paste of the console
output, but I'm a little afraid to run the build again as it takes me
ages to recover: usually I have to hold down the power button till the
machine does a hard reset! Even doing a 'make clean' took an inordinate
amount of time.

Am I hoping for too much? Should I finish installing Debian in a VM and
attempt a build in there?

Kind regards,
Bruce M. Axtens.
Ian Piumarta
2012-01-26 02:42:35 UTC
Permalink
Post by David Girle
Two people have posted that the Maru code at the end of the 2011
report does not run on the publicly available Maru engine?
I have been sending source code individually to people who expressed an interest in running the recently-published Maru examples. This does not scale very well, so I have added a snapshot of the current version to the original Maru page at:

http://piumarta.com/software/maru

See README.examples for some starting points (including the FFT example).

There is not enough discussion on the above web page about the differences between the versions or the reasons for the divergence, but at least the published examples can now be run independently. Sorry it took me so long to get around to this.

Regards,
Ian
David Harris
2012-01-26 03:24:57 UTC
Permalink
Thanks! Better late, then never!
David
Post by Ian Piumarta
Post by David Girle
Two people have posted that the Maru code at the end of the 2011
report does not run on the publicly available Maru engine?
I have been sending source code individually to people who expressed an
interest in running the recently-published Maru examples. This does not
scale very well, so I have added a snapshot of the current version to the
http://piumarta.com/software/maru
See README.examples for some starting points (including the FFT example).
There is not enough discussion on the above web page about the differences
between the versions or the reasons for the divergence, but at least the
published examples can now be run independently. Sorry it took me so long
to get around to this.
Regards,
Ian
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Reuben Thomas
2012-01-26 10:00:03 UTC
Permalink
Post by Ian Piumarta
I have been sending source code individually to people
Thanks very much for finally posting the code, but what on earth were
you thinking sending it to people individually? Is there some reason
it can't be in the idst repo or another, where the relevant version
can just be tagged or branched?

This is a classic example of where doing the right thing (which you
already know how to do!) would directly save you time, not just those
of us interested in your work. I for one would certainly rather you
were spending it writing code than emailing code to other people.
--
http://rrt.sc3d.org
Gilbert Röhrbein
2012-02-03 12:51:27 UTC
Permalink
Post by Reuben Thomas
Post by Ian Piumarta
I have been sending source code individually to people
Thanks very much for finally posting the code, but what on earth were
you thinking sending it to people individually?
Thanks for sharing code, yes. But please put it in some online code
repository. This would make it easier for us all, i think. What's your
opinion on this, Ian?

Gilbert
Casey Ransberger
2012-01-23 01:48:34 UTC
Permalink
Below.
Post by Reuben Thomas
Post by Casey Ransberger
Below.
Post by BGB
like, for example, if a musician wanted to pursue various musical forms.
say, for example: a dubstep backbeat combined with rap-style lyrics sung
using a death-metal voice or similar, without "the man" (producers, ...)
demanding all the time that they get a new album together
Only art is not science: it doesn't have pieces you can take apart and
reuse in the same way (technique does).
So it's not an analogy that works.
(I did a PhD in computer science, and I make my living as a singer.)
--
http://rrt.sc3d.org
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Music has parts you can disassemble and reuse. We do it all the time. I appoigized to my father for stealing and warping his song, when I sent him a song he wrote about me when I was a kid that I never liked, with every lyrical assertion reversed.

I was afraid it would upset him. His reply was, "You've done nothing wrong. This is the folk process."

Whatever the hell that means, anyway I spiked my mohawk and went to work.

I can take a single measure of your music and produce variations based on it. I can take a single line from a four part harmony you've written, transpose it, change the key signature, even change the mode, and hand it back to you with a string orchestra.

We're way the hell off topic here, but I have to admit being stunned to hear that a musician cannot fathom taking a piece of music apart and reusing parts of it. How many guitar songs use G-D-C for the chord progression? Have you ever heard of theme and variations?

Your argument about art doesn't stand.

C
Julian Leviston
2012-01-23 02:15:44 UTC
Permalink
I agree wholeheartedly with you Casey...

There are such parallels with structure here... it's just vibrational structure - patterns. There are SO MANY parallels here (and other places) that sometimes my heads hurts with the feel of all of it.

It's at once intensely beautiful and painful because there's so little understanding around it.

Love,
Julian
Post by Casey Ransberger
Below.
Post by Reuben Thomas
Post by Casey Ransberger
Below.
Post by BGB
like, for example, if a musician wanted to pursue various musical forms.
say, for example: a dubstep backbeat combined with rap-style lyrics sung
using a death-metal voice or similar, without "the man" (producers, ...)
demanding all the time that they get a new album together
Only art is not science: it doesn't have pieces you can take apart and
reuse in the same way (technique does).
So it's not an analogy that works.
(I did a PhD in computer science, and I make my living as a singer.)
--
http://rrt.sc3d.org
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Music has parts you can disassemble and reuse. We do it all the time. I appoigized to my father for stealing and warping his song, when I sent him a song he wrote about me when I was a kid that I never liked, with every lyrical assertion reversed.
I was afraid it would upset him. His reply was, "You've done nothing wrong. This is the folk process."
Whatever the hell that means, anyway I spiked my mohawk and went to work.
I can take a single measure of your music and produce variations based on it. I can take a single line from a four part harmony you've written, transpose it, change the key signature, even change the mode, and hand it back to you with a string orchestra.
We're way the hell off topic here, but I have to admit being stunned to hear that a musician cannot fathom taking a piece of music apart and reusing parts of it. How many guitar songs use G-D-C for the chord progression? Have you ever heard of theme and variations?
Your argument about art doesn't stand.
C
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Julian Leviston
2012-01-23 00:11:29 UTC
Permalink
Post by Casey Ransberger
Below.
like, for example, if a musician wanted to pursue various musical forms. say, for example: a dubstep backbeat combined with rap-style lyrics sung using a death-metal voice or similar, without "the man" (producers, ...) demanding all the time that they get a new album together (or that their fans and "the man" expect them to stay with their existing sound and theme), and if they just gave them something which was like "and so wub-wub-wub, goes the sub-sub-sub, as the lights go blim-blim-blim, as shorty goes rub-run-run, on my hub-hub-hub, as my rims go spin-spin-spin" or something... (all sung in deep growls and roars), at which point maybe the producers would be very unhappy (say, if he was hired on to be part of a tween-pop boy-band, and adolescent females may respond poorly to bass-filled "wubbing growl-rap", or something...).
or such...
This is probably the raddest metaphor that I have ever seen on a mailing list.
BGB FTW!
P.S.
If you want to get this song out the door, I'm totally in. Dubsteprapmetal might be the next big thing. I can do everything except the drums. We should write an elegant language for expressing musical score in OMeta and use a simulated orchestra!
Oh come on, Dub Step Rap Metal has been done before... Korn is basically what that is... Just because you're not CALLING it dubstep doesn't mean it doesn't have the dubstep feel.

Interesting, also, that you chose dubstep here, because that's a genre that's been basically "raped" in a similar way to what has been done to the ideas in object-orientism in order to get it into the mainstream :) People think dubstep is just a wobble bass... but it's actually more about the feel of the dub break... <shrug>

Julian
BGB
2012-01-23 01:34:09 UTC
Permalink
Post by Julian Leviston
Post by Casey Ransberger
Below.
like, for example, if a musician wanted to pursue various musical forms. say, for example: a dubstep backbeat combined with rap-style lyrics sung using a death-metal voice or similar, without "the man" (producers, ...) demanding all the time that they get a new album together (or that their fans and "the man" expect them to stay with their existing sound and theme), and if they just gave them something which was like "and so wub-wub-wub, goes the sub-sub-sub, as the lights go blim-blim-blim, as shorty goes rub-run-run, on my hub-hub-hub, as my rims go spin-spin-spin" or something... (all sung in deep growls and roars), at which point maybe the producers would be very unhappy (say, if he was hired on to be part of a tween-pop boy-band, and adolescent females may respond poorly to bass-filled "wubbing growl-rap", or something...).
or such...
This is probably the raddest metaphor that I have ever seen on a mailing list.
BGB FTW!
P.S.
If you want to get this song out the door, I'm totally in. Dubsteprapmetal might be the next big thing. I can do everything except the drums. We should write an elegant language for expressing musical score in OMeta and use a simulated orchestra!
Oh come on, Dub Step Rap Metal has been done before... Korn is basically what that is... Just because you're not CALLING it dubstep doesn't mean it doesn't have the dubstep feel.
I was more giving it as an example of basically wanting to do one thing
while being obligated (due to prior work) to do something very different.

say, if a musician (or scientist/programmer/...) has an established
audience, and is expected to produce "more of the same", they may have
less personal freedom to explore other alternatives (and doing so may
alienate many of their fans). an real-life example being, for example,
Metallica incorporating a lot of Country Western elements.

in the example, the idea is that the producers may know full well that
if their promoted boy-band suddenly released an album containing lots of
bass and growling (rather than dancing around on stage being
pretty-boys) then the audience of teenage girls might be like "what the
hell is this?" and become disillusioned with the band (costing the
producers a pile of money).

this does not necessarily mean that an idea is fundamentally new or
original though.
Post by Julian Leviston
Interesting, also, that you chose dubstep here, because that's a genre that's been basically "raped" in a similar way to what has been done to the ideas in object-orientism in order to get it into the mainstream :) People think dubstep is just a wobble bass... but it's actually more about the feel of the dub break...<shrug>
possibly. I encountered some amount of it before, which ranged between
"pretty cool" and "simplistic and actually kind of sucks" (take
whatever, put a pile of bass on it, call it good enough...).

some of it has just been the "wub-wub-wub" part with pretty much nothing
else going on.


I had briefly experimented (I am not really a musician, just tinkered
some) with trying to combine the "wub-wub-wub" part with a beat
(apparently, someone else thought it sounded more like techno or
industrial). I did tests trying to sing (poorly) doing both rap-style
and growl-voice lyrics (in both cases about matters of programming), but
didn't try combining them at the time as this would have been physically
difficult (both require some level of physical effort, and I also have
little personal interest either in the "rough-tough thug from da hood"
or the "gloom and doom and corpses" images traditionally associated with
the two lyrical styles). (actually, I partly vaguely remember "rap" in
the form of "MC Hammer" and Vanilla Ice and similar, from before the
days of "thugz from da hood", although this is stuff from very long
ago... although the attempts I made had more stylistically in common
with the latter, than with "MC Hammer" and similar, which were more
closer to actually singing the lyrics, rather than saying lots of
rhyming-words to a fixed beat, ...).

my own musical interests have mostly been things like
house/trance/industrial/... and similar...

I don't really have either instruments or any real skill with
instruments, so what tests I had done had been purely on my computer
(mostly using Audacity and similar, in this case). some past experiments
had involved using tweaks to a custom written MIDI synthesizer (which
allows, among other things, using arbitrary sound-effects as patches),
however I haven't as-of-yet devised a "good" way to express non-trivial
patterns in the MIDI command-language, leaving it as slightly less
effort to just use multi-track sound-editing instead...


but, I have little intention at the moment of doing much of anything
really "serious" with regards to musical stuff... (later? who knows,
just for now this is a bit too much of a novelty area).

much like, I am a programmer, and I also do some basic level of graphic
arts, but have little motivation to consider being an artist instead (I
suspect I get much more personal enjoyment over tinkering around with
technical matters).

or such...
Post by Julian Leviston
Julian
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Julian Leviston
2012-01-23 01:48:33 UTC
Permalink
I was more giving it as an example of basically wanting to do one thing while being obligated (due to prior work) to do something very different.
Yeah, sorry for diverging :) I actually realised that.
say, if a musician (or scientist/programmer/...) has an established audience, and is expected to produce "more of the same", they may have less personal freedom to explore other alternatives (and doing so may alienate many of their fans). an real-life example being, for example, Metallica incorporating a lot of Country Western elements.
in the example, the idea is that the producers may know full well that if their promoted boy-band suddenly released an album containing lots of bass and growling (rather than dancing around on stage being pretty-boys) then the audience of teenage girls might be like "what the hell is this?" and become disillusioned with the band (costing the producers a pile of money).
this does not necessarily mean that an idea is fundamentally new or original though.
True... but in this case (as in the one you're paralleling - the one of VPRI) it'd likely attract a new audience that appreciate it.

Julan
Casey Ransberger
2012-01-23 02:16:26 UTC
Permalink
Below and mile off-topic...
Post by Julian Leviston
Post by Casey Ransberger
Below.
like, for example, if a musician wanted to pursue various musical forms. say, for example: a dubstep backbeat combined with rap-style lyrics sung using a death-metal voice or similar, without "the man" (producers, ...) demanding all the time that they get a new album together (or that their fans and "the man" expect them to stay with their existing sound and theme), and if they just gave them something which was like "and so wub-wub-wub, goes the sub-sub-sub, as the lights go blim-blim-blim, as shorty goes rub-run-run, on my hub-hub-hub, as my rims go spin-spin-spin" or something... (all sung in deep growls and roars), at which point maybe the producers would be very unhappy (say, if he was hired on to be part of a tween-pop boy-band, and adolescent females may respond poorly to bass-filled "wubbing growl-rap", or something...).
or such...
This is probably the raddest metaphor that I have ever seen on a mailing list.
BGB FTW!
P.S.
If you want to get this song out the door, I'm totally in. Dubsteprapmetal might be the next big thing. I can do everything except the drums. We should write an elegant language for expressing musical score in OMeta and use a simulated orchestra!
Oh come on, Dub Step Rap Metal has been done before... Korn is basically what that is... Just because you're not CALLING it dubstep doesn't mean it doesn't have the dubstep feel.
Interesting, also, that you chose dubstep here, because that's a genre that's been basically "raped" in a similar way to what has been done to the ideas in object-orientism in order to get it into the mainstream :) People think dubstep is just a wobble bass... but it's actually more about the feel of the dub break... <shrug>
Julian
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Julian,

Generally good points but I'm pretty sure the Korn I've heard wasn't dubstep. It's also crap. T.M. :D
BGB
2012-01-23 03:30:48 UTC
Permalink
Post by Casey Ransberger
Below and mile off-topic...
Post by Julian Leviston
Post by Casey Ransberger
Below.
like, for example, if a musician wanted to pursue various musical forms. say, for example: a dubstep backbeat combined with rap-style lyrics sung using a death-metal voice or similar, without "the man" (producers, ...) demanding all the time that they get a new album together (or that their fans and "the man" expect them to stay with their existing sound and theme), and if they just gave them something which was like "and so wub-wub-wub, goes the sub-sub-sub, as the lights go blim-blim-blim, as shorty goes rub-run-run, on my hub-hub-hub, as my rims go spin-spin-spin" or something... (all sung in deep growls and roars), at which point maybe the producers would be very unhappy (say, if he was hired on to be part of a tween-pop boy-band, and adolescent females may respond poorly to bass-filled "wubbing growl-rap", or something...).
or such...
This is probably the raddest metaphor that I have ever seen on a mailing list.
BGB FTW!
P.S.
If you want to get this song out the door, I'm totally in. Dubsteprapmetal might be the next big thing. I can do everything except the drums. We should write an elegant language for expressing musical score in OMeta and use a simulated orchestra!
Oh come on, Dub Step Rap Metal has been done before... Korn is basically what that is... Just because you're not CALLING it dubstep doesn't mean it doesn't have the dubstep feel.
Interesting, also, that you chose dubstep here, because that's a genre that's been basically "raped" in a similar way to what has been done to the ideas in object-orientism in order to get it into the mainstream :) People think dubstep is just a wobble bass... but it's actually more about the feel of the dub break...<shrug>
Julian
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Julian,
Generally good points but I'm pretty sure the Korn I've heard wasn't dubstep. It's also crap. T.M. :D
admittedly, I have never heard Korn (that I am aware of), so have no
real idea what it sounds like in particular. only that I think it is
often associated with Linkin Park, which generally sounds like crap IMO
(although I remember one instance where I heard "something", and had a
response roughly along the lines of "what the hell is this?", my brother
said it was Linkin Park, I was surprised, but don't remember what it
sounded like, much beyond the response of "?... strange..." and "sounds
kinda like crap...").

for some mysterious/unknown reason, my mom likes Linkin Park, I don't
know...
(and, my dad mostly likes music from when he was young, which mostly
amounts to "heavy metal" and similar).


little if anything in that area that generally makes me think "dubstep"
though...

(taken loosely enough, most "gangsta-rap" could be called "dubstep" if
one turns the sub-woofer loud enough, but this is rather missing the
point...).

or such...
Julian Leviston
2012-01-23 03:57:33 UTC
Permalink
little if anything in that area that generally makes me think "dubstep" though...
(taken loosely enough, most "gangsta-rap" could be called "dubstep" if one turns the sub-woofer loud enough, but this is rather missing the point...).
Listen to this song. It's dubstep. Popular dubstep has been raped to mean "brostep" or what skrillex plays... but this song is original dubstep.

two cents. mine.


BGB
2012-01-23 05:17:03 UTC
Permalink
Post by Julian Leviston
Post by BGB
little if anything in that area that generally makes me think
"dubstep" though...
(taken loosely enough, most "gangsta-rap" could be called "dubstep"
if one turns the sub-woofer loud enough, but this is rather missing
the point...).
Listen to this song. It's dubstep. Popular dubstep has been raped to
mean "brostep" or what skrillex plays... but this song is original
dubstep.
two cents. mine.
http://youtu.be/IlEkvbRmfrA
sadly... my internet sucks too much recently to access YouTube (it,
errm, doesn't even try to go, just says "an error occured. please try
again later."...). at this point, it is hard to access stupid Wikipedia
or Google without "connection timed out" errors, but this is the free
internet provided by the apartment complex, where traces show it is
apparently through 3 layers of NAT as well according to tracert (the
local network, and two different "192.169.*.*" network addresses)

also no access to usenet (because NNTP is blocked), or to FTP/SSH/...
(also blocked).
and sites like StackOverflow, 4chan, ... are black-listed, ...

but, yeah, may have to pay money to get "real" internet (like, via a
cable-modem or similar).


but, anyways, I have had an idea (for music generation).

as opposed to either manually placing samples on a timeline (like in
Audacity or similar), or the stream of note-on/note-off pulses and
delays used by MIDI, an alternate idea comes up:
one has a number of delayed relative "events", which are in-turn piped
through any number of filters.

then one can procedurally issue commands of the form "in N seconds from
now, do this", with commands being relative to a base-time (and the
ability to adjust the base-time based either on a constant value or how
long it would take a certain "expression" to finish playing).

likewise, expressions/events can be piped through filters.
filters could either apply a given effect (add echo or reverb, ...), or
could be structural (such as to repeat or loop a sequence, potentially
indefinitely), or possibly sounds could be entirely simulated (various
waveform patterns, such as sine, box, and triangle, ...).

the "main mix" would be either a result of evaluating a top-level
expression, or possibly some explicit "send this to output" command.

evaluation of a script would be a little more complex and expensive than
MIDI, but really why should this be a big issue?...

the advantage would be mostly that it would be easier to specify
beat-progressions, and individually tweak things, without the pile of
undo/redo, copy/pasting, and saving off temporary audio samples, as
would be needed in a multi-track editor.


it is unclear if this would be reasonably suited to a generic
script-language (such as BGBScript in my case), or if this sort of thing
would be better suited to a DSL.

a generic script language would have the advantage of making it easier
to implement, but would potentially make the syntax more cumbersome. in
such a case, most mix-related commands would likely accept/return
"stream handles" (the mixer would probably itself be written in plain C
either way). my current leaning is this way (if I should choose to
implement this).

a special-purpose DSL could have a more narrowly defined syntax, but
would make implementation probably more complex (and could ultimately
hinder usability if the purpose is too narrow, say, because one can't
access files or whatever...).


say, for example, if written in BGBScript syntax:
var wub=mixLoadSample("sound/patches/wub.wav");
var wub250ms=mixScaleTempoLength(wub, 0.25);
var wub125ms=mixScaleTempoLength(wub, 0.125);
var drum=mixLoadSample("sound/patches/drum.wav");
var cymbal=mixLoadSample("sound/patches/cymbal.wav");

//play sequences of samples
function beatPlay3Play1(a, b)
mixPlaySequence([a, a, a, b]);
function beatPlay3Play2(a, b)
mixPlaySequence([a, a, a, b, b]);

var beat0=mixBassBoost(beatPlay3Play2(wub250ms, wub125ms), 12.0);
//add 12db of bass
var beat1=mixPlaySequenceDelay([drum, cymbal], 0.5); //drum and cymbal
var beat2=mixPlayTogether([beat0, beat1]);

mixPlayOutput(beat2); //mix and send to output device


or such...
Julian Leviston
2012-01-23 05:29:32 UTC
Permalink
one has a number of delayed relative "events", which are in-turn piped through any number of filters.
then one can procedurally issue commands of the form "in N seconds from now, do this", with commands being relative to a base-time (and the ability to adjust the base-time based either on a constant value or how long it would take a certain "expression" to finish playing).
likewise, expressions/events can be piped through filters.
filters could either apply a given effect (add echo or reverb, ...), or could be structural (such as to repeat or loop a sequence, potentially indefinitely), or possibly sounds could be entirely simulated (various waveform patterns, such as sine, box, and triangle, ...).
Heya,

Yeah, I've had that idea for a while - although a more comprehensive one (I write music). Take a look at what Apple did to their own product Final Cut Pro... to turn it into Final Cut Pro X, and notice that there are rumors surrounding Logic Pro X, and I'm pretty sure you'll see that this idea is where Apple will most likely go when they release Logic Pro X.

In Final Cut Pro, they call it their "magic timeline".

By the way, what you're describing CAN be done with Ableton Live without much trouble... also Ableton Live has the ability to use Max for Live, which is Cycling 74's excellent Max/MSP product inlined into a Live instrument (what you're calling various waveform patterns). It's sine, square/pulse and triangle by the way, not "box"... and we also can use all sorts of other waveforms... generated or sampled...

Julian
Dion Stewart
2012-01-23 05:42:23 UTC
Permalink
Some of what's described below has been done by Robert Fripp, sometimes in collaboration with Brian Eno, for years. The tech has changed over time. It started off tape based but he's moved on to digital delays and various effects for the filtering (mostly structural using BGB's definition from below).

Zoe Keating is currently doing cool and interesting work with layered cello compositions and performances. She uses Ableton Live with a plugin called SooperLooper.

http://www.dgmlive.com/rf/

http://zoekeating.com/
Post by Julian Leviston
one has a number of delayed relative "events", which are in-turn piped through any number of filters.
then one can procedurally issue commands of the form "in N seconds from now, do this", with commands being relative to a base-time (and the ability to adjust the base-time based either on a constant value or how long it would take a certain "expression" to finish playing).
likewise, expressions/events can be piped through filters.
filters could either apply a given effect (add echo or reverb, ...), or could be structural (such as to repeat or loop a sequence, potentially indefinitely), or possibly sounds could be entirely simulated (various waveform patterns, such as sine, box, and triangle, ...).
Heya,
Yeah, I've had that idea for a while - although a more comprehensive one (I write music). Take a look at what Apple did to their own product Final Cut Pro... to turn it into Final Cut Pro X, and notice that there are rumors surrounding Logic Pro X, and I'm pretty sure you'll see that this idea is where Apple will most likely go when they release Logic Pro X.
In Final Cut Pro, they call it their "magic timeline".
By the way, what you're describing CAN be done with Ableton Live without much trouble... also Ableton Live has the ability to use Max for Live, which is Cycling 74's excellent Max/MSP product inlined into a Live instrument (what you're calling various waveform patterns). It's sine, square/pulse and triangle by the way, not "box"... and we also can use all sorts of other waveforms... generated or sampled...
Julian
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
BGB
2012-01-23 08:19:22 UTC
Permalink
Post by Julian Leviston
Post by BGB
as opposed to either manually placing samples on a timeline (like in
Audacity or similar), or the stream of note-on/note-off pulses and
one has a number of delayed relative "events", which are in-turn
piped through any number of filters.
then one can procedurally issue commands of the form "in N seconds
from now, do this", with commands being relative to a base-time (and
the ability to adjust the base-time based either on a constant value
or how long it would take a certain "expression" to finish playing).
likewise, expressions/events can be piped through filters.
filters could either apply a given effect (add echo or reverb, ...),
or could be structural (such as to repeat or loop a sequence,
potentially indefinitely), or possibly sounds could be entirely
simulated (various waveform patterns, such as sine, box, and
triangle, ...).
Heya,
Yeah, I've had that idea for a while - although a more comprehensive
one (I write music). Take a look at what Apple did to their own
product Final Cut Pro... to turn it into Final Cut Pro X, and notice
that there are rumors surrounding Logic Pro X, and I'm pretty sure
you'll see that this idea is where Apple will most likely go when they
release Logic Pro X.
In Final Cut Pro, they call it their "magic timeline".
I am pretty sure this costs money though.
in my case, I was using Audacity, partly because it was free...
Post by Julian Leviston
By the way, what you're describing CAN be done with Ableton Live
without much trouble... also Ableton Live has the ability to use Max
for Live, which is Cycling 74's excellent Max/MSP product inlined into
a Live instrument (what you're calling various waveform patterns).
It's sine, square/pulse and triangle by the way, not "box"... and we
also can use all sorts of other waveforms... generated or sampled...
I wasn't claiming originality though (although, if someone has free
software for this, I might be more interested).

I knew it was called square-wave, but for whatever reason (mental
slip...) wrote "box" instead. same idea though:
have a wave-generation function, stream things through filters, ...


although not nearly as advanced, this is sort of how the audio-mixer in
my 3D engine works (it can also use streams and apply filters through
streams, ...), as well as implementing effects like echoes and
doppler-shifting and delays (sounds will not start playing instantly,
but the mixer may instead calculate a delay based on how far away it is,
and start playing then).

[ sadly, I don't know of a good way to do "realistic" spatial echoes in
real-time, leaving such cheap tricks as "a box which enables echos"...
likely it would involve "some way to calculate a large FIR-filter based
on the sound-source, destination, and intermediate geometry"... ]


the main differences:
all mixer-streams mix directly to the output;
all streams are simple 1:1 filters (no composting or sequencing);
the mixer is mostly just used for playing in-game sound-effects (from
sound files);
the stream feature is thus far currently only really used as a means for
plugging in things like Ogg/Vorbis, MIDI, and Text-To-Speech playback
(feeding samples through streams or layering them isn't really done);
...

probably, if I were to implement something like my idea though, it would
be functionally independent of the 3D engine, and could probably be used
as a standalone mixer (capable of also producing output as WAV files, ...).


other features I would probably include (forgot to mention earlier):
ability to playback particular notes from particular instruments
(probably reusing code from my MIDI synth);
probable inclusion of spatial positioning and attenuation;
potentially: inclusion of or integration with MIDI (say, ability to pipe
streams in as instrument patches, and other MIDI extensions);
...

possible implementation routes (should I pursue this idea) include,
among other things:
(hackishly) augment my existing MIDI library with new features (namely,
stream-based mixing, most likely an API independent of the traditional
MIDI command-stream);
implement a new library, which may depend on MIDI library;
simply copy/paste any relevant code, but otherwise implement a
new/independent library.

the latter 2 options have the merit of reducing likely code-tangle (and
avoid polluting the MIDI synth) with what would otherwise be
functionality unrelated to MIDI, but the cost that they would add
another library to the project. (note: as-is, the MIDI synth does not
implement streams or delay-based mixing, it merely mixes directly and
operates according to time-slices. so most of this would be all new code
anyways).


or such...
GrrrWaaa
2012-01-23 19:20:57 UTC
Permalink
Max/MSP (which I know a couple of people on this list are very familiar with) is one amongst a huge history of other visual, textual and visual+textual programming languages to think about taking apart and putting together structures in time (such as music). In particular, people on this list might be interested in these, which arguably have more fonc than Live/Logic etc:

http://en.wikipedia.org/wiki/OpenMusic
http://www2.siba.fi/pwgl/pwglsynth.html
https://github.com/digego/extempore
Post by Julian Leviston
one has a number of delayed relative "events", which are in-turn piped through any number of filters.
then one can procedurally issue commands of the form "in N seconds from now, do this", with commands being relative to a base-time (and the ability to adjust the base-time based either on a constant value or how long it would take a certain "expression" to finish playing).
likewise, expressions/events can be piped through filters.
filters could either apply a given effect (add echo or reverb, ...), or could be structural (such as to repeat or loop a sequence, potentially indefinitely), or possibly sounds could be entirely simulated (various waveform patterns, such as sine, box, and triangle, ...).
Heya,
Yeah, I've had that idea for a while - although a more comprehensive one (I write music). Take a look at what Apple did to their own product Final Cut Pro... to turn it into Final Cut Pro X, and notice that there are rumors surrounding Logic Pro X, and I'm pretty sure you'll see that this idea is where Apple will most likely go when they release Logic Pro X.
In Final Cut Pro, they call it their "magic timeline".
By the way, what you're describing CAN be done with Ableton Live without much trouble... also Ableton Live has the ability to use Max for Live, which is Cycling 74's excellent Max/MSP product inlined into a Live instrument (what you're calling various waveform patterns). It's sine, square/pulse and triangle by the way, not "box"... and we also can use all sorts of other waveforms... generated or sampled...
Julian
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Julian Leviston
2012-01-24 23:46:33 UTC
Permalink
How about symbolic sound Kyma? I think that's an amazing platform - hopefully I'll get it soon <dance>

http://www.symbolicsound.com

Julian
Post by GrrrWaaa
http://en.wikipedia.org/wiki/OpenMusic
http://www2.siba.fi/pwgl/pwglsynth.html
https://github.com/digego/extempore
Post by Julian Leviston
one has a number of delayed relative "events", which are in-turn piped through any number of filters.
then one can procedurally issue commands of the form "in N seconds from now, do this", with commands being relative to a base-time (and the ability to adjust the base-time based either on a constant value or how long it would take a certain "expression" to finish playing).
likewise, expressions/events can be piped through filters.
filters could either apply a given effect (add echo or reverb, ...), or could be structural (such as to repeat or loop a sequence, potentially indefinitely), or possibly sounds could be entirely simulated (various waveform patterns, such as sine, box, and triangle, ...).
Heya,
Yeah, I've had that idea for a while - although a more comprehensive one (I write music). Take a look at what Apple did to their own product Final Cut Pro... to turn it into Final Cut Pro X, and notice that there are rumors surrounding Logic Pro X, and I'm pretty sure you'll see that this idea is where Apple will most likely go when they release Logic Pro X.
In Final Cut Pro, they call it their "magic timeline".
By the way, what you're describing CAN be done with Ableton Live without much trouble... also Ableton Live has the ability to use Max for Live, which is Cycling 74's excellent Max/MSP product inlined into a Live instrument (what you're calling various waveform patterns). It's sine, square/pulse and triangle by the way, not "box"... and we also can use all sorts of other waveforms... generated or sampled...
Julian
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Andre van Delft
2012-03-16 00:06:40 UTC
Permalink
I like this Process Algebra approach to music:

http://www.cosc.brocku.ca/~bross/research/BrazilSCM95.pdf

And here are some tracks:
http://www.cosc.brocku.ca/~bross/research/LMJ/
Post by Julian Leviston
little if anything in that area that generally makes me think "dubstep" though...
(taken loosely enough, most "gangsta-rap" could be called "dubstep" if one turns the sub-woofer loud enough, but this is rather missing the point...).
Listen to this song. It's dubstep. Popular dubstep has been raped to mean "brostep" or what skrillex plays... but this song is original dubstep.
two cents. mine.
http://youtu.be/IlEkvbRmfrA
sadly... my internet sucks too much recently to access YouTube (it, errm, doesn't even try to go, just says "an error occured. please try again later."...). at this point, it is hard to access stupid Wikipedia or Google without "connection timed out" errors, but this is the free internet provided by the apartment complex, where traces show it is apparently through 3 layers of NAT as well according to tracert (the local network, and two different "192.169.*.*" network addresses)
also no access to usenet (because NNTP is blocked), or to FTP/SSH/... (also blocked).
and sites like StackOverflow, 4chan, ... are black-listed, ...
but, yeah, may have to pay money to get "real" internet (like, via a cable-modem or similar).
but, anyways, I have had an idea (for music generation).
one has a number of delayed relative "events", which are in-turn piped through any number of filters.
then one can procedurally issue commands of the form "in N seconds from now, do this", with commands being relative to a base-time (and the ability to adjust the base-time based either on a constant value or how long it would take a certain "expression" to finish playing).
likewise, expressions/events can be piped through filters.
filters could either apply a given effect (add echo or reverb, ...), or could be structural (such as to repeat or loop a sequence, potentially indefinitely), or possibly sounds could be entirely simulated (various waveform patterns, such as sine, box, and triangle, ...).
the "main mix" would be either a result of evaluating a top-level expression, or possibly some explicit "send this to output" command.
evaluation of a script would be a little more complex and expensive than MIDI, but really why should this be a big issue?...
the advantage would be mostly that it would be easier to specify beat-progressions, and individually tweak things, without the pile of undo/redo, copy/pasting, and saving off temporary audio samples, as would be needed in a multi-track editor.
it is unclear if this would be reasonably suited to a generic script-language (such as BGBScript in my case), or if this sort of thing would be better suited to a DSL.
a generic script language would have the advantage of making it easier to implement, but would potentially make the syntax more cumbersome. in such a case, most mix-related commands would likely accept/return "stream handles" (the mixer would probably itself be written in plain C either way). my current leaning is this way (if I should choose to implement this).
a special-purpose DSL could have a more narrowly defined syntax, but would make implementation probably more complex (and could ultimately hinder usability if the purpose is too narrow, say, because one can't access files or whatever...).
var wub=mixLoadSample("sound/patches/wub.wav");
var wub250ms=mixScaleTempoLength(wub, 0.25);
var wub125ms=mixScaleTempoLength(wub, 0.125);
var drum=mixLoadSample("sound/patches/drum.wav");
var cymbal=mixLoadSample("sound/patches/cymbal.wav");
//play sequences of samples
function beatPlay3Play1(a, b)
mixPlaySequence([a, a, a, b]);
function beatPlay3Play2(a, b)
mixPlaySequence([a, a, a, b, b]);
var beat0=mixBassBoost(beatPlay3Play2(wub250ms, wub125ms), 12.0); //add 12db of bass
var beat1=mixPlaySequenceDelay([drum, cymbal], 0.5); //drum and cymbal
var beat2=mixPlayTogether([beat0, beat1]);
mixPlayOutput(beat2); //mix and send to output device
or such...
_______________________________________________
fonc mailing list
http://vpri.org/mailman/listinfo/fonc
Continue reading on narkive:
Loading...