Skip to content

TaeunKwon/pl2016

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 

Repository files navigation

Programming Languages, SNU 4190.310, 2016 Spring

Announcements

  • There will be a lab session on 2016/03/08 (Tue).

Assignments

Due Description Notes
NO Assignment 00 No scores

Must Read

  • READ VERY CAREFULLY this section.

Grading

  • Assignments: 45%
  • Exams: 50% (mid-term 20% and final 30%)
    • You will solve Coq problems at the lab during the exam.
  • Attendance: 5%
    • -1% per absence. IMPORTANT: 6 absences make an F.

Questions

  • In class: if you speak Korean, ask in Korean. Otherwise, ask in English.
  • In the GitHub repository issue tracker: ask in English.
  • Send email for PERSONAL MATTERS ONLY.
  • If you want to post a piece of source code, please DO NOT upload an image of it. Because it is hard to reconstruct texts from images.

Coq

  • Use Coq 8.4pl5. DO NOT use Coq 8.5!

    • If not, your submissions (assignments & exams) will not be properly graded.
  • Install Coq.

    • Linux
      • Install opam, and make sure you can use OCaml 4.02.3.
      • Install libgtk2 by sudo apt-get install libgtk2.0-dev or sudo yum install gtk2-devel.
      • Install lablgtk2 by opam install lablgtk
      • Download tarball file.
      • Extract the tarball, ./configure -coqide opt, make, and then make install.
      • Test by coqc -v in the command line. Check your PATH variable if you get an error.
      • Run CoqIDE by coqide.
    • For Windows / OS X
  • Use IDEs supporting Coq.

    • CoqIDE: Download those bundled with CoqIDE in the Download page.
      • In OS X, at first run, you may see an error message saying "Failed to load coqtop." Then click "No", and then find /Applications/CoqIDE_8.4pl5.app/Contents/Resources/bin/coqtop and open for once. Then goto CoqIDE > Preferences > Externals. And then change coqtop into /Applications/CoqIDE_8.4pl5.app/Contents/Resources/bin/coqtop.
    • Emacs: Company-Coq. Follow the setup instructions.

Textbook: Software Foundations

Assignment

Honor Code: DO NOT CHEAT

  • If you copy others' source code, you will get F.
  • "Others' source code" includes other students' and resources around the web. Especially, do not consult with public repositories on software foundations.
  • Note that we have a good automatic clone detector. I found out that a lot of students cheated last time. I hope we all be happy at the end of the semester..

Submission

  • assignments/$NAME directory is the assignment $NAME.
    • You submit P??.v files. You should edit only P??.v. DO NOT TOUCH ANYTHING ELSE.
    • E??.v files are for evaluation.
    • Everything else are for relevant the definitions for the assignment.
  • Edit P??.v files to do the assignment.
  • make to compile your submission. make eval to grade your submission yourself.
  • Both make and make eval SHOULD SUCCEED. If not, your score will be 0.
  • Check your submission by ../check.sh
    • P??.v files SHOULD NOT contain admit and Admitted.
    • If a P??.v file contains string GIVEUP, then it will be scored 0.
  • Submit at: http://147.46.15.109:9480/
    • DO NOT ATTACK. Please.
    • DO NOT USE A STRONG PASSWORD. It is http.
    • If your submission status is SYSTEM ERROR or RUNNING for a long time, please ask the TA.

Misc.

  • I strongly recommend you to use Git for the course. Register at GitHub. Try Git.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 79.0%
  • Rocq Prover 18.0%
  • OCaml 2.4%
  • Verilog 0.3%
  • CSS 0.1%
  • Makefile 0.1%
  • Other 0.1%