Opened 12 years ago

Last modified 10 years ago

#56 reopened enhancement

Eliminate use of temporary files in COMPILE-FILE

Reported by: ehuelsmann Owned by: ehuelsmann
Priority: minor Milestone: unscheduled
Component: compiler Version:
Keywords: Cc:
Parent Tickets:

Description

The functions COMPILE and COMPILE-FILE use temporary files for the class files generated by the compiler.

However, COMPILE directly loads them back into memory and deletes the temp file, while COMPILE-FILE deletes the temp file after adding it to a ZIP archive.

This ticket exists to indicate that infrastructure is required to better manage where output goes to, abstracting from the temp files.

Change History (7)

comment:1 in reply to:  description Changed 12 years ago by trittweiler

When working on this, I think it makes sense to base COMPILE-FILE
on a COMPILE-FROM-STREAM. The latter function could then find use
in ABCL's SWANK backend (for implementing C-c C-c.) ECL, and CMUCL
both provide such a COMPILE-FROM-STREAM function.

comment:2 Changed 11 years ago by ehuelsmann

Summary: Eliminate use of temporary files in COMPILE and COMPILE-FILEEliminate use of temporary files in COMPILE-FILE

Changing ticket title: temp files are no longer used with COMPILE; only with COMPILE-FILE now.

comment:3 Changed 11 years ago by ehuelsmann

An intermediate step could be to store the temp files in the location indicated by java.io.tmpdir property. This property should point to a location on local disk, eliminating any network turn-arounds required to stat(), read and delete the files during compilation.

That should at least speed up compilation by a lot in case the target is non-locally stored.

comment:4 Changed 11 years ago by ehuelsmann

Milestone: 0.23

The suggestion in the previous comment should be doable relatively short term.

comment:5 Changed 10 years ago by Mark Evenson

Resolution: fixed
Status: newclosed

I think has been addressed by Alessio long ago.

comment:6 Changed 10 years ago by astalla

Resolution: fixed
Status: closedreopened

I don't recall ever fixing it, and Erik confirms COMPILE-FILE is still using temporary files.

comment:7 Changed 10 years ago by Mark Evenson

Milestone: 0.23unscheduled
Priority: majorminor
Note: See TracTickets for help on using tickets.