UPMD

UPMD 문법

UPMD(통합 프롬프트 마크업 정의)는 전통적인 프로그래밍 언어와 자연어 프롬프팅 사이의 격차를 해소하기 위해 설계된 차세대 프롬프트 언어입니다. 양자 컴퓨팅 원리와 컨텍스트 인식 기술을 통합하여 더 직관적이고 강력한 AI 제어 메커니즘을 제공합니다.

기본 문법

UPMD 문서는 파이프 문자(|)로 둘러싸인 일련의 블록으로 구성됩니다. 블록은 계층적 구조를 표현하기 위해 중첩될 수 있습니다.

변수 정의

|variable_name: attribute| = {value1: probability1, value2: probability2}
|quantum_variable: translation_approach| = {literal: 0.3, free: 0.7}

확률적 상태를 가진 변수를 선언합니다. 각 값에는 0과 1 사이의 확률이 할당될 수 있으며, 모든 확률의 합은 1이어야 합니다.

동적 문법

|dynamic_grammar| ... |/dynamic_grammar|
|dynamic_grammar| [beginner] Use simple terms... |/dynamic_grammar|

변수 값에 따라 다른 규칙을 적용합니다. 대괄호 안에 변수 값을 지정하고 해당 값에 적용할 규칙을 정의합니다.

함수 정의

|function: function_name(@parameter)| ... |return: result| ... |/function|
|function: analyze_text(@text)| ... |return: analysis_result| ... |/function|

특정 작업을 수행하는 함수를 정의합니다. 함수는 단계별 지침과 반환 값을 포함할 수 있습니다.

주석

(( Comment content ))
(( This part is visible to the AI but not executed ))

UPMD에서 주석은 이중 괄호로 둘러싸여 있습니다. 주석은 프롬프트에 설명이나 메모를 추가하는 데 사용됩니다.

데이터 타입

@variable_name = value
@name = "John Doe"
@age = 30
@is_student = true
@hobbies = ["reading", "painting", "coding"]
@profile = {"name": @name, "age": @age, "occupation": "engineer"}

UPMD는 문자열, 숫자, 불리언, 리스트, 딕셔너리 등 다양한 데이터 타입을 지원합니다. 변수는 @ 기호를 사용하여 선언됩니다.

제어 구조

UPMD는 전통적인 프로그래밍 언어와 유사하지만 더 자연스러운 언어와 같은 구문의 제어 구조를 제공합니다.

|if: @age >= 18| You are eligible to vote. |else| You are not yet eligible to vote. |/if| |for_each: @hobby in @hobbies| You enjoy @hobby. |/for_each|