2014-10-15 4 views
1

자바의 예를 들어 보겠습니다. 서식있는 텍스트 IDE는 지금은 발견되지 않으며 일반 텍스트 IDE가 주류입니다.MathType 수식을 직접 실행할 수있는 프로그래밍 언어가 있습니까?

IDE에서 github의 코드가있는 라텍스 공식을 여러 번 읽었으며 TeX와 유사한 소프트웨어 없이도 기호를 이해하기 어렵습니다.

Word, OneNote 등을 통합 할 수있는 IDE의 탄생을 상상해 봅니다. 클래스와 같은 코드를 강조 표시하고 그림처럼 붙여 넣기를 일반/부자 HTML처럼 편집하고 멀티미디어 개체를 설명으로 사용할 수 있습니다. , 평범한 javadoc이 아닌 matlab 도우미가 한 번에 하나의 파일에서 다중 열의 2 개 이상의 클래스와 비교 될 수 있습니다. 이는 OneNote에서 할 수있는 것과 마찬가지로 Java 클래스 계층 구조를 잘 보여 주므로 코드가 일반 텍스트 편집기의 한 열에 만 작성 될 수있는 제한을 없앨 수 있습니다. 솔직히 OneNote는 IDE가 아니지만 실제 리치 텍스트 IDE 프로토 타입입니다. 코드 작성 및 코드 작성과 같은 모든 직관력을 포함하지만 이러한 기능은 OneNote에서만 볼 수있는 특허와 같습니다. , 유명하거나 덜 프로그래밍 된 환경에서는 찾을 수 없습니다. 역사적으로 레일 트랙 너비의 개발은 OneNote를 사용할 때마다 뇌에서 반복되는 상상력의 크기를 제한한다는 것을 상기 할 수는 없습니다.

많은 IDE에는 강조 표시 문법이 있지만 평문 코드이므로 설명 영역을 제거하여 서식있는 텍스트에서 매우 빠르게 생성 할 수 있습니다.

Mathtype 식은 일반 텍스트 IDE의 계획 텍스트 수식보다 훨씬 뛰어납니다. 코드 형식과 수식을 함께 붙여 넣는 방식으로 OneNote에서 느낄 수 있습니다. 특히 분수 또는 루팅 수식 인 경우 더욱 그렇습니다. 참으로 유감입니다. 수식은 직접 실행할 수 없습니다. 사실, XML과 같은 서식있는 텍스트와 같은 형식으로 생성 될 수 있습니다.

void IHBMWM(void) 
 
{ 
 
\t gammap = gamma*sqrt(1 + I2); 
 
\t upsilon = cmplx(gamma+gamma1, Delta); 
 
\t alphainc = alpha0*(1-(gamma*gamma*I2/gammap)/(gammap + upsilon)); 
 
\t if (!gamma1 && fabs(Delta*T1) < 0.01) 
 
\t \t alphacoh = -half*alpha0*I2*pow(gamma/gammap, 3); 
 
\t else 
 
\t { 
 
\t \t Gamma = 1/T1 + gamma1; 
 
\t \t I2sF = (I2/T1)/cmplx(Gamma, Delta); 
 
\t \t betap2 = upsilon*(upsilon + gamma*I2sF); 
 
\t \t beta = sqrt(betap2); 
 
\t \t alphacoh = 0.5*gamma*alpha0*(I2sF*(gamma + upsilon)/(gammap*gammap – betap2))*((1+gamma/beta)*(beta – upsilon)/(beta + upsilon)- (1+gamma/gammap)*(gammap – upsilon)/(gammap + upsilon)); 
 
\t } 
 
\t alpha1 = alphainc + alphacoh; 
 
}

:

난 그냥 프로그램 기능의 실제 기능을 캡처하는 훨씬 더 유니 코드 웹 사이트에서 PDF 파일에 이러한 코드 중 하나 개 흥미로운 부분을 발견
void IHBMWM(void) 
 
{ 
 
\t = • (1 + 2); 
 
\t = + 1 + • Δ ; 
 
\t _inc = 0 • (1 − (• • 2/ ’)/(’ + )); 
 

 
\t if (! 1|| fabs(Δ • 1) < 0.01) 
 
\t \t _coh = − .5 • 0 • 2 • pow(/ ’ , 3); 
 
\t else 
 
\t { 
 
\t \t = 1/ 1+ 1; 
 
\t \t 2ℱ = (2/ 1)/(Γ + • Δ); 
 
\t \t 2= • (+ • 2ℱ); 
 
\t \t = 2; 
 
\t \t coh= .5 • • 0 • (2ℱ (+ )/(’ • ’ − 2))× ((1 + /) • (− )/(+ ) − (1 +/’) • (’ − )/(’ + )); 
 
\t } 
 

 
\t 1= inc+ coh; 
 
}

,547,321 0

위의 두 길이는 분명히 3 번째 길이보다 길다.

당신은 이미지의 3을 볼 수없는 경우, 33 페이지에서 작은 질문, 일반 텍스트 프로그래밍의 이러한 습관은 여전히로 생각해야한다 (35)

때문에, Original Pdf here를 방문하시기 바랍니다 그런 IDE가 나온 후에 좋은 것? 높은 수준의 프로그래밍 언어는 도우미가 멀티미디어 인 동안 일반 텍스트 코딩에 만족한다는 이러한 편견에 빠져 있습니다. 변수/상수는 모두 ASCII와 유사하지만 유니 코드 세트는 부분적으로 만 지원됩니다. 그리고 두뇌에서 읽고 사용하는 Mathtype과 같은 수식에서는 매우 우아합니다. IDE에서 교과서에서 읽은 것과 같은 색인을 첨자 화하는 것은 불가능하며 Java와 같은 프로그래밍 언어에서도 대괄호가 필요합니다.

