Although still iffy, DevShare is entirely op-tin (FTA): "Currently in the Pilot phase, we only have 3 projects participating in the DevShare program all of which explicitly opted-in. This represents 3 out of 300,000+ projects in our entire catalog. This is a 100% opt-in program for the developer, and we want to reassure you that we will NEVER bundle offers with any project without the developers consent."
Of course, with all the ill-will caused by the mere existence of the program...
I was skeptical at first, but then I realized who wrote it and... there went a few hours of my life this weekend. After I hacked the source to read the right buttons for my dualshocks (pesky eight button limit, oh well remap 0-3 to 11-14 && debuild) it stole some neurons from a few friends. Really nice in 1920x1080 / 50" glory (I knew I got that fancy graphics card for something). Kind of like playing tempest 2000 inside of speedmine (happens to be one of my favorite xscreensavers).
I three have a Vertex 4 that has been fine. I've written at least a few dozen terabytes to it (hell, it's my swap drive), wear indicator says 98% life remaining, and it's nearly full most of the time (~90G/128G). Still does random read/write at 300+M/s. Maybe it helps that I run fstrim to update the free block list from a nightly cron job?
Guile is pretty much Scheme with the Common Lisp library and POSIX support bolted on. It's really convenient for scripting when bash becomes too unwieldy. The only thing that sucks is that it doesn't support the scheme shell process notation any more, but that's mostly my fault since I started porting it to guile 2.x a few years ago and kind of trailed off like the lazy hacker I am.
Subtle? You mean... parallel binding, sequential binding, and recursive binding? That's not so hard to get. Especially since you can define all of them in terms of let to elucidate their meaning... let* just expands into (let ((binding one)) (let ((binding two))...)), letrec is just (let ((binding-one *unspecified*) (binding-two *unspecified*)...) (let ((binding-one actual-definition) (binding-two actual-definition))...)
Although using let* is a sin (usually it is used to hide imperative programs, something that annoys the piss out of me in SML with its default sequential let...).
Yeah, I have a 128G Vertex 4 and have been abusing it (recording 4/8 channel streams with ardour, running three or four pretty active VMs, using it for the swap partition,...) for about a year and the wear indicator is at 97% life remaining... AFAICT, the main issues were horrible firmware bugs that were resolved eventually, but not until a whole lot of people experienced data loss. It might help that I have a daily cron job to run TRIM (shame it can't be enabled by default for online use since the command flushes the entire queue and slows write i/o during large deletions to a crawl). At less than a buck a gigabyte last year, and with the data on the drive backed up to a RAID1 of spinning disks, I wouldn't cry if it died next month... still, it looks like it'll end up replaced because of its small size before failure, and might live its last year or three as a bcache drive.
Lisp has it's points...but it's not that great. And many of the libraries that I want to use are a real pain to use from it. And the only decent development environment I've found is actually for Scheme (Racket), and while it provides, e.g., futures, it doesn't actually execute the code in parallel. (Yes, I know that's not actually a criticism of Common Lisp. For that stick with the libraries and the lack of a development environment.)
P.S.: I once, long ago, bought a copy of Franz Lisp (my first common lisp). It was OK, but not great. And updating it would have cost me the other arm and leg. A usabe version isn't cheap. So I formed my opinions recently based on SBCL and CMUCL.
Emacs with SLIME nowadays is pretty nice. I think it's the best language environment I've ever used really, and what keeps me going back to CL despite knowing better (shouldn't have picked up SML...). The debugger is particularly excellent, and the inspector, xref support, etc. aren't too shabby either. As for libraries, there are plenty of excellent libraries for most every problem domain, but finding them over the half-finished ones and then managing your personal library... was unpleasant. Until Quicklisp appeared a couple of years ago. Now finding/installing/loading libraries is downright trivial: (ql:quickload #:SYSTEM) and you're done (Quicklisp will fetch the system and any dependencies if they are not available locally). It makes deploying programs muuuuuuch simpler (how much time I wasted keeping my development and deployment environments in sync, oi!). It also has the equivalent of apt-get upgrade, makes life easy when you're someone working on a system in quicklisp (you can use common-lisp-controller to make all Lisps on the machine prefer your development copy), and even manages your SLIME install (finally making it accessible to newcomers who have no idea what their.emacs is).
CL has two things going for it: the standard provides a very complete language (and there's community consensus on extensions for threading, networking, etc.), and the Common Lisp Object System is the best OO language available. Of course, those functional programming folks say OO is sin...
Shame Quad Stereo took Ambisonics with it. One of those things I wish I never learned existed since it is unlikely the industry will ever start using it again, despite everything being a computer now and there being no need for expensive receivers and whatnot... just point and click a gui to tell the machine where your speakers are and go.
That's why you use the Osmand~ build by the community (which is in f-droid of course) which removes all of those restrictions. Of course, I probably should send them ten bucks to fight the good fight.
F-Droid has a pretty good catalog nowadays. I've eliminated everything proprietary from my phone life except for Google Maps and those pesky hardware drivers. Osmand is pretty close to replacing Maps too... navigation basically works (even offline, although I've yet to try using it for more than echoing routes I already know) but POI searching is hit and miss (e.g. when searching for my bank it says the closest location is 17mi away, when there's one about 3mi away). It's actually nicer in a number of ways: maps and POI data can be stored offline (I have my entire state stored, what's 400M when you've got a 16G SD card?), you can record GPX routes (without eating tons of battery even), navigation can be simulated, it has a handy elevation and distance tool (great for biking),...
An agricultural region is the perfect place to put a nuclear reactor... dense, centralized power generation, leaving the fertile land for growing food instead of generating power.
For me, the best improvement is that joysticks are hot pluggable now. So now all of the obnoxiousness with deprecating use of the linux joystick protocol in favor of evdev and losing calibration and button remapping is finally worth it. Combined with the sixaxis daemon, emulators and native games are downright pleasant to use nowadays (yeah yeah, you have to give evil Sony tons of money, but I like to delude myself into thinking the input device people aren't as evil as the rest of the company). If only most programs didn't get confused by the accelerometers making configuration a pain (dear fellow hackers: please require an axis to change by some threshold and not just have a non-zero value in auto-configuration. I'm looking at you armagetronad).
Then.... write your own damn game library if you don't want to play nice.
The anti-copyleft trend in the "open source" world has been awful. Possibly because the kids these days don't remember how awful it was before there was Free Software for basically any task you needed. But they'll know soon enough...
She was my senator when REALID passed... after running on a campaign to oppose it, and to always vote for principles instead of a voting record she... voted for it because her voting record could not be tarnished by voting against a defense appropriations bill (dang riders). The blatant hypocrisy in the letter her staff sent to me was astounding.
Is that really any different than any other eager language though? The C equivalent would be print (eval (read (STDIN)));. All you are doing is shifting the location of the parenthesis, and adding more punctuation.
You've never used CLOS then, eh? The optimization you described is a classic use of the metaobject protocol to redefine the representation of instances through a metaclass. You get the performance boost without sacrificing the power of abstraction.
Of course, the SML/Haskell folks would tell you OO is doomed, but only because using a proper type system and algebraic types allows the compiler to do all of the hard stuff for you...
Also, languages like SML and F# can theoretically (and sometimes in practice do) generate code that is a lot more efficient than C, and not tied to a specific style of Von Neumann machine. That, and garbage collection has complexity bounds whereas malloc/free do not, not having managed memory leads to a lot of pointless copying (and nowadays the memory controller is what kills you so deep sharing of structure is always a huge win), etc.
And those expressive type systems happen to save programmer time too. I was personally amazed at how quickly I was able to dive into a large SML code base not even knowing SML and actually make changes that were pushed into production and didn't blow up (after figuring out the magic decoder ring for type errors that is).
Hell, they installed a steam turbine from the unit at TMI that melted down over at Shearon-Harris near me!
I feel perfectly safe, and now that they've cancelled the plant expansion I am tempted to move a bit further south to get closer to Vogtle... why people hate safe and long-term cheap power is beyond me.
I think you are ignoring the external cost of keeping spent fuel from LWRs around... the volume isn't insurmountable right now because we're not generating most of our power using it. There's also the waste stream from initial processing; at least if the U.S. opts to kill SILEX after running the pilot plant in Wilmington for a while...
Supposedly Molten Salt Reactors could be built that would ease reprocessing (if the other material issues with those pesky Fluoride Salts interacting with metal can be solved of course). Even solid metal rods are better than oxide rods...
I feel like the waste from reprocessing problem is surmountable. We've suspended most research into efficient reprocessing because of the non-proliferation treaty, who knows what throwing a few dozen billion at the problem could do.
Although still iffy, DevShare is entirely op-tin (FTA): "Currently in the Pilot phase, we only have 3 projects participating in the DevShare program all of which explicitly opted-in. This represents 3 out of 300,000+ projects in our entire catalog. This is a 100% opt-in program for the developer, and we want to reassure you that we will NEVER bundle offers with any project without the developers consent."
Of course, with all the ill-will caused by the mere existence of the program...
I was skeptical at first, but then I realized who wrote it and ... there went a few hours of my life this weekend. After I hacked the source to read the right buttons for my dualshocks (pesky eight button limit, oh well remap 0-3 to 11-14 && debuild) it stole some neurons from a few friends. Really nice in 1920x1080 / 50" glory (I knew I got that fancy graphics card for something). Kind of like playing tempest 2000 inside of speedmine (happens to be one of my favorite xscreensavers).
I think you want "Common Lisp".
I three have a Vertex 4 that has been fine. I've written at least a few dozen terabytes to it (hell, it's my swap drive), wear indicator says 98% life remaining, and it's nearly full most of the time (~90G/128G). Still does random read/write at 300+M/s. Maybe it helps that I run fstrim to update the free block list from a nightly cron job?
My experience with all drives, solid state and spinning, is a 100% failure rate... eventually.
Guile is pretty much Scheme with the Common Lisp library and POSIX support bolted on. It's really convenient for scripting when bash becomes too unwieldy. The only thing that sucks is that it doesn't support the scheme shell process notation any more, but that's mostly my fault since I started porting it to guile 2.x a few years ago and kind of trailed off like the lazy hacker I am.
Subtle? You mean ... parallel binding, sequential binding, and recursive binding? That's not so hard to get. Especially since you can define all of them in terms of let to elucidate their meaning... let* just expands into (let ((binding one)) (let ((binding two)) ...)), letrec is just (let ((binding-one *unspecified*) (binding-two *unspecified*) ...) (let ((binding-one actual-definition) (binding-two actual-definition)) ...)
Although using let* is a sin (usually it is used to hide imperative programs, something that annoys the piss out of me in SML with its default sequential let...).
Yeah, I have a 128G Vertex 4 and have been abusing it (recording 4/8 channel streams with ardour, running three or four pretty active VMs, using it for the swap partition, ...) for about a year and the wear indicator is at 97% life remaining... AFAICT, the main issues were horrible firmware bugs that were resolved eventually, but not until a whole lot of people experienced data loss. It might help that I have a daily cron job to run TRIM (shame it can't be enabled by default for online use since the command flushes the entire queue and slows write i/o during large deletions to a crawl). At less than a buck a gigabyte last year, and with the data on the drive backed up to a RAID1 of spinning disks, I wouldn't cry if it died next month... still, it looks like it'll end up replaced because of its small size before failure, and might live its last year or three as a bcache drive.
Lisp has it's points...but it's not that great. And many of the libraries that I want to use are a real pain to use from it. And the only decent development environment I've found is actually for Scheme (Racket), and while it provides, e.g., futures, it doesn't actually execute the code in parallel. (Yes, I know that's not actually a criticism of Common Lisp. For that stick with the libraries and the lack of a development environment.) P.S.: I once, long ago, bought a copy of Franz Lisp (my first common lisp). It was OK, but not great. And updating it would have cost me the other arm and leg. A usabe version isn't cheap. So I formed my opinions recently based on SBCL and CMUCL.
Emacs with SLIME nowadays is pretty nice. I think it's the best language environment I've ever used really, and what keeps me going back to CL despite knowing better (shouldn't have picked up SML...). The debugger is particularly excellent, and the inspector, xref support, etc. aren't too shabby either. As for libraries, there are plenty of excellent libraries for most every problem domain, but finding them over the half-finished ones and then managing your personal library... was unpleasant. Until Quicklisp appeared a couple of years ago. Now finding/installing/loading libraries is downright trivial: (ql:quickload #:SYSTEM) and you're done (Quicklisp will fetch the system and any dependencies if they are not available locally). It makes deploying programs muuuuuuch simpler (how much time I wasted keeping my development and deployment environments in sync, oi!). It also has the equivalent of apt-get upgrade, makes life easy when you're someone working on a system in quicklisp (you can use common-lisp-controller to make all Lisps on the machine prefer your development copy), and even manages your SLIME install (finally making it accessible to newcomers who have no idea what their .emacs is).
CL has two things going for it: the standard provides a very complete language (and there's community consensus on extensions for threading, networking, etc.), and the Common Lisp Object System is the best OO language available. Of course, those functional programming folks say OO is sin...
Shame Quad Stereo took Ambisonics with it. One of those things I wish I never learned existed since it is unlikely the industry will ever start using it again, despite everything being a computer now and there being no need for expensive receivers and whatnot... just point and click a gui to tell the machine where your speakers are and go.
I'm just imagining the darkplaces port of Quake at that resolution...
That's why you use the Osmand~ build by the community (which is in f-droid of course) which removes all of those restrictions. Of course, I probably should send them ten bucks to fight the good fight.
F-Droid has a pretty good catalog nowadays. I've eliminated everything proprietary from my phone life except for Google Maps and those pesky hardware drivers. Osmand is pretty close to replacing Maps too... navigation basically works (even offline, although I've yet to try using it for more than echoing routes I already know) but POI searching is hit and miss (e.g. when searching for my bank it says the closest location is 17mi away, when there's one about 3mi away). It's actually nicer in a number of ways: maps and POI data can be stored offline (I have my entire state stored, what's 400M when you've got a 16G SD card?), you can record GPX routes (without eating tons of battery even), navigation can be simulated, it has a handy elevation and distance tool (great for biking), ...
An agricultural region is the perfect place to put a nuclear reactor... dense, centralized power generation, leaving the fertile land for growing food instead of generating power.
For me, the best improvement is that joysticks are hot pluggable now. So now all of the obnoxiousness with deprecating use of the linux joystick protocol in favor of evdev and losing calibration and button remapping is finally worth it. Combined with the sixaxis daemon, emulators and native games are downright pleasant to use nowadays (yeah yeah, you have to give evil Sony tons of money, but I like to delude myself into thinking the input device people aren't as evil as the rest of the company). If only most programs didn't get confused by the accelerometers making configuration a pain (dear fellow hackers: please require an axis to change by some threshold and not just have a non-zero value in auto-configuration. I'm looking at you armagetronad).
Then.... write your own damn game library if you don't want to play nice.
The anti-copyleft trend in the "open source" world has been awful. Possibly because the kids these days don't remember how awful it was before there was Free Software for basically any task you needed. But they'll know soon enough...
She was my senator when REALID passed... after running on a campaign to oppose it, and to always vote for principles instead of a voting record she... voted for it because her voting record could not be tarnished by voting against a defense appropriations bill (dang riders). The blatant hypocrisy in the letter her staff sent to me was astounding.
Easy: you don't have access to the kernel.
Is that really any different than any other eager language though? The C equivalent would be print (eval (read (STDIN)));. All you are doing is shifting the location of the parenthesis, and adding more punctuation.
You've never used CLOS then, eh? The optimization you described is a classic use of the metaobject protocol to redefine the representation of instances through a metaclass. You get the performance boost without sacrificing the power of abstraction.
Of course, the SML/Haskell folks would tell you OO is doomed, but only because using a proper type system and algebraic types allows the compiler to do all of the hard stuff for you...
Also, languages like SML and F# can theoretically (and sometimes in practice do) generate code that is a lot more efficient than C, and not tied to a specific style of Von Neumann machine. That, and garbage collection has complexity bounds whereas malloc/free do not, not having managed memory leads to a lot of pointless copying (and nowadays the memory controller is what kills you so deep sharing of structure is always a huge win), etc.
And those expressive type systems happen to save programmer time too. I was personally amazed at how quickly I was able to dive into a large SML code base not even knowing SML and actually make changes that were pushed into production and didn't blow up (after figuring out the magic decoder ring for type errors that is).
The FAQ claims they have a working AHCI driver.
Yes, I mixed up the file format (ical) with the sync protocol (caldav). Thanks for catching that.
Hell, they installed a steam turbine from the unit at TMI that melted down over at Shearon-Harris near me!
I feel perfectly safe, and now that they've cancelled the plant expansion I am tempted to move a bit further south to get closer to Vogtle... why people hate safe and long-term cheap power is beyond me.
I think you are ignoring the external cost of keeping spent fuel from LWRs around... the volume isn't insurmountable right now because we're not generating most of our power using it. There's also the waste stream from initial processing; at least if the U.S. opts to kill SILEX after running the pilot plant in Wilmington for a while...
Supposedly Molten Salt Reactors could be built that would ease reprocessing (if the other material issues with those pesky Fluoride Salts interacting with metal can be solved of course). Even solid metal rods are better than oxide rods...
I feel like the waste from reprocessing problem is surmountable. We've suspended most research into efficient reprocessing because of the non-proliferation treaty, who knows what throwing a few dozen billion at the problem could do.