Skip to content

GetPoplog/vim-poplog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vim-poplog

WARNING: WORK IN PROGRESS

This project adds support for the pop11 language to the Vim editor. It handles syntax highlighting for *.p files.

Installation

We recommend you use Plug or another vim plugin manager.

For example, using Plug you would add the following to your ~/.vimrc:

Plug 'GetPoplog/vim-poplog'

Syntax coverage

Each part here corresponds to a railroad diagram from "Pop-11: A practical Language for Artificial Intelligence" (R. Barrett, A. Ramsay, A. Sloman). The syntax in this book is out of date, but it is a good starting point.

Once a railroad diagram has been

  • Statement
    • ;
    • =>
    • ==>
  • Definition
    • define
    • enddefine
  • Assignment
    • ->
    • ->>
    • -->
  • Variable
    • nonop
    • nonmac
    • nonsyntax
  • Declaration
    • global
    • lvars
    • vars
    • constant
    • lconstant
  • Varslist
    • macro
    • syntax
  • Sequence
    • ,
    • ;
    • =>
    • ==>
  • Literal
  • Construct
    • List construct
      • []
      • List segment
        • [% <Sequence> %]
    • Vector construct
      • {}
    • Pattern construct
      • []
      • Pattern segment
      • ?
      • ??
      • =
      • ==
  • Label: <word>:
  • Jump: goto <word>
  • Iterative (i)
    • for
    • step
    • till
    • do
    • endfor
  • Iterative (ii)
    • while
    • until
    • for
    • in
    • on
    • from
    • by
    • to
    • foreach
    • endforeach
    • forevery
    • endforevery
    • repeat
    • endrepeat
    • times
    • forever
  • Conditional
    • if
    • unless
    • elseif
    • elseunless
    • else
    • then
    • endif
    • endunless
  • Boolean expression
    • and
    • or
  • Operator expression
  • Function application

Further reading

  • See ref syntax for a list of syntax words in pop11.
  • See Your own syntax highlighted for an excellent guide on writing vim syntax files.

Releases

No releases published

Packages

No packages published