Skip to content

alessandrofloris/lip

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LiP Lab

LiP students are expected to fork the repository and push solutions to the exercises on their fork.

Invitation to the Discord server: https://discord.gg/CW84hS82

Ocaml basics #1

You can work on these exercises using the online Ocaml playground: Try Ocaml.

  1. Max of two numbers
  2. Absolute value
  3. From type to function #1
  4. Find a function #1
  5. Highest card wins
  6. From type to function #2
  7. Even and odd
  8. Comparing fractions
  9. Reverse a list
  10. Minimum of a function
  11. Fibonacci sequence
  12. Student grades

Ocaml basics #2

  1. Duplicates
  2. Random list
  3. From list to string
  4. Min and max of a function
  5. Extract an element from a list
  6. Alternating-even numbers
  7. Binary search trees
  8. Deck of cards
  9. The return of the Pumping Lemma
  10. List crush
  11. Longest subsequence
  12. Ping pong

Arithmetic expressions

To work at this project you must have a local installation of OCaml. Look here for minimal instructions.

  1. A minimal language of boolean expressions
  2. Boolean expressions with not, and, or
  3. Typed arithmetic expressions with dynamic type checking
  4. Typed arithmetic expressions with static type checking
  5. Untyped arithmetic expressions
  6. Arithmetic expressions with let bindings and dynamic type checking

Lambda calculus

  1. Pure untyped lambda calculus: call-by-value semantics with explicit renaming of bound variables
  2. Pure untyped lambda calculus: normal order semantics with explicit renaming of bound variables, and Church numerals
  3. Simply typed lambda calculus: call-by-value semantics and static type checking

Imperative languages

  1. A simple imperative language
  2. Declaration blocks
  3. Functions

References

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • OCaml 96.6%
  • Standard ML 3.4%