Can't they just wait to learn more about what's in a store display window till the store is open? I feel sorry for them. It is called oniomania and I don't really think that we should use technology to worsen the suffering of people who are seriously addicted and need our help instead of blatant exploitation of their condition.
This magazine writes alot about privacy and they put this button there without protection like now. Why not?
No, they didn't add those buttons until now. The first sentence in the German text (I didn't bother to check out the Google translation) reads (emphasis by me):
"Ab sofort kann man auch auf heise online Artikel bei Facebook, Twitter oder Google+ komfortabel seinen Freunden empfehlen."
Which means (emphasis by me):
"Starting now, it is possible also on heise online to comfortable recommend articles on Facebook, Twitter or Google+ to your friends."
You want them to learn simple languages first. Therefore let me suggest Unlambda as first language. It has only a few built-in functions, and almost no syntax to learn.
The Slashdot Channel looks vastly over priced by comparison.
Why? You get premium content there. To name just a few highlights: The First Post series. Goatse & Rickroll. Soviet Russia Jokes. Imagined Beowulf clusters.
such as the Sinclair ZX80/ZX81 which only had 16KB (NOT a typo, that's KB, not MB)
But unless you bought the big, bulky memory extension, the ZX81 had only 1 KB. Yes, that's true, a whopping 1024 bytes of RAM. And that included the RAM needed for the video display (which BTW was also handled by the CPU, not a dedicated video chip; therefore it had a "fast mode" where video output was switched off).
It's worse than you though, in binary! [first UID in binary]
[second UID in binary]
Both your UID numbers have 32 zeros and 24 ones...
Is there a specific reason you padded them to 56 bits?
What would have made sense to me would have been no padding (no leading zeros), or padding to 64 bits (because that's how the UIDs are probably stored internally). In the first case, it would be 30 zeros, in the second, it would be 40.
BTW, how did you get it through the lame(ness) filter? I get a filter error in just quoting your post ("Filter error: That's an awful long string of letters there.") Only after removing the binary strings, Slashdot allowed me to even preview.
LGPL libraries can be used in any code with any license whatsoever
It's easy to think of licenses which are incompatible with the LGPL. One example would be copyleft licenses a la GPL ("you must put your complete code under this license") but with a clause incompatible with the LGPL (so you cannot put the LGPLed part under this license).
Another rather trivial example would be a license explicitly stating that the code may not be combined with LGPLed code. Or a license which demands that only statically linked executables generated from that source may be distributed.
Are you trying to be funny and it just doesn't come through online? You're essentially saying that the way to make Lisp an easier read is to transform it into some other language. In other words, don't use Lisp.
I'm saying, make a language which is mostly Lisp (i.e. has all the good features), but has syntactic sugar to make it more readable. It's not "don't use Lisp" because all the mechanics would still be there. You still could use all of the features, including code transformations at run time. It would still be Lisp, just with a different syntax. It's not the syntax which makes Lisp special.
As of the reaction from Lisp programmers: Just call your Lisp + syntactic sugar with another name. Then if someone tells you "that isn't Lisp" just because of the syntax, you can answer "But it is Liwisys" (or whatever you choose to call the language).
It's not just the parens, it's the order. Prefix order is only natural sometimes. Take (loop (print (eval (read)))) for example.
This is just a small example so the parens aren't a bother. What does bother you is that when you think, "how do I implement a REPL?" you don't think of the print before the read or eval. You think of the reading first. In a small example like this it isn't too hard to slow down and see what's happening.
In larger functions, it's a problem. Finding the "starting point in the maze" becomes a gruesome chore of navigating down a parse tree of parens. It isn't the parens causing the problem though. You'd have the same problem if this were done using some other syntax for a parse tree.
There are two big patterns in programming: hierarchy and sequence. IMHO, Lisp does a fantastic job representing hierarchy, but a lousy job with sequence.
But that one could be solved with just a little bit of syntactic sugar. Just define that (a | b | c) is the equivalent of (c (b (a))). Then you could write your code as (loop (read | eval | print)).
Another bit of syntactic sugar which would make the code much more readable would be defining the syntax { a; b; c; } as equivalent to (progn (a) (b) (c)) (or whatever Scheme uses for progn). This would make a lot of code look more familiar. Indeed, one could also change the syntax of top-level constructs from (xxx) to xxx;. After all, putting pure variable references into scripts is rather unusual. And for the rare case where it's really wanted, an identity function could be provided, so you could simply write id x; instead.
Using this, most code would probably look orders of magnitude more familiar, without giving up anything (except possibly to define functions named '{', '|' or ';' which I'd not consider a good idea anyway).
Actually, it is now forbidden to make a scan of the new German identity card (with very narrow exceptions). [German Wikipedia link; the English Wikipedia entry doesn't seem to contain that information]
In other words, if you already have the new identity card and provide a scan to Facebook, you break the law.
I feel sorry for people who don't know what to do if they can't go shopping.
Can't they just wait to learn more about what's in a store display window till the store is open? I feel sorry for them. It is called oniomania and I don't really think that we should use technology to worsen the suffering of people who are seriously addicted and need our help instead of blatant exploitation of their condition.
Welcome to capitalism.
ITYM: “ ‘its’ not ‘it's’ ”, not “its, not it's”
Well, this is machine translation:
Their whole lower surface are belong to us.
This magazine writes alot about privacy and they put this button there without protection like now. Why not?
No, they didn't add those buttons until now. The first sentence in the German text (I didn't bother to check out the Google translation) reads (emphasis by me):
"Ab sofort kann man auch auf heise online Artikel bei Facebook, Twitter oder Google+ komfortabel seinen Freunden empfehlen."
Which means (emphasis by me):
"Starting now, it is possible also on heise online to comfortable recommend articles on Facebook, Twitter or Google+ to your friends."
That's no star...
It's a death star.
We need the fifth element...
But the astronomers didn't even find the third element!
moral:
if (option1.morality > option2.morality) choose(option1); else choose(option2);
immoral:
if(option1.morality > option2.morality) choose(option2); else choose(option1);
amoral:
choose(option1);
You want them to learn simple languages first. Therefore let me suggest Unlambda as first language. It has only a few built-in functions, and almost no syntax to learn.
You start with a simple task: making a peanut butter and jelly sandwich.
I would suggest a cheese sandwich, peanut allergies being what they are these days.
But cheese is bad for people with lactose intolerance.
Seems that Starz confused "premium" with "overprized" ...
Oops, overpriced, of course.
Seems that Starz confused "premium" with "overprized" ...
The Slashdot Channel looks vastly over priced by comparison.
Why? You get premium content there. To name just a few highlights: The First Post series. Goatse & Rickroll. Soviet Russia Jokes. Imagined Beowulf clusters.
And reruns (called dupes) of the best stuff!
But as he was one digit below, he could just have immediately registered another account to get a palindromic UID.
But unless you bought the big, bulky memory extension, the ZX81 had only 1 KB. Yes, that's true, a whopping 1024 bytes of RAM. And that included the RAM needed for the video display (which BTW was also handled by the CPU, not a dedicated video chip; therefore it had a "fast mode" where video output was switched off).
I can't copy a bank note (well, with enough effort I might be able to, but it would be illegal anyway). Still, I can store one in my wallet.
You know. you're a bit less than a real star. You may think you're a star but you're not.
A starlet?
It's worse than you though, in binary!
[first UID in binary]
[second UID in binary]
Both your UID numbers have 32 zeros and 24 ones...
Is there a specific reason you padded them to 56 bits?
What would have made sense to me would have been no padding (no leading zeros), or padding to 64 bits (because that's how the UIDs are probably stored internally). In the first case, it would be 30 zeros, in the second, it would be 40.
BTW, how did you get it through the lame(ness) filter? I get a filter error in just quoting your post ("Filter error: That's an awful long string of letters there.") Only after removing the binary strings, Slashdot allowed me to even preview.
I just thought he was quoting the new blue ray "special edition" release. Nooooooooooooooooooooo.
They now decided that Han didn't shoot at all. :-)
Muammar Gaddafi's still monitoring the internet? Is he doing it from dial up?
No, he uses IPoAC.
Well, it's quantum scenarios. As long as no one looks, you can both try and avoid them at the same time.
If you are thinking of sawfish (the only Lisp-using window manager I know): It doesn't use guile, but its own LISP dialect.
It's easy to think of licenses which are incompatible with the LGPL.
One example would be copyleft licenses a la GPL ("you must put your complete code under this license") but with a clause incompatible with the LGPL (so you cannot put the LGPLed part under this license).
Another rather trivial example would be a license explicitly stating that the code may not be combined with LGPLed code. Or a license which demands that only statically linked executables generated from that source may be distributed.
I'm saying, make a language which is mostly Lisp (i.e. has all the good features), but has syntactic sugar to make it more readable.
It's not "don't use Lisp" because all the mechanics would still be there. You still could use all of the features, including code transformations at run time. It would still be Lisp, just with a different syntax. It's not the syntax which makes Lisp special.
As of the reaction from Lisp programmers: Just call your Lisp + syntactic sugar with another name. Then if someone tells you "that isn't Lisp" just because of the syntax, you can answer "But it is Liwisys" (or whatever you choose to call the language).
It's not just the parens, it's the order. Prefix order is only natural sometimes. Take (loop (print (eval (read)))) for example.
This is just a small example so the parens aren't a bother. What does bother you is that when you think, "how do I implement a REPL?" you don't think of the print before the read or eval. You think of the reading first. In a small example like this it isn't too hard to slow down and see what's happening.
In larger functions, it's a problem. Finding the "starting point in the maze" becomes a gruesome chore of navigating down a parse tree of parens. It isn't the parens causing the problem though. You'd have the same problem if this were done using some other syntax for a parse tree.
There are two big patterns in programming: hierarchy and sequence. IMHO, Lisp does a fantastic job representing hierarchy, but a lousy job with sequence.
But that one could be solved with just a little bit of syntactic sugar. Just define that (a | b | c) is the equivalent of (c (b (a))). Then you could write your code as (loop (read | eval | print)).
Another bit of syntactic sugar which would make the code much more readable would be defining the syntax { a; b; c; } as equivalent to (progn (a) (b) (c)) (or whatever Scheme uses for progn). This would make a lot of code look more familiar. Indeed, one could also change the syntax of top-level constructs from (xxx) to xxx;. After all, putting pure variable references into scripts is rather unusual. And for the rare case where it's really wanted, an identity function could be provided, so you could simply write id x; instead.
Using this, most code would probably look orders of magnitude more familiar, without giving up anything (except possibly to define functions named '{', '|' or ';' which I'd not consider a good idea anyway).