Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
L ldpl
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 8
    • Issues 8
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Lartu
  • ldpl
  • Issues
  • #6

Closed
Open
Created Mar 05, 2019 by Lartu@lartu🐕Maintainer

Add INCLUDE statement?

Created by: carbontwelve

Not sure if it's beyond the scope of this language given how its a bit tongue in cheek but it would be nice to have the ability to split a program up into components and then include them aka the COBOL INCLUDE statement.

Given a directory structure like so:

.
└── src
    ├── main.ldpl
    ├── member-name.ldpl
    └── another-member-name.ldpl

You could within the DATA division allow an INCLUDE statement with similar syntax to COBOL:

DATA:
    INCLUDE member-name.ldpl
    INCLUDE another-member-name.ldpl

Or maybe have an additional INCLUDE division?

In either case the include could act as a "copy-paste" merging the DATA and PROCEDURE divisions of the included source into the requesting file in the order in which they are included.

You could go one further and allow the INCLUDE statement in the PROCEDURE division to open the possibility of dynamic includes ;)


In adding includes it opens this language up to the entertaining possibility of libraries.

Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking