October 07, 2014
On 10/07/2014 04:55 AM, Mike Parker wrote:
> On 10/7/2014 5:19 PM, Nick Sabalausky wrote:
>
>> Anyway, when I say "teach logic in schools" I just mean (at the very
>> least) the basic things: Like recognizing and identifying the basic
>> logical fallacies (no need necessarily to dive into the actual latin
>> names - the names aren't nearly as crucial as understanding the concepts
>> themselves), recognizing ambiguity, understanding *why* the fallacies
>> and ambiguity are flaws, and the problems and absurdities that can occur
>> when such things aren't noticed and avoided.
>
> In other words, critical thinking. This is something that, at least in
> America, is not at all part of the primary school experience.
>

Pretty much, yea.

In all my years of schooling, I only had one class that actually covered any of that stuff (as an actual stated topic anyway, rather than just as an implied part of another topic): It wasn't until college, *and* it was just an elective. Formal Logic, IIRC, or something along those lines, from the Philosophy dept (aiui, logic *is* considered a branch of philosophy, at least historically. Which does make sense IMO).

It was actually a good course (not much new to me though since I was already neck-deep in programming, which basically *IS* applied logic. But it's one of the few courses I've ever actually been impressed with.)

The downside of the course, though: Ever since I took it I've been ashamed at society for placing such incredibly minimal emphasis on something so crucially fundamental and important. :/ Just something that make me scream in by head "Yes! Everybody needs to know this!!!"

