Author Topic: Compiler Design at Cornell  (Read 3003 times)

0 Members and 1 Guest are viewing this topic.

Online Nominal Animal

  • Super Contributor
  • ***
  • Posts: 7088
  • Country: fi
    • My home page and email address
Re: Compiler Design at Cornell
« Reply #25 on: November 04, 2024, 12:02:28 am »
But either way, someone getting started in the field has to at least learn to read it
At some point, definitely; just not before you understand the fundamental concepts they convey, and not while they are learning the very basics.

Do remember that this particular notation is very straightforward to explain in plain English, via "if ... are all true, then ... is true", "implies" (for ⇒), "consequently" (for ⊦), "formula" (for ⊥ and ⊤), and so on, although one must be very careful in the language, and must explain the differences and nuances (like the difference between "then all of ... are true" and "then at least one of ... is true").

I am not suggesting one invent yet another notation, just that explaining the basic logical system and these very dense inference trees in native human language, perhaps in parallel with the notation (if such dense notation is necessary), or better yet, in both human language and in other notation styles like Suppes-Lemmon and (augmented) Backus-Naur form, to convey the information more effectively; not limiting or selecting for students who concentrate on specific notation styles instead of the content and logic therein, but adding context and possible approaches for the students to fully understand instead of just memorizing the content.  Essentially, that Spoken Human Languages :: Compiler Theory = Pinyin :: Standard Chinese.
 

Offline 5U4GB

  • Frequent Contributor
  • **
  • Posts: 576
  • Country: au
Re: Compiler Design at Cornell
« Reply #26 on: November 04, 2024, 09:19:41 am »
They probably love Haskell and related things. And what they refer to as "strong typing".

Which others describe in what they refer to as "strong language".

Once saw a comment on an academic mailing list that everyone should be taught to program in Haskell (MFTL, my favourite toy language) because it was impossible to write buggy code in it.
« Last Edit: November 04, 2024, 09:30:50 am by 5U4GB »
 

Offline wilfred

  • Super Contributor
  • ***
  • Posts: 1309
  • Country: au
Re: Compiler Design at Cornell
« Reply #27 on: November 04, 2024, 10:42:56 am »
This is the "science" part of "computer science", it is not meant to be "practical programming on RasPi".
Even though I only had "basic" maths at university (compared to the "full on maths" study), we had our share in theoretical maths and abstraction. Not quite at this shown level, but not too far away.
You will learn the nomenclatura, and this will make it an almost readable text with maximum efficiency of information. Of course, this is an extremely abstract way of doing things, with the advantage of creating "provable" concepts, which is what science requires.

Exactly. To present ideas unambiguously many disciplines develop a language/notation to use. The science of compiler design is not specifically about writing a particular compiler for one specific language. If you want to prove some language specification can be implemented you have to have an understanding of how to communicate that to others.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf