Logtalk

Phần mềm chụp màn hình:
Logtalk
Các chi tiết về phần mềm:
Phiên bản: 2.44.1
Ngày tải lên: 14 Apr 15
Nhà phát triển: Paulo Moura
Giấy phép: Miễn phí
Phổ biến: 1

Rating: nan/5 (Total Votes: 0)

Logtalk là một phần mở rộng hướng đối tượng nguồn mở cho các ngôn ngữ lập trình Prolog. Tích hợp trình logic với lập trình hướng đối tượng và hướng sự kiện, nó tương thích với hầu hết các trình biên dịch Prolog.
Logtalk hỗ trợ cả hai nguyên mẫu và các lớp học. Ngoài ra, nó hỗ trợ lập trình dựa trên thành phần thông qua các thành phần thể loại dựa trên

Tính năng .

  • Tách giữa giao diện và thực hiện:
  • chỉ thị vị ngữ (tờ khai) có thể được chứa bên trong các giao thức (giao diện), mà có thể được thực hiện bởi bất kỳ đối tượng.

  • đối tượng tham số:

  • Tên
  • Object có thể có nhiều điều kiện hợp chất có chứa các biến miễn phí có thể được sử dụng để tham số hóa các vị từ đối tượng.

  • Hỗ trợ cho cả hai hệ thống dựa trên lớp và dựa trên nguyên mẫu:
  • Bạn có thể có, trong cùng một ứng dụng, dựa trên lớp phân cấp (với instantiation và chuyên môn hóa các mối quan hệ) và hệ thống phân cấp dựa trên nguyên mẫu (với các mối quan hệ mở rộng).

  • Hỗ trợ cho nhiều phân cấp đối tượng:
  • Không cần phải được hạn chế đến một hệ thống phân cấp dài duy nhất bắt nguồn từ một số đối tượng chung.

  • Riêng, bảo vệ, và thừa kế công cộng:
  • Logtalk hỗ trợ tư nhân, bảo vệ, và thừa kế công theo một cách tương tự như C. Hơn nữa, bất kỳ mối quan hệ thực thể có thể có đủ điều kiện sử dụng một phạm vi từ khóa.

  • Riêng, bảo vệ, và các vị từ đối tượng công chúng:
  • Thiết lập phạm vi đối tượng của bạn để phù hợp với thiết kế predicates giao thức của bạn và để cho các hệ thống thời gian chạy thực thi sự lựa chọn của bạn.

  • đối tượng tĩnh và động:
  • Đối tượng có thể là tĩnh hoặc động. Đối tượng tĩnh được định nghĩa trong tập tin nguồn được biên tập và nạp trong cùng một cách như các file Prolog. Năng động, đối tượng có thể được, hoặc được định nghĩa trong tập tin nguồn hoặc được tạo ra tại thời gian chạy.

  • vị từ đối tượng tĩnh và động:
  • Bất kỳ đối tượng tĩnh có thể chứa cả các vị từ tĩnh và năng động.

  • Một bộ xử lý trước để chúng tôi có thể sử dụng tiêu chuẩn cú pháp Prolog:
  • Logtalk sử dụng tiêu chuẩn cú pháp Prolog với việc bổ sung một số nhà khai thác và chỉ thị cho một đường cong học tập mịn.

  • Event-driven lập trình:
  • vị từ có thể được mặc nhiên được gọi khi một sự kiện xảy ra gián điệp, cho phép giải pháp lập trình mà giảm thiểu đối tượng khớp nối. Ngoài ra, các sự kiện hỗ trợ cho sự phản ánh hành vi.

  • lập trình phần dựa trên:
  • vị từ có thể được đóng gói bên trong loại, có thể được nhập khẩu bởi hầu như bất kỳ đối tượng, mà không cần bất kỳ sự trùng lặp mã và không phân biệt phân cấp đối tượng. Như vậy, đối tượng có thể được xác định thông qua thành phần của các loại, trong đó hoạt động như hạt mịn đơn vị mã tái sử dụng.

  • Hỗ trợ đa thừa kế:
  • Logtalk hỗ trợ đa thừa kế của cả hai giao thức và thực hiện. Một đối tượng có thể thực hiện một số giao thức và mở rộng, chuyên, hoặc khởi tạo một số đối tượng. Xung đột đa thừa kế được giải quyết ngầm bởi các thuật toán tìm kiếm Logtalk hoặc một cách rõ ràng bằng cách sử dụng chỉ thị vị.

  • Thực hiện tốt:
  • Mã Logtalk được biên dịch bằng cách sử dụng các kĩ thuật tương tự mà bạn sử dụng để viết mã hiệu quả Prolog. Ngoài ra, phương pháp tra cứu được lưu trữ bởi các động cơ chạy Logtalk, giúp nâng cao hiệu suất. Kết quả điểm chuẩn đối với một số trình biên dịch Prolog có sẵn ở đây.

  • Close tích hợp với các tiêu chuẩn ISO Prolog:
  • Logtalk được thiết kế để tích hợp trơn tru với bất kỳ trình biên dịch Prolog, tuân thủ chặt chẽ hoặc sau các Prolog chuẩn ISO.

  • Tương thích với hầu hết các trình biên dịch Prolog:
  • giao diện Logtalk với một trình biên dịch Prolog cụ thể thông qua một tập tin cấu hình tối thiểu làm cho nó tương thích với hầu hết các trình biên dịch hiện đại.

  • Tự động thế hệ của các tập tin tài liệu XML:
  • Logtalk tự động tạo ra một tập tin tài liệu ở định dạng XML cho mỗi biên soạn đối tượng, giao thức, hoặc thể loại. Hệ thống này bao gồm tất cả các XSL cần thiết (T) các tập tin và các kịch bản để chuyển đổi tài liệu tập tin vào (X) HTML và PDF.
  • Logtalk chạy trên hầu hết các máy tính với một trình biên dịch Prolog (môi trường phát triển chính là một Apple PowerBook G4 chạy hệ điều hành MacOS X). Các giao diện giữa Logtalk và một trình biên dịch Prolog cụ thể được thực hiện thông qua một tập tin cấu hình.
  • Tập tin này có chứa một số vị cụ thể Logtalk và triển khai cho các tiêu chuẩn ISO Prolog vị không có sẵn trong các trình biên dịch Prolog.

  • Trong văn bản Logtalk tôi đã cố gắng thực hiện theo các tiêu chuẩn ISO Prolog bất cứ khi nào có thể. Khả năng cần thiết bởi Logtalk không được định nghĩa trong phần I của tiêu chuẩn ISO là:

  • truy cập vào thuộc tính vị ngữ (động, tĩnh, built_in):
  • Miễn là Prolog yêu thích của bạn có những khả năng được đề cập ở trên, làm cho một tập tin cấu hình là rất dễ dàng. Các gói Logtalk đã bao gồm cả các tập tin cấu hình cho các trình biên dịch Prolog phổ biến nhất. Để đạt hiệu quả tối ưu, Logtalk đòi hỏi rằng các trình biên dịch hỗ trợ đầu tiên Prolog-đối lập chỉ mục cho cả mã tĩnh và năng động.

  • Logtalk Phát triển và thử nghiệm hiện đang được thực hiện bằng cách sử dụng các trình biên dịch Prolog sau (theo thứ tự bảng chữ cái):
  • GNU Prolog 1.2.18
  • SWI Prolog 5.4.7
  • YAP 4.5.7
  • Do đó, đây có thể là sự lựa chọn tốt nhất của bạn cho chạy Logtalk (cung cấp mà bạn có thể tự do sử dụng một trong những trình biên dịch).

  • Ngoài ra, Logtalk chạy với rất ít hoặc không có sự thay đổi với các trình biên dịch Prolog sau (theo thứ tự bảng chữ cái):
  • ALS Prolog 3.1
  • Amzi! Prolog 6.22 ~ 7.x
  • BinProlog 8.x ~ 10.x
  • B-Prolog 4.0, 5.0, 6.x
  • CIAO Prolog 1.10p5
  • Eclipse 5.5 ~ 5.8
  • IF / Prolog 5.x
  • JIProlog 3.0.1-2
  • K-Prolog 5.1.2a
  • LPA MacProlog32 1,25
  • LPA WinProlog32 4.0x
  • MasterProlog 4.1
  • Open Prolog 1.1b10
  • PrologII 4.5
  • QU-Prolog 6.7
  • Quintus Prolog 3.3 ~ 3.5
  • SICStus Prolog 3.8 ~ 3.12.x
  • XSB 2.6 ~ 2.7

