联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp2

您当前位置:首页 >> Java编程Java编程

日期:2021-10-06 09:08

Declarative Programming

Subject Notes for Semester 2, 2020

Prolog

s e a r ch b s t ( node (K, V, , ) , K, V) .

s e a r ch b s t ( node (K, , L , ) , SK, SV) :?

SK @< K,

s e a r ch b s t (L , SK, SV) .

s e a r ch b s t ( node (K, , , R) , SK, SV) :?

SK @> K,

s e a r ch b s t (R, SK, SV) .

Haskell

s e a r ch b s t : : Tree k v ?> k ?> Maybe v

s e a r ch b s t Leaf = Nothing

s e a r ch b s t (Node k v l r ) sk =

i f sk == k then

Just v

else i f sk < k then

s e a r ch b s t l sk

else

s e a r ch b s t r sk

School of Computing and Information Systems

The University of Melbourne

Copyright c? 2020 The University of Melbourne

A language that doesn’t affect the way you think

about programming, is not worth knowing.

— Alan Perlis

Section 0:

Subject Introduction

Welcome to Declarative Programming

Lecturer: Peter Schachte

Contact information is available from the LMS.

There will be two pre-recorded one-hour lectures

per week, plus one live one-hour practical meeting

for questions, discussion, and demonstrations.

There will be eleven one-hour workshops (labs),

starting in week 2.

You should have already been allocated a workshop.

Please check your personal timetable after the lec-

ture.

– section 0 slide 1 –

Grok

We use Grok to provide added self-paced instruc-

tional material, exercises, and self-assessment for

both Haskell and Prolog.

You can access Grok by following the link from the

subject LMS page.

If you are unable to access Grok or find that it is

not working correctly, please email

Grok University Support

~~~~

from your university email account and explain the

problem.

If you have questions regarding the Grok lessons or

exercises, please post a message to the subject LMS

discussion forum.

– section 0 slide 2 –

Workshops

The workshops will reinforce the material from lec-

tures, partly by asking you to apply it to small scale

programming tasks.

To get the most out of each workshop, you should

read and attempt the exercises before your work-

shop. You are encouraged to ask questions, discuss,

and actively engage in workshops. The more you

put into workshops, the more you will get out of

them.

Workshop exerciese will be available through Grok,

so they can be undertaken even if you are not

present in Australia. Sample solutions for each set

of workshop exercises will also be available through

Grok.

Most programming questions have more than one

correct answer; your answer may be correct even if

it differs from the sample solution.

NOTE If your laptop can access the building’s wire-

less network, you will be able to log onto the MSE

servers and use their installed versions of this sub-

ject’s languages, Haskell and Prolog. If your lap-

top cannot access the building’s wireless network,

then you will be able to test your Haskell or Pro-

log code if you install the implementations of those

languages on your machine yourself. For both lan-

guages this is typically fast and simple.

– section 0 slide 3 –

Resources

The lecture notes contain copies of the slides pre-

sented in lectures, plus some additional material.

All subject materials (lecture notes, workshop ex-

ercises, project specifications etc) will be available

online through the LMS.

The recommended text is

? Bryan O’Sullivan, John Goerzen and Don

Stewart: Real world Haskell. O’Reilly Media,

2009. ISBN 978-0-596-51498-3. Available on-

line at http://book.realworldhaskell.org/read.

Other recommended resources are listed on the


版权所有:留学生编程辅导网 2020 All Rights Reserved 联系方式:QQ:99515681 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。