- vnev.me/implementing-a-programming-language-in-c-part-1
- hyperpolyglot.org
- www.dotnetperls.com
- programming lanugage (1962)
- GitHut - A SMALL PLACE TO DISCOVER LANGUAGES IN GITHUB
- Less is more: language features
- Building a simple expression language
- Building a (not so simple) expression language part II: Scope
- List comprehension
- 8 Considerations on Choosing a Programming Language
- What every computer science major should know
- Evaluation of performance and productivity metrics of potential programming languages in the HPC environment
- Compiling a Lazy Language in 1,000 words
- Lecture Notes on Static Analysis
- Creating a language using only assembly language
- polyglot programmers' conference
- S9 CORE - A Toolkit for Implementing Dynamic Languages
- Zero-Overhead Metaprogramming
- Programming Language Theory
- All your favorite emoticons in one place
- 왜 변수가 나쁜가?
- Punctuated Equilibrium in the Large Scale Evolution of Programming Languages
- HOW TO CHOOSE A NEW PROGRAMMING LANGUAGE
- Code Golf at Google
- timeline of programming language
- Ask HN: What are some good resources on the history of programming languages?
- Designing a Programming Language: I
- Language Design
- THE HACKER’S SUMMER TRAINING GUIDE – PART 1
- The worst mistake of computer science NULL
- A Comparison of Programming Languages in Economics
- programming language quiz
- Learning new programming languages
- "A History of Programming Languages for 2 Voices" by David Nolen and Michael Bernstein
- A Language is More Than A Language
- 27 languages to improve your Python
- “유명 상표를 넘어서” 새롭게 떠오르는 10가지 프로그래밍 언어
- 4190.310 Programming Languages - 이광근
- The Languages And Frameworks You Should Learn In 2016
- www.hub4tech.com/programming
- syntaxdb.com
- DuoCoder
- 자바랑 자바스크립트랑 싸우면 누가 이길까? 정적 타입 언어와 동적 타입 언어의 생산성에 관하여
- If-statements design: guard clauses may be all you need
- Here are the best programming languages to learn in 2018
- graalpython: A Python 3 implementation built on GraalVM
- GraalVM - a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Kotlin, and LLVM-based languages such as C and C++
- Maximizing Performance with GraalVM
- In Search of the Holy GraalVM, putting the R in Scala (or Java, or…)
- Getting Started with #GraalVM #nativeImage
- Top 10 Things To Do With GraalVM
- Benchmarking Web Services using GraalVM Native Image
- Experiments with GraalVM - Part 1 : Introduction
- Experiments with GraalVM - Part 2 : Polyglot JavaScript Hello World
- Experiments with GraalVM - Part 3 : Invoke JS Functions from JVM
- Experiments with GraalVM - Part 4 : JavaScript Object to Case Class
- Experiments with GraalVM - Part 5 : Passing Scala Object to JavaScript
- Writing Apache Spark Programs in JavaScript
- GraalVM Native Image Tips & Tricks
- The GraalVM frenzy
- Building Cross Platform Native Images With GraalVM | Oracle Developers Blog
- Maximizing Applications Performance with GraalVM - YouTube
- AWS Lambda with Scala and GraalVM | by Mateusz Stankiewicz | Medium
- How the HotSpot and Graal JVMs Execute Java Code
- How the HotSpot and Graal JVMs Execute Java Code - YouTube
- GraalVM night! - Singapore Java User Group - YouTube
- GraalVM 21.0 Introduces a JVM Written in Java
- GraalVM 21.1 Supports JDK 16
- Java on Truffle — Going Fully Metacircular | by Oleg Šelajev | graalvm | Jan, 2021 | Medium
- Making sense of Native Image contents | graalvm
- 시드니 개발자 아저씨 케빈의 개발자 방송 Live - YouTube
- Faster warmup, smaller downloads, JDK 16 builds with GraalVM 21.1 | graalvm
- GraalVM at Facebook. Facebook is using GraalVM to accelerate… | by Alina Yurenko | graalvm | Jul, 2021 | Medium
- Facebook에서의 Graalvm | Oracle Java Embedded Korea Blog
- Facebook에서 Java 8/Java11용 Oracle JDK와 OpenJDK를 사용하다가 GraalVM으로 변경
- 성능 개선이 주목적이었기 때문에 GraalVM으로 전환하는 것만으로도 성능 향상, 모듈식 확장이 가능해 유지 보수가 편해질 것으로 판단해 GraalVM 선택
- 코드 변경 없이 런타임만 전환해서 마이그레이션 가능, Spark에 도입한 결과 CPU 사용량 10% 감소, 약 10~42%의 속도 향상
- 알도개 GraalVM - 자바를 넘어선 새로운 시작의 서막 - YouTube
- GraalVM 21.3 is here: Java 17, Native Image performance updates and more 🚀 | by Alina Yurenko | graalvm | Oct, 2021 | Medium
- GraalVM: The future of JVM languages | by Ahmed E. Eldeeb | Dec, 2021 | Medium
- Building Native image with Spring Boot | by Pavel Klindziuk | Dandelion Tutorials | Dec, 2021 | Medium
- GraalVM - YouTube
- GraalVM 22.0 Released with Native Image Improvements
- Revolutionizing Java with GraalVM Native Image
- GraalVM 22.1 릴리즈 - 개발자 경험 향상, 애플 실리콘 지원 | GeekNews
- GraalVM에서 OpenJDK로 넘어갔고 앞으로 넘어갈것 같은 기능들 | by Sunghyun Roh | Feb, 2023 | Medium
- A 1.5MB Java Container App? Yes you can! by Shaun Smith - YouTube
- Awesome Java applications with GraalVM and Java microservices frameworks by Аlina Yurenko - YouTube
- Unleash the power of your applications with Micronaut and GraalVM by Álvaro Sánchez-Mariscal - YouTube
- IMDEV 2023 누구보다 빠르게, 남들과는 다르게! 가장 빠른 GraalVM - YouTube
- Java in the Cloud with GraalVM • Alina Yurenko • GOTO 2023 - YouTube
- Java In The Cloud with GraalVM • Alina Yurenko • GOTO 2023 - YouTube
- GraalVM for JDK 21 Delivers Performance Enhancements and Improved Developer Experience
- GraalVM for JDK 21 is here! 🚀. Today we are releasing GraalVM for JDK… | by Alina Yurenko | graalvm | Sep, 2023 | Medium
- Thomas Wuerthinger on X: "Big news from last week's @GraalVM for @Java 21 release was that we can finally demonstrate that AOT (with profile-guided optimizations) can outperform JIT for all major metrics including throughput! Here are the numbers for the @Springframework PetClinic example (both G1 GC). 🚀 https://t.co/F8HhVhtEn2" / X
- Java In The Cloud with GraalVM • Alina Yurenko • GOTO 2023 - YouTube
- VidiGo Java In The Cloud with GraalVM • Alina Yurenko • G
- GraalVM을 사용한 클라우드의 Java - Alina Yurenko - GOTO 2023 | The fastest way to absorb knowledge | Lilys AI | Lilys AI
- 자바와 그랄 VM을 통해 클라우드 환경을 개선
- 그랄 VM을 활용하여 자바 어플리케이션을 클라우드에 대비하고 더 효율적으로 구축하는 방법을 소개
- 오라클 랩에서 그랄 VM의 개발 선전 이사 알리나로서 활동하며, 프로그래밍 언어, 컴파일러, 기계 학습, 보안 등 다양한 분야의 연구에 참여
- 그랄 VM을 JDK로 사용할 수 있다. 그리고 네이티브 이미지 기능을 통해 자바 어플리케이션을 플랫폼 고유의 네이티브 실행 파일로 미리 컴파일 가능
- 그랄 VM은 다양한 언어(자바, 자바스크립트, 파이썬 등)를 실행할 수 있으며 혼용하여 실행할 수 있는 특징을 가지고 있음
- 그랄 VM을 활용한 자바 개발에 대한 간략한 소개 후, 그랄VM을 시도한 인원의 설문조사 결과를 공유
- ️️GraalVM을 통해 Java 클라우드 애플리케이션의 빠른 시작과 효율적 리소스 사용, 그리고 공략할 수 있는 목표들
- GraalVM은 Java 애플리케이션을 JIT 컴파일하거나 Ahead-of-Time 컴파일하여 성능을 향상시키며, 클라우드 배포를 위한 Native Image 고려
- 클라우드 배포에서의 중요 목표는 빠른 시작과 효율적인 리소스 사용이며, GraalVM의 Native Image는 이를 실현
- Java 마이크로서비스 프레임워크 중 Spring Boot, Micronaut, Quarkus는 GraalVM Native Image를 지원하여 쉽게 사용 가능
- 고민하는 프레임워크 중 Quarkus를 언급하며, GraalVM이 빠른 시작 및 낮은 메모리 사용량으로 인해 많이 사용
- GraalVM으로 목표 중 빠른 시작, 리소스 절약, 적은 취약점, 작은 패키지 크기를 달성할 수 있으며, 클라우드 비용을 절감 가능
- 애플리케이션 초기화의 차이: JVM 대 Native Image
- GraalVM과 Native Image를 이용하면 애플리케이션이 더 빠르게 시작되고 적은 자원을 사용
- JVM 모드와 Native Image모드를 비교, JVM모드는 어플리케이션을 실행할 때 다양한 단계 필요, Native Image모드는 컴파일을 먼저 진행하므로 빠른 속도
- JVM은 어플리케이션의 정보를 수집하고 최적의 성능을 위해 컴파일 진행, Native Image는 미리 컴파일되어 있기 때문에 빠른 성능을 제공
- 실행 초기에는 Native Image 모드가 빠르지만 JVM은 최고 성능을 제공하기 위해 성능을 최적화하는 단계를 거친 후에 최고의 성능 가능
- 애플리케이션 구동 시간과 자원 사용 비교
- 미리 컴파일하기로 앱을 준비하면, 시작 시간이 매우 빨라짐. 앱 실행 파일에 로그인하면 즉시 실행을 시작할 수 있어서 제 valuable한 작업 가능
- 메모리 사용량 측면에서도 논의하며, 전통적인 JVM 모드와 Native image 모드에서 실행 시 메모리 요구량 비교 가능
- Native image 모드에서는 런타임에서 동적 코드 실행이 없으므로 더 적은 메모리 필요
- 특히 애플리케이션 확장이 필요한 경우 Native image 모드에선 애플리케이션 본체만 확장, JVM에서는 코드 실행 인프라도 비례적으로 메모리 확장 필요
- Visual로 설명하면, 일부 Native 애플리케이션 프로세스가 메모리를 공유하는 모습이 보이며 Native image로 실행 시에는 적은 메모리 필요
- ⏱️JVM과 Native 실행 비교
- JVM으로 실행시간은 560ms, 8080포트에서 동작
- Native로 실행시간은 20ms, 25배 빠르고 메모리도 적게 소비
- 프레임워크 보고서 대신 우리만의 성능 측정 필요
- PS record로 CPU 및 메모리 사용량 모니터링하여 성능 최적화
- 네이티브 애플리케이션의 메모리 및 CPU 사용량 비교
- 네이티브 애플리케이션에 대한 유사한 동작을 관찰할 수 있는지 확인 시도
- 애플리케이션의 메모리와 CPU 사용량을 살펴보면, 네이티브 모드에서는 훨씬 적은 메모리와 CPU를 사용하는 것을 확인 가능
- JVM 및 네이티브 모드에서 100만 개의 요청을 보내어 처리량 및 부하 처리 능력을 비교했으며, 퍼포먼스 메트릭을 출력하는 'Hy' 툴 사용
- JVM과 네이티브 실행 비교로 인한 성능 분석
- JVM에서의 응답 코드는 잘 작동하지만, 대부분의 요청이 7밀리초 이내로 처리되므로 꽤 우수함
- 네이티브 실행 시, 응답의 대부분이 4밀리초 내로 처리되며, 초당 5천 건의 처리량을 보여 JVM에 비해 약간 우수함
- GraalVM을 이용한 네이티브 애플리케이션은 JVM에 비해 장단점이 존재하며, 프로파일 가이드 최적화를 이용하면 앱의 실시간 동작 최적화 가능
- 이를 통해 성능 향상과 앱의 실행 방식을 최적화할 수 있어 JVM과의 성능 차이를 줄일 수 있음
- GraalVM: 이점 및 보안
- GraalVM은 런타임을 고려한 애플리케이션 최적화를 가능케하며, 성능을 향상시키는데 도움
- 이미지로 실행할 때, 애플리케이션 성능을 향상시키고, 곧바로 로드되는 새로운 코드 없이 보안 및 애플리케이션 통제 가능
- Native 이미지는 보안 측면에서 이점 제공, 런타임에서 새로운 코드를 로드하지 않으므로 애플리케이션 실행 시 실행할 코드가 명확하고, 보안 이점 획득
- 앱에서 명시적으로 사용하는 코드만 Native 실행 파일에 포함, 그 외의 것들은 제거, 제어가 더 용이, 애플리케이션 동작과 허용 여부를 명확히 인지 가능
- Native 이미지에서는 JIT(Just-In-Time) 코드 컴파일과 컴파일러 자체를 타겟팅하는 공격 벡터가 불가능, 모든 것이 사전 컴파일, 더 높은 보안성을 제공
- 앱 실행과 코딩 시 테스트, 보완 과정
- 앱을 실행하고 기존 프로세스들을 중지시킨 후, 새로운 로직을 구현하여 테스트 및 실행
- 팀 멤버가 새로운 로직을 도입해 파일명을 통해 파일을 제공하는 방식을 테스트
- 코드 상에 보안적 취약점이 존재하여 사용자 입력값을 검증하거나 필터링하지 않는다는 문제 발견
- 이로 인해 어플리케이션을 통해 민감한 정보인 YAML 파일이나 클래스 파일을 노출시킬 수 있는 보안 취약점
- 네이티브 앱에서도 동일한 테스트를 통해 파일 엑세스와 보안 취약점 확인
- Native 이미지 보안 및 패키징 크기
- Native 이미지로 config 파일을 노출할 수 없어, 보안 측면이 우수
- Native 이미지로 미리 빌드할 때 애플리케이션 패키징 크기 감소
- 개별로 애플리케이션을 패치 및 업데이트할 수 있으나, 자바 런타임 설치파일은 인스턴스 간 공유 가능
- UPX를 사용하여 네이티브 애플리케이션을 압축 가능하며, Packing 사이즈를 원할 경우 Native 이미지와 UPX로 축소 가능
- ️GraalVM 및 reflection 관련 주요 내용
- GraalVM은 reflection을 지원하지만, 이미지 빌드 시 동적 Java 기능은 곤란
- 네이티브 이미지는 예측 가능한 reflection 호출을 처리하지만, 복잡하거나 고급 기능은 추가 설정 필요
- 트레이싱 에이전트를 활용해 어플리케이션 행동을 관찰하고, JSON 형식의 구성 파일을 자동 생성 가능
- GraalVM 네이티브 이미지를 사용시 더 큰 앱을 빌드하는 데 더 많은 시간 소요, 목표 아키텍처와 운영 체제 필요, 플랫폼 간 상호 변환은 아직 미지원
- GraalVM 최신 릴리스 및 기능 업데이트 소개
- GraalVM의 최신 릴리스는 6월 1일에 큰 새로운 기능 포함. JDK 17 및 20 빌드를 포함하여 많은 새로운 기능 추가, 네이티브 이미지도 GraalVM JDK 자체에 포함
- 네이티브 이미지 툴이 JDK에 포함되어 'du install native image' 실행이 필요 없음
- 메모리 사용량 및 개발자 경험 개선, 빌드 번들을 생성 및 재생성할 수 있는 기능 추가. 최신 라이브러리 및 프레임워크와의 호환 강화
- 성능 향상, 빌드 시간 및 메모리 요구를 줄이는 작업을 계속 진행 중
- GraalVM을 통해 구현할 수 있는 것은 빠른 시작, 적은 메모리 및 CPU 사용, 보안 강화, 가벼운 용량, 쉬운 확장성
- Micronaut와의 통합으로 클라우드 어플리케이션 개발에 큰 도움
- IMDEV 2023 누구보다 빠르게, 남들과는 다르게! 가장 빠른 GraalVM
- -4 % 3 = ? 음수인 경우 language에 따라 mod의 결과가 다름
- 연봉 높은 프로그래밍 언어 순위 2018
- Top 3 Programming Language To Watch Out in 2019
- Top 7 Dying Programming Languages to Avoid Studying in 2019 –2020
- Programming Language Trends (Q2 2019)
- 8 Top Programming Languages & Frameworks of 2019
- Language Server Protocol
- Grammars for programming languages
- 언어별로 살펴본 Deep Copy와 Shallow Copy - Kowana's coding
- Comby · Structural code search and replace for ~every language
- Programming Idioms
- Programming Language Tourism: Leave Python and See the World! - YouTube 트렌드 변화 및 Elm, Idris등 다른 언어들에 대한 이야기
- The Problem with Popular Programming Languages | by Charles Scalfani | Sep, 2021 | Medium
- 람보르기니와 지프랭글러 적정 적합한 기술 선택
- PLDB: a Programming Language Database
- Why do arrays start at 0? • Buttondown
- 2030년엔 사라질 수도 있는 프로그래밍 언어 5가지 | 요즘IT
- flex & bison Book
- Transforming Programming • Dave Thomas • YOW! 2018 - YouTube
- 9가지 프로그래밍 언어로 배우는 개념: 1편 - 타입 이론
- 9가지 프로그래밍 언어로 배우는 개념: 2편 - 다형성
- 9가지 프로그래밍 언어로 배우는 개념: 3편 - 메타프로그래밍
- 9가지 프로그래밍 언어로 배우는 개념: 4편 - 하이 레벨 언어와 동적 타입 언어
- 여러 개발 언어를 안다는 것의 유용성 – 다양한 관점 | 웹으로 말하기
- Calling Functions Across Languages • Richard Feldman • GOTO 2023 - YouTube network, ipc inter-process communication, same process
- 좋은 예외(Exception) 처리
- "The Economics of Programming Languages" by Evan Czaplicki (Strange Loop 2023) - YouTube
- if(!x)를 만족하는 프로그래밍 언어별 x .. : 네이버블로그 (알고있던 거지만) true, false이외에 falsy에 대한 이야기 정리
- Multi-Paradigm Languages – O’Reilly
- DSL Engineering
- Domain-Specific Language Engineering
- DSL Development Environment
- The little engine that could: Linchpin DSL for Pinterest ranking
- awesome-fsm: 🤖 A curated list of awesome resources related to finite state machines and statecharts
- Verifying State Machine Behavior Using test.check
- Designing a State Machine without conditionals
- From Live Sequence Charts to State Machines and Back: A Guided Tour
- reduce-fsm provides a simple way to specify clojure finite state machines
- FLVIz - Finite Automata Simulator written in QT/Graphviz
- State machine 코드를 작성하기 위한 방법 다시 생각해보기
- State machines are wonderful tools
- 타다 드라이버 앱 상태관리 개선하기
- awesome-guidelines: A curated list of high quality coding style conventions and standards
- Awesome Guidelines | GeekNews 다양한 언어 및 환경을 위한 스타일 가이드 모음
- Programming languages
- 들어보셨나요? 한글 프로그래밍 언어 3종
- Systems Languages: An Experience Report
- KAIST CS320 Programming Languages Course Reading Materials
- Five Languages That Won’t Ever Die | by Yarot Kel | The Startup | Medium
- Top 4 Dying Programming Languages of 2020 | by Shubham Dixit | Sep, 2020 | Level Up Coding
- 5 Programming Languages Worth Exploring to Improve Your Coding Style
- ML languages (F# / OCaml), Haskell, LISP family: Common LISP, Clojure, Scheme, Rust, Smalltalk
- Choosing a (Language) Stack. This post and the experiment was a… | by Nick Gordon | WeWork Technology ruby, kotlin, go
- Most Difficult Programming Languages in the World | Level Up Coding
- The spectra of programming languages | by Hong Jiang | Ruminations on Programming | Medium
- Green Vs. Brown Programming Languages - Earthly Blog
- Memory safety for the Internet's most critical infrastructure
- Safety - by Jeff Schwab - Deeply Nested memory safety, c++ rust go
- NSA Releases Guidance on How to Protect Against Software Memory Safety Issues > National Security Agency/Central Security Service > Article
- Best Programming & Scripting Languages For DevOps Engineers
- "틈새를 파고든다" 새로운 프로그래밍 언어 11선 - ITWorld Korea
- Top 10 Weirdest Programming Languages in Use in 2022
- Performance comparison: counting words in Python, Go, C++, C, AWK, Forth, and Rust
- C++ vs Node.js vs Go - 멀티스레드 퀵정렬 수행속도 비교
- 다른 언어로 성장하기
- What Counts as a Programming Language? • Chelsea Troy • YOW! 2021 - YouTube
- 난해한 프로그래밍 언어 만들어보기 | kciter.so
- 약속
- 007 - Small experimental language with a license to macro
- 8th™ is a secure, cross-platform, robust, cost-effective, extensible, and modern programming language for mobile, desktop, server and embedded application development
- Ada
- Adapton - Programming Language Abstractions for Incremental Computation
- Agda - a dependently typed programming language / interactive theorem prover
- Albatross
- Alda - A music programming language for musicians
- Alloy Programming Language http://alloy-lang.org
- alumina: A general purpose programming language
- analang/ana
- Anglican - a open source, just-in-time-compiled probablistic programming language
- Ark - a fast systems programming language
- Assembler
- Literate webserver in assembler
- Assembly-HOWTO
- MiniMagAsm is minimalistic, but powerful and flexible content management system ( CMS ), implemented entirely in assembly language
- Breakout in Assembly
- Building a Tetris Clone in x86 Assembly, pt. Ⅰ: Hello, World
- Building a Tetris Clone in x86 Assembly, pt. Ⅱ: I/O
- Assembler relaxation
- Reverse Engineering With Radare2, Part 1
- Asmcodes: SHA-3 / Keccak
- Asmcodes: SHA-256
- Assembly programming for Perl programmers
- x64 어셈블리 소개
- ARM Assembly Programming Using Raspberry Pi
- Assembly Nights - ratfactor
- asmrepl: A REPL for x86-64 assembly language
- httpdito-readme
- Keystone - a lightweight multi-platform, multi-architecture assembler framework
- some-assembly-required: An approachable introduction to assembly
- xorpd
- ATL A new programming language for high-performance computers | MIT News | Massachusetts Institute of Technology
- atto
- AXEL - Haskell + LispHaskell's semantics, plus Lisp's macros
- Ballerina - Cloud Native Programming Language
- Basic
- Beads Language Home site
- Bosque programming language - an experiment in regularized design for a machine assisted rapid and reliable software development lifecycle
- C2lang
- carbon-language
- Ceylon
- Céu: Structured Synchronous Reactive Programming
- Cforall (C∀) Home Page
- chaltteok: 자연스러운 한국어를 꿈꾸는 프로그래밍 언어 '찰떡'
- Chapel
- Chisel - Constructing Hardware in a Scala Embedded Language
- Concurnas: the New Language on the JVM for Concurrent and GPU Computing
- Crema - Crema: A Sub-Turing Programming Language
- CROBOTS is a programming game, for programmers (or aspiring programmers.)
- Crystal
- D
- Dark - A language built for deployless backends
- Dash, a simple programming language written in C
- Delphi
- DRAGON
- DRAKON is an algorithmic visual programming language developed within the Buran space project
- Earl Grey
- Easylang
- Eff
- Ela - dynamic functional language
- Electr - Interactive language for electronic formulas (on the command line)
- Elm
- Understanding Elm
- Switching from imperative to functional programming with games in Elm
- Learning FP the hard way: Experiences on the Elm language
- Elm for the Frontend, Right Now
- Optimistic UI and Reactive Programming with Elm
- Walkthrough: Introducing Elm to a JS Web App
- elm-architecture-tutorial - How to create modular Elm code that scales nicely with your app
- 케빈 TV
- S02E09 - DB관리툴 / Elm (1회), FP for Frontend (2016-10-16)
- S02E10 - Youtube / 방송 / Elm (2회) (2016-10-23)
- S02E11 - 구인 / 구직 / 연애 꿀팁 / Elm (3회) (2016-10-30)
- S02E12 - 시청자와 수다 / Elm (4회) (2016-11-06)
- S02E13 - 호주 생활, 취업 / Scala소식 / Elm (5회) (2016-11-13)
- S02E14 - Elm 6회 웹소켓과 시간여행 디버깅 (2016-11-20) 2부
- S02E15 - 나프컨 2016 후기 / Elm 7회 Types (2016-12-11)
- S02E16 - 한국 방문 후기 (1) / Elm 8회 Type Aliases / Union Types (2016-12-18)
- Elm 9회 - Linked List and Generics (2016-12-25)
- Elm 10회 - Error Handling - Maybe (2017-01-01)
- GitHub 사용 보고서 / JS / Elm 11회 - Error Handling - Result (2017-01-07)
- 언어별 많이 사용된 단어 보기 / Elm 12회 JSON (2017-01-21)
- Elm 13회 JavaScript Interop / 해외 취업 관련 꿀팁 (2017-01-28)
- Aaron VonderHaar - elm the best of functional programming in your browser
- 엘름 함수 연산자(
|>, <|, >>, <<
)에 대한 간단한 설명 - Elm changed my mind about unpopular languages
- 엘름 디버거에서 전체 텍스트 표시하기
- 엘름에서 포트 함수 관리하기
- Elm에서 동시에 여러개의 Msg를 호출하기
- Solving the Boolean Identity Crisis: Part 1
- Solving the Boolean Identity Crisis: Part 2
- Solving the Boolean Identity Crisis: Part 3
- Elm in the Spring
- elm-minesweeper - An implementation of the game "Minesweeper" in Elm
- "Writing Testable Elm" by Tessa Kelly
- The Biggest Problem with Elm
- Chaining HTTP requests in Elm
- Albert Dahlin Moving to the Actor Model in Elm Elm Europe 2019
- Elm Radio Dillon Kearns, Jeroen Engels
- Announcing Elm Optimize Level 2! - Show and Tell - Elm
- How to setup IHP with Elm | DrifterCode
- elm-review v2!
- Elm at Rakuten - DEV Community
- Elm: Introduction to a new popular programming language - TechSavvy - YouTube
- Elm at NoRedInk | juliu.is
- Elm at Rakuten | Rakuten Engineering Blog
- Elm Radio: Comparing TypeScript and Elm's Type Systems on Apple Podcasts
- Millions of Users, Purely Functional Code - YouTube
- 프론트엔드 특화 함수형 프로그래밍 언어 Elm 가이드 3시간만에 다 배우기 - YouTube
- Loïc Knuchel - Elm, un langage simple et purement fonctionnel pour le front end - YouTube
- Elm — 웹 앱 전문 함수형 프로그래밍 언어. 지난 달 Elm(엘름)이라는 함수형 프로그래밍 언어를 접하고, 개인… | by 김대현 | HappyProgrammer | Medium
- 3시간 만에 다 배우는 Elm 가이드 영상 - hatemogi.com
- 프론트엔드 특화 함수형 프로그래밍 언어 Elm 가이드 3시간만에 다 배우기 - YouTube
- Rapid Web Productivity in Elm - Single Page Apps & More • Christopher Biggs • YOW! 2019 - YouTube
- elm-language-server
- English script - English as a programming language!
- erg: A statically typed language that can deeply improve the Python ecosystem
- Factor - a practical stack language
- Frame is a set of Domain Specific Languages (DSLs) that take a new approach to the many challenges inherent to traditional approaches to software modeling
- Frege: a Haskell-like Language for the JVM
- :Firth - A simple Forth-like language intended for DSL creation, implemented in Lua
- The Flix Programming Language
- Forth
- fortran
- Fortress
- F#
- fsharp.org
- F# 문서 - 시작, 자습서, 참조. | Microsoft Docs
- Functional Koans - F#
- Introducing F# 4.0
- Null-checking considerations in F# - it's harder than you think
- More freedom from side-effects (F#)
- Using F# for testing
- Announcing the RTM of Visual F# 4.0
- On how Jet chose F#
- Automated reasoning in F#, Scala, Haskell, C++, and Julia
- Understanding map and apply
- Visual F# Power Tools: community-led tooling for F# in Visual Studio
- C# and F# approaches to illegal states
- What I Learned Reading the FSharp Source Part One
- An introduction to property-based testing
- F# Code I Love
- Ionide - An Atom Editor package suite for cross platform F# development
- fsharp-hedgehog modern property based testing system in the spirit of QuickCheck
- C#과 F#의 차이
- 자바스크립트와 재귀 함수 재귀를 구현하기 힘든 이유
- F# 함수 이해하기 1부 - 타입 추론, 익명 함수, 커링, 부분 함수 적용
- F# 함수 이해하기 2부 - 클로저, 튜플, 연산자 오버로딩, 파이프라인 연산자
- C# LINQ 스타일과 F# 함수형 스타일의 차이 - 비슷하면서 다른 두 언어의 함수형 프로그래밍 접근 방식
- 함수형 프로그래밍으로 루프 사용 줄이기 - 함수형 프로그래밍으로 더 작성하기 쉽고 이해하기 쉬운 코드 만들기
- Write your own Excel in 100 lines of F#
- F# spoiled me, or why I don’t enjoy C# anymore
- Railway Oriented Programming | F# for fun and profit
- Syme & Matsakis: F# in the Static v. Dynamic divide - YouTube
- Top 5 Courses to Learn F# (F Sharp) for Beginners in 2022 - Best of Lot
- Functional Patterns in FSharp - YouTube
- F*
- Garam-Interpreter: "훈민정음은 디자인이다" 가람은 튜링 완전 프로그래밍 언어입니다
- Genie Language
- Guile is a programming language
- Gravity - An embeddable programming language
- Hack
- HHVM
- Covariance, Contravariance, and super Type Constraints
- hakana: Another typechecker for Hack, built by Slack
- Hakana: Taking Hack Seriously - Slack Engineering
- 2014년 PHP로 구축된 Slack은 2016년 Facebook이 만든 Hack으로 마이그레이션 하기 시작
- 보안 분석, 잠재적 버그 탐지, 죽은 코드 정리 등을 위해 Rust로 정적 분석 도구를 작성
- Hakana: Taking Hack Seriously - Slack Engineering
- tree-sitter-hack: Hack grammar for tree-sitter
- Halide - a language for image processing and computational photography
- Hedy - A gradual programming language
- Hello - the distributed language
- hermetic - a python-like language with hindley-milner-like type system, which is compiled to c
- HTML: The Programming Language
- Hy
- hyperscript - an experimental scripting language designed for the web, inspired by HyperTalk
- imba - programming language for web
- Idris - A Language with Dependent Types
- Idyll-lang: Make your app stand out with interactive data-driven stories
- IfLoop Programming Language
- J Programming Language
- Jai - an imperative static/strongly typed C-style language, but with a variety of modern language that C lacks
- jazzlang: 샤빱두비뚜밥 두비두비두비두비 뚜비두밥 사바두비두봐 샤바다 두붸둡 🎷
- Joxa - a small semantically clean, functional lisp
- Kaitai Struct: declarative binary format parsing language
- kinx: Looks like JavaScript, feels like Ruby, and it is a script language fitting in C programmers
- Klong - A Simple Array Language
- Koka is a function-oriented programming language
- Lasp - A Language for Distributed, Eventually Consistent Computations
- Literate - A Modern Literate Programming System
- liz: Lisp-flavored general-purpose programming language (based on Zig)
- LLVM
- LLVM for Grad Students
- LLVM-IR 인스트럭션 번역 목록
- LLVM-IR 고수준 구조 번역 목록
- 오크(ORK) – 난독화 컴파일러 도구 1편
- 오크(ORK) – 난독화 컴파일러 도구 2편
- 스위프트, 러스트, 클랭을 떠받치는 힘, LLVM 알아보기
- “Apple Silicon”: Macintosh 역사상 네 번째의 아키텍처 대전환은 어떤 의미인가
- DeClang: An anti-hacking compiler forked from the ollvm (https://github.com/obfuscator-llvm/obfuscator)
- LLVM — Writing Pass Instrumentations for the New PassManager | by Min-Yih Hsu | Jul, 2020 | Medium
- A Complete Guide to LLVM for Programming Language Creators
- LLVM Call 난독화 패스 만들기 : 클리앙
- LLVM 난독화 path 만들기 - CFG-Flattening : 클리앙
- LLVM internals, part 1: the bitcode format
- Exploring Clang/LLVM optimization on programming horror
- Intel C/C++ compilers complete adoption of LLVM
- Building Your Own Compiler The Slightly Easier Way With LLVM • Erik Corry • YOW! 2016 - YouTube
- llvm-bindings: LLVM bindings for Node.js/JavaScript/TypeScript
- “llvm-libc” C Standard Library — LLVM 13 documentation
- Logo
- Lola-2: A Logic Description Language
- Lua
- Lua Missions - Lua Koans, minus the Zen stuff
- Making a toy programming language in Lua, part 1
- Making a toy programming language in Lua, part 2
- Making a toy programming language in Lua, part 3
- Making a toy programming language in Lua, part 4
- An embeddable Lua command prompt as well as a stand-alone interpreter with pretty-printing and autocompletion
- Pfmatch - a pattern-matching language for network packets, embedded in Lua
- lupa - Lua in Python http://pypi.python.org/pypi/lupa
- luasynth - Audio framework in Lua https://scott.mn/projects/luasynth.html
- Using Lua and C++ in practice. Part 1. Intro to ECS and basic principles
- Ravi Programming Language is a derivative of Lua 5.3 with limited optional static typing and LLVM based JIT compiler
- Closures in Lua
- Corona Live Builds
- Py2Corona - Transpiler from Python to Corona SDK for building Mobile Apps
- 카일루아, 하나: 태동
- 카일루아, 둘: 파서 (1)
- 루아 5.2 이상에서 루아 스크립트를 실행 가능한 .bat 파일에 담는 방법
- 루아와 MeCab-ko를 이용한 한국어 형태소 분석
- Mecab-ko 설정 파일과 사전 디렉터리를 상대 경로로 지정하기
- Lua: Good, bad, and ugly parts - ZeroBrane
- Fengari Lua VM written in JavaScript
- Fennel: Lua Lisp Language
- lite - A lightweight text editor written in Lua
- lrexlib: A Lua (5.1 and later) binding of various regex library APIs (POSIX, PCRE, PCRE2, GNU, Oniguruma and TRE)
- Lush
- Lux
- Nim
- nim-lang.org
- Araq/Nim
- side by side nim and go
- A cursory look at meta-programming in Nim
- A small kernel written in Nim
- Nim binary size from 160 KB to 150 Bytes
- Porting a NES emulator from Go to Nim
- Go channels, goroutines and GC available in Nim
- What is Nim and why it matters for scientific computing
- Extract a plain text corpus from MediaWiki XML dumps, such as Wikipedia
- A Python Substitute? I Tried Out the Best Programming Language You’ve Never Heard Of | by Yakko Majuri | Better Programming | Medium
- Nim tutorial for setting up a website.
- nuri: 누리 : 함수형 한글 프로그래밍 언어
- mathematica
- monkey-compiler: implement a compiler for the Monkey programming language
- MATLAB
- An Introduction to MATLAB metaprogramming
- High-Performance MATLAB with GPU Acceleration
- Chebfun—numerical computing with functions
- 3 open source alternatives to MATLAB
- Track Driving Simulator in MATLAB
- Deep Learning in 11 Lines of MATLAB Code
- Simple Handshaking between Matlab and TensorFlow
- MATLAB Tutorials for beginners Module-1 | Python
- dynsys.matlab.python: Book Website: Dynamic System Modelling & Analysis with MATLAB & Pythobn
- MCG: Visual Functional Programming
- MelodyScript is a melody-oriented DSL for describing melodies, which can be optionally annotated with chords
- MiningZinc: A Language for Constraint-based Mining
- Mint - The programming language for writing single page applications
- mm
- Mojo 🔥: Programming language for all of AI
- Modular: AI development starts here
- Modular: Mojo🔥 - It’s finally here!
- Mojo Lang… a fast futuristic Python alternative - YouTube
- Python의 대안 🔥Mojo 언어를 소개합니다
- 찐 파이썬 킬러?! 해외에서 난리난 언어 Mojo 🔥 - YouTube
- Mojo🔥: AI를 위한 새로운 프로그래밍 언어
- 2023 LLVM Dev Mtg - Mojo 🔥: A system programming language for heterogenous computing - YouTube
- 새로운 인공지능 엔진(MAX)과 새로운 Mojo 버전 공개 - YouTube
- Choosing Your Language: Python or Mojo? - YouTube
- Modular: How to Be Confident in Your Performance Benchmarking
- Modverse Weekly - Issue 27
- MojoFastTrim
- Mojo Programming for Beginners - YouTube
- "Morel, a functional query language" by Julian Hyde - YouTube
- MUMPS - Meet MUMPS, the Archaic Health-Care Programming Language That Predicted Big Data
- Mycroft - A prolog-like language with compound truth value logic
- Newspeak
- nf - A minimal programming language, designed as an interactive environment for my os/64
- Nile
- None - The Best Programming Language is None
- Odin Programming Language
- Orange
- Parsley
- Pascal
- castle-engine/castle-engine: Cross-platform (desktop, mobile, console) 3D and 2D game engine supporting many asset formats (glTF, X3D, Spine...) and using modern Object Pascal
- Remote Control
- XD Pascal: A small embeddable self-hosting Pascal compiler for Windows. Supports Go-style methods and interfaces
- Perl
- Perl::Koans
- Statusuebersicht Perl VMs
- Send more money (in Perl 6)
- Parallelism, Concurrency, and Asynchrony in Perl 6 / Jonathan Worthington
- perl6
- Perl 6 hands-on tutorial
- Larry Wall Presents: Perl 6!
- Perl 6 Release Talk
- pire - Perl Incompatible Regular Expressions library http://github.com/dprokoptsev/pire/wiki
- perlsecret - Perl secret operators and constants
- Differences between Perl 5 and Perl 6
- PFT It is yet another static website generator written in Perl
- Perl 6 Advent Calendar
- Perl과 웹 API 서비스
- 2시간 반만에 펄 익히기
- perl의 기본적인 변수(reference, dereference) 다루기
- 소수를 판별하는 정규식
- cloc counts blank lines, comment lines, and physical lines of source code in many programming languages
- Top 5 Online Courses to Learn Perl in 2022 - Best of Lot
- What happened to Perl 7? | Perl Steering Council blogs.perl.org
- This is not your grandfather's Perl - Stack Overflow Blog
- Pharo - a pure object-oriented programming language and a powerful environment, focused on simplicity and immediate feedback
- Pkl :: Pkl Docs configuration language by Apple
- Pony
- Pop11 - Introduction to Pop11 basics (pop-basics - revised)
- processing
- Prolog
- prose - a simple language inspired by Io and Ioke that compiles to Clojure and ClojureScript
- Pyret
- Octave
- OGDL - Ordered Graph Data Language
- Opa - The Opa Language Rapid & Secure Web Development
- Orca Programming Language
- Quipper is an embedded, scalable functional programming language for quantum computing
- Quorum
- Red
- Ritchie language has the power of C language and the convenience of a high level language
- ROC - Documentation
- RTcmix - An Open-Source, Digital Signal Processing and Sound Synthesis Language
- SARL - General-purpose Agent-Oriented Programming Language
- scratch
- self
- Shen
- Skip - A programming language to skip the things you have already computed
- Skoar is a high-level language for coding music
- Smalltalk
- Computer Programming using GNU Smalltalk
- The Art and Science of Smalltalk
- Efficient Implementation of Smalltalk Block Returns
- Design Principles Behind Smalltalk
- Why Is Smalltalk Dead
- Choosing Smalltalk On Porpoise
- redline smalltalk - smalltalk on JVM
- What Killed Smalltalk?
- Mondrian - Agile Visualization
- Reviving Smalltalk-78 - Bert Freudenberg - IWST 2014
- Squeak/Smalltalk - open-source Smalltalk programming system
- A Major Milestone!
- Smalltalk’s Proven Productivity
- Why Smalltalk is so easy to evangelize - ITNEXT
- The Early History Of Smalltalk
- Snap
- Sonic Pi: How to Live Code an Orchestra • Sam Aaron • GOTO 2023 - YouTube
- Squirrel
- Stan is a probabilistic programming language implementing full Bayesian statistical inference
- Stella Tackling the Awkward Squad for Reactive Programming: The Actor-Reactor Model (ECOOP 2020) - ECOOP 2020
- Stripes - A small, modern and innovative programming language that runs anywhere
- Strongtalk - a major re-thinking of the Smalltalk-80 programming language and system
- Tcl
- [Object Oriented Programming in Tcl](Object Oriented Programming in Tcl)
- The Jim Interpreter - A small footprint implementation of the Tcl programming language
- learnxinyminutes.com/docs/tcl
- The tclcsv extension for Tcl provides a fast and flexible means of reading text files in Comma Separated Value (CSV) format
- annual tcl/tk conference
- umjunsik-lang: 어떻게 엄준식이 언어이름이냐🤣
- The Unison language
- Magic refactoring with Unison: much more than a new programming language
- Unison: A Friendly Programming Language from the Future Part 1 • Runar Bjarnason • YOW! 2021 - YouTube
- Unison: A Friendly Programming Language from the Future Part 2 • Runar Bjarnason • YOW! 2021 - YouTube
- The Unison Language and its Scala-based Runtime—Paul Chiusano
- Trying out Unison, part 1: code as hashes
- Trying out Unison, part 2: organising code
- Trying out Unison, part 3: effects through abilities
- Trying out Unison, part 4: from the edge to the cloud
- SBTB 2023: Paul Chiusano, Typed and compositional microservices in Unison - YouTube
- Unlambda - The Unlambda Programming Language
- Ur - The Ur Programming Language Family
- Urn: A Lisp implementation for Lua
- V - The V Programming Language Simple, fast, safe, compiled language for developing maintainable software
- Varnish Goes Upstack With Varnish Modules And Varnish Configuration Language
- verse: The Verse Programming Language
- virgil: A fast and lightweight native programming language
- Wasabi
- Wolfram Language
- Wuffs 구글 Wuffs - 안전하게 파일포맷을 다루기 위한 개발언어 | GeekNews
- Yeti - ML style functional programming language, that runs on the JVM
- Zephir - Hello World - 완두블로그
- What is the appeal of dynamically-typed languages?
- Types: computation vs. interaction
- Bootstrapping a Type System
- Type Systems and Much More
- What To Know Before Debating Type Systems
- Dynamic Languages are Static Languages
- Logic, Languages, Compilation, and Verification
- And that is why static types matter
- Is Python strongly typed?
- Several types of types in programming languages
- STATIC TYPING VS WEBSOCKETS
- 어떤 코드가 정적 타입 체킹 시스텀에서 컴파일을 통과 != 올바르게 동작한다는 것(Correctness)을 보장
- 실제 런타임에서 돌려 봐야 Correctness를 확인 가능
- 각각 장단점이 있지만, Haskell과 같은 정적 Type 체킹 시스템보다는 clojure.spec과 같은 동적 (Type and Value) 체킹 시스템이 더 실용적일 수 있다는 주장
- Static vs. dynamic languages: a literature review
- static vs dynamic vs strong vs weak vs duck typing
- 덕 타이핑(Duck Typing)이란?
- The broken promise of static typing
- 버그가 적은 프로그래밍은, 그 언어의 정적 타입 체킹 유무에 따르는 것이 아니라, 프로그래밍의 복잡도를 얼마나 낮춰줄 수 있는 언어인가에 달려 있다는 주장
- 정적 타입 체킹 기능이 중요하지 않다는 이야기가 아니라, 실제에 비해 그 효용이 지나치게 과대평가되어 있다는 의미
- 단순한 언어들의 공통점
- No manual memory management
- No mutex-based concurrency
- No classes
- No inheritance
- No complex type system
- No multiparadigm
- Not a lot of syntax
- Not academic
- 정적타입vs동적타입?? 단순한 언어가 최고!!
- Safer Smart Contracts Through Type-Driven Development - 감상문
- What are covariance and contravariance?
- Static type의 맹점
- An experiment about static and dynamic type systems doubts about the positive impact of static type systems on development time
- The Future of Programming is Dependent Types — Programming Word of the Day
- Demystifying Type Systems | by Ihor Morenets | Wix Engineering
- Static vs. dynamic typing: The details and differences
- 『프로그래밍 언어 속 타입』(가제) 책 소개 :: Jaemin Hong's Blog
- A Taste of Type Theory • Bartosz Milewski • YOW! 2019 - YouTube
- Why Static Typing Came Back • Richard Feldman • GOTO 2022 - YouTube
- Java and Scala's type systems are unsound: the existential crisis of null pointers | Prof. Nada Amin 언어 설계부터 생긴 오류에 대한 논문