là gì mới trong phiên bản này:

  • Được thay đổi các thông điệp cơ chế gửi để gọi & quot; trước & quot; xử lý sự kiện trước khi thực hiện các phương pháp tra cứu. Sự thay đổi này sẽ không có tác động trên mã hiện nhưng cho phép một số ứng dụng thú vị (ví dụ như không thay vì ném một ngoại lệ khi một thông báo sẽ không hiểu).
  • More xử lý phù hợp của cờ biên dịch giữa các thiết lập giá trị cờ khi biên dịch / tải một tập tin và khi sử dụng set_logtalk_flag / 2 được xây dựng tại vị: trong cả hai trường hợp, cài đặt & quot; smart_compilation & quot; cờ trên sẽ tắt & quot; sạch & quot; cờ và đặt thẻ & quot; sạch & quot; cờ trên sẽ tắt & quot; smart_compilation & quot; cờ. Ngoài ra, thiết lập các & quot; debug & quot; cờ trên sẽ tắt cả các & quot; smart_compilation & quot; và & quot; sạch & quot; cờ.
  • Cho phép kiểm soát cấu trúc mềm cắt, (* - & gt;) / 2, khi bản được hỗ trợ bởi các Prolog biên dịch back-end, được sử dụng trong cơ thể các quy tắc ngữ pháp (sau khi một nhận xét của Daniel Diaz trong khi thảo luận GNU hỗ trợ Prolog cho việc kiểm soát cấu trúc mềm-cut).
  • Sửa chữa một lỗi biên dịch Logtalk khi & quot; source_data & quot; lá cờ là về với back-end Prolog trình biên dịch mà không thể lấy lại vị trí của một thuật ngữ đọc.
  • Sửa chữa một lỗi trong việc biên soạn các meta_non_terminal / 1 chỉ duy nhất mà các meta-số đầu tiên sẽ được xử lý một cách chính xác.
  • Cập nhật các tập tin cấu hình Eclipse để phát hiện khi chạy trên Windows 64 bit hệ thống và bỏ qua không vị và không điều hành xuất khẩu khi tiền xử lý lib / 1 chỉ thị.
  • Cập nhật các khuôn khổ kiểm tra đơn vị để in các thông điệp thông tin hơn cho các đơn vị xét nghiệm thất bại.
  • Thêm vị chia / 4 (để tách một danh sách vào danh sách con với một độ dài nhất định) để các & quot; listp & quot ;, & quot; & quot ;, danh sách và & quot; difflist & quot; tổ chức thư viện.
  • Cập nhật & quot; cc & quot; Ví dụ với một định nghĩa cho các shell / 2 vị cho CxProlog.
  • Thay đổi tên của các đối tượng trong các & quot; mi & quot; ví dụ để tránh một cuộc xung đột tên khi chạy các bài kiểm tra ví dụ đơn vị.
  • Sửa chữa một lỗi trong trình cài đặt Windows mà ngăn chặn phát hiện YAP 64 bit phiên bản. Nhờ Stepan Ipatov trong báo cáo lỗi.
  • Sửa chữa một lỗi trong trình cài đặt Windows mà ngăn chặn người dùng từ tùy biến thư mục cài đặt. Nhờ Daniel Moniz cho các báo cáo lỗi và Gavin Lambert để chẩn đoán lỗi.
  • Cập nhật các kịch bản cài đặt Windows để cải thiện phát hiện XSB và để mặc định để cài đặt các file cho mỗi người dùng khi chạy bởi một người dùng không có quyền quản trị trên máy tính mà Logtalk đã được cài đặt.
  • Thêm hỗ trợ cơ bản cho LaTeX & quot; danh sách & quot; gói. Ghi chú thêm vào & quot; đúc & quot; và & quot; texmates & quot; Gói LaTeX.
  • ghi chú thêm vào trình soạn thảo văn bản Textastic iPad.
  • Thêm màu cú pháp cơ bản và hỗ trợ hợp mã cho các biên tập văn bản UltraEdit.
  • Cập nhật các TextMate bundle nào để vô hiệu hóa các chỉnh thụt tự động được giới thiệu trong phiên bản phát triển của TextMate 2.0.

là gì mới trong phiên bản 2.44.0:

  • Thay đổi ngữ nghĩa của việc bổ sung danh mục cho phép vá cả tờ khai vị và định nghĩa vị của các đối tượng bổ sung. Điều này được thực hiện bằng cách bảo đảm rằng tra cứu khai vị ngữ và định nghĩa bắt đầu ở hạng mục bổ sung trước khi nhìn vào các đối tượng bổ sung bản thân hoặc thành các tổ chức liên quan của nó.
  • Cập nhật các trình biên dịch Logtalk để tạo ra một cảnh báo khi biên dịch một loại bổ sung cho một đối tượng bổ sung đã được biên dịch với sự hỗ trợ bổ sung cho danh mục tắt.
  • Sửa chữa một lỗi trong việc xử lý các cuộc gọi meta-meta-vị từ nơi bối cảnh gọi điện thoại sẽ được thiết lập để & quot; này & quot; thay vì & quot; người gửi & quot; bất cứ khi nào một meta-đối số là một trong những :: / 2, {} / 1,

là gì mới trong phiên bản 2.43.3:

  • Thay đổi các trình biên dịch để đưa vào tài khoản sử dụng / 2 chỉ thị khi biên dịch các cuộc gọi đến sự phản ánh phương pháp tích hợp. Sự thay đổi này kéo dài ngữ nghĩa của việc sử dụng / 2 Chỉ thị và cho phép di chuyển dễ dàng hơn từ các ứng dụng Prolog đồng bằng để Logtalk.
  • Cập nhật việc thực hiện các predicate_property / 2 được xây dựng trong phương pháp, thêm một tài sản phạm vi / 1.
  • Cập nhật các trình biên dịch Logtalk để thêm thông tin về một tên tập tin nguồn, thư mục tập tin nguồn, và các tùy chọn trình biên dịch tập tin nguồn cho các tập tin được tạo ra Prolog. Trong các phiên bản trước đó, thông tin này đã được đăng ký chỉ khi tải một file nguồn. Những thay đổi đơn giản hóa xây dựng các ứng dụng mà các thư viện Logtalk là tiền biên dịch và được nạp sẵn.
  • Cập nhật các trình biên dịch Logtalk in tên của các đối tượng móc được sử dụng trong việc biên soạn các tập tin nguồn khi & quot; móc & quot; biên dịch cờ được xác định.
  • Cập nhật
  • được xây dựng trong trình gỡ lỗi để tránh điểm lựa chọn không cần thiết tạo ra bởi trình biên dịch back-end Prolog mà rút / 1 thực hiện không thành công để tận dụng lợi thế của bản cập nhật ngữ nghĩa hợp lý để thực hiện cuộc gọi xác định.
  • Sửa chữa một lỗi trong xử lý thời gian chạy trình biên dịch Logtalk nơi nó đã thất bại để biên nhận dạng thực thể nội bộ khi ném ngoại lệ tồn tại thực thể.
  • Cập nhật các tập tin cấu hình Prolog nạc, thêm chỉ số / 1 chỉ thị cho một số các vị năng động được sử dụng bởi các bảng thời gian chạy Logtalk nội bộ.
  • Cập nhật các tập tin tích hợp SWI-Prolog để kiểm tra sự sẵn có của các chỉ số / 1, mà là bị phản đối bởi các thí nghiệm hỗ trợ SWI-Prolog mới cho just-in-time đa tham số chỉ mục.
  • Added predicates dãy / 4 (để tạo subsequences của một danh sách với một độ dài nhất định), thay thế / 4 (thay thế cho các phần tử trong một danh sách), và hamming_distance / 3 đến thư viện & quot; listp & quot; và & quot; danh sách & quot; các thực thể.
  • Thêm euclidean_norm / 2, chebyshev_norm / 2, manhattan_norm / 2, euclidean_distance / 3, chebyshev_distance / 3, manhattan_distance / 3, và scalar_product / 3 vị để các thư viện & quot; numberlistp & quot; và & quot; numberlist & quot; các thực thể.
  • Khắc phục một số lỗi ngớ ngẩn trong các định nghĩa của các & quot; nhân vật & quot; đối tượng thư viện predicates is_bin_digit / 1, is_octal_digit / 1, is_dec_digit / 1, và is_hex_digit / 1.
  • Cập nhật thư viện & quot; all_loader.lgt & quot; tập tin nạp để nạp cũng & quot; meta_compiler_loader.lgt & quot; tập loader.

