University of Adelaide

Australian
30 Scholarships 363 Programs 4 Degree levels

The Bachelor of Computer Science (Programming Languages) at the University of Adelaide is a specialised undergraduate degree focusing on the design, implementation and analysis of programming languages and related tools. It suits students who enjoy formal reasoning about software, language design, compilers and advanced programming paradigms and who want careers building language tools, compilers or pursuing research in programming language theory.

What you'll study

The programme combines core computer science foundations with specialised study in programming language concepts, implementation and theory. You will take sequential and concurrent programming, data structures and algorithms, operating systems and software engineering in early years to build a solid base. Specialist subjects cover topics such as programming language semantics, type systems, functional and concurrent programming, compiler construction, runtime systems and program analysis.

The course typically includes a mix of lectures, tutorials and practical labs, with substantial programming assignments and project work. Students can expect to complete a significant capstone or honours-style project in later years, where they design and implement language tools, implement compilers or conduct experimental research.

  • Core modules: introductory programming, algorithms and data structures, discrete mathematics, computer systems and software engineering.
  • Programming language-focused modules: formal semantics, type theory, functional programming, concurrent and imperative language design, compiler design and implementation, program verification and static/dynamic analysis.
  • Practical components: laboratory-based compiler projects, interpreters, language libraries, tooling for debugging and profiling, and substantial individual or team capstone projects.
  • Optional electives: human–computer interaction, databases, machine learning, formal methods, cybersecurity and cloud systems to broaden skills and employment options.
  • Pathway options: an integrated honours year or switching into research pathways for students aiming to pursue postgraduate study.

Structure

The degree is structured to progress from foundational computing and mathematics to specialised programming language subjects and project-based learning. Students usually complete a combination of compulsory and elective units each year, culminating in a major project or honours research in advanced years. Industry placement or internship opportunities are available through university-industry partnerships and career services.

Entry requirements

Typical entry requires completion of recognised secondary education with a strong performance in mathematics. The University assesses applications using local qualifications (for Australian students) or equivalent international qualifications. Prior study or demonstrated ability in mathematics and some programming experience are advantageous.

International applicants must meet the University of Adelaide's academic equivalence and English language proficiency requirements. Alternative entry pathways, such as foundation programs, bridging courses or recognised prior learning, may be available for mature-age applicants or those without traditional qualifications.

Career prospects

Graduates with a specialisation in programming languages are well placed for roles that require deep understanding of language design, compilers and tooling. Common career paths include:

  • Compiler and toolchain developer for systems and embedded platforms.
  • Language designer or implementer, working on domain-specific or general-purpose languages.
  • Software engineer focusing on runtime systems, virtual machines or performance optimisation.
  • Developer of static analysis, verification and testing tools used in safety-critical and large-scale systems.
  • Research and academic positions, or progression to postgraduate study (Master's or PhD) in programming languages, formal methods or software engineering.

Graduates also find roles across finance, defence, telecommunications and tech companies where specialised tooling and high-reliability software are important.

Why study at University of Adelaide

The University of Adelaide has a long-established School of Computer Science with strong research groups in programming languages, formal methods and software engineering. Students benefit from teaching delivered by academic staff active in research and from opportunities to join research projects or industry-linked internships.

Studying in Adelaide provides access to a growing technology sector and collaborative industry partners, as well as well-equipped labs and computing facilities. The university supports student learning with academic advisers, career services and extracurricular activities such as programming clubs and hackathons that complement formal study.

Latest Bachelor Scholarships

Similar Bachelor programmes in Australian

⚖ Compare this programme with similar ones

Similar Bachelor programmes at other universities

Get help applying to University of Adelaide

Shortlist scholarships and plan your application — free guidance from our advisors.

Programme details are indicative and may change — always verify current information with the official university website before applying.