Here's why I have an issue with talking about the environment of the parent as opposed to environment of the gene, which is what I think really matters. Consider a gene that causes an organism to be exposed to more radiation than its alleles (e.g. a small organism crawling around radio-active dumps seeking pockets of heat/moisture/whatever). This will likely cause faster mutation rates, which in turn is beneficial for smaller genes (since larger ones are less likely to have high copying fidelity in such an environment), causing them to become more frequent. I don't think that talking about these types of situations in terms of the organism's environment is remotely meaningful. So no, I don't think there is anything Lamarckian about it.
Dawkins talks about this kind of supposed "Lamarckism" in "The Extended Phenotype." In many of these studies, the genome/replicating unit is in fact modified, which affects reproduction and heredity. Acquired characteristics of the replicating entity are passed on, *not* acquired characteristics of the organism, and that is fundamentally Darwinian. Some will argue that this isn't a valid difference, but consider things like myotic drive, cross-over etc. These are all modifications of the replicating entity, and in some sense are "acquired," because they depend on the embryological context. To be truly Lamarckian, characteristics *not* affecting the genome would have to have some heredity, which they don't.
This is some e-lisp to do auto-completion (using dabbrev-expand). If after a semicolon at the end of a line or in the initial whitespace, TAB will indent as usual, otherwise it will auto-complete. C-TAB is mapped to always indent
What's the point of encryption if you can't protect against man in the middle attacks? It might as well be security by obscurity at this point... what exactly are you getting out of your encryption if you can't guarantee that no one is sniffing your packets?
I will second the that; tick-tack-toe definitely brings back some good memories. It was the first project that truly got me stuck on a problem that I couldn't solve right away (the recursive minimax search part), but once I got it, I had way more drive and inspiration to program. Also, tick-tack-toe has a lot of simple parts that can get you warmed up to the more difficult crux of the problem and doesn't force you to deal with graphics and lots of other stuff that requires a lot of very specific knowledge about a particular system or API. I guess some people really like graphics programming, but I think there is a rather steep learning curve to the programming part, whereas game and game AI programming are direct implementations of the logic (at least if you keep it to the command line). Plus, if he's interested in graphics, after creating a command line tick-tack-toe program, he can make a GUI for it.
I'm rather partial to that myself, but after that I dove head first into AI programming and never looked back.
I disagree. Think of a loop where a break condition depends on the validity of, say, Goldbach's conjecture. No static analyzer can tell when (or if) such a program will halt. This is an extreme example, of course, but any sufficiently complicated expression that affects what code path is taken and/or termination of the program will pretty much have the same problem when it comes to static analysis. "Intractable recursion," as you call it, is computationally equivalent to unbounded loops. So, technically, anything that is in the body of an unbounded loop, except for the most trivial cases, a static analyzer cannot catch.
I realize you probably don't really know yet (and if you think you do, there's probably a lot out there that might change your mind), but it really all depends on whether you like the theory classes or not over the more engineering oriented classes. I was fortunate to go to a university that was both a highly regarded engineering school and a highly regarded liberal arts school, so I really got to see both sides of the coin.
I was more into the theory courses than the more practically/engineering oriented courses (algorithms as opposed to operating systems), but at the same time I would say that at the end of the day, as much as I sorta hated some of the liberal arts classes, I ended up minoring in film, which was really a great way to take my mind off of CS.
On the other hand, I definitely wouldn't have gone to the liberal arts school if the CS program wasn't top notch. From what you are saying, it seems like the CS program is pretty crappy. People will recognize big school names, but only if the CS program is good there (small or not). If you think you are really passionate about CS and don't think you will be challenged at the liberal arts school, you will definitely regret it in the future. That being said, you might have a much better time there, as long as (as some other posters have mentioned) you are reasonably self-taught.
bottom line: if the liberal arts school has a good CS program and you think you like theory, definitely go for it. hiring, shmiring. I do think that if you are well liked at an interview (as long as you are smart), that goes a LOONNGG way.
I think your point is valid, but at the same time different people enjoy different kind of tourism/traveling/whatever your want to call it. I know plenty of people who enjoy staying in those high rise hotels with 17 pools on the property and 3 shitty restaurants, whereas others prefer a more humble setting. Yes, the locals thought they could make more money, but they get those ideas from people who make comments like "it would be nice if your property had a nice pool and a restaurant on property" as opposed to people who say "wow, this place is so beautiful and unspoiled." so, although the people with the first kind of preferences aren't "worse" people, they certainly give the locals the ideas to ruin the place for the people with the second kinf of preferences.
It doesn't make much sense to say that something is not relative. Every reference frame is relative, but some reference frames are inertial frames, whereas others are not. Since earth's frame is much less inertial than the Sun's reference frame (it's acceleration is greater relative to its frame), it makes more sense to say that the Earth orbits the Sun (since the Sun doesn't accelerate very much).
Consider the original statement (4000% efficiency, and I don't think the calculations are wrong). Adding a spring or any resistance doesn't increase the total energy of the system. If you were correct, then there would be enough energy to lift the weights all over again, creating a perpetual motion machine.
Interestingly, something very similar was done with respect to the hour bicycle record. Eddy Merckx set the record in 1972, which stood for some time, but when the next record was set, it was subsequently broken a number of times in a very short period of time, mostly due to mechanical improvements in the bicycle being ridden. Since then, the record was split in two-- one for "Merckx style" bikes and another that allowed any human propelled wheeled vehicle.
I agree with your point, but I think you are wrong about chaotic systems. Chaos theory talks about lack of knowledge about initial conditions, and how small differences in such conditions can lead to chaotic behavior. Given perfect knowledge, however, there are is no non-predictability; "truly chaotic" has no meaning in the context of a simulation that is assumed to be the "true reality", since the simulator is considered to have perfect knowledge.
I am not entirely sure what you mean by bitmap graphics; the math in the underlying entries is all LaTeX. Sure, this sort of content might be better tagged, but I don't think there is an issue with the format of the content itself.
you are correct; i was thinking of the faster multiplication algorithms (the standard one would be O(n^2) indeed) and didn't consider speed of decryption.
Encryption/decryption grows linearly in the length of the key, and cracking is [considered] exponential in the length of the key. the problem is that shor's algorithm on a quantum computer is also (IMHO) linear in the length of the key. Hell, even if it was a decent order polynomial in the length of the key you could never be "faster" (in the tractable vs. intractable sense). so, no, you can't even do it for now
Tridge telnetted into the BK port and typed "help," getting back
help
? - print this help
abort - abort resolve
check - check repository
clone - clone the current repository
help - print this help
httpget - http get command
[...]
hate replying to myself, but it missed what they key part...
(require 'flyspell) (require 'cc-subword)
(defvar ps-flyspell-check-subwords nil "*Non-nil if Flyspell should check subwords separately.
If this variable is set to non-nil, an identifier such MyLongFunctionName will be treated as four separate words (My, Long, Function, Name) for the purposes of Flyspell.")
(defun flyspell-get-word (following &optional extra-otherchars) "Return the word for spell-checking according to Ispell syntax. If optional argument FOLLOWING is non-nil or if `flyspell-following-word' is non-nil when called interactively, then the following word \(rather than preceding\) is checked when the cursor is not over a word. Optional second argument contains otherchars that can be included in word many times.
that doesn't seem to work properly for me. here's mine (a minor modification)
it also ignores all words less than 5 characters long; this seems to work well with code. i built up a private aspell dictionary using all stdlib functions and reserved c/c++ keywords
(defun flyspell-get-word (following &optional extra-otherchars)
"Return the word for spell-checking according to Ispell syntax. If optional argument FOLLOWING is non-nil or if `flyspell-following-word' is non-nil when called interactively, then the following word \(rather than preceding\) is checked when the cursor is not over a word. Optional second argument contains otherchars that can be included in word many times.
When I was in college, my roommate was doing neuro-bio research and needed a bunch of random numbers. One day, I saw him sitting around and rolling dice for over two hours. Naturally, I thought he was sort of nuts, but he informed me that the professor whose project this was had told him to do it that way because it's the only way to get true random numbers. I offered him access to a variety of random number sources and even offered to generate the range he want with a simple program, but he refused nevertheless. So yeah, there are definitely still people rolling dice to generate random numbers, as crazy as that might seem for us Comp-Sci types. *shrug*
i suggest you go check out the gcc bounds checking patch, which does, in fact, do perform bounds checking quite well. in the default compiler, -fbounds-check doesn't really do anything special, but -fbounds-checking in the modified compiler does quite a bit.
all the other responses are correct, but they do not get at why i was necessary in the first place (IIRC). in general, in order to solve any real quadratic equation, i.e an equation of the form ax^2 + bx + c = 0 you can find all the real solutions, if they exist, entirely without using i, i.e. entirely using real numbers. there are some imaginary solutions, but this is certainly not a reason to acknowledge i as necessary. however, if you try to solve cubic equations, there exist equations with real coefficients, i.e. where a,b,c,d in ax^3 + bx^2 + cx + d = 0 are all non-imaginary but the solution to the equation requires steps that involve i. this shows that i is indeed necessary. hope that helps.
Here's why I have an issue with talking about the environment of the parent as opposed to environment of the gene, which is what I think really matters. Consider a gene that causes an organism to be exposed to more radiation than its alleles (e.g. a small organism crawling around radio-active dumps seeking pockets of heat/moisture/whatever). This will likely cause faster mutation rates, which in turn is beneficial for smaller genes (since larger ones are less likely to have high copying fidelity in such an environment), causing them to become more frequent. I don't think that talking about these types of situations in terms of the organism's environment is remotely meaningful. So no, I don't think there is anything Lamarckian about it.
Dawkins talks about this kind of supposed "Lamarckism" in "The Extended Phenotype." In many of these studies, the genome/replicating unit is in fact modified, which affects reproduction and heredity. Acquired characteristics of the replicating entity are passed on, *not* acquired characteristics of the organism, and that is fundamentally Darwinian. Some will argue that this isn't a valid difference, but consider things like myotic drive, cross-over etc. These are all modifications of the replicating entity, and in some sense are "acquired," because they depend on the embryological context. To be truly Lamarckian, characteristics *not* affecting the genome would have to have some heredity, which they don't.
This is some e-lisp to do auto-completion (using dabbrev-expand). If after a semicolon at the end of a line or in the initial whitespace, TAB will indent as usual, otherwise it will auto-complete. C-TAB is mapped to always indent
(add-hook 'c-mode-common-hook 'autotab)
(add-hook 'perl-mode-hook 'autotab)
(add-hook 'cperl-mode-hook 'autotab)
(defun dabbrev-quick ()
(interactive)
(if (save-excursion
(if (not (looking-at "^")) (backward-char))
(while (and (looking-at "[ \t]") (not (looking-at "^"))) (backward-char))
(looking-at "^\\|;")) (indent-for-tab-command) (dabbrev-expand nil))
)
(defun autotab ()
(local-set-key [tab] 'dabbrev-quick)
(local-set-key [C-tab] 'indent-for-tab-command)
)
What's the point of encryption if you can't protect against man in the middle attacks? It might as well be security by obscurity at this point... what exactly are you getting out of your encryption if you can't guarantee that no one is sniffing your packets?
I will second the that; tick-tack-toe definitely brings back some good memories. It was the first project that truly got me stuck on a problem that I couldn't solve right away (the recursive minimax search part), but once I got it, I had way more drive and inspiration to program. Also, tick-tack-toe has a lot of simple parts that can get you warmed up to the more difficult crux of the problem and doesn't force you to deal with graphics and lots of other stuff that requires a lot of very specific knowledge about a particular system or API. I guess some people really like graphics programming, but I think there is a rather steep learning curve to the programming part, whereas game and game AI programming are direct implementations of the logic (at least if you keep it to the command line). Plus, if he's interested in graphics, after creating a command line tick-tack-toe program, he can make a GUI for it.
I'm rather partial to that myself, but after that I dove head first into AI programming and never looked back.
I'd like to know one thing: how do you manage to mistype a quote... as a backtick??
I disagree. Think of a loop where a break condition depends on the validity of, say, Goldbach's conjecture. No static analyzer can tell when (or if) such a program will halt. This is an extreme example, of course, but any sufficiently complicated expression that affects what code path is taken and/or termination of the program will pretty much have the same problem when it comes to static analysis. "Intractable recursion," as you call it, is computationally equivalent to unbounded loops. So, technically, anything that is in the body of an unbounded loop, except for the most trivial cases, a static analyzer cannot catch.
I realize you probably don't really know yet (and if you think you do, there's probably a lot out there that might change your mind), but it really all depends on whether you like the theory classes or not over the more engineering oriented classes. I was fortunate to go to a university that was both a highly regarded engineering school and a highly regarded liberal arts school, so I really got to see both sides of the coin.
I was more into the theory courses than the more practically/engineering oriented courses (algorithms as opposed to operating systems), but at the same time I would say that at the end of the day, as much as I sorta hated some of the liberal arts classes, I ended up minoring in film, which was really a great way to take my mind off of CS.
On the other hand, I definitely wouldn't have gone to the liberal arts school if the CS program wasn't top notch. From what you are saying, it seems like the CS program is pretty crappy. People will recognize big school names, but only if the CS program is good there (small or not). If you think you are really passionate about CS and don't think you will be challenged at the liberal arts school, you will definitely regret it in the future. That being said, you might have a much better time there, as long as (as some other posters have mentioned) you are reasonably self-taught.
bottom line: if the liberal arts school has a good CS program and you think you like theory, definitely go for it. hiring, shmiring. I do think that if you are well liked at an interview (as long as you are smart), that goes a LOONNGG way.
I think your point is valid, but at the same time different people enjoy different kind of tourism/traveling/whatever your want to call it. I know plenty of people who enjoy staying in those high rise hotels with 17 pools on the property and 3 shitty restaurants, whereas others prefer a more humble setting. Yes, the locals thought they could make more money, but they get those ideas from people who make comments like "it would be nice if your property had a nice pool and a restaurant on property" as opposed to people who say "wow, this place is so beautiful and unspoiled." so, although the people with the first kind of preferences aren't "worse" people, they certainly give the locals the ideas to ruin the place for the people with the second kinf of preferences.
may I ask what any of these have to do with window managers?
It doesn't make much sense to say that something is not relative. Every reference frame is relative, but some reference frames are inertial frames, whereas others are not. Since earth's frame is much less inertial than the Sun's reference frame (it's acceleration is greater relative to its frame), it makes more sense to say that the Earth orbits the Sun (since the Sun doesn't accelerate very much).
Consider the original statement (4000% efficiency, and I don't think the calculations are wrong). Adding a spring or any resistance doesn't increase the total energy of the system. If you were correct, then there would be enough energy to lift the weights all over again, creating a perpetual motion machine.
Interestingly, something very similar was done with respect to the hour bicycle record. Eddy Merckx set the record in 1972, which stood for some time, but when the next record was set, it was subsequently broken a number of times in a very short period of time, mostly due to mechanical improvements in the bicycle being ridden. Since then, the record was split in two-- one for "Merckx style" bikes and another that allowed any human propelled wheeled vehicle.
I agree with your point, but I think you are wrong about chaotic systems. Chaos theory talks about lack of knowledge about initial conditions, and how small differences in such conditions can lead to chaotic behavior. Given perfect knowledge, however, there are is no non-predictability; "truly chaotic" has no meaning in the context of a simulation that is assumed to be the "true reality", since the simulator is considered to have perfect knowledge.
I am not entirely sure what you mean by bitmap graphics; the math in the underlying entries is all LaTeX. Sure, this sort of content might be better tagged, but I don't think there is an issue with the format of the content itself.
the number field sieve is subexponential. http://en.wikipedia.org/wiki/General_number_field_sieve. you are correct about RSA, but the keys are of asymptotically different size, hence the difference in running time.
*crushed*
you are correct; i was thinking of the faster multiplication algorithms (the standard one would be O(n^2) indeed) and didn't consider speed of decryption.
s/linear/polynomial/g
s/exponential/non-polynomial/g
there
Encryption/decryption grows linearly in the length of the key, and cracking is [considered] exponential in the length of the key. the problem is that shor's algorithm on a quantum computer is also (IMHO) linear in the length of the key. Hell, even if it was a decent order polynomial in the length of the key you could never be "faster" (in the tractable vs. intractable sense). so, no, you can't even do it for now
on a related note, it was Tridge, not Allison :)
What is even sadder, is that there wasn't really any "engineering" involved, just a little common sense.
http://lwn.net/Articles/132938/
Tridge telnetted into the BK port and typed "help," getting back
help
? - print this help
abort - abort resolve
check - check repository
clone - clone the current repository
help - print this help
httpget - http get command
[...]
*wow*
hate replying to myself, but it missed what they key part...
;; mostly copied from flyspell-small-region
;; (flyspell-word)
(require 'flyspell)
(require 'cc-subword)
(defvar ps-flyspell-check-subwords nil
"*Non-nil if Flyspell should check subwords separately.
If this variable is set to non-nil, an identifier such
MyLongFunctionName will be treated as four separate words (My,
Long, Function, Name) for the purposes of Flyspell.")
(defadvice flyspell-region (around subword-checking (beg end))
"Check individual subwords if ps-flyspell-check-subwords is set."
(if ps-flyspell-check-subwords
(save-excursion
(if (> beg end)
(let ((old beg))
(setq beg end)
(setq end old)))
(goto-char beg)
(let ((count 0))
(while (< (point) end)
(if (and flyspell-issue-message-flag (= count 100))
(progn
(message "Spell Checking...%d%%"
(* 100 (/ (float (- (point) beg)) (- end beg))))
(setq count 0))
(setq count (+ 1 count)))
(if (>= (length (car (save-excursion (flyspell-get-word nil)))) 5)
(flyspell-word))
(sit-for 0)
(let ((cur (point)))
(c-forward-subword 1)
(if (and (< (point) end) (> (point) (+ cur 1)))
(backward-char 1)))))
(backward-char 1)
(if flyspell-issue-message-flag (message "Spell Checking completed."))
(if (>= (length (car (save-excursion (flyspell-get-word nil)))) 5)
(flyspell-word) 'nil))
ad-do-it))
(ad-activate 'flyspell-region)
(defun flyspell-get-word (following &optional extra-otherchars)
"Return the word for spell-checking according to Ispell syntax.
If optional argument FOLLOWING is non-nil or if `flyspell-following-word'
is non-nil when called interactively, then the following word
\(rather than preceding\) is checked when the cursor is not over a word.
Optional second argument contains otherchars that can be included in word
many times.
Word syntax described by `flyspell-dictionary-alist' (which see)."
(let* ((flyspell-casechars (flyspell-get-casechars))
(flyspell-casechars-non-initial (if ps-flyspell-check-subwords
(downcase flyspell-casechars)
flyspell-casechars))
(flyspell-not-casechars (flyspell-get-not-casechars))
(ispell-otherchars (ispell-get-otherchars))
(ispell-many-otherchars-p (ispell-get-many-otherchars-p))
(word-regexp (concat flyspell-casechars
flyspell-casechars-non-initial
"*\\("
(if (not (string= "" ispell-otherchars))
(concat ispell-otherchars "?"))
(if extra-otherchars
(concat extra-otherchars "?"))
that doesn't seem to work properly for me. here's mine (a minor modification)
;; mostly copied from flyspell-small-region ;; (flyspell-word)
it also ignores all words less than 5 characters long; this seems to work well with code. i built up a private aspell dictionary using all stdlib functions and reserved c/c++ keywords
(defadvice flyspell-region (around subword-checking (beg end))
"Check individual subwords if ps-flyspell-check-subwords is set."
(if ps-flyspell-check-subwords
(save-excursion
(if (> beg end)
(let ((old beg))
(setq beg end)
(setq end old)))
(goto-char beg)
(let ((count 0))
(while (= (length (car (save-excursion (flyspell-get-word nil)))) 5)
(flyspell-word))
(sit-for 0)
(let ((cur (point)))
(c-forward-subword 1)
(if (and ( (point) (+ cur 1)))
(backward-char 1)))))
(backward-char 1)
(if flyspell-issue-message-flag (message "Spell Checking completed."))
(if (>= (length (car (save-excursion (flyspell-get-word nil)))) 5)
(flyspell-word) 'nil))
ad-do-it))
(ad-activate 'flyspell-region)
(defun flyspell-get-word (following &optional extra-otherchars)
"Return the word for spell-checking according to Ispell syntax.
If optional argument FOLLOWING is non-nil or if `flyspell-following-word'
is non-nil when called interactively, then the following word
\(rather than preceding\) is checked when the cursor is not over a word.
Optional second argument contains otherchars that can be included in word
many times.
Word syntax described by `flyspell-dictionary-alist' (which see)."
(let* ((flyspell-casechars (flyspell-get-casechars))
(flyspell-casechars-non-initial (if ps-flyspell-check-subwords
(downcase flyspell-casechars)
flyspell-casechars))
(flyspell-not-casechars (flyspell-get-not-casechars))
(ispell-otherchars (ispell-get-otherchars))
(ispell-many-otherchars-p (ispell-get-many-otherchars-p))
(word-regexp (concat flyspell-casechars
flyspell-casechars-non-initial
"*\\("
(if (not (string= "" ispell-otherchars))
When I was in college, my roommate was doing neuro-bio research and needed a bunch of random numbers. One day, I saw him sitting around and rolling dice for over two hours. Naturally, I thought he was sort of nuts, but he informed me that the professor whose project this was had told him to do it that way because it's the only way to get true random numbers. I offered him access to a variety of random number sources and even offered to generate the range he want with a simple program, but he refused nevertheless. So yeah, there are definitely still people rolling dice to generate random numbers, as crazy as that might seem for us Comp-Sci types. *shrug*
i suggest you go check out the gcc bounds checking patch, which does, in fact, do perform bounds checking quite well. in the default compiler, -fbounds-check doesn't really do anything special, but -fbounds-checking in the modified compiler does quite a bit.
all the other responses are correct, but they do not get at why i was necessary in the first place (IIRC). in general, in order to solve any real quadratic equation, i.e an equation of the form ax^2 + bx + c = 0 you can find all the real solutions, if they exist, entirely without using i, i.e. entirely using real numbers. there are some imaginary solutions, but this is certainly not a reason to acknowledge i as necessary. however, if you try to solve cubic equations, there exist equations with real coefficients, i.e. where a,b,c,d in ax^3 + bx^2 + cx + d = 0 are all non-imaginary but the solution to the equation requires steps that involve i. this shows that i is indeed necessary. hope that helps.