là gì mới trong phiên bản 2.43.1:

  • Thay đổi các trình biên dịch để đưa vào tài khoản sử dụng / 2 chỉ thị khi biên dịch các cuộc gọi đến các cơ sở dữ liệu phương pháp tích hợp. Sự thay đổi này kéo dài ngữ nghĩa của việc sử dụng / 2 Chỉ thị và cho phép di chuyển dễ dàng hơn từ các ứng dụng Prolog đồng bằng để Logtalk.
  • Thử nghiệm hỗ trợ bằng cách sử dụng một mẫu ngữ như là đối số cho coinductive / 1 chỉ. Mẫu này cho phép các đặc điểm kỹ thuật trong đó lập luận có ý nghĩa cho sự thành công coinductive. Căn cứ vào chức năng tương tự được tìm thấy trên trên DRA meta-thông dịch viên của Feliks Kluzniak.
  • Cải thiện hỗ trợ gỡ lỗi các vị coinductive khi sử dụng Logtalk được xây dựng trong trình gỡ lỗi.
  • hỗ trợ coinduction Removed cho CxProlog. Phiên bản hiện tại của trình biên dịch này thiếu một cắt mềm được xây dựng-in vị hoặc kiểm soát xây dựng, mà bây giờ là yêu cầu của việc thực hiện coinduction nghiệm.
  • Dỡ bỏ một hạn chế lâu dài mà ngăn cản người sử dụng định nghĩa của các vị wrapper cho bagof / 3 và setof / 3 được xây dựng trong phương pháp bất cứ khi nào đối số mục tiêu có thể sử dụng ^ / 2 lượng hóa hiện sinh.
  • Thêm hỗ trợ cho các & quot; ^ & quot; meta-vị meta-đối chế độ specifier đề xuất bởi Jan Wielemaker và tìm thấy trên SWI-Prolog 5.11.25. Chế độ specifier này rất hữu ích khi xác định hàm bao cho bagof / 3 và setof / 3 phương pháp được xây dựng trong khi đối số mục tiêu có thể sử dụng ^ / 2 lượng hóa hiện sinh.
  • Added & quot; prolog_compiler & quot; và & quot; prolog_loader & quot; cờ biên dịch, mà cho phép tùy chọn để đi qua các back-end biên dịch Prolog được xây dựng trong các vị từ đó biên dịch vào đĩa và tải một (biên dịch) Prolog cờ. Giá trị mặc định cho cả hai lá cờ là danh sách trống.
  • Sửa chữa một lỗi khi biên dịch các cuộc gọi đến Prolog độc quyền xây dựng-in vị meta- nơi trình biên dịch Logtalk có thể cố gắng để xử lý đối số không như mục tiêu meta-. Lỗi này chỉ thể hiện bản thân với một số back-end Prolog trình biên dịch như Eclipse.
  • Sửa chữa một lỗi trong việc xử lý các chỉ thị biên dịch có điều kiện.
  • Sửa chữa một lỗi đó ngăn cản đi qua alias / 3 chỉ thị về các cuộc gọi đến các create_object / 4, create_category / 4, và create_protocol / 3 được xây dựng trong các vị từ.
  • Loại bỏ khỏi được xây dựng trong đối tượng & quot; logtalk & quot; các phương pháp phản decompile_predicate_head / 4 và decompile_predicate_indicator / 4.
  • hỗ trợ Removed cho dài phản Logtalk metapredicate / 1 chỉ.
  • Sửa chữa một lỗi khi thực hiện các cuộc gọi đến bộ nhớ đệm loại vị từ nơi các mục cache có thể được cụ thể hơn là cần thiết khi làm việc với các loại tham số.
  • Cải thiện bộ nhớ đệm của & quot; siêu & quot; cuộc gọi từ bên trong nguyên mẫu. Trước đây, tất cả các mục cache sẽ được chuyên môn bởi giá trị của & quot; tự & quot; để giải quyết tốt các trường hợp đặc biệt, nếu một đối tượng vừa khởi tạo và chuyên các đối tượng khác.
  • Cập nhật các trình biên dịch Logtalk để kích hoạt bất kỳ khai báo hành tìm thấy trên phạm vi chỉ thị vị trong việc lập các thực thể có chứa các chỉ thị.
  • Cải thiện hiệu suất của các vị coinductive khi sử dụng back-end Prolog trình biên dịch như SICStus Prolog mà không cung cấp sự kiểm soát cấu trúc mềm cắt nhưng cung cấp các phần mềm cắt được xây dựng trong meta-vị (nếu / 3).
  • Sửa chữa một lỗi nơi một báo cáo giả biên soạn / tải các cảnh báo có thể được in ra khi một tập tin mã nguồn được biên soạn / nạp với các lá cờ biên dịch & quot; Báo cáo & quot; tắt.
  • Thêm một & quot; streamvars & quot; đối tượng thư viện, xuất phát từ hiện & quot; assignvars & quot; thể loại thư viện, có tính năng hỗ trợ cho việc thêm và lấy các điều khoản (có thể là biến) từ một & quot; dòng & quot; biến.
  • Cập nhật & quot; coinduction & quot; Ví dụ, lợi dụng các coinductive / 1 chỉ thị tăng cường và mở rộng số lượng các ví dụ cá nhân có thể được sử dụng chạy SICStus Prolog. Thêm một mô hình kiểm tra ví dụ, sử dụng coinduction, coroutining, và những khó khăn, đóng góp của Neda Saeedloei.
  • Cập nhật & quot; metapredicates & quot; Ví dụ với mẫu mã minh họa làm thế nào để xác định hàm bao cho bagof / 3 và setof / 3 phương pháp được xây dựng trong khi các meta-lập luận có thể chứa các biến existentially đủ điều kiện.
  • Cập nhật & quot; cc & quot; Ví dụ, điều chỉnh các định nghĩa vị cho nhiều back-end Prolog trình biên dịch và thêm một số xét nghiệm đơn vị cơ bản.
  • Cập nhật & quot; mã hóa & quot; Ví dụ với sự hỗ trợ hạn chế cho Lean Prolog.
  • Thêm mục còn thiếu cho các meta_non_terminal / 1 chỉ thị và cho các cuộc gọi // N không bị đầu cuối để các & quot; giúp & quot; ví dụ.
  • Thêm một phân tích cú pháp cho PDDL 3,0 file, đóng góp bởi Robert Sasak.
  • Nhập mã hỗ trợ gấp để soạn thảo văn bản SubEthaEdit. Nhập mã hỗ trợ cho các khối lập có điều kiện để các biên tập viên văn bản Kate, Vim, và TextMate gấp.
  • Cập nhật các kịch bản tích hợp để tải các đường dẫn thư viện file trước khi tải Logtalk trình biên dịch / runtime. Sự thay đổi này nhằm mục đích đơn giản hóa tải về thư viện và tập tin ví dụ từ các tập tin cài đặt. Ngoài ra, cũng tìm kiếm các thư mục cài đặt Logtalk trong $ HOME / cổ phiếu khi các biến môi trường LOGTALKHOME không được định nghĩa. Thanks To VAtor Santos Costa cho đề nghị này.
  • Cập nhật các cài đặt Windows để hỗ trợ nạc Prolog và phát hiện YAP 64 bit phiên bản.

