• Title/Summary/Keyword: programming languages

Search Result 326, Processing Time 0.024 seconds

Feasibility Study Of Functional Programming In Scala Language By Implementing An Interpreter

  • Sugwoo, Byun
    • Journal of the Korea Society of Computer and Information
    • /
    • v.28 no.2
    • /
    • pp.111-119
    • /
    • 2023
  • In this paper, we investigate the feasibility of functional programming in the Scala language. The main issue is to what extent Scala is able to handle major properties of functional programming such as lambda expression, high-order functions, generic types, algebraic data types, and monads. For this purpose, we implement an interpreter of an imperative language. In this implementation, the same functional programming techniques are applied to both Haskell and Scala languages, and then these two versions of implementations are compared and analyzed. The abstract syntax tree of an imperative language is expressed as algebraic data types with generics and enum classes in Scala, and the state transition of imperative languages is implemented by using state monad. Extension and given, new features of Scala, are used as well.

Designing an Intelligent Data Coding Curriculum for Non-Software Majors: Centered on the EZMKER Kit as an Educational Resource (SW 비전공자 대상으로 지능형 데이터 코딩 교육과정 설계 : EZMKER kit교구 중심으로)

  • Seoung-Young Jang
    • The Journal of the Korea institute of electronic communication sciences
    • /
    • v.18 no.5
    • /
    • pp.901-910
    • /
    • 2023
  • In universities, programming language-based thinking and software education for non-majors are being implemented to cultivate creative and convergent talent capable of leading the digital convergence era in line with the Fourth Industrial Revolution. However, learners face difficulties in acquiring the unfamiliar syntax and programming languages. The purpose of this study is to propose a software education model to alleviate the challenges faced by non-major students during the learning process. By introducing algorithm techniques and diagram techniques based on programming language thinking and using the EZMKER kit as an instructional model, this study aims to overcome the lack of learning about programming languages and syntax. Consequently, a structured software education model has been designed and implemented as a top-down system learning model.

Altemative Instructional Methods and Strategies for Effective Computer Programming Education (컴퓨터 프로그래밍 교육에 적용 가능한 효과적 교수방법의 탐색적 대안)

  • Kim, Mi-Ryang
    • The Journal of Korean Association of Computer Education
    • /
    • v.5 no.3
    • /
    • pp.1-9
    • /
    • 2002
  • For teaching-learning activities to be effective, the teaching methods need to reflect the contents of instructional materials and the characteristics of the learners. The purpose of this paper is to investigate the effective ways of teaching computer programming languages. The main components of teaching computer programming languages might be the characteristics of the language itself, the function of design, and general problem-solving capacity. But the analysis of the Quality and environments of learners is much more important. To improve the Quality of teaching computer programming languages, the structured syllabus needs to be provided and a variety of teaching methods such as project-based approach, problem-based approach, cooperative learning, peer tutoring and case study should be applied selectively, depending upon the instructional situations. In addition, procedural and constructive evaluation process needs to be developed to monitor each stage of learning and to give the guidelines of completing the course projects.

  • PDF

A design of a prototype system for automatic robot programming (로보트 자동 프로그래밍을 위한 원형 시스템의 설계)

  • 조혜경;고명삼;이범희
    • 제어로봇시스템학회:학술대회논문집
    • /
    • 1988.10a
    • /
    • pp.501-506
    • /
    • 1988
  • This paper describes an experimental system for automatic robot programming, The SNU-ARPS (Seoul National University Automatic Robot Programming System). The SNU-ARPS generates executable robot programs for pick and place operation and some simple mechanical assembly tasks by menudriven dialog. It is intended to enable the user to concentrate on the overall operation sequence instead of the knowledge regarding the details of robot languages. To convert task specifications into manipulator motions, the SNU-ARPS uses an internal representation of the world. This representation initially consists of geometric database from CAD system and is updated at each operation step to reflect the state changes of the world.

  • PDF

A Design of a Korean Programming Language Ensuring Run-Time Safety through Categorizing C Secure Coding Rules (C 시큐어 코딩 규칙 분류를 통한 실행 안전성을 보장하는 한글 언어 설계)

  • Kim, Yeoneo;Song, Jiwon;Woo, Gyun
    • Journal of KIISE
    • /
    • v.42 no.4
    • /
    • pp.487-495
    • /
    • 2015
  • Since most of information is computerized nowadays, it is extremely important to promote the security of the computerized information. However, the software itself can threaten the safety of information through many abusive methods enabled by coding mistakes. Even though the Secure Coding Guide has been proposed to promote the safety of information by fundamentally blocking the hacking methods, it is still hard to apply the techniques on other programming languages because the proposed coding guide is mainly written for C and Java programmers. In this paper, we reclassified the coding rules of the Secure Coding Guide to extend its applicability to programming languages in general. The specific coding guide adopted in this paper is the C Secure Coding Guide, announced by the Ministry of Government Administration and Home Affairs of Korea. According to the classification, we applied the rules of programming in Sprout, which is a newly proposed Korean programming language. The number of vulnerability rules that should be checked was decreased in Sprout by 52% compared to C.

