Skip to content

Commit 2fe4273

Browse files
committed
Small tweaks for final 1.3 release.
1 parent ddfd435 commit 2fe4273

File tree

5 files changed

+25
-16
lines changed

5 files changed

+25
-16
lines changed

CHANGELOG.md

+8
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# Changelog
22

3+
## 1.3 (2017-12-03)
4+
- Support simple HTTP API
5+
- Support compression for bytevectors
6+
- Implement call tracing
7+
- Fixed bug preventing some internal definitions to not work
8+
- Support all standard R7RS small Scheme libraries
9+
- Support for: `(srfi 158)`, `(lispkit wt-tree)`, `(lispkit object)`
10+
311
## 1.2 (2017-10-22)
412
- Support for tail patterns in `syntax-rules`
513
- Support for `features` and `cond-expand`

README.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,9 @@ _LispKit_ provides support for the following core features, many of which are ba
4949
`(scheme eval)`, `(scheme file)`, `(scheme inexact)`, `(scheme lazy)`, `(scheme load)`,
5050
`(scheme process-context)`, `(scheme read)`, `(scheme repl)`, `(scheme time)`, `(scheme write)`,
5151
`(scheme r5rs)`
52-
- LispKit-specific libraries: `(lispkit datatype)`, `(lispkit iteration)`, `(lispkit set)`, `(lispkit heap)`,
53-
`(lispkit wt-tree)`, `(lispkit prettify)`, `(lispkit json)`, and `(lispkit pdf)`
52+
- LispKit-specific libraries: `(lispkit datatype)`, `(lispkit object)`, `(lispkit iteration)`,
53+
`(lispkit set)`, `(lispkit heap)`, `(lispkit wt-tree)`, `(lispkit prettify)`, `(lispkit json)`,
54+
and `(lispkit pdf)`
5455

5556
_LispKit_ is incompatible or incomplete with respect to the following R7RS features:
5657

Sources/LispKit/Info.plist

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
<key>CFBundlePackageType</key>
1616
<string>FMWK</string>
1717
<key>CFBundleShortVersionString</key>
18-
<string>1.2</string>
18+
<string>1.3</string>
1919
<key>CFBundleSignature</key>
2020
<string>????</string>
2121
<key>CFBundleVersion</key>

Sources/LispKit/Runtime/VirtualMachine.swift

+11-11
Original file line numberDiff line numberDiff line change
@@ -627,31 +627,31 @@ public final class VirtualMachine: TrackedObject {
627627
let stackTrace = self.getStackTrace()
628628
var builder = StringBuilder()
629629
let offset = tailCall ? 0 : 1
630-
builder.append(tailCall ? "↪︎ (" : "➝ (",
631-
width: (stackTrace.count + offset) * 2 + 3,
630+
builder.append(tailCall ? "↪︎" : "",
631+
width: (stackTrace.count + offset) * 2 + 1,
632632
alignRight: true)
633-
builder.append(proc.originalName ?? proc.name)
633+
builder.append(" (", proc.originalName ?? proc.name)
634634
for i in 0..<n {
635635
builder.append(" ", self.stack[self.sp &- n &+ i].description)
636636
}
637637
builder.append(")")
638-
if stackTrace.count > 1 {
639-
builder.append(" in ", stackTrace.last!.originalName ?? stackTrace.last!.name)
638+
if let currentProc = stackTrace.last {
639+
builder.append(" in ", currentProc.originalName ?? currentProc.name)
640640
}
641641
builder.append("\n")
642642
self.context.console.print(builder.description)
643643
}
644644
}
645645
}
646646

647-
@inline(__always) private func printReturnTrace(tailCall: Bool = false) {
647+
@inline(__always) private func printReturnTrace(tailCall: Bool = false, noOffset: Bool = false) {
648648
if self.traceCalls && self.sp > 0 {
649649
var builder = StringBuilder()
650-
let offset = tailCall ? 0 : 1
651-
builder.append(tailCall ? "↩︎ " : "",
652-
width: (self.getStackTrace().count + offset) * 2 + 2,
650+
let offset = tailCall || noOffset ? 0 : 1
651+
builder.append(tailCall ? "↩︎" : "",
652+
width: (self.getStackTrace().count + offset) * 2 + 1,
653653
alignRight: true)
654-
builder.append(self.stack[self.sp &- 1].description)
654+
builder.append(" ", self.stack[self.sp &- 1].description)
655655
builder.append("\n")
656656
self.context.console.print(builder.description)
657657
}
@@ -1315,7 +1315,7 @@ public final class VirtualMachine: TrackedObject {
13151315
self.sp = self.registers.initialFp &- 1
13161316
return res
13171317
} else {
1318-
self.printReturnTrace(tailCall: false)
1318+
self.printReturnTrace(tailCall: false, noOffset: true)
13191319
self.exitFrame()
13201320
}
13211321
case .branch(let offset):

Sources/LispKitRepl/Info.plist

+2-2
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@
1515
<key>CFBundlePackageType</key>
1616
<string>APPL</string>
1717
<key>CFBundleShortVersionString</key>
18-
<string>1.2</string>
18+
<string>1.3</string>
1919
<key>CFBundleSignature</key>
2020
<string>????</string>
2121
<key>CFBundleVersion</key>
22-
<string>1.2</string>
22+
<string>1.3</string>
2323
<key>LSMinimumSystemVersion</key>
2424
<string>$(MACOSX_DEPLOYMENT_TARGET)</string>
2525
<key>NSHumanReadableCopyright</key>

0 commit comments

Comments
 (0)