là gì mới trong phiên bản 2.43.0:.

  • Thêm hỗ trợ thử nghiệm cho Lean Prolog
  • Thay đổi báo cáo lỗi của trình biên dịch Logtalk và thời gian chạy. Tất cả các điều khoản ngoại lệ bây giờ sử dụng, bất cứ khi nào có thể, các lỗi (Error, logtalk (Goal, Entity))
  • định dạng. Thay đổi các lỗi nội bộ kiểm tra để sử dụng, bất cứ khi nào thực tế, mới '$ lgt_must_be' / 2-3 vị nội bộ.
  • Thêm một & quot; tối ưu hóa & quot; cờ, có giá trị mặc định là & quot; trên & quot ;. Cờ này cho phép người sử dụng tắt tối ưu hóa hiện có cho ví dụ: nhiệm vụ gỡ lỗi (các
  • tối ưu hóa đang thực hiện bao gồm việc loại bỏ các cuộc gọi không cần thiết để đúng / 0 từ cơ thể của khoản ngữ biên dịch và loại bỏ các
  • cuộc gọi không cần thiết để (=) / 2 từ cơ thể của các điều khoản được tạo ra bởi việc mở rộng các quy tắc ngữ pháp).
  • Thêm một & quot; source_data & quot; cờ, có giá trị mặc định là & quot; trên & quot ;. Với lá cờ này được thiết lập & quot; & quot ;, trên Logtalk sẽ giữ các thông tin biểu diễn sử dụng chế độ / 2,
  • Thông tin / 1-2, sử dụng / 2, và use_module / 2 chỉ thị cộng với dữ liệu nguồn vị trí (bao gồm tên tập tin nguồn và số dòng), hữu ích cho cả hai gỡ lỗi
  • và tích hợp với các công cụ phát triển. Cờ này có thể được tắt để tạo ra các mã nhỏ gọn hơn. Các parameter_names / 1 đối tượng và
  • sở hữu loại được gỡ bỏ để tránh dư thừa.
  • Thực hiện bảo vệ / 1 và private / 1 tài sản cho các đối tượng, các giao thức, và chuyên mục. Cùng với công chúng / 1 tài sản, các thuộc tính
  • cho phép trong danh sách các vị tuyên bố trong các thực thể được truy cập cho tính phản xạ. Thực hiện tuyên bố / 2, xác định / 2, bao gồm / 3,
  • và cung cấp / 3 thuộc tính để truy cập vào các tính chất của các vị khai báo và định nghĩa bên trong một thực thể. Tuyên bố tính bao gồm line_count / 1, số dòng của các phạm vi vị chỉ thị. Thuộc tính định nghĩa bao gồm line_count / 1, số dòng của người đứng đầu là người đầu tiên
  • khoản cho các vị, và number_of_clauses / 1, số lượng các khoản cho các vị. Cũng thực hiện sử dụng thử nghiệm / 3 và use_module / 3 thuộc tính.
  • Thêm một thuộc tính vị ngữ, redefined_from / 1, cho phép truy vấn về các đối tượng hoặc loại có chứa một định nghĩa vị ngữ được định nghĩa lại.
  • Thêm một vị loaded_file / 3 đến & quot; logtalk & quot; được xây dựng trong đối tượng, trong đó bổ sung cho hiện loaded_file / 2 vị ngữ và cho phép truy cập đến các
  • tùy chọn rõ ràng được sử dụng khi các tập tin đã được biên dịch và nạp.
  • Thực hiện biên dịch hỗ trợ cho các meta_non_terminal / 1 chỉ thị và các cuộc gọi // N được xây dựng trong không-terminal.
  • Đơn giản hóa việc lập các quy tắc ngữ pháp bằng cách loại bỏ sự hỗ trợ để đối phó với phi-ga phạm vi và sự tồn tại của lỗi tại quy tắc ngữ pháp
  • mức độ thay cho mức vị. Mặc dù tính năng này có thể hữu ích khi gỡ lỗi quy tắc ngữ pháp, nó phức tạp tích hợp các công cụ phát triển Logtalk với Prolog bản địa.
  • Cập nhật các trình biên dịch Logtalk để tiết kiệm các khoản địa điểm thực thể và làm cho thông tin này cho các back-end các trình biên dịch Prolog.
  • Cập nhật các trình biên dịch Logtalk để tránh tạo ra các khoản catchall nội bộ không cần thiết cho việc khai vị và các bảng định nghĩa cho các thực thể năng động.
  • Cập nhật các trình biên dịch Logtalk để ngăn cản sử dụng các vị multifile để phá vỡ đối tượng đóng gói. Một tuyên bố chính
  • thực thể phải tồn tại, có chứa cả một phạm vi và một chỉ thị multifile cho các vị. Ngoài ra, việc xác định các khoản cho một multifile
  • Entity :: functor / arity mà không có một multifile / 1 chỉ thị tương ứng sẽ dẫn đến một lỗi biên dịch thay vì chỉ đơn giản là một lời cảnh báo.
  • Loại bỏ các hạn chế biên dịch Logtalk buộc không kề / 1 và năng động / 1 chỉ thị trước các cuộc gọi đến các vị tuyên bố.
  • Cải thiện các báo cáo trình biên dịch Logtalk các cuộc gọi misspelt để không bị đầu cuối trong các quy tắc ngữ pháp.
  • Cho phép sử dụng của:. Kiểm soát / 1 xây dựng trên cơ thể của các quy tắc ngữ pháp
  • Khi gỡ lỗi thông báo quy định tại mục đích sử dụng / 2 chỉ thị, các thư được in ngầm đủ điều kiện như trong mã nguồn được viết bởi người sử dụng.
  • Thay đổi các vị nội bộ được sử dụng trong việc thực hiện của các vị được xây dựng-in đa luồng để tạo thuận lợi cho việc tích hợp với

  • Công cụ
  • cao cấp gỡ lỗi có yêu cầu dịch ngược mã Prolog tạo ra.
  • Sửa chữa một lỗi được giới thiệu trong Logtalk 2.42.4 về việc biên soạn các vị thực thể gọi các vị đồng bộ. Lỗi này dẫn đến các cuộc gọi
  • được thực hiện thay vì các hình thức không đồng bộ của các vị, trong đó sẽ hiển lộ trong những thất bại ngẫu nhiên của các mục tiêu đề.
  • Sửa chữa một lỗi tồn tại từ lâu, nơi một thời gian chạy biên dịch meta-cuộc gọi trong một thể loại sẽ được biên dịch như là một cuộc gọi đến một vị ngữ của đối tượng
  • nhập khẩu các loại thay vào đó là một cuộc gọi đến một loại ngữ địa phương.
  • Sửa chữa một lỗi lâu dài nơi chủ thể giá trị cờ đặt tại địa phương bằng cách sử dụng set_logtalk_flag / 2 chỉ thị sẽ không được lưu vào các thực thể
  • mã biên dịch.
  • Sửa chữa một lỗi lâu dài khi bãi bỏ một vị năng động trong một vật thể không phải nguyên mẫu nơi bãi bỏ / 1 phương pháp sẽ thành công mà không
  • vị được thực sự bãi bỏ.
  • Sửa chữa một lỗi trong việc thiết lập các bối cảnh thực hiện chính xác khi gọi một meta-lập luận rằng đòi hỏi một trình biên dịch chạy trong bối cảnh
  • & quot; người gửi & quot;.
  • Sửa chữa một lỗi trong việc biên soạn các cuộc gọi rõ ràng trình độ đến module meta-vị từ nơi trình độ mô-đun sẽ được giảm từ
  • call biên soạn. Lưu ý rằng các cuộc gọi sẽ sử dụng ngữ nghĩa Logtalk meta-vị ngữ (tức là meta-đối số sẽ được gọi là trong bối cảnh của các
  • gọi) thay vì các mô-đun Prolog ngữ nghĩa meta-ngữ thông thường.
  • Sửa chữa một lỗi nơi stacks coinduction đã không được khởi khi sử dụng

