The Stack Overflow podcast is back! Listen to an interview with our new CEO.
2 added 239 characters in body
source | link

Denotational Semantics provides a mathematic bases for describing how values and variables works in a programming language. It was explained so well in my Computer Sci Degree that I got a top mark in the Denotational Semantics exam, then forgot most of it and have never had a need to use it in a 20 year life as a programmer.

You can choose to use a well defined mathematically foundation, or you can use informal terminology like “first-class status”. I would have learned at lot more if the course was based Scott's Programming Language Pragmatics, however the formal maths is needed for someone that is going to do a PHd in programming language design.

If you read the specification for most programming language, you will notice a dissident lack of Denotational Semantics, however most well designed languages had someone on the team that is an expert in programming language design, hence understands Denotational Semantics well.

So Michearl Scott uses informal terminology that has some relationship to formal mathematics, while presenting the subject in a way that most programmers can benefit from. His terminology is not used by other people, so it not useful for communicating, but it does gives you a good foundation on the questions you should ask when seeing a new programming language for the first time.

Note that Michael L. Scott is a leading researcher in Computer Sci, so will understand and be very happy using the formal maths, but like the best researchers he is skill in explaining the application of the research to the rest of us.

Denotational Semantics provides a mathematic bases for describing how values and variables works in a programming language. It was explained so well in my Computer Sci Degree that I got a top mark in the Denotational Semantics exam, then forgot most of it and have never had a need to use it in a 20 year life as a programmer.

You can choose to use a well defined mathematically foundation, or you can use informal terminology like “first-class status”. I would have learned at lot more if the course was based Scott's Programming Language Pragmatics, however the formal maths is needed for someone that is going to do a PHd in programming language design.

If you read the specification for most programming language, you will notice a dissident lack of Denotational Semantics, however most well designed languages had someone on the team that is an expert in programming language design, hence understands Denotational Semantics well.

So Michearl Scott uses informal terminology that has some relationship to formal mathematics, while presenting the subject in a way that most programmers can benefit from. His terminology is not used by other people, so it not useful for communicating, but it does gives you a good foundation on the questions you should ask when seeing a new programming language for the first time.

Denotational Semantics provides a mathematic bases for describing how values and variables works in a programming language. It was explained so well in my Computer Sci Degree that I got a top mark in the Denotational Semantics exam, then forgot most of it and have never had a need to use it in a 20 year life as a programmer.

You can choose to use a well defined mathematically foundation, or you can use informal terminology like “first-class status”. I would have learned at lot more if the course was based Scott's Programming Language Pragmatics, however the formal maths is needed for someone that is going to do a PHd in programming language design.

If you read the specification for most programming language, you will notice a dissident lack of Denotational Semantics, however most well designed languages had someone on the team that is an expert in programming language design, hence understands Denotational Semantics well.

So Michearl Scott uses informal terminology that has some relationship to formal mathematics, while presenting the subject in a way that most programmers can benefit from. His terminology is not used by other people, so it not useful for communicating, but it does gives you a good foundation on the questions you should ask when seeing a new programming language for the first time.

Note that Michael L. Scott is a leading researcher in Computer Sci, so will understand and be very happy using the formal maths, but like the best researchers he is skill in explaining the application of the research to the rest of us.

1
source | link

Denotational Semantics provides a mathematic bases for describing how values and variables works in a programming language. It was explained so well in my Computer Sci Degree that I got a top mark in the Denotational Semantics exam, then forgot most of it and have never had a need to use it in a 20 year life as a programmer.

You can choose to use a well defined mathematically foundation, or you can use informal terminology like “first-class status”. I would have learned at lot more if the course was based Scott's Programming Language Pragmatics, however the formal maths is needed for someone that is going to do a PHd in programming language design.

If you read the specification for most programming language, you will notice a dissident lack of Denotational Semantics, however most well designed languages had someone on the team that is an expert in programming language design, hence understands Denotational Semantics well.

So Michearl Scott uses informal terminology that has some relationship to formal mathematics, while presenting the subject in a way that most programmers can benefit from. His terminology is not used by other people, so it not useful for communicating, but it does gives you a good foundation on the questions you should ask when seeing a new programming language for the first time.