>>
>> This is VERY simple, and crucial, stuff. And yet I see SOOO many grown
>> adults, even ones with advanced graduate degrees, consistently fail
>> completely and uttery at basic logical reasoning in everyday life (and
>> we're talking very, very obvious and basic fallacies), that it's
>> genuinely disturbing.
>>
>>>
>
> I've personally seen two university courses offered under different
> guises that try to correct this problem. One is called "Introduction to
> Mathematical Thinking" and is taught by Keith Devlin at Stanford. The
> other is called "Think Again: How to Reason and Argue", headed by alter
> Sinnott-Armstrong at Duke. Despite the disparity in the course titles
> and the very different approaches taken by the instructors, the content
> is directed at the same goal -- pushing students to get past their
> cognitive biases and critically and logically examine any data presented
> to them.
>

Personally, I think that not presenting it *as* logic may be somewhat of a mistake. Makes it sounds almost like some self-help or management seminar or something. Less respectable-sounding, and obscures the true core nature of the material: logic.

But then again, MANY people seem to be repelled by any mention of logic, whereas I've aways been attracted to it, so maybe that's just my own bias.

> Sadly, American culture seems to increasingly encourage the opposite of
> critical thinking. It has almost become a badge of honor among some
> (rather large) circles to embrace a form of willful ignorance rooted in
> rejecting logic and hard, cold data in favor of falling victim to
> confirmation bias.
>

Unfortunate, yes.

Of course, there have *always* been things that have quite blatantly encouraged people to deliberately *not* think, reason, or question assumptions. So it's naturally not limited to just a modern american culture thing, FWIW.

October 07, 2014
On 10/06/2014 01:01 AM, Walter Bright wrote:
> On 10/5/2014 2:51 PM, Dicebot wrote:
>> On Sunday, 5 October 2014 at 20:41:44 UTC, Walter Bright wrote:
>>> On 10/5/2014 8:35 AM, Dicebot wrote:
>>>> I am fine with non-default being hard but I
>>>> want it to be still possible within legal language restricions.
>>>
>>> D being a systems language, you can without much difficulty do
>>> whatever works
>>> for you.
>>
>> Yes but it shouldn't be in undefined behaviour domain. In other words
>> there
>> needs to be a confidence that some new compiler optimization will not
>> break the
>> application completely.
>
> Relying on program state after entering an unknown state is undefined by
> definition.

What definition?

> I don't see how a language can make a statement like "it's
> probably ok".

E.g. type safety.
October 07, 2014
On 10/7/2014 7:52 PM, Nick Sabalausky wrote:
> On 10/07/2014 04:55 AM, Mike Parker wrote:
>> On 10/7/2014 5:19 PM, Nick Sabalausky wrote:

>
> In all my years of schooling, I only had one class that actually covered
> any of that stuff (as an actual stated topic anyway, rather than just as
> an implied part of another topic): It wasn't until college, *and* it was
> just an elective. Formal Logic, IIRC, or something along those lines,
> from the Philosophy dept (aiui, logic *is* considered a branch of
> philosophy, at least historically. Which does make sense IMO).

Yeah, my "Introduction to Logic" was branded PHIL 170 (I only know that because I just happened to find the syllabus in the front of my copy of Copi & Cohen -- the only book from college somehow managed to hold on to).

>>
>
> Personally, I think that not presenting it *as* logic may be somewhat of
> a mistake. Makes it sounds almost like some self-help or management
> seminar or something. Less respectable-sounding, and obscures the true
> core nature of the material: logic.
>
> But then again, MANY people seem to be repelled by any mention of logic,
> whereas I've aways been attracted to it, so maybe that's just my own bias.
>

Formal logic (which is what is typically taught in courses with "Logic" in the title) and critical thinking aren't quite the same thing, though. Logic as a means of probing arguments is just one tool in the critical thinker's toolbox. A lot of people can pick up how to draw a Venn diagram or call out a fallacy, but they fall short in their ability to actually understand where an opposing argument is coming from, or in expressing themselves in a way appropriate for their target audience, or in getting past their own biases. That takes a lot of hard work that isn't solved by mapping out truth tables.

---
This email is free from viruses and malware because avast! Antivirus protection is active.
http://www.avast.com

October 07, 2014
On 10/7/2014 6:56 AM, Timon Gehr wrote:
> On 10/06/2014 01:01 AM, Walter Bright wrote:
>> Relying on program state after entering an unknown state is undefined by
>> definition.
>
> What definition?

How can one define the behavior of an unknown state?

October 07, 2014
On 10/6/2014 4:06 PM, "Ola Fosheim Grøstad" <ola.fosheim.grostad+dlang@gmail.com>" wrote:
> On a positive note: the IOC managed to demand that the norwegian King ought to
> hold a party for the IOC leaders and additionally demanded that he should pay
> their drinks. It was part of their 7000 page olympics qualification requirements
> document. It is so heavily regulated that it explicitly specifies that the
> personnel in the hotels MUST SMILE to the IOC leaders when they arrive. I kid
> you not, even games and past times are heavily bureaucratic down to minuscule
> details these days. So, due pressure from the newspapers/grassroots and the
> royal insult the politicians eventually had to turn down the ~$10.000.000.000
> winter olympics budget proposal. Good riddance. Live monarchy!

Yay for Norway!

October 07, 2014
On 10/7/2014 1:19 AM, Nick Sabalausky wrote:
> This is VERY simple, and crucial, stuff. And yet I see SOOO many grown adults,
> even ones with advanced graduate degrees, consistently fail completely and
> uttery at basic logical reasoning in everyday life (and we're talking very, very
> obvious and basic fallacies), that it's genuinely disturbing.

I agree with teaching logical fallacies. I believe one of the most important things we can teach the young is how to separate truth from crap. And this is not done - I'd never really heard of logical fallacies until after college. (I was taught the scientific method, though.)

I.e. logical fallacies and the scientific method should be core curriculum.

Ironically, I've seen many researchers with PhD's carefully using the scientific method in their research, and promptly lapsing into logical fallacies with everything else.

It's like sales techniques. I've read books on sales techniques and the psychology behind them. I don't use or apply them with any skill, but it has enabled me to recognize when those techniques are used on me, and has the effect of immunizing me against them.

At least learning the logical fallacies helps immunize one against being fraudulently influenced.
October 07, 2014
On 10/7/2014 3:52 AM, Nick Sabalausky wrote:
> But then again, MANY people seem to be repelled by any mention of logic, whereas
> I've aways been attracted to it, so maybe that's just my own bias.

Amusingly, Mr. Spock was the most illogical member of the crew.

October 07, 2014
On 10/07/2014 09:26 PM, Walter Bright wrote:
> On 10/7/2014 6:56 AM, Timon Gehr wrote:
>> On 10/06/2014 01:01 AM, Walter Bright wrote:
>>> Relying on program state after entering an unknown state is undefined by
>>> definition.
>>
>> What definition?
>
> How can one define the behavior of an unknown state?
>

Well, how do you define the behaviour of a program that will be fed an unknown input? That way.

I don't really understand what this question is trying to get at. Just define the language semantics appropriately.

Your reasoning usually goes like

a certain kind of event you assume to be bad -> bug -> unknown state -> undefined behaviour.

Why does this apply to D and not to e.g. Java?
October 07, 2014
On 10/7/2014 12:44 PM, Timon Gehr wrote:
> On 10/07/2014 09:26 PM, Walter Bright wrote:
>> On 10/7/2014 6:56 AM, Timon Gehr wrote:
>>> On 10/06/2014 01:01 AM, Walter Bright wrote:
>>>> Relying on program state after entering an unknown state is undefined by
>>>> definition.
>>>
>>> What definition?
>>
>> How can one define the behavior of an unknown state?
>>
>
> Well, how do you define the behaviour of a program that will be fed an unknown
> input? That way.
>
> I don't really understand what this question is trying to get at. Just define
> the language semantics appropriately.
>
> Your reasoning usually goes like
>
> a certain kind of event you assume to be bad -> bug -> unknown state ->
> undefined behaviour.


What defined behavior would you suggest would be possible after an overflow bug is detected?
October 07, 2014
On 10/07/2014 03:39 PM, Walter Bright wrote:
> On 10/7/2014 3:52 AM, Nick Sabalausky wrote:
>> But then again, MANY people seem to be repelled by any mention of
>> logic, whereas
>> I've aways been attracted to it, so maybe that's just my own bias.
>
> Amusingly, Mr. Spock was the most illogical member of the crew.
>

There was one episode in particular that really bugged me with that. Left me thinking "Uhh, I'm not sure the writer actually understood logic very well":

Spock and a few crew members were stranded in a shuttle with seemingly no chance for rescue except for a one-in-a-million longshot. Spock objected to actually doing the longshot because he'd inexplicably decided that its chances were really zero (even though logic would *really* dictate the chances were merely very small - which was obviously an improvement, albeit minor, over the "do nothing and guarantee lack of rescue" approach Spock was bizarrely in favor of).

Oddly, the episode was clearly *trying* to tell people "logic isn't always right, use your gut"...which was interesting because, uhh, the author's logic wasn't right ;)

Left me with a very big "Wait...WTF?!?" That episode's been bugging me ever since!