Skip to content

Computer Language

컴퓨터 언어 상세 분야



데이터 종류 (Data Type)



알고리즘 (Algorithms)



자료 구조 (Data structures)



스크립트 언어 (Scripting language)



쉘 스크립트 (Shell script)



마크업 언어 (Markup language)



인터페이스 정의 언어 (IDL)



High-Level



Low-Level



Formal language



Diagram



Programming Paradigms

  • Action
  • Agent-oriented
  • Array-oriented
  • Automata-based
  • Concurrent computing
    • Relativistic programming
  • Data-driven
  • Declarative (contrast: Imperative)
    • Constraint
      • Constraint logic
        • Concurrent constraint logic
    • Dataflow
      • Flow-based
      • Cell-oriented (spreadsheets)
      • Reactive
    • Functional
      • Functional logic
      • Purely functional
    • Logic
      • Abductive logic
      • Answer set
      • Concurrent logic
      • Functional logic
      • Inductive logic
  • Dynamic
  • End-user programming
  • Event-driven
    • Service-oriented
    • Time-driven
  • Expression-oriented
  • Feature-oriented
  • Function-level (contrast: Value-level)
  • Generic
  • Imperative (contrast: Declarative)
    • Literate
    • Procedural
  • Inductive programming
  • Language-oriented
    • Natural language programming
    • Discipline-specific
    • Domain-specific
    • Grammar-oriented
      • Dialecting
    • Intentional
  • Metaprogramming
    • Automatic
    • Reflective
      • Attribute-oriented
    • Homoiconic
    • Template
      • Policy-based
  • Non-structured (contrast: Structured)
    • Array
  • Nondeterministic
  • Parallel computing
    • Process-oriented
  • Point-free style
    • Concatenative
  • Semantic
  • Structured (contrast: Non-structured)
    • Block-structured
    • Modular (contrast: Monolithic)
    • Object-oriented
      • Actor-based
      • Class-based
      • Concurrent
      • Prototype-based
      • By separation of concerns:
    • Recursive
  • Query
  • Value-level (contrast: Function-level)
  • Probabilistic
  • Concept



컴퓨터 언어(computer language)라는 용어는 컴퓨터와의 커뮤니케이션에 쓰이는 다양한 종류의 언어들을 일컫는 말로서, 흔히 사용되는 프로그래밍 언어라는 용어의 뜻을 확장한 용어이다. 프로그래밍 언어는 컴퓨터 언어의 부분집합이다.

예를 들어 HTML은 마크업 언어이자 컴퓨터 언어이지만, 일반적으로 프로그래밍 언어라고는 간주되지는 않는다. 기계어는 컴퓨터 언어이며, 기술적으로 프로그래밍에 쓰이는 것이 가능하지만(예를 들어 알테어 BASIC의 최초의 부트스트랩퍼 코드), 일반적으로는 프로그래밍 언어라고는 간주되지는 않는다.

굳이 분류하자면 컴퓨터 언어는 두 개의 부류로 나뉠 수 있다. 고급(high level) 언어와 저급(low level)언어로 나뉠 수 있다. 고급 언어는 저급 언어보다 사용하기 쉽고, 더 추상적이며, 더 이식 가능성이 높게 디자인된다. 어떤 언어의 경우에는, 문법적으로 올바른 프로그램들은 저급 언어로 컴파일(compile)되어 컴퓨터 상에서 실행(execute)되게 된다. 오늘날 대부분의 소프트웨어는 고급 언어로 작성된다. 그 후 오브젝트 코드로 컴파일되고 난 뒤 기계어로 변환된다.

또한 다른 방법으로, 컴퓨터 언어를 분류할 수 있다. 사람이 읽을 수 있는(human-readable) 언어와 사람이 읽을 수 없는 언어로 분류할 수 있다. 사람이 읽을 수 있는 언어는 사람이 직접 사용하여 컴퓨터와 커뮤니케이트하게 해주는 용도로 쓰일 수 있다. 사람이 읽을 수 없는 언어는 더 간결하며, 처리가 쉽게 디자인 되었으나, 이러한 특징을 만족하기 위해 가독성은 희생하여 디자인되었다. 이 언어를 부분적으로는 읽고 이해하는 것이 가능하지만 말이다.

