추상 위키백과/업데이트/2021-06-30

This page is a translated version of the page Abstract Wikipedia/Updates/2021-06-30 and the translation is 100% complete.
추상 위키백과 업데이트 Translate

메일링 리스트를 통한 추상 위키백과 IRC의 추상 위키백과 텔레그램의 위키함수 마스토돈의 위키함수 트위터의 위키함수 페이스북의 위키함수 유튜브의 위키함수 위키함수 웹사이트 Translate

엡십론(ε) 단계 완료.

위키함수 사이트에 대한 개발 노력을 시작했을 때, 우리는 위키함수의 출시까지 이어지는 작업을 그리스 알파벳의 첫 11자 이름을 따서 명명 된 11단계로 세분화했습니다.

  • 알파(α) 단계가 완료됨에 따라 위키에서 시스템 제공 유형의 인스턴스를 생성 할 수있게 되었습니다.
  • 베타(β) 단계를 통해 위키에서 새로운 유형을 생성하고 이러한 유형의 인스턴스를 생성할 수 있게 되었습니다.
  • 감마(γ) 단계와 함께, 모든 기본 유형의 프리-제네릭 함수 모델을 사용할 수 있습니다.
  • 델타(δ) 단계와 함께, 내장된 구현을 평가할 수 있게 되었습니다.
  • 이번 주에는 엡실론(ε) 단계를 완료했습니다.

엡실론(ε) 단계의 목표는 프로그래밍 언어로 기여자가 작성한 구현을 평가하는 기능을 제공하는 것이었습니다.

이것은 무엇을 의미하나요? 위키함수의 모든 함수는 여러 가지 구현을 가질 수 있습니다. 구현을 표현하는 세 가지 방법이 있습니다:

  1. 개발 팀이 작성한 "내장" 기능: 이는 평가자가 구현을 블랙 박스로 처리 함을 의미합니다.
  2. 프로그래밍 언어의 "코드"로서 위키함수의 기여자들에 의해 생성되었습니다: 함수의 구현은 위키함수가 지원하는 모든 프로그래밍 언어로 제공될 수 있습니다. 결국 우리는 많은 프로그래밍 언어를 지원하는 것을 목표로 하지만 작은 것부터 시작할 것입니다.
  3. 다른 함수의 "구성"으로: 이는 기여자가 새로운 기능을 구현하기 위해 기존 기능을 빌딩 블록으로 사용할 수 있음을 의미합니다.

엡실론 단계에서 우리는 델타 단계의 내장 기능 외에도 기여 된 코드를 실행할 수 있도록 기능을 평가하기위한 인프라를 확장했습니다. 지금은 두 가지 프로그래밍 언어를 지원합니다: 자바 스크립트파이썬. 우리는 더 많은 프로그래밍 언어(위키미디어 커뮤니티, 루아에 가장 친숙한)를 추가 할 계획이며 추가 프로그래밍 언어의 지원을 요청하는 절차를 문서화 할 것입니다. 계획된 아키텍처를 구현했습니다:

위키함수 최상위 아키텍처 모델

이제 오케스트레이터가 평가할 함수 호출을 수신하고, 위키함수 및 잠재적인 기타 리소스에서 필요한 모든 데이터를 수집 한 다음 주어진 프로그래밍 언어를 실행할 수있는 해당 평가자를 선택하는 시스템이 있습니다. 기여자가 만든 코드이므로 코드를 실행하는 위치와 방법, 코드를 실행하는 가상 머신에 제공 할 기능에 대해 매우 신중합니다. 예를 들어, 보안 문제의 가능성을 줄이기 위해 네트워크 권한 및 지속성 레이어가 허용되지 않습니다.

현재 아키텍처 및 구현에 대한 보안 검토와 별도의 성능 검토가 진행 중입니다. 검토를 통해 밝혀진 가장 시급한 문제를 처리 한 후 데모 시스템을 제공 할 계획입니다. 이것은 아마도 다음 단계에 있을 것입니다.

다음 스크린 샷은 "문자열 연결(Concatenate)" 함수의 구현을 보여줍니다. 문자열 연결 함수는 두 개의 문자열을 인수로 사용하고 종단 사이에 결합된 두 개의 입력 문자열로 구성된 단일 문자열을 반환합니다. 구현은 자바 스크립트의 문자열 개체에서 제공하는 자바 스크립트의 네이티브 concat 메서드를 사용합니다.

자바 스크립트 구현 스크린 샷

다음 스크린 샷은 "위키"와 "함수" 인수를 사용하여 호출되는 함수를 보여 주며 결과적으로 "위키함수" 문자열이 됩니다.

함수 호출 스크린 샷
참고: pair는 현재 응답 객체일 뿐입니다. 앞으로 우리는 아마도 사용자 정의 유형을 갖게 될 것입니다.


우리는 이제 제타(ζ) 단계로 넘어가겠습니다. 이 단계의 목표는 세 번째 유형의 구현, 즉 새로운 기능을 구축하기 위한 함수의 구성을 허용하는 것입니다. 이것은 또한 영어가 아닌 언어로 구현에 기여하는 시스템의 장점을 실제로 강조하는 첫 번째 단계가 될 것입니다. 우리는 구성된 구현의 몇 가지 예를 게시했습니다. 일반적인 불리언 함수의 구현 예는 특히 유용할 수 있습니다. 제타(ζ) 단계는 구현을 생성하는 다양한 방법을 다루는 단계 3부작 중 마지막 단계입니다.

이 단계와 후속 단계에서는 보안 및 성능 검토에 대비하기 위해 지난 두 단계에서 급한 개발 과정에서 축적한 기술 부채를 줄이는 데 시간을 할애 할 것입니다. 또한 사용자 연구 및 디자인 개발을 기반으로 초기 변경을 시작하여 현재 베어본(bare-bone) 사용자 경험을 대체 할 것으로 예상합니다.

구조적으로 제타(ζ) 단계는 위키함수 개발의 전환점이 되는 것을 목표로 합니다. 에타(η) 단계에서 제네릭 유형 및 함수를 지원하고 모니터링과 UX, 보안 및 문서를 구현하기 위해 자체 리팩토링을 허용 할 수 있을만큼 강력한 시스템을 구축합니다. 그때까지 모든 핵심 기술 기능이 제자리에 있어야하며, 그런 다음 위키함수를 시작할 수 있도록 필요한 지원 시스템을 추가해야합니다.


지난주에는 토착어와 소외된 언어의 미래와 위키미디어 프로젝트에서의 존재와 사용에 관한 북극권 매듭 컨퍼런스가 있었습니다. 추상 위키백과와 위키함수 커뮤니티에서 잠재적으로 특히 흥미로운 몇 가지 강연을 짚고 싶습니다.

행사에 참석하고, 발표하고, 조직해 주신 모든 분들께 감사드립니다!

우리는 2021년 7월 26일부터 8월 6일까지 무료문법적 프레임워크 여름 학교에 참석하라는 초대가 있음을 상기시켜드립니다.

언어위원회는 바그바니어 위키백과의 생성을 승인했습니다. 바그바니어는 우리의 초점 언어 중 하나이며 인큐베이터에 있는 5개 언어 중 유일한 언어입니다. 다그바니어 커뮤니티에 축하드립니다!

다음 주에는 뉴스 레터가 없습니다.