là gì mới trong phiên bản 2.42.4:

  • Phiên bản này bao gồm trình biên dịch, chạy, và đa luồng tối ưu hóa hiệu suất, cải thiện các thông báo lỗi biên dịch cho đồng bộ / 1 và năng động / 1 chỉ thị, thêm hỗ trợ cho việc bảo tồn phạm vi khai thác thông tin và xuất thông tin này để tự động tạo ra các tài liệu XML file, thêm vị tiện ích mới để các đối tượng logtalk, cải thiện một số lập trình ví dụ, bao gồm một cách giải quyết cho một lỗi chương trình cài đặt SWI-Prolog trên Windows, và các tính năng cập nhật tính di động cho Qu-Prolog, SICStus Prolog, SWI-Prolog, XSB, và YAP.

là gì mới trong phiên bản 2.42.3:

  • Phiên bản này hỗ trợ thêm cho việc kêu gọi các vị năng động trong bối cảnh của & quot; này & quot; từ bên trong danh mục, thêm hỗ trợ cho đầu khoản tiền biên dịch, bao gồm sửa lỗi và cải tiến cho các trình gỡ lỗi tích hợp, bao gồm các thư viện được cải thiện và các ví dụ, thêm hỗ trợ cho indexicals khi sử dụng (FD) Thư viện SICStus Prolog CLP, thêm một ví dụ thực nghiệm của sử dụng các biến do trong các đối tượng, chủng loại và tính năng cập nhật tính di động cho Eclipse, GNU Prolog, SICStus Prolog, và SWI-Prolog.