Category

컴퓨터 언어의 종류

Table of Computer Language

Table of Computer Language

이론 (Theory)

Computer Language, Programming language, 제4세대 프로그래밍 언어 (4GL; Fourth-generation programming language), Bytecode

스크립트 언어 (Scripting language)

Job control languages and shells

Bourne shell, Bash (Unix shell), Korn shell, zsh, C shell, psh, Command Prompt, Windows PowerShell, Hamilton C shell, 4NT, GMLCMD, Recovery Console, command.com, 4DOS, 4OS/2, AS/400 Control Language, iSeries QSHELL, Terminal.app, Apple DOS/Apple ProDOS, Cisco IOS, Junos

Application-specific languages

QuakeC, Emacs Lisp

Web browsers

JavaScript, VBScript, ASP, C (CGI), ColdFusion Markup Language, Java (JSP), Lua, Perl CGI, PHP, Python (Django), Ruby (Ruby on Rails), SMX, Lasso, WebDNA, Progress WebSpeed

Text processing languages

awk, sed, grep

General-purpose dynamic languages

ActionScript, BASIC, BeanShell, Clojure, ColdFusion, Lisp, Groovy, E programming language, JavaScript, VBScript, MATLAB, Octave, Lua, Objective-C, Perl, PHP, Powershell, Python, Ruby, Smalltalk, Tcl

Extension/embeddable languages

ActionScript, Tcl, Python, Perl, Ruby, Rexx, Lua, AngelScript, Squirrel, Ch

변환 언어 (Transformation language)

Concepts

data conversion, data element, data mapping, data migration, data transformation, metadata, model transformation, refinement (contrast)

Languages

ATL, AWK (tabular data transforms), Identity transform, QVT, TXL (general), XQuery (XML), XSLT (XML)

틀 처리 언어 (Template processor)

Template engine (web)

Apache Velocity, ASP.net (Microsoft), ASP.net (Mono), AutoGen, Beilpuz, Blitz, Casper, CheetahTemplate, Chip Template Engine, CodeCharge Studio, ColdFusion, Cottle, csharptemplates, CTPP, dbPager, Deihro TemplateEngine, Dermis, Django, Djolt-objc, Dwoo, Dylan Server Pages, eRuby, Evoque Templating, FastTemplate, FreeMarker, Genshi (templating language), Google-ctemplate, Grantlee Template System, GvTags, H2o, HAH, Haml, Hamlets, Hyperkit PHP/XML Template Engine, Jade, Jasper framework, JavaServer Pages, Jenner, jin-template, Jinja, Jinja2, JScore, JSP Weaver, Kalahari, Kid (templating language), Mako, Mars-Templater, MiniTemplator, mTemplate, nTPL, Obyx, Open Power Template, Outline, PHAML, Phammable, PHP, PURE Unobtrusive Rendering Engine, pyratemp, QueryTemplates, RainTPL, Rythm, Scalate, Scurvy, Simplate, Smarty, StampTE, StringTemplate, SUIT Framework, Template Attribute Language, ATal, Template Blocks, Template Toolkit, Thymeleaf, TinyButStrong, Toupl, Twig, uBook Template, Vemplator, vlibTemplate, WebMacro, Younicycle, ZeniTPL, BabaJS

Code generation

CodeSmith Generator, ZumCoder/MDA, Acceleo, Accelerator, GenerateXY, actifsource, Agile Platform, Apeel PHP Code Generator Pro, AtomWeaver, GNU AutoGen, Cog, CodeGenerator360, CodeOnTime, C++ Middleware Writer, DMS Software Reengineering Toolkit, gSoap, Iron Speed Designer, Jostraca, JCodeBox, Microsoft Visual Studio LightSwitch, MyGeneration, OMS.Ice - T4 Text Template Generator, PHPRunner, Pro*C, Spring Roo, T4, Umple, Appsroller Web Form Generator, Velocity apache, XDocLet, XACT X4MR

Documentation generator

