Skip to content

Commit

Permalink
update README #303
Browse files Browse the repository at this point in the history
  • Loading branch information
jcubic committed Feb 4, 2024
1 parent 80643db commit d6f7603
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 0 deletions.
9 changes: 9 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,8 @@ Executables also return a S-Expression according to SRFI-176 use `lips --version
[![FOSDEM 2023 - LIPS Scheme: Powerful introspection and extensibility](https://github.com/jcubic/lips/blob/devel/assets/fosdem-intro.png?raw=true)](https://fosdem.org/2023/schedule/event/lipsscheme/)

## Limitations

### Performance
Because LIPS is tree walking interpreter sometimes it may be slow. Especially if you want to
process long arrays and use callback function. If the array is quite large each piece of code
inside the callback may slow down the processing. For example see:
Expand Down Expand Up @@ -234,6 +236,13 @@ Examples:

The issue with performance is tracked in [#197](https://github.com/jcubic/lips/issues/197).

### JavaScript callbacks

Another limitation is when using JavaScript libraries that require normal values but get a Promise instead.
This can happen with React/Preact and when the component returns a Promise. Some macros can be async
(return a Promise), which will break the React app when used in components. An example of a macro that is async is
`do` macro. So when using React/Preact and when you need to use a promise use promise quotation and `useEffect`.

## Supported SRFI

### built-in
Expand Down
9 changes: 9 additions & 0 deletions templates/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,8 @@ Executables also return a S-Expression according to SRFI-176 use `lips --version
[![FOSDEM 2023 - LIPS Scheme: Powerful introspection and extensibility](https://github.com/jcubic/lips/blob/{{BRANCH}}/assets/fosdem-intro.png?raw=true)](https://fosdem.org/2023/schedule/event/lipsscheme/)

## Limitations

### Performance
Because LIPS is tree walking interpreter sometimes it may be slow. Especially if you want to
process long arrays and use callback function. If the array is quite large each piece of code
inside the callback may slow down the processing. For example see:
Expand Down Expand Up @@ -234,6 +236,13 @@ Examples:

The issue with performance is tracked in [#197](https://github.com/jcubic/lips/issues/197).

### JavaScript callbacks

Another limitation is when using JavaScript libraries that require normal values but get a Promise instead.
This can happen with React/Preact and when the component returns a Promise. Some macros can be async
(return a Promise), which will break the React app when used in components. An example of a macro that is async is
`do` macro. So when using React/Preact and when you need to use a promise use promise quotation and `useEffect`.

## Supported SRFI

### built-in
Expand Down

0 comments on commit d6f7603

Please sign in to comment.