마지막 질문은 수학처럼 MathType에 같은 공식이나 코드를 실행할 수있는 이러한 IDE 나 프로그래밍 언어가 존재하는지 여부 아닌지?

PS : I는 루프가 존재하는 경우의 MathType 식의 실행 순서는 낮은 effciency 될 수 있다는 것을 알고 있지만, 그 문제가 프로그래머로서, I 수동 단편에서 이러한 다항식 분리해서 및 추가 할 수 없다 그 (것)들은 반복에서, 그러나 기계는 그 (것)들을 역시, 용이 할 수있다.

PS2 : 티카 그 높은 가격 despites, 과학 커뮤니티 주위 수학 연구에 좋은 곳입니다. 나는 그것을 다운로드하고 사용하려고 노력한다. 많은 게임들이 훨씬 적은 수의 라인으로 구현 될 수 있고, 도우미가 입력 방법처럼 매우 인간 친화적이고 지능적이라는 단순함과 같은 인터페이스 및 표기법 시스템에 정말 매료된다! 또한 도우미는 코드를 실행할 수 있습니다. 이는 코드 생성을위한 명확한 개선이며 프로그래밍을 배우는 세대, 아마도 Mathematica 언어 일 뿐만이 아닙니다.

먼저 Mathematica의 "Notebook"개념은 내가 찾을 수있는 최고의 코드 편집기로, 표현 알고리즘과 같은 Mathtype과 같은 구성 요소를 사용할 수 있으며 다른 프로그래밍 언어에 이러한 개념을 적용하는 것만 큼 가치가 있습니다 Mathematica는 다른 언어로도 존재하는 특정 기능이 없기 때문에 자신의 한계를 지니고 있기 때문에 평범한 텍스트 IDE 또는 일반 텍스트 IDE가 중요합니다.

저는 지난 세기에 Windows 나 Linux에서 명령 행 프로그래밍의 전통적인 방식을 생각해 낼 수 없습니다. 요즘 일반 텍스트 IDE 프로그래밍과 크게 다르지 않습니다. 그건 그렇고, Mathematica 워크 벤치는 Mathematica "Notebook"방식으로 코딩 할 수없는 Eclipse IDE의 특정 버전입니다. 지금은 유감입니다.

다른 사람들의 코드를 읽는 것이 코드, 특히 알고리즘을 쓰는 것보다 훨씬 어렵고, 앞으로 쓰는 코드는 나와 다른 사람들 모두에게 읽기 쉽지 않습니다. Mathtype과 유사한 기호를 표시하는 방법이 없다면 Mathematica가 할 수있는 것과 같은 리치 텍스트 IDE에서 Symbols을 실행하는 것은 또 다른 일입니다.

둘째, "Notebook"에서도 OneNote 방식으로 구성 요소를 자유롭게 배열 할 수없고 너비가 무한대이면 OneNote에서 실제 무한대를 의미하므로 첫 번째 열에서 멀리 떨어진 오른쪽에 아무것도 붙여 넣을 수 있습니다 OneNote에서 서식있는 텍스트를 사용하고 수평 스크롤 막대를 사용하여 볼 수 있습니다. 이 기능의 명백한 이점은 같은 상위 클래스 또는 알고리즘 변형의 2 개 이상의 코드를 비교하는 것만으로도 umlimited입니다. 버전 제어에 유용 할 것입니다. 수직 스크롤 막대없이 BeyondCompare에서 10 개의 파일을 수평 적으로 비교하여 스크롤하는 것과 같습니다. 마지막 하나를 제외하고 각각 하나의 열이 아닌 클래스의 1 * N 행렬과 같습니다.

아마도 몇 년 후, 필자가 경험 한 것과 같은 기능을 Mathematica에서도 실현할 수 있습니다.

"소스 코드는 이전의 말과 같은 문서입니다. 아직 현실이 아닙니다.

답변

1

정확하게 MathType이 아닐 수도 있지만 IDE가 Mathematica 일 때마다 멋진 수학 기호로 기호식 프로그래밍을 수행 할 수 있습니다. 그것의 "후계자", Wolfram Language, 그것을 더 잘 할 수 있어야합니다.

유일한 문제는 매우 비싸다는 것입니다. 그러나 30 일 평가판이 있으므로 필요에 맞는 지 확인할 수 있습니다.

+0

안녕하세요. 매쓰 매 티카에 대한 조언을 해주셔서 대단히 감사 드리며, Mathtype과 같은 심볼을 코드로 표현하고 실행하는 철학이 기능적 객체와 OO 객체 모두에서 살아남을 수 있다고 생각합니다. 필자는 Mathematica와 비슷한 Mathics를 발견하게되었고, 무료이며 오픈 소스 프로젝트 인 Python의 Sympy를 기반으로합니다. 비록 파이썬이 윈도우와 리눅스 모두에서 비 라틴 문자에 친숙하지 않다는 것을 알았지 만, 나는 여전히 상징적 통합의 이모 든이가 중요하고 효율적이라고 생각한다. – archenoo

+0

그것이 당신을 도왔다는 소식을 듣고 기쁩니다. Mathics와 함께 놀았지만 그 당시에는 여전히 프로덕션 준비가되지 않은 상태 였고 저는 그것에 충실하지 않았습니다. 그러나 그것은 매우 유망하며 많은 사람들이 이미 유용하다고 생각합니다. 그것에 대해 나에게 상기시켜 줘서 고마워! –

관련 문제