如何让vi编辑模式在GHCi中工作?
我使用的是版本7.10.3.
我试过了Prelude> :set editor vi,但没有效果.
我也有这些台词~/.inputrc.
set editing-mode vi
set keymap vi
Run Code Online (Sandbox Code Playgroud)
.
我使用和制作了一个数据存储符号.中间有红点的那个.B.differenceB.union
dataStorage :: Diagram B
dataStorage = (strokePath $ B.difference Winding combined block1) # translateX (-0.3)
where block1 = (circle 0.5) # scaleX 0.5 # translateX (-1)
block2 = rect 2 1
block3 = (circle 0.5) # translateX (1)
combined = B.union Winding $ block2 <> block3
Run Code Online (Sandbox Code Playgroud)
我现在已经尝试了好几个小时但是不能Previous Estimate在这个符号和内部之间写出 一个箭头Signal Decomposition (SSA).目标是从符号外部的中心开始绘制箭头.欢迎任何帮助.非常感谢你.
编辑1:添加了想要的结果.
这是完整的代码.
{-# LANGUAGE NoMonomorphismRestriction #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE TypeFamilies #-}
module FlowChartTR where
import System.Process
--import …Run Code Online (Sandbox Code Playgroud) 我正在学习 STM32 裸机编程,在此过程中我使用 STM32F429ZI mcu。我在互联网上阅读了很多示例,它们都只使用一个链接描述文件。我在想,如果这些示例非常适合我的 MCU,那么链接器脚本在功能方面将与 STM32CubeIDE 生成的链接器脚本相同(?)。
现在我的问题是,当我使用 STM32CubeIDE 生成项目时,我得到了 2 个链接器脚本,但是STM32F429ZITX_FLASH.ld当我检查构建日志时,仅使用了一个链接器脚本,即. STM32CubeIDE 使用一两个链接器脚本来构建项目吗?如果它只使用一个,那么为什么它生成两个链接描述文件?STM32F429ZITX_RAM.ldSTM32F429ZITX_FLASH.ld
下面,我发布了构建日志。这是我在构建日志中找到的命令:
arm-none-eabi-gcc -o "STM32F429ZI-Test.elf" @"objects.list" -mcpu=cortex-m4 -T"/home/biomed/STM32CubeIDE/workspace_1.4.0/STM32F429ZI-Test/STM32F429ZITX_FLASH.ld"
Run Code Online (Sandbox Code Playgroud)
arm-none-eabi-gcc -o "STM32F429ZI-Test.elf" @"objects.list" -mcpu=cortex-m4 -T"/home/biomed/STM32CubeIDE/workspace_1.4.0/STM32F429ZI-Test/STM32F429ZITX_FLASH.ld"
14:10:36 **** Build of configuration Debug for project STM32F429ZI-Test ****
make -j8 all
arm-none-eabi-gcc "../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DDEBUG -DSTM32F429xx -c -I../Core/Inc -I../Drivers/STM32F4xx_HAL_Driver/Inc -I../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.d" -MT"Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.o"
arm-none-eabi-gcc "../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c" -mcpu=cortex-m4 -std=gnu11 …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用randomRIO生成无限数量的随机数。
import System.Random
g :: IO [Integer]
g = do
n <- randomRIO (1,6) :: IO Integer
f <- g
return (n : f)
Run Code Online (Sandbox Code Playgroud)
它可以编译但在运行时挂起。
我对 ST Microelectronics 的这种架构设计感到困惑。以STM32F407VG为例。程序加载到闪存中的地址 0x08000000。该地址映射到地址 0x00000000,因为复位后处理器首先查看 0x00000000。为什么不让闪存首地址为 0x00000000。内存别名的优点是什么?
data World = Green Double | Red Double
deriving Show
ws = [Green, Red]
Run Code Online (Sandbox Code Playgroud)
正如你所看到的Green,Red应该分别给出一个参数.我希望GHC会在编译时抛出错误,但事实并非如此,编译代码.这是正常的吗?