ApiGen, Appledoc, Asciidoc, Autoduck, BI Documenter, classdoc, CppDoc, DB Manual, DBDesc, DBScribe, Ddoc, devscribe, Doc-O-Matic, DOC++, Document! X, Doxygen, Epydoc, ForgeDoc, fpdoc, GenHelp, Haddock, HeaderDoc, Help Generator, HyperSQL, IDLdoc, Imagix 4D, Javadoc, jGrouseDoc, JSDoc, JsDoc Toolkit, KDOC, Markdown, Natural Docs, NDoc, Pandoc, phpDocumentor, phpSimpleDoc, Project Analyzer, RDoc, ROBODoc, Sandcastle, SoDa, Sphinx, SQL Documentor, ThimbleDoc, TwinText, VBDOX, VSdocman, Universal Report, YARD

스타일시트 언어 (Style sheet language)

Modes

Desktop publishing, Web development, User interfaces

Standard

CSS, DSSSL, XSL

Non-standard

JSSS, FOSI, Qt Style Sheets, Sass, LESS, SMIL Timesheets

명세 기술 언어 (Specification language)

Languages

CASL, VDM, Z notation, LePUS3, Perfect

모델링 언어 (Modeling language)

Graphical types

~

Non-graphical types

~

쿼리 언어 (Query language)

Languages

.QL, ISBL, OQL, XPath, XQuery, SQL

마크업 언어 (Markup language)

SGML type

SGML, HTML, XML, XHTML, SVG, MathML

TEX type

TEX, LATEX, PTEX

User Interface

MXML, UIML, XUL, WTKX, XAL, SVG, TUIX, XAML, I3ML, OpenLaszlo (LZX), HMVCUL, WasabiXML, MARIA

프로그래밍 언어 (Programming language)

Low-level programming language

Assembly

High-level programming language

ActionScript-3.0, Ada, Aldor, ALGOL 58, ALGOL 60, ALGOL 68, Ateji PX, APL, Assembly language, AutoHotkey, AutoIt, BASIC, BBj, BeanShell, BLISS, BlitzMax, Boo, C/C++, C#, Clarion, Clean, Clojure, CLU, COBOL, Cobra, ColdFusion(CFML), Common Lisp, COMAL-80, Crystal 1.0.0, Cython, D, Dylan, DYL-280, Eiffel, Erlang, Euphoria, Factor, Falcon, FP, F#, Forth, Fortran, G2, Gambas, Game Maker Language, GLBasic, Go, Gosu, GraphTalk, Groovy, Harbour, Haskell, haXe, HyperNext, Io, ISLISP, J, JADE, Java, JavaScript, Joy, LabVIEW-(G), Lisp, Logtalk, Lua, Mathematica, MATLAB, Modula-2, Modula-3, Oberon, Objective-C, OCaml, Object Pascal(Delphi), Occam, Opa, Oxygene, Oz, Pascal, Pawn, Perl, PHP, PL/I, Plus, Prolog, PureBasic, Python, Racket, REALbasic, REBOL, RPG (IBM), Ruby, Rust, S, S-Lang, Scala, Scheme, Simula, Smalltalk, SNOBOL, Standard ML, Tcl, Visual Basic, Visual Basic .NET, Visual Prolog, Windows PowerShell, XL

아키텍처 기술 언어 (ADL; Architecture description language)

Primary candidates

~

Secondary candidates

~

Others (unclassified)

~

하드웨어 기술 언어 (HDL; Hardware description language)

Digital circuit design

ABEL, AHDL (Altera HDL), Confluence, CUPL, HDCaml, JHDL, Lava, Lola, MyHDL (based on Python), PALASM, RHDL (based on Ruby), Verilog, VHDL

Analogue circuit design

Verilog-AMS, VHDL-AMS

Printed circuit board design

PHDL

설정 파일 포맷 (Configuration file formats)

Languages

INI files (initialization), JSON, YAML, XML

데이터 직렬화 포맷 (Data serialization formats)

Languages

ASN.1, Bencode, BSON, Candle Markup, Comma-separated values (CSV), D-Bus Message Protocol, JSON, MessagePack, Netstrings, OGDL, Property list, Protocol Buffers, S-expressions, Structured Data eXchange Formats, Thrift, eXternal Data Representation, XML, XML-RPC, YAML

형식 언어 (Formal language)

Languages

~

Favorite site