따라서 일련의 사물은 일련의 사물이므로 문자 / 바이트 / 등의 시퀀스입니다. 문자열이라고도합니다. 그러나 누가 먼저 그들을 끈이라고 했습니까? 그리고 언제? 그리고 어떤 맥락에서 그것이 붙어 있었습니까? 나는 항상 이것에 대해 궁금했습니다.
따라서 일련의 사물은 일련의 사물이므로 문자 / 바이트 / 등의 시퀀스입니다. 문자열이라고도합니다. 그러나 누가 먼저 그들을 끈이라고 했습니까? 그리고 언제? 그리고 어떤 맥락에서 그것이 붙어 있었습니까? 나는 항상 이것에 대해 궁금했습니다.
답변:
휴고의 1963 년 참조 전에 실제 인용을 얻을 수 있습니까? 예. 존 맥카시 (John McCarthy)는 1960 년 4 월부터 상징적 표현의 재귀 함수와 기계, Part I의 계산 에서 "문자열"이라는 단어를 사용했습니다 .
원자 기호의 경우 대문자 라틴 문자와 숫자로 된 문자열을 사용해야합니다.
그러나이 질문에 더 유용합니다. 데이터 유형으로 문자열에 대한 참조 :
허용되는 모든 문자열은 L- 표현식입니다.
좋은 예가 아닙니다. McCarthy는 "문자열 (string of characters)"이라고 말함으로써 오늘날 전문 감각 프로그래머가 "문자열"을 사용하지 않습니다. Java 프로그래머에게 "문자열"이라고 쉽게 말할 수 있으며 "문자"부분이 암시 적이라는 것을 알게 될 것입니다. McCarthy의 사용은이 기능을 보여주지 않습니다. 1950 년대로 돌아가 맥카시가 안전하게 플레이했는지 또는 그 용어가 실제로 존재하지 않았는지 확인하도록합시다. LISP는 수학 미적분학을 기반으로하기 때문에 아마 여기서 많은 도움이되지 않을 것이므로 McCarthy의 문자열 함수는 아이디어를 문자열 처리에 처음 적용했을 수도 있습니다.
1960 년대의 중요한 문자열 처리 시스템은 1964의 SNOBOL (문자열 조작 언어) 이었습니다. 이것은 McCarthy의 논문을 인용하지만 COMIT과 SCL에 대해서도 논의합니다. 그들이 SCL에 대해 인용 한 작업은 출판되지 않았습니다 : 불행한 막 다른 골목.
COMIT는 추적하기가 더 쉽습니다. 컴퓨터 프로그래밍 기술 (Volume 1, 3 판, p.461)은 VH Yngve가 1963 CACM 기사를 작성했음을 알려줍니다. 그러나 "문자열" 의 가장 빠른 사용을 찾고 있으므로 이전 출판물에 대한 저자 검색을 할 것입니다.
내가 찾을 수있는 첫 번째는 1958 년 7 월의 기계 번역을위한 프로그래밍 언어입니다 . 여기에는 "string"이라는 단어가 한 번만 사용됩니다.
구두점 또는 공백 사이의 연속 된 각 문자는 사전에서 조회됩니다.
다시 말하지만,이 사용은 McCarthy와 비슷합니다. 이것은 현재의 의미에서 "문자열"이 사용되고 있다는 증거가 아닙니다. 논문을 자세히 살펴보면 데이터 구조가 카드의 "라인"임을 알 수 있습니다 (더 긴 "라인"을 계속할 수 있음).
자, 우리는 COMIT의 역사에서 앞으로 나아가 우리가 무엇을 얻을 수 있는지 볼 것입니다. 첫 번째 유용한 참고 자료는 1959 년 6 월 회의에서 진행된 기계 번역을위한 COMIT 시스템입니다 .
D SIN (F)를 COS (F) D (F)로 바꾸려면 F는 제한이없고 임의의 순서로 구성 요소 일 수 있습니다.이 문자열을 나타 내기 위해 $ 표기법을 사용합니다.
이것은 오늘날 우리가 사용하는 방식과 더 유사 해 보입니다 : "문자열"은 단독으로 존재하며 보너스에는 인식 할 수있는 특수 기호가 있습니다 : 달러 기호는 여전히 문자열 변수를 나타내는 일부 기본 기호에서 사용됩니다.
이 때부터 "string"이라는 단어 는 ACM '58 Proceedings에서 Perlis와 Smith 의 기호 문자열을 처리하기위한 명령 언어로 여러 번 나타나며 , 한 번은 Share 709 시스템 : Boehm 의 기호 프로그래밍의 기계 구현 및 강철.
1960 년대 초 ACM 디지털 라이브러리에서 '문자열'을 검색하면 "ALGOL의 문자열 처리", "새 언어의 문자열 조작"및 "영숫자 정보의 목록 유형 저장 기술"과 같은 제목을 포함한 62 개의 결과가 생성됩니다. 그때까지 그 아이디어는 확고 해졌다.
나는 컴퓨터 과학 전문 용어 의미에서 "문자열"이 1960 년경 몇 년 동안 일반화 된 문자 목록으로 일반화되었다고 주장 할 것이다. 그 전에, Yngwe와 McCarthy와 같은 저자는 "문자열"을 말할 수 있었으며 이해했지만 오늘날 사용되는 의미에서 "문자열"을 기본 단어로 사용할 수는 없습니다.
속기는 아마도 Perlis와 Smith 논문에 의해 컴퓨팅 주류에 소개되었을 것입니다. 널리 인용 된 것은 아니지만 1960 년 4 월 Joseph W. Smith의 ALGOL 에 대한 구문 및 의미 론적 향상 은 McCarthy의 LISP에 대한 설명과 동일한 CACM 문제입니다. 그 논문에서 :
이 논문의 목적은 ALGOL에 대한 일련의 구문 및 의미 론적 증강을 제안하는 것이다. 제안 된 확장 기능은 해당 언어로 "문자열"조작을 쉽게 설명 할 수 있도록 설계되었습니다. 그것들은 심볼 조작을위한 포괄적 인 언어를 구성하지 않습니다.
나에게 이것은 "문자열"의 증거로, 학술 어휘에서 확인되고 상징적 계산을위한 데이터 유형을 의미하며, 상업적 계산에 사용되는 도구에 중요하게 소개된다.
또한 Jean Sammet (1972)의 Programming Languages : History and Future 는 COMIT과 SNOBOL이 문자열 조작의 조상 이었음을 시사합니다. 따라서 이전 예제가 없을 것이라고 확신합니다.
컴퓨팅 내가 찾을 수있는 가장 빠른 참조 월부터입니다 1963 의 METEOR : 문자열 변환을위한 LISP 통역 MIT의 AI 연구소에서 다니엘 G 밥 로우에 의해.
옥스포드 영어 사전은 A로부터 이전 계산 예가 1956 의 문제 컴퓨팅 기계 협회의 저널 :
완전히 정렬 된 순서를 얻을 때까지 제어 필드 문자열을 왕복하기위한 영역이 따로 설정됩니다.