첫 번째 예는 일종의 가능합니다. 일반적으로 이러한 것은 PHP (및 기타 관련 웹 프로그래밍 언어)에서 다음과 같이 발생합니다.
<HTML>
<?PHP
call_some_php_function(1,2,"a","b"); /* This is may return nothing, a text string, or actual HTML markup code */
?>
</HTML>
이 예제에서주의해야 할 몇 가지 중요한 사항 :
- HTML은 프로그래밍 언어가 아니며 마크 업 언어입니다.
- PHP와 HTML은 같은 장소에서 실행 / 통역되지 않습니다. PHP 코드는 서버에서 실행되는 PHP 인터프리터에 의해 실행되며 결과는 주변 HTML에 "주입"됩니다. 그런 다음 해당 전체 Blob이 완전한 HTML을 렌더링하는 클라이언트 / 브라우저로 전송됩니다.
두 번째 예제는 일종의 C ++ 및 Java 매시업처럼 보입니다. 서로 다른 언어로 작성된 컴파일 된 모듈이 서로 대화하는 것이 가능하지만, 동일한 소스 파일에서 Java와 C ++를 결합하는 것은 매우 혼란스럽고 어려울 것입니다.
이론적으로 다음과 같은 "언어"표시기가있는 특수 컴파일러 / 전처리기를 작성할 수 있다고 가정합니다.
Java
{
import java.util.Scanner;
}
C++
{
cout << "Insert a number from 1 to 10";
}
Java
{
Scanner n = new Scanner(System.in); //Actually, this line *could* be a C++ line - it's hard for me to tell just by looking at it.
System.out.println("The value you entered was" +n.newLine());
}
그러나 나는 이것을함으로써 당신이 유용한 것을 얻을 것이라고 확신하지 않습니다.
또한이 하이브리드 언어 환경은 두 언어간에 호환되지 않는 언어 기능을 어떻게 처리합니까?