Effects on Metacognition and GALT Logical Thinking Ability in Programming Educations using Squeak e-toy (스퀵 e-toy 프로그래밍 교육을 통한 메타인지 및 GALT 논리 사고력 향상 효과 분석)

  • Jong, You-Rim;Hur, Kyeong
    • Journal of The Korean Association of Information Education
    • /
    • v.14 no.2
    • /
    • pp.199-207
    • /
    • 2010
  • This paper is proposed to present elementary algorithmic thinking-based Squeak E-toy programming problems for flowchart-based programming educations without programming languages in elementary programming educations. Furthermore, this paper proves the validity and effects of developed Squeak E-toy programming problems through measurement analyses of metacognition and GALT logical thinking ability experiments by comparing with the language-based traditional programming education.

  • PDF

A Case Study of Programming Languages Education using Learning Community (학습 공동체를 활용한 프로그래밍 언어 교육 사례 연구)

  • Kim, Kyong-Ah;Ahn, You Jung
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2013.07a
    • /
    • pp.333-334
    • /
    • 2013
  • 프로그래밍 언어 교육은 컴퓨터 분야의 필수 과목으로 교육되고 있으나 교수자와 학습자에게 가장 어려운 과목으로 인식되고 있다. 본 연구에서는 명지전문대학에서 시행하고 있는 튜터링 제도를 프로그래밍 언어 수업에 적용하여 학습공동체(피어 튜터링)를 활용한 학습 지원 프로그램을 프로그래밍 언어 교육에 적용한 사례를 제시하고 학습자에 미치는 영향을 조사하였다. 학습 공동체 프로그램의 참여는 자발적으로 이루어졌으며. 활용 결과 학습자들의 성적이 단기간의 프로그램 참여로 많이 향상되지는 않았지만 튜터와 튜티 모두 프로그래밍 과목에 대한 흥미가 유발되고, 수업 참여도가 높아졌으며, 참여하지 않은 그룹과 비교하여 탈락자 감소에는 도움이 되었던 것으로 판단된다.

  • PDF

A Study on the Effect of Programming Languages Class by Applying Reflective Journal According to Learner's Learning Types (성찰일지를 활용한 프로그래밍 언어 수업의 학습자 유형별 학습 효과 연구)

  • Kim, Kyong-Ah;Ahn, You Jung
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2017.01a
    • /
    • pp.231-232
    • /
    • 2017
  • 학습자가 어려움을 느끼게 되는 프로그래밍 수업의 특징 중의 하나는 단계별 학습으로 이전 단계를 이해하지 못하면 그 다음 단계로 넘어가는데 어려움이 크다는 점이다. 이러한 어려움을 극복하고 학습 효과를 높이기 위해서는 단계별 학습을 유도하는 적절한 학습 방법이 필요하다. 본 연구에서는 성찰일지를 프로그래밍 수업에 적용한 후 설문조사를 실시하여 성찰일지가 프로그래밍 수업의 단계별 학습 효과 및 만족도를 높이고, 특히, 수업시간에는 기본적인 내용을 이해하고 있으나 복습이 부족한 학습태도를 가진 학습자들에게 보다 긍정적인 효과가 있었음을 조사 분석하였다.

  • PDF

Comparison on How Much Dolittle and Squeak Languages Influence Improving Elementary Students' Logical Thinking Capability (두리틀과 스퀵 언어가 초등학생의 논리적 사고력 신장에 미치는 영향 비교)

  • Kim, Young-Ae;Lee, Bong-Kyoo;Kim, Byung-Soon
    • Journal of Digital Contents Society
    • /
    • v.10 no.3
    • /
    • pp.375-380
    • /
    • 2009
  • Computer programming education can improve students' logical thinking and problem-solving ability. Therefore, it is essential tool to improve algorithmic thinking ability. We study how much Dolittle and Squeak influences improving elementary students' logical thinking ability. Thus, we divided 6th grade elementary students into two classes and then taught Dorittle and Squeak programming languages for 6 weeks, respectively. We compare and analyze each logical thinking ability and its sub-classifications. The results showed that Dorritle affects significant improvement, but not Squeak.

  • PDF

A Study on the Adaptive Effect of Programming Languages Class by Applying Orientation Program for Returning Students (사전교육 프로그램을 활용한 복학생 프로그래밍 언어 수업 적응 효과 연구)

  • Kim, Kyong-Ah;Ahn, You Jung
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2017.07a
    • /
    • pp.356-357
    • /
    • 2017
  • 프로그래밍 언어 수업은 단계별 학습 특성으로 인해 이전 단계를 이해하지 못하면 그 다음 단계로 넘어가는데 어려움이 많아, 학습 공백기를 갖는 복학생들에게는 복학 후 수업 적응에 보다 큰 어려움이 있다. 이러한 어려움을 극복하고 수업 적응 효과를 높이기 위해서는 수업 시작 전 이전 수업 내용 및 운영 방법 등을 알 수 있는 적절한 기회와 방법이 필요하다. 본 연구에서는 사전교육 프로그램을 프로그래밍 수업에 적용한 후 설문조사를 실시하여 사전교육 프로그램이 복학생들의 프로그래밍 언어 수업에 대한 적응 효과 및 만족도를 높이는 긍정적인 효과가 있었음을 조사 분석하였다.

  • PDF