I coming back to C# programming after some years of HTML/ASP. I came across these lines and cannot find what it does. It is a method in a class:  private string PeekNext() {     if (pos &lt; 0)         // pos &lt; 0 indicates that there are no more tokens         return null;     if (pos &lt; tokens.Length)     {         if (tokens[pos].Length == 0)         {             ++pos;             return PeekNext();         }         return tokens[pos];     }     string line = reader.ReadLine();     if (line == null)     {         // There is no more data to read         pos = -1;         return null;     }     // Split the line that was read on white space characters     tokens = line.Split(null);     pos = 0;     return PeekNext(); }   Is it calling itself until some of the other Returns happens?  What is happening here, never seen a method returning itself!? What is Returned, empty string or what...? Or maybe I just missed it before.  Maybe simple but puzzles me.
One of the topics that seems to come up regularly on mailing lists and online discussions is the merits (or lack thereof) of doing a Computer Science Degree. An argument that seems to come up time and again for the negative party is that they have been coding for some number of years and they have never used recursion.  So the question is:   What is recursion? When would I use recursion? Why don't people use recursion?
Permutation with prime order, fixed point Let $M$ be a finite set and $\varphi$ a permutation of this set with prime order $q$. How do I show that $\varphi$ has a fixed point if $q$ is not a divisor of $|M|$? Elements of $\mathbb Q(2^{1/3})$ Interesting topics to research in mathematical physics for undergraduates Equivalent definitions for simple connectivity I want to construct a complex power series with the radius of convergence $R=1$ that diverges in:  1) $k$ points on the circle $\{|z|=1\}$.  2) countable number of points on the circle  I have already crafted series that converges on the whole circle and diverges on the whole circle.  Can anybody help with the problem?  Update: I have googled a series $\sum{\frac{z^{kn}}{kn}}$ that is an answer for 1). Though I still need help for the countable case. Let $G$ be a graph of minimum degree $k&gt;1$. Show that $G$ has a cycle of length at least $k+1$.  How would I show this? I understand that a cycle is a sequence of non-repeated vertices and the degree of a graph is the number of neighbors the vertex has. What is the proper way to explain the twin paradox? The paradox in the  is that the situation appears symmetrical so each twin should think the other has aged less, which is of course impossible.  There are a thousand explanations out there for why this doesn't happen, but they all end up saying something vague like it's because one twin is accelerating or you need general relativity to understand it.  Please will someone give a simple and definitive explanation for why both twins agree on which twin is younger when they meet for the second time? What is the importance of eigenvalues/eigenvectors? Prove if $\operatorname{ord}(a)=m$, $\operatorname{ord}(b)=n$, and $\operatorname{gcd}(m,n)=1$, then $\operatorname{ord}(ab)=mn$.   I was reading this and was thinking how this proof would look like. I tried to do it and am not sure if this is correct. Here is what I did:  If $a$ and $b$ commute then $(ab)^{mn} = a^{mn} * b^{mn} = (a^m)^n * (b^n)^m = 1 * 1 = 1.$ So $ord(ab) | mn$.  Now, take $k = \operatorname{ord}(ab) = m^\prime * n^\prime$ where m' is relatively prime with $n$ and $n'$ is relatively prime with $m$. By the result above $m' | m$ and $n' | n$. Now we have $((ab)^k)^{m/m'} = 1$ since $(ab)^k=1$. But on the other hand, by the commutativity:  $$((ab)^k)^(m/m') =$$  $$((ab)^(m' * n'))^(m/m') =$$  $$ a^{n'm} * b^{n'm} = $$  $$(a^m)^{n'} * b^{n'm'}=$$  $$b^{n'm'} = 1$$  This implies that $n' * m'$ is divisible by $n$. But $m'$ is relatively prime with $n$, so we must have $n' = n.$ By symmetry, $m' = m$. So $ord(ab) = mn$.  Just to say this again, I want to prove if $a$ and $b$ commute and $m$ and $n$ are relatively prime then   $$ord(ab)=mn.$$   The comments are vague. I guess this must be the answer then and there probably is not another way to do this. Do neutrinos not couple to the Higgs field? I was reading the CernCourier, my favorite source of message on Higgs and friends. I was rather shocked, when I saw this:     "The mechanism by which neutrino mass is generated is not known."   What? Not known?  says: In Higgs-based theories, the property of 'mass' is a manifestation of potential energy transferred to particles when they interact ("couple") with the Higgs field, which had contained that mass in the form of energy.  Does this mean that neutrinos don't couple to the Higgs field? Is my model any good, based on the diagnostic metric ($R^2$/ AUC/ accuracy/ RMSE etc.) value? I've fitted my model and am trying to understand whether it's any good. I've calculated the recommended metrics to assess it ($R^2$/ AUC / accuracy / prediction error / etc) but do not know how to interpret them. In short, how do I tell if my model is any good based on the metric? Is an $R^2$ of 0.6 (for example) sufficient to let me proceed to draw inferences or base scientific/business decisions?     This question is intentionally broad, to cover a wide variety of situations that members frequently encounter; such questions could be closed as duplicates of this one. Edits to broaden the scope beyond the metrics mentioned here are welcome, as are additional answers - particularly those that offer insight about other classes of metrics. Suppress black box at end of line Under TeX, when I write a line too long, it prints a fat black box at the end of the line.  That is probably a feature, but I dislike it.  How to turn that OFF? Is there a command-line option or something else?   I usually use LaTeX, but I have a complicated file which happens to be plain TeX. Show $S = f^{-1}(f(S))$ for all subsets $S$ iff $f$ is injective Let $f: A \rightarrow B$ be a function. How can we show that for all subsets $S$ of $A$, $S \subseteq f^{-1}(f(S))$? I think this is a pretty simple problem but I'm new to this so I'm confused.  Also, how can we show that $S = f^{-1}(f(S))$ for all subsets $S$ iff $f$ is injective? I need to find limit points of the set $\{  \frac{1}{n} +\frac{1}{m} \mid n, m = 1,2,3,\dots \}$.  My try :   If both $m$ and $n$ tend to very large values say $\infty$ then the value of $\{ \frac{1}{n} +\frac{1}{m} \}$ tends to $0$, and if only one of $m$ or $n$ tends to very large values, then the set $\{ \frac{1}{n} \mid n=1,2,3,\dots\} $ acts as limit points.   So is it true that a set of limit points is $\{0\}$ $\cup$  $\{\frac{1}{k} \mid k=1,2,3,\dots \}$?  How should I write this proof rigorously? Having a UV maping problem, does anyone know what this is, and how to fix it? Ubuntu 16.04 slow boot (apt-daily.service) My boot is horribly slow, and I don't know why.  $ systemd-analyze  Startup finished in 10.975s (kernel) + 49.732s (userspace) = 1min 708ms $ systemd-analyze blame           34.971s apt-daily.service          20.590s snapd.refresh.service          17.113s grub-common.service          16.033s apport.service          16.027s networking.service          15.894s ondemand.service          15.860s irqbalance.service          15.655s speech-dispatcher.service          11.695s ModemManager.service           9.772s accounts-daemon.service           8.626s NetworkManager-wait-online.service           8.058s systemd-logind.service           8.053s bluetooth.service           7.944s gpu-manager.service           7.896s alsa-restore.service           7.892s pppd-dns.service           7.882s rsyslog.service           7.860s avahi-daemon.service           7.844s dev-sda1.device           7.842s systemd-user-sessions.service           7.648s lightdm.service           7.610s teamviewerd.service           6.445s apparmor.service   Also, during boot-up, I see a message that says something like:  device descriptor read/all, error -62 ata1 softreset failed (device not ready) #most of the times error loading journal #(sometimes) Test WP failed, assume Write Enabled Asking for cache data failed     #most of the times Assuming drive cache: write through   apt-daily.service slows the boot the most. Any idea on how to tackle that?  I have Ubuntu MATE 16.04. Some improvements to blockquotes Update  Sorry for the delay! I’ve been thinking about this feedback in between my other projects, and I’ve landed where I’ve started 😕  I’ve made sure to continue highlighting spoilers in gray. The differentiation from normal blockquotes is super important since their behavior is so different. I explored keeping spoilers yellow, but that still has the same theming issues throughout the network. Red seemed too powerful, with its error connotations.  I understand completely that folks are using blockquotes to highlight images. However, I don’t think that’s a  we want to formally pave. I’m ok with being opinionated here—blockquotes should be used for quoting, not as a way to highlight images. I understand that this will be frustrating to Machavity who made excellent points about differentiation in his answer, but I don’t think image highlighting ought to dictate how blockquotes are styled.  I’m also cautious of adding borders to images as explored by user1306322 for the same reasons and for the additional fear of being too prescriptive in how we display images there.  It’s a tough one! I went back and forth with the design team and I still think this is the best path forward.  Original post  We’re making a few changes to blockquotes soon. Historically, we had a bit of feedback that the yellow backgrounds were overpowering, reducing the contrast of the quote itself. The yellow border also lacks contrast with the background. Others have indicated that there should be  and between .  These yellows also compete with theming in our communities, especially those with backgrounds that aren’t perfectly white like English Language &amp; Usage and Role-Playing Games.   We’re proposing we switch to a single gray bar in our blockquotes. This should fix those theming issues and make it easier to distinguish between quotes, spoilers and code.  This will also improve blockquote nesting, since our current nesting is a mess because the darker yellow bar is barely noticeable on the paler yellow background.  Spoilers should pretty much behave exactly the same way. More room for later improvements there.  Here’s how our current blockquotes look. You can click to expand:    Here’s what we propose:    There is a lot of prior art out there for this approach. GitHub has styled theirs this way for a long time. So has Slack.     Let me know what y’all think. I think these changes will be an improvement, and I hope you do too.  Huge thanks to Catija for gathering some meta posts on blockquotes and creating an awesome blockquote playground post for testing. strcmp on a line read with fgets Bibliographies from multiple .bib files I would like to use multiple .bib files for my article, such as file1.bib, file2.bib. However, I would like my references not to be separated (such as &quot;Primary sources&quot;, &quot;Secondary sources&quot;, etc.). These bibliographies just need to be merged into one. One way to do this is to copy-paste these .bib files into one .bib file, and this would solve the problem. However, I would like to keep it split into several .bib files, by topic (file1.bib contains articles on topic1, file2.bib contains articles on topic2, and so on). I tried to do \bibliographystyle{alpha}  \bibliography{file1} \bibliography{file2}  but this just gives me the same bibliography twice! Outlook from time to time makes an operation 'Send and Receive.' This can sometimes be quite slow and Outlook hangs while this is done.    Is is possible to set different intervals for different mail accounts (if user has multiple accounts configured within Outlook, e.g., main Exchange account and one or more IMAP accounts) If yes (or even if only for some [e.g., IMAP accounts], where in the settings it can be configured?  (e.g., Outlook 2007)