Skip to content

Use the directory structure to more obviously expose the user API #72

Closed
@rouson

Description

@rouson

@milancurcic I keep feeling silly when I realize things that probably should have been obvious. It was very helpful that your comment on PR #71 pointed me to the nf module for the user API. I recommend using a directory structure first suggested to me by @everythingfunctional and which I've subsequently adopted on all libraries that I develop. For neural-fortran, the directory tree would look like the one below. I'll submit a new PR that organizes

% tree src 
src
├── nf
│   ├── nf_activation.f90
│   ├── nf_base_layer.f90
│   ├── nf_base_layer_submodule.f90
│   ├── nf_conv2d_layer.f90
│   ├── nf_conv2d_layer_submodule.f90
│   ├── nf_datasets_mnist.f90
│   ├── nf_datasets_mnist_submodule.f90
│   ├── nf_dense_layer.f90
│   ├── nf_dense_layer_submodule.f90
│   ├── nf_input1d_layer.f90
│   ├── nf_input1d_layer_submodule.f90
│   ├── nf_input3d_layer.f90
│   ├── nf_input3d_layer_submodule.f90
│   ├── nf_io.f90
│   ├── nf_io_submodule.f90
│   ├── nf_layer.f90
│   ├── nf_layer_constructors.f90
│   ├── nf_layer_constructors_submodule.f90
│   ├── nf_layer_submodule.f90
│   ├── nf_loss.f90
│   ├── nf_loss_submodule.f90
│   ├── nf_maxpool2d_layer.f90
│   ├── nf_maxpool2d_layer_submodule.f90
│   ├── nf_network.f90
│   ├── nf_network_submodule.f90
│   ├── nf_optimizers.f90
│   ├── nf_parallel.f90
│   ├── nf_parallel_submodule.f90
│   ├── nf_random.f90
│   └── nf_random_submodule.f90
└── nf.f90

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions