Live data from Hacker News

Systems Past: The software innovations we actually use

davidad.github.io

81–90 of 98 posts

Re: Systems Past: The software innovations we actually use

#81

Earlier quoted context omitted.

Because software actually is kind of hard, and to get anywhere you need to convince a somewhat larger group than one to all work towards the same goal. And how do you know he is not?

Yes. I am working on it, but it is "kind of hard" to do by oneself. Also, writing about it is a good step, regardless of who might be convinced or not, simply because it forces me to get my ideas more straightened out.

I am working on it

I don't see that mentioned in the article; a mention or a least a link to your own work would be helpful.

Re: Systems Past: The software innovations we actually use

#82
post #42

If this writer is so convinced that we need a new way of interacting with computers, why isn't he building it, instead of just writing about it?

Because software actually is kind of hard, and to get anywhere you need to convince a somewhat larger group than one to all work towards the same goal. And how do you know he is not?

to get anywhere you need to convince a somewhat larger group than one to all work towards the same goal

I don't think this is true. For example, Linus Torvalds didn't convince a larger group to work on Linux first, and then build it; he built Linux first and then the larger group came to it because they saw that it was worth working on.

Granted, Linux was not as ambitious as the kind of thing the article is talking about; but that doesn't mean the method has to be different. Working code, even if it's for a very small subset of what you eventually want to build, is a great convincer.

Re: Systems Past: The software innovations we actually use

#83
post #67
post #62

Earlier quoted context omitted.

I always thought that algebraic functions are not guaranteed to be defined given certain parameters. It's just that perfectly algebraic functions don't throw errors, they silently return +-infinity. Like the asymptotes in `tan x`.

To be pedantic, tan doesn't have a value at tau/4 (or pi/2, if you swing that way). Also, algebraic functions don't return, they are - cos(0) is 1, it doesn't return 1, it doesn't compute 1, it is not a kind of computer, nor a kind of program, nor any kind of thing that consumes resources and time and returns a value; it really literally is 1. Algebraic functions are just syntactic notation. You can sit down and conv…

I agree with your point about functions versus algorithms (or computation if you prefer that term), but I disagree that your definition of functions isn't useful for computing.

It's precisely that sense of function that things like Haskell (or Erlang, or Prolog) try to introduce - a different syntax for writing the same value.

A pure function is just explaining that a particular value is functions applied to other particular (stand in) values (and a way to introduce names to values). These are only useful for explaining which computation you'd like to happen when the program actually goes to carry one out - I'd like the number which is the same as the cosine function applied to 5, which tells it precisely how to compute that number (assuming it can build an algorithm equivalent to cosine). Of course, we could use another pure definition (that cosine of x is the same as a series expansion about x) to allow the compiler to replace the desired cosine function with something that has intrinsics on the system - evaluation a polynomial at the point 5.

So in essence, we can use functions as a tool to describe what value we want from the program (or various structural properties), in such a way that the compiler can correctly infer how to build an algorithm to do so, and tie it correctly in to our (actually) algorithmic code.

Minor aside: functions (in the math world) apply in contexts besides the real numbers, including being syntactic notation for binary numbers (or fields of order 2^n).

Re: Systems Past: The software innovations we actually use

#84
post #67
post #62

Earlier quoted context omitted.

I always thought that algebraic functions are not guaranteed to be defined given certain parameters. It's just that perfectly algebraic functions don't throw errors, they silently return +-infinity. Like the asymptotes in `tan x`.

To be pedantic, tan doesn't have a value at tau/4 (or pi/2, if you swing that way). Also, algebraic functions don't return, they are - cos(0) is 1, it doesn't return 1, it doesn't compute 1, it is not a kind of computer, nor a kind of program, nor any kind of thing that consumes resources and time and returns a value; it really literally is 1. Algebraic functions are just syntactic notation. You can sit down and conv…

Actually, to be pedantic, functions are notations for relations between sets of numbers: sin and cos are relations between the real numbers and the closed interval [-1, +1], and so on.

Re: Systems Past: The software innovations we actually use

#85
post #80
post #25

> Virtual memory should have been extended to network resources, but this has not really happened. I get that we are already operating in heterogeneous virtual memory worlds, but network transactions are so slow. I can't see it being useful to have them as virtual addresses if random reads and writes to network space take literal seconds of round trip. That is so much worse than even disk, there is a reason networkin…

Virtualization and network resources have a long and glorious research history, although most, if not all, of the approaches are not currently in fashion. (And maybe there's a good reason for that?[1]) "Distributed memory" is one example. Once upon a time it was a big deal. I suppose that things like iSCSI could be regarded as an application, but that is the only use I know about that's at all recent. "Remote procedu…

[deleted]

Re: Systems Past: The software innovations we actually use

#87
post #76
post #63

For some truly innovative operating system and programming language, I recommend everybody to go learn about Urbit. http://www.urbit.org/

Urbit made my head hurt. Interesting, but in an "I don't want to go there and do real work with it at all ever " way.

I'm still scared after watching their videos, too psychedelic.

Re: Systems Past: The software innovations we actually use

#88
post #18

Earlier quoted context omitted.

How is transactional integrity an outdated concept? And you are actually telling me that there are "databases" that don't have transactional integrity?

MySQL with MyISAM tables.

Ah. Thanks.

Re: Systems Past: The software innovations we actually use

#89
post #63

For some truly innovative operating system and programming language, I recommend everybody to go learn about Urbit. http://www.urbit.org/

Quote from their tutorial: Whipping or clamming on a %weed simply ignores the sample and reproduces the example - as does bunting, of course. However, %weed remains quite useful. Clearly free thinking people.

Re: Systems Past: The software innovations we actually use

#90
post #76
post #63

For some truly innovative operating system and programming language, I recommend everybody to go learn about Urbit. http://www.urbit.org/

Urbit made my head hurt. Interesting, but in an "I don't want to go there and do real work with it at all ever " way.

Edith Piaf said it best: https://www.youtube.com/watch?v=fFtGfyruroU
Post reply on HN