là gì mới trong phiên bản 2.42.2:

  • Phiên bản này cải thiện việc lập cuộc gọi đến module vị , cải thiện việc kiểm tra các meta-lập luận trong các cuộc gọi meta-vị, cải thiện hỗ trợ cho các biểu thức lambda, bao gồm một trình biên dịch tối ưu hóa cho các cuộc gọi đến thư viện meta-vị, thêm thư viện mới cho sự kiện khai thác gỗ, làm việc với quan hệ khoảng thời gian, và sử dụng bộ đếm số nguyên, cải thiện ví dụ hiện có và các thư viện, thêm hỗ trợ cho việc sử dụng các gói SyntaxHighlighter dựa trên JavaScript, và các tính năng cập nhật tính di động cho GNU Prolog, Qu-Prolog, SICStus Prolog, SWI-Prolog, và XSB.

là gì mới trong phiên bản 2.42.1:

  • Phiên bản này hỗ trợ thêm cho chế độ meta-ngữ mới chỉ số, cho phép hỗ trợ thêm cho Prolog độc quyền xây dựng-trong meta-vị.
  • Hỗ trợ được thêm vào cho việc phát hiện và báo cáo thiếu năng động / 1 và nằm kề / 1 chỉ thị.
  • Một lint cờ mới được thêm vào.
  • Hai lỗi biên soạn meta-vị đã được sửa chữa.
  • Một số ví dụ đã được cập nhật.
  • cập nhật Portability đã được thực hiện cho B-Prolog, SICStus Prolog, SWI-Prolog, XSB, và YAP.

Phần mềm khác của nhà phát triển Paulo Moura

Logtalk
Logtalk

11 Mar 16

Ý kiến ​​để Logtalk

Bình luận không
Nhập bình luận
Bật hình ảnh!